# This workflow is meant to trigger a build of Docker binaries when a release # is published, it uses the existing `sub-build-docker-image.yml` workflow # # We use a separate action as we might want to trigger this under # different circumstances than a Continuous Deployment, for example. # # This workflow is triggered if: # - A release is published # - A pre-release is changed to a release name: Release binaries on: release: types: - released jobs: # Each time this workflow is executed, a build will be triggered to create a new image # with the corresponding tags using information from git # The image will be named `zebra:` build: name: Build Release Docker uses: ./.github/workflows/sub-build-docker-image.yml with: dockerfile_path: ./docker/Dockerfile dockerfile_target: runtime image_name: zebra rust_log: info # This step needs access to Docker Hub secrets to run successfully secrets: inherit # The image will be named `zebra:.experimental` build-mining-testnet: name: Build Release Testnet Mining Docker uses: ./.github/workflows/sub-build-docker-image.yml with: dockerfile_path: ./docker/Dockerfile dockerfile_target: runtime image_name: zebra tag_suffix: .experimental features: "default-release-binaries getblocktemplate-rpcs" rust_log: info # This step needs access to Docker Hub secrets to run successfully secrets: inherit failure-issue: name: Open or update issues for release binaries failures # When a new job is added to this workflow, add it to this list. needs: [ build, build-mining-testnet ] # Open tickets for any failed build in this workflow. if: failure() || cancelled() runs-on: ubuntu-latest steps: - uses: jayqi/failed-build-issue-action@v1 with: title-template: "{{refname}} branch CI failed: {{eventName}} in {{workflow}}" # New failures open an issue with this label. label-name: S-ci-fail-binaries-auto-issue # If there is already an open issue with this label, any failures become comments on that issue. always-create-new-issue: false github-token: ${{ secrets.GITHUB_TOKEN }}