Skip to content

feat(connect): add bootstrap auth, TLS verify, python settings, content build#463

Open
tdstein wants to merge 1 commit intomainfrom
feat/bootstrap-auth-tls-verify-python-settings-content-build
Open

feat(connect): add bootstrap auth, TLS verify, python settings, content build#463
tdstein wants to merge 1 commit intomainfrom
feat/bootstrap-auth-tls-verify-python-settings-content-build

Conversation

@tdstein
Copy link
Copy Markdown
Collaborator

@tdstein tdstein commented Apr 9, 2026

Summary

  • Adds Client.bootstrap() + BootstrapAuth for exchanging a short-lived JWT for a Connect API key.
  • Adds a verify parameter to Client so callers can point at a custom CA bundle (or, not recommended, disable TLS verification).
  • Adds a custom Session class in sessions.py that preserves POST bodies across redirects (mimics libcurl's CURLOPT_POSTREDIR).
  • Adds Python settings and a content build endpoint.

Test plan

  • CI
  • Manual smoke test of bootstrap against a dev Connect instance

- Add BootstrapAuth class and Client.bootstrap() for first-time server setup via JWT token
- Add verify parameter to Client.__init__() for TLS certificate verification control (bool or CA bundle path)
- Add client.python_settings property to retrieve server Python installation info
- Add ContentItem.build() method to build content from a bundle with optional bundle_id and activate parameters

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 9, 2026

☂️ Python Coverage

current status: ✅

Overall Coverage

Lines Covered Coverage Threshold Status
2385 2235 94% 0% 🟢

New Files

No new covered files...

Modified Files

File Coverage Status
src/posit/connect/auth.py 100% 🟢
src/posit/connect/client.py 99% 🟢
src/posit/connect/content.py 99% 🟢
TOTAL 99% 🟢

updated for commit: 9538103 by action🐍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant