sclorg/build-and-push-action

What is the resulting image name: opportunity to improve transparency

Closed this issue · 1 comments

It took me a while and a look into the code to realize what the resulting image actually is, because it's composed from more parts, each part coming from a different source:

        image: ${{ steps.base-image-name.outputs.image_name}}-${{ steps.clean_path.outputs.clean_dockerfile_path }}${{ steps.suffix_name.outputs.suffix }}

I think that improving transparency on the expense of more duplication here might be not that bad idea, which means the specification would simply include the resulting name. One of the possible implementation might be adding something like "output_image" key, which might make some of the other keys not needed (didn't check), e.g.:

         - dockerfile_path: "18"
           dockerfile: "Dockerfile.fedora"
           registry_namespace: "fedora"
           tag: "fedora"
           output_image: "quay.io/fedora/nodejs-18"
           quayio_username: "QUAY_IMAGE_FEDORA_BUILDER_USERNAME"
           quayio_token: "QUAY_IMAGE_FEDORA_BUILDER_TOKEN"

Thank you for your feedback. I am looking into it.