Skip to content

Continuous Integration #155

Continuous Integration

Continuous Integration #155

Workflow file for this run

name: Continuous Integration
on:
push:
workflow_dispatch:
inputs:
platform:
description: Platform to build for
options: ['linux/amd64', 'linux/arm64', 'darwin/amd64', 'darwin/arm64', 'windows/amd64']
required: true
type: choice
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: write
jobs:
setup:
name: Setup CI
if: github.head_ref != 'chore/update-version'
runs-on: ubuntu-24.04
steps:
- id: setup
shell: bash
run: |
if [ ${{github.event_name }} == 'workflow_dispatch' ]; then
echo "platform=${{ inputs.platform }}" >> $GITHUB_OUTPUT
else
echo "platform=linux/amd64, linux/arm64" >> $GITHUB_OUTPUT
fi
outputs:
platform: ${{ steps.setup.outputs.platform }}
build:
name: Build
needs: setup
uses: ./.github/workflows/build-rust.yml
secrets: inherit
with:
platform: ${{ needs.setup.outputs.platform }}
docker:
name: Docker
if: |
github.ref == 'refs/heads/main' ||
github.event_name == 'workflow_dispatch' ||
needs.setup.outputs.platform == 'linux/amd64' ||
needs.setup.outputs.platform == 'linux/arm64'
needs: [setup, build]
uses: ./.github/workflows/build-docker.yml
secrets: inherit
with:
platform: ${{ needs.setup.outputs.platform }}