Skip to content

Generate Pulumi SDK docs - Python @v3.238.0#18982

Closed
pulumi-bot wants to merge 7 commits into
masterfrom
pulumi-sdk-python-docs/25836164978-2
Closed

Generate Pulumi SDK docs - Python @v3.238.0#18982
pulumi-bot wants to merge 7 commits into
masterfrom
pulumi-sdk-python-docs/25836164978-2

Conversation

@pulumi-bot
Copy link
Copy Markdown
Collaborator

Automated PR generated by the Pulumi SDK docs - Python workflow (.github/workflows/pulumi-sdk-python-docs.yml).

Workflow run: https://github.com/pulumi/docs/actions/runs/25836164978

jkodroff and others added 7 commits May 13, 2026 20:35
Replaces the implicit "one shared sphinx docset spanning all packages"
model with three independent per-package docsets. Each per-package
workflow now produces output that depends only on its own package; a
regen of one package no longer affects the rendered HTML of the others.

Layout change:

- tools/pydocgen/source/pulumi/         — own conf.py + index.rst
- tools/pydocgen/source/pulumi_policy/  — own conf.py + index.rst
- tools/pydocgen/source/pulumi_esc_sdk/ — own conf.py + index.rst

Each conf.py displays the installed package version (via
importlib.metadata.version) in the rendered docs' sidebar, so reference
pages now indicate which release they correspond to. Falls back to
"unknown" if the package isn't installed (e.g. local dev without pipenv).

generate_python_docs.sh is simpler: pick the right source/<PACKAGE>/ dir
and build directly to static-prebuilt/.../python/<PACKAGE>/. No temp
dirs, no fabricated single-package toctree. Install only the target
package (and pulumi where Policy needs it for autodoc).

Adds a Hugo content stub at content/docs/reference/pkg/python/ that
replaces the sphinx-generated unified parent index.html. Hugo runs after
the static-prebuilt copy step in build-site.sh, so the new _index.md
will override the orphaned sphinx index.html on the next deploy.

This is a corollary of issue #18934 (Part 4 follow-up). Fixes a
regression where PR #18980's preview site showed only the pulumi package
without sibling-package sidebar links — the per-package builds were
correctly producing isolated output, but the layout assumed a shared
docset.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Three new cards under Reference for the ESC SDK across the three
languages it ships: TypeScript (Node.js), Python, and Go. Mirrors the
"Language SDKs" and "Policy SDKs" sections immediately above.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The dotnet and python per-language reference pages have _index.md
landing pages listing their available SDKs, but nodejs did not, so
/docs/reference/pkg/nodejs/ surfaced no ESC SDK link. Mirror the
python/_index.md structure with the three Node.js SDKs.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Hugo's dev server doesn't serve content from static-prebuilt/, so SDK
reference pages 404 in dev mode. This trips up anyone trying to preview
their changes to /docs/reference/pkg/... locally without realizing they
need the build + serve-static combo.

Adds explicit notes to:
  * README.md — expands the make serve / make build / make serve-static
    entries in the Makefile helpers list to call out the gap.
  * BUILD-AND-DEPLOY.md — adds a callout in the Local Development section.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The Reference > SDKs section of the left nav is defined in
config/_default/menus.yml as a hand-curated list, separate from the
content frontmatter menus. It previously had 5 Language SDK entries +
2 Policy SDK entries but no ESC SDK entries — so the ESC SDKs were
missing from the navigation even though they appeared in the Reference
home page's card layout.

Adds three new entries under `reference-sdks`:
  * TypeScript ESC SDK
  * Python ESC SDK
  * Go ESC SDK

Also fixes the Go ESC SDK URL on the Reference home page card to match:
`https://pkg.go.dev/github.com/pulumi/esc-sdk/sdk/go` is the actual
package documentation; the shorter `/sdk` URL pkg.go.dev only renders
the module root with "this package is not in the latest version".

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The verbose "TypeScript (Node.js)" label was inherited from the Reference
home page card; the left-nav already shows three TypeScript-related SDK
entries (Pulumi, Policy, ESC), so just "TypeScript" reads cleaner here.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@pulumi-bot
Copy link
Copy Markdown
Collaborator Author

@pulumi-bot
Copy link
Copy Markdown
Collaborator Author

Lighthouse Performance Report

Commit: 740c0c9 | Metric definitions

Page Device Score FCP LCP TBT CLS SI
Homepage Mobile 🟡 73 2.9s 3.2s 396ms 0.019 6.6s
Homepage Desktop 🟡 89 0.7s 1.5s 24ms 0.027 2.5s
Install Pulumi Mobile 🔴 34 5.2s 7.8s 257ms 0.450 7.6s
Install Pulumi Desktop 🟡 85 1.2s 1.6s 21ms 0.029 2.7s
AWS Get Started Mobile 🟡 57 5.0s 7.5s 250ms 0.083 5.0s
AWS Get Started Desktop 🟢 91 1.1s 1.7s 20ms 0.032 1.2s

@jkodroff jkodroff closed this May 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants