Description
Crawler can not make os feature for specified os image, that is because os_utils.py expects to get os name and os version simultaneously. Crawler retrieves os related info from distribution dependent file (such as /etc/lsb-release and /etc/os-release), but distribution dependent file does not often contain mandatory info that we expect. Especially in debian testing & unstable version (i.e. debian/buster/sid), os version info is missing.
How to Reproduce
We can reproduce it by using tomcat:9.0 and debian:latest. tomcat:9.0 builds on top of debian unstable release, and debian:latest builds on top of debian stable release.
- tomcat:9.0 (
VERSION_ID does not exist)
root@host:~# docker run --entrypoint /bin/bash -it tomcat:9.0
root@19161a41c6d0:/usr/local/tomcat# cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux buster/sid"
NAME="Debian GNU/Linux"
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
- debian:latest (
VERSION_ID exists)
root@host:~# docker run -it debian:latest
root@a52168c9ac1a:/# cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 9 (stretch)"
NAME="Debian GNU/Linux"
VERSION_ID="9"
VERSION="9 (stretch)"
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
Log Output
Debugging Commands Output
Output of docker version:
Output of docker info:
Output of python --version:
Output of pip freeze:
Description
Crawler can not make os feature for specified os image, that is because
os_utils.pyexpects to getos nameandos versionsimultaneously. Crawler retrieves os related info from distribution dependent file (such as/etc/lsb-releaseand/etc/os-release), but distribution dependent file does not often contain mandatory info that we expect. Especially in debian testing & unstable version (i.e.debian/buster/sid),os versioninfo is missing.How to Reproduce
We can reproduce it by using
tomcat:9.0anddebian:latest.tomcat:9.0builds on top ofdebian unstable release, anddebian:latestbuilds on top ofdebian stable release.VERSION_IDdoes not exist)VERSION_IDexists)Log Output
Debugging Commands Output
Output of
docker version:Output of
docker info:Output of
python --version:Output of
pip freeze: