<#567 Docker build for programs is misleading.> Ne...
# openlane
g
#567 Docker build for programs is misleading. New issue created by d-m-bailey Description Previously, the
<program>_REPO
and
<program>_COMMIT
were taken from the
docker/<program>/Dockerfile
. The current version, reads these values from the
../dependencies/tool_metadata.yml
file, but incorrectly states that is updating using the
Dockerfile
values. Environment • Operating System Information:
Linux ciic-cvc 4.19.0-17-cloud-amd64 #1 SMP Debian 4.19.194-3 (2021-07-18) x86_64 GNU/Linux
• Docker Version:
docker --version
Docker version 20.10.7, build f0df350 • OpenLane Tag in use:
python3 ./get_tag.py
in the main OpenLane directory. 2021.08.23_04.04.57 Reproduction Material 1. Change the NETGEN_COMMIT value in
docker_build/docker/netgen/Dockerfile
to something that does not match the value in
../dependencies/tool_metadata.yml
. 2. In
docker_build
, run
make build-netgen
Expected behavior The displayed commit should match the installed commit. Logs
Copy code
~/OpenLane/docker_build$ make build-netgen
mkdir -p logs/docker
docker build --rm --build-arg NETGEN_REPO=<https://github.com/rtimothyedwards/netgen> --build-arg NETGEN_COMMIT=d7355cea957b849ed163e5bade72fe1f68e9a664 -t netgen docker/netgen | tee logs/docker/netgen.build.txt
Sending build context to Docker daemon  3.584kB
Step 1/15 : FROM centos:centos7 as build
 ---> 8652b9f0cb4c
Step 2/15 : RUN yum groupinstall -y "Development Tools"
 ---> Using cache
 ---> 9a7e915b9d17
Step 3/15 : RUN yum -y install centos-release-scl &&     yum -y install devtoolset-8 devtoolset-8-libatomic-devel
 ---> Using cache
 ---> b5297383cfb8
Step 4/15 : RUN yum install -y csh wget tcl-devel tk-devel libX11-devel cairo-devel ncurses-devel
 ---> Using cache
 ---> 3ce810227817
Step 5/15 : ARG NETGEN_REPO=<https://github.com/rtimothyedwards/netgen>
 ---> Using cache
 ---> c4eca7e5d827
Step 6/15 : ARG NETGEN_COMMIT=32585a572c9f367263d8b0a933e0cdb504329b56
 ---> Using cache
 ---> 40d4d6ba45d5
Step 7/15 : RUN git clone ${NETGEN_REPO} netgen_21083012
 ---> Running in c62a3a7554b0
Cloning into 'netgen_21083012'...
Removing intermediate container c62a3a7554b0
 ---> 868fdacb50b3
Step 8/15 : WORKDIR netgen_21083012
 ---> Running in d162bdffe007
Removing intermediate container d162bdffe007
 ---> 791dc7398a8d
Step 9/15 : RUN git checkout ${NETGEN_COMMIT}
 ---> Running in b1909940717e
Note: checking out 'd7355cea957b849ed163e5bade72fe1f68e9a664'.
The Step 6/15 value does not match the command line value or the actual commit that was checked out. The
<program>_COMMIT
may be removed from the
Dockerfile
, but currently, the
<program>_REPO
is still required in the
Dockerfile
even though invalid values are ok. • No
<program>_REPO
-> abort • Correct
<program>_REPO
-> OK • Incorrect
<program>_REPO
-> OK Actual value is taken from
../dependencies/tool_metadata.yml
The-OpenROAD-Project/OpenLane