name: 'Build, Test & Deploy' on: workflow_dispatch: push: branches: - master paths: - target/** - .dockerignore - .gitmodules - Dockerfile - setup.sh - VERSION # also update :edge when a release happens tags: - '*.*.*' permissions: contents: read packages: write jobs: build-image: name: 'Build AMD64 Image' uses: docker-mailserver/docker-mailserver/.github/workflows/generic_build.yml@master run-tests: name: 'Test AMD64 Image' needs: build-image uses: docker-mailserver/docker-mailserver/.github/workflows/generic_test.yml@master with: cache-key: ${{ needs.build-image.outputs.build-cache-key }} publish-images: name: 'Publish AMD64 and ARM64 Image' needs: [build-image, run-tests] uses: docker-mailserver/docker-mailserver/.github/workflows/generic_publish.yml@master with: cache-key: ${{ needs.build-image.outputs.build-cache-key }} secrets: inherit