Skip to content

feat(auth_proxy): migrate auth_proxy lib#589

Open
natalian98 wants to merge 4 commits into
canonical:mainfrom
natalian98:IAM-2256-migrate-auth-proxy-lib
Open

feat(auth_proxy): migrate auth_proxy lib#589
natalian98 wants to merge 4 commits into
canonical:mainfrom
natalian98:IAM-2256-migrate-auth-proxy-lib

Conversation

@natalian98

Copy link
Copy Markdown
Contributor

This PR migrates the auth_proxy interface library from charmhub into charmlibs.

Library being migrated

  • Charmhub-hosted library:
    • LIBAPI: 0
    • LIBPATCH: 4
    • LIBID: 83df2500c289431aab1567ac1b780926
  • New charmlibs package: charmlibs.interfaces.auth_proxy

This is an interface library (charmlibs.interfaces.<name>, just init --interface).

Migration status

This is a bug compatible migration of the Charmhub-hosted library, releasing as version 1.0.0.

Package:

  • Package initialised with just init or just init --interface.
  • Code migrated to src/charmlibs/<name>/_<name>.py.
  • Public API exported from __init__.py with __all__.
  • Charmhub lib docstring moved to __init__.py (this is rendered in the docs).
  • Charmhub-hosted LIBAPI and LIBPATCH version documented in the migrated module's docstring.
  • LIBID, LIBAPI, LIBPATCH removed (or retained with a note on why).
  • PYDEPS moved to pyproject.toml dependencies with appropriate constraints.
  • Library version set for release (typically 1.0.0).

Repository metadata:

  • .docs/reference/libs.yaml updated with entries for new and old libs.
  • CODEOWNERS updated with a /<package>/ entry for the owning team.

Tests and docs:

  • Unit tests migrated, plus functional and integration tests as appropriate.
  • Unnecessary files created by just init have been removed (including test_version.py and tests/functional and tests/integration if unused).
  • Diataxis docs (if any) migrated to <package>/docs/.

Interface library specific items

  • Directory name exactly matches the interface name as written in charmcraft.yaml.
  • Interface metadata added (or updated if necessary), or an issue created and tracked to do this as a follow-up task.
  • Testing package added under interfaces/<name>/testing/ exporting relation_for_provider and relation_for_requirer if needed (see how-to guide), or an issue created and tracked to do this as a follow-up task.

Commit strategy

To make review easier, this PR is organized into focused, semantic commits:

• feat: migrate auth_proxy interface: Unified migration of the upstream library. Contains the core scaffolding, verbatim baseline files (library source, tests, and documentation), updated imports, and linter-enforced adjustments in a single coherent step.
• chore: update CODEOWNERS: Registry of monorepo code ownership for the auth_proxy interface directory.
• chore: update auth_proxy lib metadata: Registering the package in the monorepo's global configuration indices (interfaces/index.json and .docs/reference/libs.yaml).

@natalian98 natalian98 marked this pull request as ready for review July 14, 2026 11:25
@natalian98 natalian98 requested review from a team as code owners July 14, 2026 11:25
@natalian98 natalian98 force-pushed the IAM-2256-migrate-auth-proxy-lib branch from e95418c to 55d0f4d Compare July 14, 2026 15:26
@natalian98 natalian98 force-pushed the IAM-2256-migrate-auth-proxy-lib branch from 55d0f4d to b4070b2 Compare July 14, 2026 15:39
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.

2 participants