OpenFactory Utils Module - GitHub Token Store#

GitHub Token Store Module for OpenFactory.

class openfactory.utils.github_tokenstore.GitHubTokenStore[source]#

Bases: object

Class to manage GitHub access tokens.

Provides methods to securely store, retrieve, and manage GitHub access tokens for different repositories. The tokens are stored in a JSON file in the user’s home directory under the .openfactory directory.

__init__()[source]#

Initialize the token store.

add_token(repo, user, token)[source]#

Add a new token for a specific repository.

Return type:

None

Parameters:
  • repo (str) – Repository name.

  • user (str) – Username associated with the token.

  • token (str) – The access token.

get_token(repo)[source]#

Get a token for a specific repository.

Return type:

Dict

Parameters:

repo (str) – Repository name.

Returns:

dict – Dictionary containing user and token.

list_tokens()[source]#

List all stored tokens.

load_tokens()[source]#

Load tokens from the secure storage.

Return type:

Dict

Returns:

dict – Dictionary of tokens.

Raises:

OFAException – If there is an error in decoding the token file.

save_tokens(tokens)[source]#

Save tokens to the secure storage.

Return type:

None

Parameters:

tokens (dict) – Dictionary of tokens to save.