troeger / fuzzed

The Open Reliability Editor (ORE) for dependability modeling and analysis.
https://live.ore-project.org
20 stars 9 forks source link

fix non-reproducible builds re dependencies #124

Open daniel-richter opened 2 years ago

daniel-richter commented 2 years ago

docker build was not reproducible due to dependencies whithout versioning

daniel-richter commented 2 years ago

FYI: Versions of dependencies (apt, pip) installed via frontend/docker/Dockerfile and backend/docker/Dockerfile in our running enviroment.

Frontend

$ docker exec -it ore-back-dev bash
$ cat /etc/lsb-release

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.7 LTS"
$ apt list | grep -E "$(sed 's/\([a-zA-Z0-9-]\+\)\s*/^\1\/|/g' <<< 'python python-pip libboost-dev libboost-graph-dev libboost-date-time-dev libboost-system-dev libboost-filesystem-dev libboost-program-options-dev cmake gcc libxerces-c-dev xsdcxx')_"

cmake/now 3.5.1-1ubuntu3 amd64 [installed,local]
gcc/now 4:5.3.1-1ubuntu1 amd64 [installed,local]
libboost-date-time-dev/now 1.58.0.1ubuntu1 amd64 [installed,local]
libboost-dev/now 1.58.0.1ubuntu1 amd64 [installed,local]
libboost-filesystem-dev/now 1.58.0.1ubuntu1 amd64 [installed,local]
libboost-graph-dev/now 1.58.0.1ubuntu1 amd64 [installed,local]
libboost-program-options-dev/now 1.58.0.1ubuntu1 amd64 [installed,local]
libboost-system-dev/now 1.58.0.1ubuntu1 amd64 [installed,local]
libxerces-c-dev/now 3.1.3+debian-1 amd64 [installed,local]
python/now 2.7.12-1~16.04 amd64 [installed,local]
python-pip/now 8.1.1-2ubuntu0.6 all [installed,local]
xsdcxx/now 4.0.0-4 amd64 [installed,local
$ pip list | grep -E "$(sed 's/\([a-zA-Z0-9-]\+\)\(==[0-9.]*\)\?\s*/^\1 |/g' <<< 'requests')_"

requests (2.27.1)

Backend

$ docker exec -it ore-front-dev bash
$ cat /etc/lsb-release

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=18.04
DISTRIB_CODENAME=bionic
DISTRIB_DESCRIPTION="Ubuntu 18.04.6 LTS"
$ apt list | grep -E "$(sed 's/\([a-zA-Z0-9-]\+\)\s*/^\1\/|/g' <<< 'python-dev python-pip scons npm git netcat')_"

git/bionic-updates,bionic-security,now 1:2.17.1-1ubuntu0.11 amd64 [installed]
netcat/bionic,now 1.10-41.1 all [installed]
npm/bionic,now 3.5.2-0ubuntu4 all [installed]
python-dev/bionic,now 2.7.15~rc1-1 amd64 [installed]
python-pip/bionic-updates,now 9.0.1-2.3~ubuntu1.18.04.5 all [installed]
scons/bionic,now 3.0.1-1 all [installed]
$ pip list | grep -E "$(sed 's/\([a-zA-Z0-9-]\+\)\(==[0-9.]*\)\?\s*/^\1 |/g' <<< 'PyXB defusedxml psycopg2-binary django==1.8.18 python-social-auth==0.2.21 python-openid python-oauth2 django-require django-robots django-configurations==2.0 requests_oauthlib')_"

defusedxml (0.7.1)
django-configurations (2.0)
django-require (1.0.11)
django-robots (4.0)
psycopg2-binary (2.8.6)
python-oauth2 (1.1.1)
python-openid (2.2.5)
python-social-auth (0.2.21)
PyXB (1.2.6)
requests (2.27.1)