diff --git a/CHANGELOG.md b/CHANGELOG.md index 3c9efe18..5b401add 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,12 @@ - Example: 10.2.1.4 is the 5th version that supports khiops 10.2.1. - Internals: Changes in *Internals* sections are unlikely to be of interest for data scientists. +## Unreleased + +### Fixed +- (General) Automatic Credentials Discovery-based credential retrieval for + Google cloud storage (GCS). + ## 11.0.0.0 - 2025-12-19 ### Added diff --git a/khiops/core/internals/runner.py b/khiops/core/internals/runner.py index cb8b68f5..314d0de7 100644 --- a/khiops/core/internals/runner.py +++ b/khiops/core/internals/runner.py @@ -337,9 +337,8 @@ def _build_khiops_process_environment(): # Ensure HOME is always set for OpenMPI 5+ # (using KHIOPS_MPI_HOME if it exists) - khiops_env["HOME"] = os.path.pathsep.join( - [khiops_env.get("KHIOPS_MPI_HOME", ""), khiops_env.get("HOME", "")] - ) + if "HOME" not in khiops_env: + khiops_env["HOME"] = khiops_env.get("KHIOPS_MPI_HOME", "") return khiops_env diff --git a/tests/test_khiops_integrations.py b/tests/test_khiops_integrations.py index c7eff0ed..66a76a58 100644 --- a/tests/test_khiops_integrations.py +++ b/tests/test_khiops_integrations.py @@ -291,6 +291,9 @@ def test_runner_environment_for_openmpi5(self): """Test if KHIOPS_MPI_HOME is actually exported and HOME is corrected for OpenMPI 5+""" + # Store initial HOME, then delete it from the environment + initial_home = os.environ.pop("HOME", "") + # Trigger the environment initialization _ = kh.get_runner().khiops_version @@ -300,13 +303,16 @@ def test_runner_environment_for_openmpi5(self): self.assertIsNotNone(os.environ.get("KHIOPS_MPI_HOME")) # Check HOME is corrected in the new process environment + self.assertIn("HOME", khiops_env) self.assertEqual( - os.path.pathsep.join( - [khiops_env.get("KHIOPS_MPI_HOME", ""), os.environ.get("HOME", "")] - ), - khiops_env.get("HOME"), + khiops_env["KHIOPS_MPI_HOME"], + khiops_env["HOME"], ) + # Restore initial HOME in the environment + if initial_home: + os.environ["HOME"] = initial_home + def test_runner_environment_initialization(self): """Test that local runner initializes/ed its environment properly