Custodian v0.0.1 Custodian.Github.Tentacat.Client View Source

Provides an implementation of the Custodian.Github.Client behaviour with the GitHub API.

This provides two different authentication methods for interacting with the GitHub v3 API over HTTPS.

Link to this section Summary

Functions

App authentication with the GitHub API client using the app’s private key

Installation authentication with the GitHub API client using an access token

Link to this section Functions

App authentication with the GitHub API client using the app’s private key.

This token has limited functionality and is mostly good for getting a token to be used on individual repos. More info.

Link to this function installation(installation_id) View Source
installation(integer()) :: struct()

Installation authentication with the GitHub API client using an access token.

This token is created for a specific installation of the app. Useful for taking action on specific repos. More info.

The token is cached in memory using Erlang’s ETS. This allows it to be shared by other processes. Each token GitHub generates is good for 60 minutes. We set the TTL to 55 minutes to ensure we’re grabbing a fresh one before then.