Fix release asset upload and add debugging #4
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build and Release WebAssembly | |
on: | |
push: | |
tags: | |
- 'v*' # Trigger on version tags | |
workflow_dispatch: # Allow manual trigger | |
permissions: | |
contents: write # This is required for creating releases | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Setup Emscripten | |
uses: mymindstorm/setup-emsdk@v12 | |
with: | |
version: latest | |
actions-cache-folder: 'emsdk-cache' | |
- name: Verify Emscripten Installation | |
run: emcc --version | |
- name: Create Build Directory | |
run: mkdir build | |
- name: Configure CMake | |
run: | | |
cd build | |
emcmake cmake .. | |
- name: Build | |
run: | | |
cd build | |
emmake make | |
ls -la | |
- name: Debug File Locations | |
run: | | |
echo "Contents of build directory:" | |
ls -R build/ | |
echo "\nContents of root directory:" | |
ls -la | |
- name: Prepare Release Files | |
run: | | |
mkdir -p release | |
# Copy build artifacts | |
if [ -f "build/terminal.wasm" ]; then | |
cp build/terminal.wasm release/ | |
else | |
echo "terminal.wasm not found in build directory" | |
exit 1 | |
fi | |
if [ -f "build/terminal.js" ]; then | |
cp build/terminal.js release/terminal.generated.js | |
else | |
echo "terminal.js not found in build directory" | |
exit 1 | |
fi | |
# Copy source files | |
cp terminal.js release/terminal.js | |
cp index.html release/ | |
echo "\nContents of release directory:" | |
ls -la release/ | |
- name: Create Release | |
if: startsWith(github.ref, 'refs/tags/') | |
uses: softprops/action-gh-release@v1 | |
with: | |
files: | | |
release/terminal.wasm | |
release/terminal.generated.js | |
release/terminal.js | |
release/index.html | |
body: | | |
WebAssembly Terminal Release | |
- terminal.wasm: WebAssembly binary | |
- terminal.generated.js: Emscripten generated JavaScript | |
- terminal.js: Terminal implementation | |
- index.html: Web interface | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |