From 9de84256ddd3a244c4dcb45bc570c16d8432e239 Mon Sep 17 00:00:00 2001 From: Chris Burr Date: Mon, 25 Aug 2025 11:11:56 +0200 Subject: [PATCH 1/3] fix: Installing multiple modules in InstallDIRAC command --- Pilot/pilotCommands.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Pilot/pilotCommands.py b/Pilot/pilotCommands.py index 945a6b78..4815f44b 100644 --- a/Pilot/pilotCommands.py +++ b/Pilot/pilotCommands.py @@ -357,10 +357,11 @@ def _localInstallDIRAC(self): self._saveEnvInFile() # 7. pip install DIRAC[pilot] - pipInstalling = "pip install %s " % self.pp.pipInstallOptions + pipInstallingPrefix = "pip install %s " % self.pp.pipInstallOptions if self.pp.modules: # install a non-released (on pypi) version for modules in self.pp.modules.split(","): + pipInstalling = pipInstallingPrefix branch = project = "" elements = modules.split(":::") url = "" @@ -385,9 +386,9 @@ def _localInstallDIRAC(self): else: # pip install DIRAC[pilot]==version ExtensionDIRAC[pilot]==version_ext if not self.releaseVersion or self.releaseVersion in ["master", "main", "integration"]: - cmd = "%s %sDIRAC[pilot]" % (pipInstalling, self.pp.releaseProject) + cmd = "%s %sDIRAC[pilot]" % (pipInstallingPrefix, self.pp.releaseProject) else: - cmd = "%s %sDIRAC[pilot]==%s" % (pipInstalling, self.pp.releaseProject, self.releaseVersion) + cmd = "%s %sDIRAC[pilot]==%s" % (pipInstallingPrefix, self.pp.releaseProject, self.releaseVersion) retCode, output = self.executeAndGetOutput(cmd, self.pp.installEnv) if retCode: self.log.error("Could not pip install %s [ERROR %d]" % (self.releaseVersion, retCode)) From 022e1e67df421a774dc193cdfeb66e5f59ca3495 Mon Sep 17 00:00:00 2001 From: Chris Burr Date: Mon, 25 Aug 2025 11:34:25 +0200 Subject: [PATCH 2/3] test: disable fail-fast in matrix builds to allow partial success --- .github/workflows/basic.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/basic.yml b/.github/workflows/basic.yml index d42df061..ae6e90e5 100644 --- a/.github/workflows/basic.yml +++ b/.github/workflows/basic.yml @@ -21,6 +21,7 @@ jobs: timeout-minutes: 10 strategy: + fail-fast: false matrix: python: - 2.7.18 @@ -51,6 +52,7 @@ jobs: timeout-minutes: 10 strategy: + fail-fast: false matrix: python: - 2.7.18 @@ -75,6 +77,7 @@ jobs: timeout-minutes: 10 strategy: + fail-fast: false matrix: python: - 2.7.18 From b0d20d07e39fe773e6ac65eec931ab3ca857c514 Mon Sep 17 00:00:00 2001 From: Chris Burr Date: Mon, 25 Aug 2025 11:34:39 +0200 Subject: [PATCH 3/3] test: use debian archive repositories for legacy python containers Configures pytest containers to use archive.debian.org for package installation with legacy Python versions that have outdated sources. --- .github/workflows/basic.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/basic.yml b/.github/workflows/basic.yml index ae6e90e5..e0f9221b 100644 --- a/.github/workflows/basic.yml +++ b/.github/workflows/basic.yml @@ -64,8 +64,10 @@ jobs: - uses: actions/checkout@v3 - name: Installing dependencies run: | + echo 'deb http://archive.debian.org/debian stretch main' > /etc/apt/sources.list + echo 'deb http://archive.debian.org/debian-security stretch/updates main' >> /etc/apt/sources.list + apt-get update || true python -m pip install pytest mock - apt-get update apt install -y voms-clients - name: Run pytest run: pytest