Skip to main content

GitHub identity plugin for Imbi (github.com / GHEC / GHES)

Project description

imbi-plugin-github

GitHub plugins for Imbi. Three flavors (github.com, GitHub Enterprise Cloud, GitHub Enterprise Server) of each plugin type so the admin UI can wire projects to the right backend.

Plugin types

Type Slugs
Identity github, github-enterprise-cloud, github-enterprise-server
Deployment github-deployment, github-deployment-ec, github-deployment-es
Lifecycle github-lifecycle, github-lifecycle-ec, github-lifecycle-es

Identity

Implements the OAuth App flow. The access token returned by the OAuth grant is passed straight to GitHub APIs as a Bearer token, so materialize() is a no-op.

Deployment

Drives the GitHub Deployments API (POST /repos/{owner}/{repo}/deployments) plus tag and release creation. Promote behaviour is inferred from the ref shape by the host (semver → trigger Deployment, raw SHA → cut tag

  • Release). Per-env workflow inputs ride on the USES_PLUGIN edge as env_payloads and arrive on PluginContext.environment_config.

Lifecycle

Reacts to project archive / unarchive by archiving the matching repo via PATCH /repos/{owner}/{repo} with {"archived": true|false}. When the archive_target_org option is set, archive also transfers the repo to that org first via POST /repos/{owner}/{repo}/transfer — useful for moving sunset projects into a dedicated "archive" org so they no longer crowd primary-org searches.

GitHub refuses to transfer archived repos, so an already-archived source is briefly unarchived, transferred, and re-archived at the destination. On unarchive the plugin only flips archived back to false at the repo's current location — it does not transfer back to the original org.

Archiving requires admin scope on the repo; transferring additionally requires admin permission on the target organization.

Manifest options (identity)

Option Required Description
host GHEC/GHES Tenant or appliance host (e.g. tenant.ghe.com, github.example.com).
default_scopes no Space-separated default OAuth scopes (default: read:user user:email repo workflow).

Credentials (identity)

Field Required
client_id yes
client_secret yes

License

BSD-3-Clause.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

imbi_plugin_github-2.8.0.tar.gz (137.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

imbi_plugin_github-2.8.0-py3-none-any.whl (30.9 kB view details)

Uploaded Python 3

File details

Details for the file imbi_plugin_github-2.8.0.tar.gz.

File metadata

  • Download URL: imbi_plugin_github-2.8.0.tar.gz
  • Upload date:
  • Size: 137.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for imbi_plugin_github-2.8.0.tar.gz
Algorithm Hash digest
SHA256 f1ee1532b7b846aa7a2d248ebdf8f21b08703cbf7199aae5c65acb9335752e0b
MD5 2d332e59b245f9c2a20f63d5440cb901
BLAKE2b-256 2ed33c5af58fd91dcd2983a8d7bfa2b398a0e1df329398152ccafb375beab2c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for imbi_plugin_github-2.8.0.tar.gz:

Publisher: publish.yml on AWeber-Imbi/imbi-plugin-github

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imbi_plugin_github-2.8.0-py3-none-any.whl.

File metadata

File hashes

Hashes for imbi_plugin_github-2.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 222423b7e0266ec7e782a4e620bae725aaaf9fae70058aa0a5d76aff3de03a85
MD5 a1d7f8a162488ec2bf260c6d13ee9106
BLAKE2b-256 e7e14b24716b1ff89aea88762a5ecbbc5230b64b146f7f795d65743fe1a76cf6

See more details on using hashes here.

Provenance

The following attestation bundles were made for imbi_plugin_github-2.8.0-py3-none-any.whl:

Publisher: publish.yml on AWeber-Imbi/imbi-plugin-github

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page