Cannot create git repo in GitHub

Hi everyone,

I tried to create a git repository in GitHub with Ansible and I encounter two issues:

  1. I did a lot of research and didn’t see much information about GitHub API Infrastructure.
  2. I can get the information about a repo but I cannot create a new one. I’ve tried with github_repo and uri Module without success:

With uri

  • name: create repository
    uri:
    url: “https://api.github.com/users/
    method: POST
    body_format: json
    headers:
    Accept: “application/vnd.github.v3+json”
    Authorization: “token {{ token_perso }}”
    body:
    name: “{{ repository_name }}”
    private: false
    auto_init: true
    has_issues: true
    has_wiki: true
    has_downloads: true
    register: response

With github_repo

  • name: create repository
    github_repo:
    organization:
    access_token: “{{ token_perso }}”
    name: “{{ repository_name }}”
    state: present
    register: response

Unfortunately I always received a Status code 404. I’ve configured my token with permission too.

“msg”: “Status code was 404 and not [200]: HTTP Error 404: Not Found”, “redirected”: false, “referrer_policy”: “origin-when-cross-origin, strict-origin-when-cross-origin”, “server”: “GitHub.com”, “status”: 404,

As anyone an idea?

Try removing the organization parameter from the github_repo task.

Tried to remove the organization parameter but another error: SSL: CERTIFICATE_VERIFY_FAILED. To remedy this SSL problem (as test), I’ve deactivated the verification with http.sslverify=false but it doesn’t seem to work…

That’s weird.
Can you add -vvv and see what that says?

fatal: [localhost]: FAILED! => {

“changed”: false,

“invocation”: {

“module_args”: {

“access_token”: “VALUE_SPECIFIED_IN_NO_LOG_PARAMETER”,

“api_url”: https://api.github.com,

“description”: “”,

“force_defaults”: true,

“name”: “testrepo”,

“organization”: null,

“password”: null,

“private”: false,

“state”: “present”,

“username”: null

}

},

“msg”: “Unexpected error. SSLError(MaxRetryError("HTTPSConnectionPool(host=‘api.github.com’, port=443): Max retries exceeded with url: /user (Caused by SSLError(SSLError(1, ‘[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:897)’),))",),)”

}

Either your SSL and/or settings are off, or you’re behind some sort of evil man-in-the-middle proxy