Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 0 additions & 8 deletions .github/workflows/docs-checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,14 +35,6 @@ jobs:

- name: Install Python dependencies
run: |
pip install git+https://github.com/gardenlinux/glrd.git@v4.1.0
# Install python-gardenlinux-lib from the same commit the aggregation
# documents (see repos-config.json). This keeps the installed gardenlinux
# module in sync with the fetched source so Sphinx autodoc can import
# gardenlinux.* (e.g. oci -> podman, distro_version -> semver) and generate
# the CLI/API reference pages. Pinning an older release tag here drops
# those deps and breaks the python-gardenlinux-lib-cli reference.
pip install git+https://github.com/gardenlinux/python-gardenlinux-lib.git@4da13c46b04d531d0bccfb5cb882f8581564af3b
pip install -r requirements.txt

- name: Run aggregate
Expand Down
8 changes: 0 additions & 8 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,14 +34,6 @@ jobs:

- name: Install Python dependencies
run: |
pip install git+https://github.com/gardenlinux/glrd.git@v4.1.0
# Install python-gardenlinux-lib from the same commit the aggregation
# documents (see repos-config.json). This keeps the installed gardenlinux
# module in sync with the fetched source so Sphinx autodoc can import
# gardenlinux.* (e.g. oci -> podman, distro_version -> semver) and generate
# the CLI/API reference pages. Pinning an older release tag here drops
# those deps and breaks the python-gardenlinux-lib-cli reference.
pip install git+https://github.com/gardenlinux/python-gardenlinux-lib.git@4da13c46b04d531d0bccfb5cb882f8581564af3b
pip install -r requirements.txt

- name: Run tests
Expand Down
8 changes: 0 additions & 8 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -39,14 +39,6 @@ help:
install:
@echo "Installing dependencies..."
pnpm install
pip install git+https://github.com/gardenlinux/glrd.git@v4.1.0
# Install python-gardenlinux-lib from the same commit the aggregation
# documents (see repos-config.json). This keeps the installed gardenlinux
# module in sync with the fetched source so Sphinx autodoc can import
# gardenlinux.* (e.g. oci -> podman, distro_version -> semver) and generate
# the CLI/API reference pages. Pinning an older release tag here drops
# those deps and breaks the python-gardenlinux-lib-cli reference.
pip install git+https://github.com/gardenlinux/python-gardenlinux-lib.git@4da13c46b04d531d0bccfb5cb882f8581564af3b
pip install -r requirements.txt

# Documentation Aggregation
Expand Down
4 changes: 2 additions & 2 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ black
isort
pytest
pyyaml
# glrd @ git+https://github.com/gardenlinux/glrd.git@v4.2.0
# gardenlinux @ git+https://github.com/gardenlinux/python-gardenlinux-lib.git@4da13c46b04d531d0bccfb5cb882f8581564af3b
glrd @ git+https://github.com/gardenlinux/glrd.git@v5.0.0
gardenlinux @ git+https://github.com/gardenlinux/python-gardenlinux-lib.git@0.10.24
sphinx
sphinx-markdown-builder
sphinx-rtd-theme
Expand Down
8 changes: 0 additions & 8 deletions src/aggregate.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@
from aggregation import DocsFetcher, copy_targeted_docs, load_config, save_config
from aggregation.flavor_matrix import generate_flavor_matrix_docs
from aggregation.github_api import GitHubAPIError, list_repo_releases
from aggregation.install_pins import sync_install_pins
from aggregation.release_notes import generate_release_notes_docs
from aggregation.releases import generate_release_docs
from aggregation.structure import verify_internal_links
Expand Down Expand Up @@ -281,13 +280,6 @@ def main() -> int:
save_config(str(config_path), repos)
print(f"\n✓ Config updated: {config_path}")

# Keep python-gardenlinux-lib install pins in sync with the lock so
# the aggregation environments install the same commit they document
# (see aggregation.install_pins for the full rationale).
pgl_commit = resolved_commits.get("python-gardenlinux-lib")
if pgl_commit:
sync_install_pins(project_root, pgl_commit)

# Generate flavor matrix documentation after all repos are aggregated
# Use the gardenlinux temp dir (still available inside the with block)
if gardenlinux_temp_dir and gardenlinux_temp_dir.exists():
Expand Down
81 changes: 0 additions & 81 deletions src/aggregation/install_pins.py

This file was deleted.

23 changes: 23 additions & 0 deletions src/aggregation/sphinx_builder.py
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,29 @@ def build_sphinx_markdown(

print(f" [sphinx] Building Markdown documentation from {docs_source}")

# Step 0: Install the fetched repo so that transitive deps (e.g. podman,
# semver) required by the locked source are available to Sphinx autodoc.
# This ensures the installed package always exactly matches the locked
# source, regardless of what is pinned in requirements.txt.
print(f" [sphinx] Installing package from fetched repo: {repo_dir}")
pip_result = subprocess.run(
[sys.executable, "-m", "pip", "install", str(repo_dir)],
capture_output=True,
text=True,
)
if pip_result.stdout:
for line in pip_result.stdout.splitlines():
print(f" [sphinx] {line}")
if pip_result.stderr:
for line in pip_result.stderr.splitlines():
print(f" [sphinx] {line}")
if pip_result.returncode != 0:
print(
f" [sphinx] pip install failed (exit {pip_result.returncode})",
file=sys.stderr,
)
return False

with tempfile.TemporaryDirectory() as tmp:
build_dir = Path(tmp) / "build"
build_dir.mkdir()
Expand Down
Loading