pypeline-runner 1.23.0__py3-none-any.whl → 1.23.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
pypeline/__init__.py CHANGED
@@ -1 +1 @@
1
- __version__ = "1.23.0"
1
+ __version__ = "1.23.1"
pypeline/bootstrap/run.py CHANGED
@@ -632,22 +632,31 @@ class CreateVirtualEnvironment(Runnable):
632
632
  except OSError as exc:
633
633
  logger.warning(f"Could not write Python version marker: {exc}")
634
634
 
635
+ def _set_env_var(self, key: str, value: str) -> None:
636
+ """Helper method to set environment variables (easier to mock in tests)."""
637
+ os.environ[key] = value
638
+
635
639
  def _ensure_in_project_venv(self) -> None:
636
640
  """Configure package managers to create venv in-project (.venv in repository)."""
637
641
  if self.package_manager_name == "poetry":
638
642
  # Set environment variable for poetry to create venv in-project
639
- os.environ["POETRY_VIRTUALENVS_IN_PROJECT"] = "true"
643
+ self._set_env_var("POETRY_VIRTUALENVS_IN_PROJECT", "true")
640
644
  elif self.package_manager_name == "pipenv":
641
645
  # Set environment variable for pipenv
642
- os.environ["PIPENV_VENV_IN_PROJECT"] = "1"
646
+ self._set_env_var("PIPENV_VENV_IN_PROJECT", "1")
643
647
  # UV creates .venv in-project by default, no configuration needed
644
648
 
645
649
  def _ensure_correct_python_version(self) -> None:
646
650
  """Ensure the correct Python version is used in the virtual environment."""
647
651
  if self.package_manager_name == "poetry":
648
652
  # Make Poetry use the Python interpreter it's being run with
649
- os.environ["POETRY_VIRTUALENVS_PREFER_ACTIVE_PYTHON"] = "false"
650
- os.environ["POETRY_VIRTUALENVS_USE_POETRY_PYTHON"] = "true"
653
+ self._set_env_var("POETRY_VIRTUALENVS_PREFER_ACTIVE_PYTHON", "false")
654
+ self._set_env_var("POETRY_VIRTUALENVS_USE_POETRY_PYTHON", "true")
655
+ elif self.package_manager_name == "uv":
656
+ # Make UV use the Python interpreter it's being run with
657
+ self._set_env_var("UV_PYTHON", self.config.python_version)
658
+ self._set_env_var("UV_MANAGED_PYTHON", "false")
659
+ self._set_env_var("UV_NO_PYTHON_DOWNLOADS", "true")
651
660
 
652
661
  def _get_install_argument(self) -> str:
653
662
  if self.package_manager_name == "uv":
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pypeline-runner
3
- Version: 1.23.0
3
+ Version: 1.23.1
4
4
  Summary: Configure and execute pipelines with Python (similar to GitHub workflows or Jenkins pipelines).
5
5
  License: MIT
6
6
  License-File: LICENSE
@@ -1,7 +1,7 @@
1
- pypeline/__init__.py,sha256=ytSrJKh9KOuUfqP3DPPNXc0__n_XE-EgHA5DOGwts50,23
1
+ pypeline/__init__.py,sha256=Te04gNurllfONzd7M0nsNTZO9JSIaGvcIlfabJLS-mk,23
2
2
  pypeline/__run.py,sha256=TCdaX05Qm3g8T4QYryKB25Xxf0L5Km7hFOHe1mK9vI0,350
3
3
  pypeline/bootstrap/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
- pypeline/bootstrap/run.py,sha256=tFyi5LeH8OY9EjqvJww2Ruq6XVv0t3dDpmG5sU-VfyY,32167
4
+ pypeline/bootstrap/run.py,sha256=nWin5KOw8jlGcNopelKSWqA2D1schtsk1xsQXHfN_Q8,32687
5
5
  pypeline/domain/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
6
  pypeline/domain/artifacts.py,sha256=5k7cVfHhLmvWXNuHKxXb9ca4Lxu0JytGQqazENCeKEU,1404
7
7
  pypeline/domain/config.py,sha256=6vWdHi7B6MA7NGi9wWXQE-YhSg1COSRmc3b1ji6AdAk,2053
@@ -25,8 +25,8 @@ pypeline/steps/create_venv.py,sha256=MrA1zfwabVIjFLP47wagyR2JVUP3SSrLTQNqQdtWi-Y
25
25
  pypeline/steps/env_setup_script.py,sha256=L8TwGo_Ugo2r4Z10MxtE0P8w0ApAxMKCHMnW-NkyG3w,4968
26
26
  pypeline/steps/scoop_install.py,sha256=2MhsJ0iPmL8ueQhI52sKjVY9fqzj5xOQweQ65C0onfE,4117
27
27
  pypeline/steps/west_install.py,sha256=hPyr28ksdKsQ0tv0gMNytzupgk1IgjN9CpmaBdX5zps,1947
28
- pypeline_runner-1.23.0.dist-info/METADATA,sha256=i8_6yzoi_RG4t7Hznpu5x12Rqk5-_qkmqL6wiE49xho,7659
29
- pypeline_runner-1.23.0.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
30
- pypeline_runner-1.23.0.dist-info/entry_points.txt,sha256=pe1u0uuhPI_yeQ0KjEw6jK-EvQfPcZwBSajgbAdKz1o,47
31
- pypeline_runner-1.23.0.dist-info/licenses/LICENSE,sha256=sKxdoqSmW9ezvPvt0ZGJbneyA0SBcm0GiqzTv2jN230,1066
32
- pypeline_runner-1.23.0.dist-info/RECORD,,
28
+ pypeline_runner-1.23.1.dist-info/METADATA,sha256=IGtI7OaoEqka89dOeEpZH0bnI_kk4ENb2YESxlOh4O4,7659
29
+ pypeline_runner-1.23.1.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
30
+ pypeline_runner-1.23.1.dist-info/entry_points.txt,sha256=pe1u0uuhPI_yeQ0KjEw6jK-EvQfPcZwBSajgbAdKz1o,47
31
+ pypeline_runner-1.23.1.dist-info/licenses/LICENSE,sha256=sKxdoqSmW9ezvPvt0ZGJbneyA0SBcm0GiqzTv2jN230,1066
32
+ pypeline_runner-1.23.1.dist-info/RECORD,,