From c8c2ab24dd5965757d37d2fd95db917d52566edb Mon Sep 17 00:00:00 2001 From: Amir MOHAMMADI <amir.mohammadi@idiap.ch> Date: Mon, 18 Oct 2021 10:33:50 +0200 Subject: [PATCH] Install yum_requirements.txt in all cases in the CI --- bob/devtools/data/gitlab-ci/single-package.yaml | 1 - bob/devtools/scripts/build.py | 14 +++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/bob/devtools/data/gitlab-ci/single-package.yaml b/bob/devtools/data/gitlab-ci/single-package.yaml index fc521f38..dc324c58 100644 --- a/bob/devtools/data/gitlab-ci/single-package.yaml +++ b/bob/devtools/data/gitlab-ci/single-package.yaml @@ -84,7 +84,6 @@ build_linux_38: PYTHON_VERSION: "3.8" BUILD_EGG: "true" script: - - if [ -f "${CI_PROJECT_DIR}/conda/yum_requirements.txt" ]; then /usr/bin/sudo -n yum -y install $(cat ${CI_PROJECT_DIR}/conda/yum_requirements.txt); fi # [linux] - bdt ci build -vv - bdt ci readme -vv dist/*.zip - bdt ci clean -vv diff --git a/bob/devtools/scripts/build.py b/bob/devtools/scripts/build.py index 252bff15..47226be8 100644 --- a/bob/devtools/scripts/build.py +++ b/bob/devtools/scripts/build.py @@ -8,7 +8,7 @@ import click import conda_build.api import yaml -from ..bootstrap import get_channels, set_environment +from ..bootstrap import get_channels, run_cmdline, set_environment from ..build import ( conda_arch, get_docserver_setup, @@ -248,6 +248,18 @@ def build( if not os.path.exists(d): raise RuntimeError("The directory %s does not exist" % d) + # If in docker, install the packages inside the yum_requirements.txt file if it exists + yum_requirements_file = os.path.join(d, "yum_requirements.txt") + if "docker" in os.environ.get("CI_RUNNER_TAGS", "") and os.path.exists( + yum_requirements_file + ): + logger.info( + "Installing packages from yum_requirements.txt file using yum" + ) + cmd = ["/usr/bin/sudo", "-n", "yum", "-y", "install"] + cmd.extend(open(yum_requirements_file).read().splitlines()) + run_cmdline(cmd) + version_candidate = os.path.join(d, "..", "version.txt") if os.path.exists(version_candidate): version = open(version_candidate).read().rstrip() -- GitLab