Merge pull request #1351 from justinstoller/PE-36512-prod-forge #146
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Docker test and publish | |
on: | |
push: | |
branches: | |
- main | |
jobs: | |
build-and-publish: | |
env: | |
PUPPERWARE_ANALYTICS_STREAM: production | |
IS_LATEST: true | |
# Still need these env vars for README publishing | |
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }} | |
DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }} | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: azure/docker-login@v1 | |
with: # This doesn't seem to work unless we point directly to the secrets | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Set up Ruby 2.6 | |
uses: actions/setup-ruby@v1 | |
with: | |
ruby-version: 2.6.x | |
- run: gem install bundler | |
- uses: actions/checkout@v3 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Build container | |
working-directory: docker | |
run: | | |
docker system prune --all --force --volumes | |
docker builder prune --force --keep-storage=10GB | |
make lint build test | |
- name: Publish container | |
working-directory: docker | |
run: | | |
make publish | |
- name: Build release container | |
env: | |
IS_RELEASE: true | |
working-directory: docker | |
run: | | |
if make prep; then | |
make lint build test | |
else | |
echo "Skipping release container building and testing" | |
fi | |
- name: Publish release container | |
env: | |
IS_RELEASE: true | |
working-directory: docker | |
run: | | |
if make prep; then | |
make publish | |
else | |
echo "Skipping release container publishing" | |
fi |