name: Publish Snap Packages on: release: types: [published] workflow_dispatch: inputs: channel: description: "Snap Store channel" required: true default: edge type: choice options: - stable - candidate - beta - edge schedule: - cron: '0 0 * * 2' permissions: {} concurrency: group: ${{ github.workflow }} cancel-in-progress: false jobs: publish: name: ${{ matrix.name }} if: github.repository == 'zealdocs/zeal' runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: include: - name: amd64 os: ubuntu-latest - name: arm64 os: ubuntu-24.04-arm steps: - name: Checkout uses: actions/checkout@v7 with: fetch-depth: 0 - name: Build Snap id: build uses: snapcore/action-build@v1 - name: Publish to Snap Store uses: snapcore/action-publish@v1 env: SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAPCRAFT_STORE_CREDENTIALS }} with: snap: ${{ steps.build.outputs.snap }} release: ${{ inputs.channel || (github.event_name == 'schedule' && 'edge') || 'stable' }}