on: workflow_call: inputs: subimage: required: true type: string tags: required: true type: string secrets: DOCKERHUB_USERNAME: required: true DOCKERHUB_TOKEN: required: true jobs: build-subimage-job: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 # We are checking out explicitly, so build-push-action isn't trying # to checkout the (unreachable) submodule. (Using "context" there.) - name: Set up Docker Buildx uses: docker/setup-buildx-action@v2 - name: Docker meta id: meta uses: docker/metadata-action@v4 with: images: | quratorspk/ocrd-galley-${{ inputs.subimage }} flavor: | latest=auto # latest=auto should generate "latest" for the type=semver tags entry tags: ${{ inputs.tags }} - name: Login to Docker Hub uses: docker/login-action@v2 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Build ${{ inputs.subimage }} uses: docker/build-push-action@v4 with: context: . file: Dockerfile-${{ inputs.subimage }} build-args: | GIT_COMMIT=sha-${{ github.sha }} BUILDKIT_INLINE_CACHE=1 tags: ${{ steps.meta.outputs.tags }} push: true cache-from: quratorspk/ocrd-galley-${{ inputs.subimage }}:sha-${{ github.sha }}