octomachinery.github.api.app_client module#

GitHub App API client.

class octomachinery.github.api.app_client.GitHubApp(config: octomachinery.github.config.app.GitHubAppIntegrationConfig, http_session: aiohttp.client.ClientSession, event_routers={<octomachinery.routing.routers.ConcurrentRouter object>})[source]#

Bases: object

GitHub API wrapper.

property api_client#

The GitHub App client with an async CM interface.

async dispatch_event(github_event: octomachinery.github.models.events.GitHubEvent) → Iterable[Any][source]#

Dispatch github_event into the embedded routers.

async get_installation(event)[source]#

Retrieve an installation creds from store.

async get_installation_by_id(install_id)[source]#

Retrieve an installation with access tokens via API.

async get_installations()[source]#

Retrieve all installations with access tokens via API.

property gh_jwt#

Generate app’s JSON Web Token, valid for 60 seconds.

async log_installs_list() → None[source]#

Store all installations data before starting.