This post goes over how to upload and publish a web game to Wavedash with remarkablegames/wavedash-action on GitHub Actions.
GitHub Actions
To upload your game to Wavedash with GitHub Actions, use wavedash-action:
# .github/workflows/wavedash.yml
name: Upload to Wavedash
on: push
jobs:
wavedash-upload:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v7
# Build your web game...
- name: Upload to Wavedash
uses: remarkablegames/wavedash-action@v2
with:
token: ${{ secrets.WAVEDASH_TOKEN }}
The WAVEDASH_TOKEN is your Wavedash API key. Generate one and add it to your repository’s Settings > Secrets and variables > Actions.
If you don’t have a wavedash.toml, the action will create one for you when you provide game-id. The generated config looks like:
# wavedash.toml
game_id = "YOUR_GAME_ID_HERE"
upload_dir = "./dist"
entrypoint = "index.html"
The action also injects an init script into your entrypoint unless your game already calls it.
Example
Using an example workflow where:
- build is located at the
distfolder - game ID is
YOUR_GAME_ID_HERE - entrypoint is
index.html - build message is the release tag
The workflow job is:
wavedash:
needs: release
if: ${{ needs.release.outputs.release_created }}
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v7
# Build your web game...
- name: Upload to Wavedash
uses: remarkablegames/wavedash-action@v2
with:
token: ${{ secrets.WAVEDASH_TOKEN }}
game-id: YOUR_GAME_ID_HERE
upload-dir: dist
entrypoint: index.html
build-message: ${{ needs.release.outputs.tag_name }}
To publish the build immediately, add publish: true:
- - name: Upload to Wavedash
+ - name: Upload and publish to Wavedash
uses: remarkablegames/wavedash-action@v2
with:
token: ${{ secrets.WAVEDASH_TOKEN }}
game-id: YOUR_GAME_ID_HERE
upload-dir: dist
entrypoint: index.html
build-message: ${{ needs.release.outputs.tag_name }}
+ publish: true
+ publish-title: ${{ needs.release.outputs.tag_name }}
+ publish-fixed: |
+ Fixed fullscreen sizing
+ Fixed input timing
The inputs publish-title and publish-fixed are optional but they allow you to add release notes.
Inputs & Outputs
See the action’s inputs and outputs.