mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 02:54:26 +00:00
bf9c5be173 capped the bootstrap at 3.14 with constants inside install.sh, a
second copy of the range pyproject.toml already declares. requires-python is
now the single source (>=3.11,<3.15): install.sh derives its floor and cap
from it, in the repository or, on a remote host where the script runs alone,
from INFINITO_PYTHON_REQUIRES that the dev-python role reads from the same
file; any other form fails loudly. The Dockerfile copies pyproject.toml
before the bootstrap, and pip now refuses 3.15 for the package as well.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
18 lines
553 B
YAML
18 lines
553 B
YAML
---
|
|
- name: 📂 Include dependency 'sys-pip'
|
|
include_role:
|
|
name: sys-pip
|
|
when: run_once_sys_pip is not defined
|
|
|
|
- name: 📦 Install and prefer the highest supported Python as default
|
|
ansible.builtin.script: "{{ role_path }}/files/shell/install.sh"
|
|
environment:
|
|
SKIP_DOCKER_APT_SANITIZER: "1"
|
|
INFINITO_PYTHON_REQUIRES: >-
|
|
{{ lookup('file', lookup('path_absolute', 'pyproject.toml'))
|
|
| regex_search('(?m)^requires-python\s*=\s*"([^"]+)"', '\1')
|
|
| first }}
|
|
become: true
|
|
|
|
- include_tasks: utils/once/flag.yml
|