community.general.github_repo module – Manage your repositories on Github
Note
This module is part of the community.general collection (version 10.7.5).
You might already have this collection installed if you are using the ansible package.
It is not included in ansible-core.
To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install community.general.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: community.general.github_repo.
New in community.general 2.2.0
Synopsis
- Manages Github repositories using PyGithub library. 
- Authentication can be done with - access_tokenor with- usernameand- password.
Requirements
The below requirements are needed on the host that executes this module.
- PyGithub>=1.54 
Parameters
| Parameter | Comments | 
|---|---|
| URL to the GitHub API if not using github.com but you own instance. Default:  | |
| Description for the repository. Defaults to empty if  Defaults to empty if  This is only used when  | |
| Overwrite current  The default for this option will be deprecated in a future version of this collection, and eventually change to  Choices: 
 | |
| Repository name. | |
| Organization for the repository. When  | |
| Password used for authentication. This is only needed when not using  | |
| Whether the repository should be private or not. Defaults to  Defaults to  This is only used when  Choices: 
 | |
| Whether the repository should exist or not. Choices: 
 | |
| Username used for authentication. This is only needed when not using  | 
Attributes
| Attribute | Support | Description | 
|---|---|---|
| Support: full | Can run in  | |
| Support: none | Will return details on what has changed (or possibly needs changing in  | 
Notes
Note
- For Python 3, PyGithub>=1.54 should be used. 
- For Python 3.5, PyGithub==1.54 should be used. More information: https://pygithub.readthedocs.io/en/latest/changes.html#version-1-54-november-30-2020. 
- For Python 2.7, PyGithub==1.45 should be used. More information: https://pygithub.readthedocs.io/en/latest/changes.html#version-1-45-december-29-2019. 
Examples
- name: Create a Github repository
  community.general.github_repo:
    access_token: mytoken
    organization: MyOrganization
    name: myrepo
    description: "Just for fun"
    private: true
    state: present
    force_defaults: false
  register: result
- name: Delete the repository
  community.general.github_repo:
    username: octocat
    password: password
    organization: MyOrganization
    name: myrepo
    state: absent
  register: result
Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Description | 
|---|---|
| Repository information as JSON. See https://docs.github.com/en/rest/reference/repos#get-a-repository. Returned: success and  | 
