Hi everyone,
I tried to create a git repository in GitHub with Ansible and I encounter two issues:
I did a lot of research and didn’t see much information about GitHub API Infrastructure.
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?
dnmvisser
(Dick Visser)
July 3, 2023, 3:52pm
2
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…
dnmvisser
(Dick Visser)
July 4, 2023, 8:10am
4
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)’),))",),)”
}
dnmvisser
(Dick Visser)
July 4, 2023, 9:54am
6
Either your SSL and/or settings are off, or you’re behind some sort of evil man-in-the-middle proxy