Skip to content

Chronicle admin: configure trusted publishing for generated Python contracts #15

Description

@woksin

Administrator action

@einari, this requires Chronicle repository administrator and PyPI project-owner access.

User need

The idiomatic Python client needs a generated cratis-chronicle-contracts package so contributors can consume Chronicle's canonical gRPC wire surface without copying generated files into this repository.

GitHub setup

  • Create the pypi-python-contracts environment in Cratis/Chronicle.
  • Add @woksin as a required reviewer.
  • If deployment branch/tag restrictions are enabled, allow Chronicle release tags matching v*.
  • Keep id-token: write scoped to the publication job.

PyPI trusted publisher

Create a pending trusted publisher with exactly:

  • PyPI project: cratis-chronicle-contracts
  • GitHub owner: Cratis
  • Repository: Chronicle
  • Workflow: publish-python-client.yml
  • Environment: pypi-python-contracts

Acceptance checklist

  • GitHub environment exists with maintainer review.
  • Pending/existing PyPI trusted publisher matches all fields above.
  • No PyPI API token, username, password, or other long-lived publication credential is stored in GitHub.
  • Comment here with non-secret confirmation and unblock the release issue linked below.

Related work

  • Core tracking: Cratis/Chronicle#3806
  • Publication follows in the separate first-release issue; configuring trust does not publish a package.

Activity

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

Metadata

Metadata

Assignees

Labels

contractsGenerated gRPC contract dependencyneeds-adminRequires repository or service administrator action

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions