concourse / docker-image-resource

a resource for docker images
Apache License 2.0
166 stars 259 forks source link

Unhelpful prints of variables #344

Open bruce-ricard opened 2 years ago

bruce-ricard commented 2 years ago

Hi friends,

The 2 first lines of my Dockerfile are:

ARG MYSQL_VERSION=5
FROM mysql:$MYSQL_VERSION

When I build this Dockerfile through the Concourse resource, with this configuration:

      build_args:
        email: ((docker_email))
        MYSQL_VERSION: 8

these are the logs we are getting:

Step 1/30 : ARG MYSQL_VERSION=5 Step 2/30 : FROM mysql:$MYSQL_VERSION

Which is quite confusing. It really appears like the build is using MySQL 5, but we validated that it's correctly using Mysql 8, as expected.

When we run the command locally with docker build . it shows the interpolated variable, which is a lot more user friendly.

@peterhaochen47 and I

bruce-ricard commented 2 years ago

As a workaround, for better readability and debug-ability of our logs, we added this line in our Dockerfile:

RUN echo "from mysql:${MYSQL_VERSION}"

which logs in our Concourse output:

Step 3/30 : RUN echo "from mysql:${MYSQL_VERSION}" ---> Running in fe1c4f6237e6 from mysql:8.0.29-1debian10