Taurify
The following workflow is specifically tailored to Taurify applications.
Versionining
The release version number is automatically extracted from Taurify configuration file (taurify.json).
Workflow Triggers
For testing and developing purposes it may be useful to set a workflow_dispatch trigger, so the workflow can be initiated from the GitHub UI.
run-name: triggered by ${{ github.actor }}.on: workflow_dispatchOnce testing is done, it’s recommended to use Continuous Deployment.
on: push: branches: - mainAction Environment
The actual packaging of your application is done on the Taurify servers, so you can use the ubuntu-latest GitHub Actions runner.
When deploying you might desire to cancel ongoing processes when a new workflow starts.
concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: trueJobs
The following section snippets must be added in the jobs map.
jobs: <job-name>: <job-snippet>Note that the indentation is important.
Trigger Release
To trigger a new release, you must set up the Taurify secrets and run taurify build.
Fore more information on how to set up secrets such as your Taurify signing keypair, CrabNebula Cloud API key and application signing keys, see the Taurify distribution guide.
build: runs-on: ubuntu-latest
steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4
- name: install dependencies run: npm install
- name: trigger release env: CN_API_KEY: ${{ secrets.CN_API_KEY }} PRIVATE_KEY: ${{ secrets.PRIVATE_KEY }} PRIVATE_KEY_PASSWORD: ${{ secrets.PRIVATE_KEY_PASSWORD }} run: npm exec taurify buildbuild: runs-on: ubuntu-latest
steps: - uses: actions/checkout@v4
- name: Install pnpm uses: pnpm/action-setup@v3 with: version: 9 - uses: actions/setup-node@v4
- name: install dependencies run: pnpm install
- name: trigger release env: CN_API_KEY: ${{ secrets.CN_API_KEY }} PRIVATE_KEY: ${{ secrets.PRIVATE_KEY }} PRIVATE_KEY_PASSWORD: ${{ secrets.PRIVATE_KEY_PASSWORD }} run: pnpm taurify buildbuild: runs-on: ubuntu-latest
steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4
- name: install dependencies run: yarn install
- name: trigger release env: CN_API_KEY: ${{ secrets.CN_API_KEY }} PRIVATE_KEY: ${{ secrets.PRIVATE_KEY }} PRIVATE_KEY_PASSWORD: ${{ secrets.PRIVATE_KEY_PASSWORD }} run: yarn taurify buildbuild: runs-on: ubuntu-latest
steps: - uses: actions/checkout@v4
- name: Install bun uses: oven-sh/setup-bun@v2 - uses: actions/setup-node@v4
- name: install dependencies run: bun install
- name: trigger release env: CN_API_KEY: ${{ secrets.CN_API_KEY }} PRIVATE_KEY: ${{ secrets.PRIVATE_KEY }} PRIVATE_KEY_PASSWORD: ${{ secrets.PRIVATE_KEY_PASSWORD }} run: bun run taurify buildWhen this job is completed, your Taurify release is available on the CrabNebula Cloud platform.
Full Workflow
name: Taurify Release Process
on: push: branches: - main
concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true
jobs: build: runs-on: ubuntu-latest
steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4
- name: install dependencies run: npm install
- name: trigger release env: CN_API_KEY: ${{ secrets.CN_API_KEY }} PRIVATE_KEY: ${{ secrets.PRIVATE_KEY }} PRIVATE_KEY_PASSWORD: ${{ secrets.PRIVATE_KEY_PASSWORD }} run: npm exec taurify buildname: Taurify Release Process
on: push: branches: - main
concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true
jobs: build: runs-on: ubuntu-latest
steps: - uses: actions/checkout@v4
- name: Install pnpm uses: pnpm/action-setup@v3 with: version: 9 - uses: actions/setup-node@v4
- name: install dependencies run: pnpm install
- name: trigger release env: CN_API_KEY: ${{ secrets.CN_API_KEY }} PRIVATE_KEY: ${{ secrets.PRIVATE_KEY }} PRIVATE_KEY_PASSWORD: ${{ secrets.PRIVATE_KEY_PASSWORD }} run: pnpm taurify buildname: Taurify Release Process
on: push: branches: - main
concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true
jobs: build: runs-on: ubuntu-latest
steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4
- name: install dependencies run: yarn install
- name: trigger release env: CN_API_KEY: ${{ secrets.CN_API_KEY }} PRIVATE_KEY: ${{ secrets.PRIVATE_KEY }} PRIVATE_KEY_PASSWORD: ${{ secrets.PRIVATE_KEY_PASSWORD }} run: yarn taurify buildname: Taurify Release Process
on: push: branches: - main
concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true
jobs: build: runs-on: ubuntu-latest
steps: - uses: actions/checkout@v4
- name: Install bun uses: oven-sh/setup-bun@v2 - uses: actions/setup-node@v4
- name: install dependencies run: bun install
- name: trigger release env: CN_API_KEY: ${{ secrets.CN_API_KEY }} PRIVATE_KEY: ${{ secrets.PRIVATE_KEY }} PRIVATE_KEY_PASSWORD: ${{ secrets.PRIVATE_KEY_PASSWORD }} run: bun run taurify build