mirror of
git://code.qt.io/qt/qt5.git
synced 2026-05-10 04:58:08 +08:00
coin: Add python packages to allow validating Qt generated SBOM files
Add a sbom_requirements.txt file and install it using the
various platform specific pip installations.
Partially restores b87b44168c but
without the wheel cache.
Pick-to: 6.8
Task-number: QTBUG-122899
Change-Id: I8002898866acbc226ffebb59dcf5b3a58237ea34
Reviewed-by: Toni Saario <toni.saario@qt.io>
This commit is contained in:
@@ -24,6 +24,7 @@ echo "Configure pip"
|
|||||||
/Library/Frameworks/Python.framework/Versions/3.11/bin/pip3 config --user set global.extra-index-url https://pypi.org/simple/
|
/Library/Frameworks/Python.framework/Versions/3.11/bin/pip3 config --user set global.extra-index-url https://pypi.org/simple/
|
||||||
|
|
||||||
/Library/Frameworks/Python.framework/Versions/3.11/bin/pip3 install virtualenv wheel html5lib
|
/Library/Frameworks/Python.framework/Versions/3.11/bin/pip3 install virtualenv wheel html5lib
|
||||||
|
/Library/Frameworks/Python.framework/Versions/3.11/bin/pip3 install -r ${BASH_SOURCE%/*}/../shared/sbom_requirements.txt
|
||||||
|
|
||||||
SetEnvVar "PYTHON3_PATH" "/Library/Frameworks/Python.framework/Versions/3.11/bin"
|
SetEnvVar "PYTHON3_PATH" "/Library/Frameworks/Python.framework/Versions/3.11/bin"
|
||||||
SetEnvVar "PIP3_PATH" "/Library/Frameworks/Python.framework/Versions/3.11/bin"
|
SetEnvVar "PIP3_PATH" "/Library/Frameworks/Python.framework/Versions/3.11/bin"
|
||||||
|
|||||||
5
coin/provisioning/common/shared/sbom_requirements.txt
Normal file
5
coin/provisioning/common/shared/sbom_requirements.txt
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
# Python packages used to validate and audit Qt SBOM informaiton
|
||||||
|
spdx-tools>=0.8.0
|
||||||
|
ntia-conformance-checker
|
||||||
|
sbomaudit
|
||||||
|
sbom2doc
|
||||||
@@ -78,6 +78,12 @@ Run-Executable "$install_path\python.exe" "-m pip config --user set global.index
|
|||||||
Run-Executable "$install_path\python.exe" "-m pip config --user set global.extra-index-url https://pypi.org/simple/"
|
Run-Executable "$install_path\python.exe" "-m pip config --user set global.extra-index-url https://pypi.org/simple/"
|
||||||
Run-Executable "$install_path\Scripts\pip3.exe" "$pip_args install virtualenv wheel html5lib"
|
Run-Executable "$install_path\Scripts\pip3.exe" "$pip_args install virtualenv wheel html5lib"
|
||||||
|
|
||||||
|
# Check if python version is higher than 3.8.
|
||||||
|
# ntia-conformance-checker requires at least 3.8
|
||||||
|
if ([version]::Parse($version) -gt [version]::Parse("3.8")) {
|
||||||
|
Run-Executable "$install_path\Scripts\pip3.exe" "$pip_args install -r $PSScriptRoot\..\shared\sbom_requirements.txt"
|
||||||
|
}
|
||||||
|
|
||||||
# Install PyPDF2 for QSR documentation
|
# Install PyPDF2 for QSR documentation
|
||||||
Run-Executable "$install_path\Scripts\pip3.exe" "$pip_args install PyPDF2"
|
Run-Executable "$install_path\Scripts\pip3.exe" "$pip_args install PyPDF2"
|
||||||
|
|
||||||
|
|||||||
@@ -256,6 +256,8 @@ sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install cmake apt-cacher-ng -t
|
|||||||
# Disable keyring password prompt
|
# Disable keyring password prompt
|
||||||
keyring --disable
|
keyring --disable
|
||||||
|
|
||||||
|
pip install --user -r "${BASH_SOURCE%/*}/../common/shared/sbom_requirements.txt"
|
||||||
|
|
||||||
# SetEnvVar "PATH" "/usr/lib/nodejs-mozilla/bin:\$PATH"
|
# SetEnvVar "PATH" "/usr/lib/nodejs-mozilla/bin:\$PATH"
|
||||||
|
|
||||||
#OpenSSLVersion="$(openssl version |cut -b 9-14)"
|
#OpenSSLVersion="$(openssl version |cut -b 9-14)"
|
||||||
|
|||||||
@@ -164,9 +164,11 @@ sudo pip config --user set global.extra-index-url https://pypi.org/simple/
|
|||||||
sudo pip3 install virtualenv wheel
|
sudo pip3 install virtualenv wheel
|
||||||
# Just make sure we have virtualenv to run with python3.8 -m virtualenv
|
# Just make sure we have virtualenv to run with python3.8 -m virtualenv
|
||||||
sudo python3.11 -m pip install virtualenv wheel
|
sudo python3.11 -m pip install virtualenv wheel
|
||||||
|
sudo python3.11 -m pip install -r "${BASH_SOURCE%/*}/../common/shared/sbom_requirements.txt"
|
||||||
|
|
||||||
sudo /usr/bin/pip3 install wheel
|
sudo /usr/bin/pip3 install wheel
|
||||||
sudo /usr/bin/pip3 install dataclasses
|
sudo /usr/bin/pip3 install dataclasses
|
||||||
|
# No sbom_requirements.txt, because it requires Python 3.9 for poetry_core -> spdx_tools and we have 3.8
|
||||||
|
|
||||||
OpenSSLVersion="$(openssl3 version |cut -b 9-14)"
|
OpenSSLVersion="$(openssl3 version |cut -b 9-14)"
|
||||||
echo "System's OpenSSL = $OpenSSLVersion" >> ~/versions.txt
|
echo "System's OpenSSL = $OpenSSLVersion" >> ~/versions.txt
|
||||||
|
|||||||
@@ -176,8 +176,10 @@ sudo pip config --user set global.extra-index-url https://pypi.org/simple/
|
|||||||
sudo pip3 install virtualenv wheel
|
sudo pip3 install virtualenv wheel
|
||||||
# Just make sure we have virtualenv to run with python3.8 -m virtualenv
|
# Just make sure we have virtualenv to run with python3.8 -m virtualenv
|
||||||
sudo python -m pip install virtualenv wheel
|
sudo python -m pip install virtualenv wheel
|
||||||
|
sudo python -m pip install -r "${BASH_SOURCE%/*}/../common/shared/sbom_requirements.txt"
|
||||||
|
|
||||||
sudo /usr/bin/pip3 install wheel
|
sudo /usr/bin/pip3 install wheel
|
||||||
|
sudo /usr/bin/pip3 install -r "${BASH_SOURCE%/*}/../common/shared/sbom_requirements.txt"
|
||||||
|
|
||||||
# Make FindPython3.cmake to find python3
|
# Make FindPython3.cmake to find python3
|
||||||
sudo ln -s /usr/bin/python3 /usr/local/bin/python3
|
sudo ln -s /usr/bin/python3 /usr/local/bin/python3
|
||||||
|
|||||||
@@ -71,6 +71,7 @@ python3 --version | grep -F "$python3Version"
|
|||||||
|
|
||||||
pip3 install --user wheel
|
pip3 install --user wheel
|
||||||
pip3 install --user virtualenv
|
pip3 install --user virtualenv
|
||||||
|
pip3 install --user -r "${BASH_SOURCE%/*}/../common/shared/sbom_requirements.txt"
|
||||||
|
|
||||||
# shellcheck source=../common/unix/SetEnvVar.sh
|
# shellcheck source=../common/unix/SetEnvVar.sh
|
||||||
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
|
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
|
||||||
|
|||||||
@@ -245,6 +245,7 @@ sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y -o DPkg::Lock::Timeout=300 ins
|
|||||||
# Configure pip
|
# Configure pip
|
||||||
pip config --user set global.index https://ci-files01-hki.ci.qt.io/input/python_module_cache
|
pip config --user set global.index https://ci-files01-hki.ci.qt.io/input/python_module_cache
|
||||||
pip config --user set global.extra-index-url https://pypi.org/simple/
|
pip config --user set global.extra-index-url https://pypi.org/simple/
|
||||||
|
pip install --user -r "${BASH_SOURCE%/*}/../common/shared/sbom_requirements.txt"
|
||||||
|
|
||||||
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
|
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
|
||||||
# SetEnvVar "PATH" "/usr/lib/nodejs-mozilla/bin:\$PATH"
|
# SetEnvVar "PATH" "/usr/lib/nodejs-mozilla/bin:\$PATH"
|
||||||
|
|||||||
@@ -239,6 +239,9 @@ sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y -o DPkg::Lock::Timeout=300 ins
|
|||||||
# Configure pip
|
# Configure pip
|
||||||
pip config --user set global.index https://ci-files01-hki.ci.qt.io/input/python_module_cache
|
pip config --user set global.index https://ci-files01-hki.ci.qt.io/input/python_module_cache
|
||||||
pip config --user set global.extra-index-url https://pypi.org/simple/
|
pip config --user set global.extra-index-url https://pypi.org/simple/
|
||||||
|
# Ubuntu 24.04 comes with a newer pip that disallows installing into the system site-packages,
|
||||||
|
# so we explicitly ask it to allow it.
|
||||||
|
pip install --user -r "${BASH_SOURCE%/*}/../common/shared/sbom_requirements.txt" --break-system-packages
|
||||||
|
|
||||||
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
|
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
|
||||||
# SetEnvVar "PATH" "/usr/lib/nodejs-mozilla/bin:\$PATH"
|
# SetEnvVar "PATH" "/usr/lib/nodejs-mozilla/bin:\$PATH"
|
||||||
|
|||||||
@@ -250,6 +250,9 @@ sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y -o DPkg::Lock::Timeout=300 ins
|
|||||||
# Configure pip
|
# Configure pip
|
||||||
pip config --user set global.index https://ci-files01-hki.ci.qt.io/input/python_module_cache
|
pip config --user set global.index https://ci-files01-hki.ci.qt.io/input/python_module_cache
|
||||||
pip config --user set global.extra-index-url https://pypi.org/simple/
|
pip config --user set global.extra-index-url https://pypi.org/simple/
|
||||||
|
# Ubuntu 24.04 comes with a newer pip that disallows installing into the system site-packages,
|
||||||
|
# so we explicitly ask it to allow it.
|
||||||
|
pip install --user -r "${BASH_SOURCE%/*}/../common/shared/sbom_requirements.txt" --break-system-packages
|
||||||
|
|
||||||
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
|
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
|
||||||
# SetEnvVar "PATH" "/usr/lib/nodejs-mozilla/bin:\$PATH"
|
# SetEnvVar "PATH" "/usr/lib/nodejs-mozilla/bin:\$PATH"
|
||||||
|
|||||||
@@ -14,5 +14,6 @@ sudo zypper -nq install python-devel python-xml
|
|||||||
# install python3
|
# install python3
|
||||||
sudo zypper -nq install python311-base python311-devel python311-pip python311-virtualenv python311-wheel
|
sudo zypper -nq install python311-base python311-devel python311-pip python311-virtualenv python311-wheel
|
||||||
python3.11 -m pip install selenium netifaces scache webdriver-manager
|
python3.11 -m pip install selenium netifaces scache webdriver-manager
|
||||||
|
python3.11 -m pip install -r "${BASH_SOURCE%/*}/../common/shared/sbom_requirements.txt"
|
||||||
|
|
||||||
SetEnvVar "PYTHON3_EXECUTABLE" "/usr/bin/python3.11"
|
SetEnvVar "PYTHON3_EXECUTABLE" "/usr/bin/python3.11"
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
|
|||||||
pyenv install 3.9.7
|
pyenv install 3.9.7
|
||||||
|
|
||||||
/Users/qt/.pyenv/versions/3.9.7/bin/pip3 install --user install virtualenv wheel html5lib
|
/Users/qt/.pyenv/versions/3.9.7/bin/pip3 install --user install virtualenv wheel html5lib
|
||||||
|
/Users/qt/.pyenv/versions/3.9.7/bin/pip3 install --user -r ${BASH_SOURCE%/*}/../common/shared/sbom_requirements.txt
|
||||||
|
|
||||||
SetEnvVar "PYTHON3_PATH" "/Users/qt/.pyenv/versions/3.9.7/bin/"
|
SetEnvVar "PYTHON3_PATH" "/Users/qt/.pyenv/versions/3.9.7/bin/"
|
||||||
SetEnvVar "PIP3_PATH" "/Users/qt/.pyenv/versions/3.9.7/bin/"
|
SetEnvVar "PIP3_PATH" "/Users/qt/.pyenv/versions/3.9.7/bin/"
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
|
|||||||
pyenv install 3.9.7
|
pyenv install 3.9.7
|
||||||
|
|
||||||
/Users/qt/.pyenv/versions/3.9.7/bin/pip3 install --user install virtualenv wheel html5lib
|
/Users/qt/.pyenv/versions/3.9.7/bin/pip3 install --user install virtualenv wheel html5lib
|
||||||
|
/Users/qt/.pyenv/versions/3.9.7/bin/pip3 install --user -r ${BASH_SOURCE%/*}/../common/shared/sbom_requirements.txt
|
||||||
|
|
||||||
SetEnvVar "PYTHON3_PATH" "/Users/qt/.pyenv/versions/3.9.7/bin/"
|
SetEnvVar "PYTHON3_PATH" "/Users/qt/.pyenv/versions/3.9.7/bin/"
|
||||||
SetEnvVar "PIP3_PATH" "/Users/qt/.pyenv/versions/3.9.7/bin/"
|
SetEnvVar "PIP3_PATH" "/Users/qt/.pyenv/versions/3.9.7/bin/"
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
|
|||||||
pyenv install 3.9.7
|
pyenv install 3.9.7
|
||||||
|
|
||||||
/Users/qt/.pyenv/versions/3.9.7/bin/pip3 install --user install virtualenv wheel html5lib
|
/Users/qt/.pyenv/versions/3.9.7/bin/pip3 install --user install virtualenv wheel html5lib
|
||||||
|
/Users/qt/.pyenv/versions/3.9.7/bin/pip3 install --user -r ${BASH_SOURCE%/*}/../common/shared/sbom_requirements.txt
|
||||||
|
|
||||||
SetEnvVar "PYTHON3_PATH" "/Users/qt/.pyenv/versions/3.9.7/bin/"
|
SetEnvVar "PYTHON3_PATH" "/Users/qt/.pyenv/versions/3.9.7/bin/"
|
||||||
SetEnvVar "PIP3_PATH" "/Users/qt/.pyenv/versions/3.9.7/bin/"
|
SetEnvVar "PIP3_PATH" "/Users/qt/.pyenv/versions/3.9.7/bin/"
|
||||||
|
|||||||
Reference in New Issue
Block a user