Skip to content

Commit

Permalink
Bugfix: Ignore the 'default_branch' option
Browse files Browse the repository at this point in the history
When specifying a default branch on a repository which is still empty, the execution
fails with the following error message:
'Cannot update default branch for an empty repository. Please init the repository and push first'

This change avoids that users have to debug this problem and/or create new repositories in
three steps (1. ‘create repo PR’, 2. add branch , 3. ‘set default branch’ PR).

Secondly this change adds a bit more detailed error-debug-output to simplify
debugging sitations.

Signed-off-by: Marc Schöchlin <[email protected]>
  • Loading branch information
scoopex committed Nov 20, 2024
1 parent 818090c commit b2fa103
Showing 1 changed file with 15 additions and 1 deletion.
16 changes: 15 additions & 1 deletion plugins/module_utils/github.py
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,12 @@ def request(
error_data[key] = info[key]

error_data["response"] = response or "no response"
error_data["body"] = body or "no body"
error_data["response_body"] = body or "no body"
error_data["request_url"] = url
error_data["request_method"] = method
if 'json' in kwargs:
error_data["request_body"] = kwargs['json'] or 'no body'

self.save_error(f"request failed {error_msg}: {error_data}")
elif status == 404 and ignore_missing:
return None
Expand Down Expand Up @@ -1126,6 +1131,15 @@ def _manage_repository(self, state, current=None, check_mode=False, **kwargs):
owner = kwargs.pop('owner')
repo_name = kwargs.pop('name')
current_repo = current if current else self.get_repo(owner, repo_name, ignore_missing=True)

# When specifying a default branch on a repository which is still empty, the execution
# fails with the following error message:
# 'Cannot update default branch for an empty repository. Please init the repository and push first'
# Therefore we remove this option in that case.
if current_repo['size'] == 0:
del kwargs['default_branch']


if not current_repo:
changed = True
if not check_mode:
Expand Down

0 comments on commit b2fa103

Please sign in to comment.