name: Build the Docker images on: # Only trigger the workflow when there is a PR on the master branch pull_request: branches: [ "master" ] jobs: build: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v3 - name: Set up QEMU (for ARM emulation) run: docker run --rm --privileged multiarch/qemu-user-static --reset -p yes - name: Set up Docker Buildx uses: docker/setup-buildx-action@v1 - name: Build the Docker images env: GITHUB_CONTEXT: ${{ toJson(github) }} run: | # Initialize variables DOCKER_IMG_TAG=`echo "${{ github.sha }}" | cut -c 1-7` DOCKER_USERNAME=${{ secrets.DOCKER_USERNAME }} # Login echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin # Create the environment sed -e '/^[[:space:]]*$/d' -e '/[#@]/d' -e 's/\(^[^=]*\)=\(.*\)/\1="\2"/' template.env > env.hcl # Build and Push DOCKER_IMG_TAG=$DOCKER_IMG_TAG DOCKER_USERNAME=$DOCKER_USERNAME docker buildx bake -f docker-bake.hcl -f env.hcl