DEVX-118: fix: configure git identity before commit in sync_wiki
CI environments may lack git user.email/user.name config, causing git commit to fail with exit code 128. Set identity explicitly before committing wiki changes. Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This commit is contained in:
co-authored by
Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
parent
add02273b6
commit
f017fec8f5
@@ -208,7 +208,19 @@ def commit_and_push(wiki_dir: Path, wiki_url: str, dry_run: bool) -> bool:
|
|||||||
click.echo(_("No changes to sync — wiki is up to date."))
|
click.echo(_("No changes to sync — wiki is up to date."))
|
||||||
return False
|
return False
|
||||||
|
|
||||||
# Commit
|
# Commit — ensure git identity is configured (CI environments may lack it)
|
||||||
|
subprocess.run( # nosec
|
||||||
|
["git", "config", "user.email", "devin-ai-integration[bot]@users.noreply.github.com"],
|
||||||
|
cwd=wiki_dir,
|
||||||
|
capture_output=True,
|
||||||
|
check=True,
|
||||||
|
)
|
||||||
|
subprocess.run( # nosec
|
||||||
|
["git", "config", "user.name", "Devin CI"],
|
||||||
|
cwd=wiki_dir,
|
||||||
|
capture_output=True,
|
||||||
|
check=True,
|
||||||
|
)
|
||||||
subprocess.run( # nosec
|
subprocess.run( # nosec
|
||||||
["git", "commit", "-m", "Sync wiki from docs/ [skip ci]"],
|
["git", "commit", "-m", "Sync wiki from docs/ [skip ci]"],
|
||||||
cwd=wiki_dir,
|
cwd=wiki_dir,
|
||||||
|
|||||||
@@ -208,6 +208,8 @@ class TestCommitAndPush:
|
|||||||
mock_run.side_effect = [
|
mock_run.side_effect = [
|
||||||
MagicMock(returncode=0), # git add
|
MagicMock(returncode=0), # git add
|
||||||
MagicMock(returncode=1), # git diff --cached --quiet (has changes)
|
MagicMock(returncode=1), # git diff --cached --quiet (has changes)
|
||||||
|
MagicMock(returncode=0), # git config user.email
|
||||||
|
MagicMock(returncode=0), # git config user.name
|
||||||
MagicMock(returncode=0), # git commit
|
MagicMock(returncode=0), # git commit
|
||||||
MagicMock(returncode=0, stdout="", stderr=""), # git push
|
MagicMock(returncode=0, stdout="", stderr=""), # git push
|
||||||
]
|
]
|
||||||
@@ -219,6 +221,8 @@ class TestCommitAndPush:
|
|||||||
mock_run.side_effect = [
|
mock_run.side_effect = [
|
||||||
MagicMock(returncode=0), # git add
|
MagicMock(returncode=0), # git add
|
||||||
MagicMock(returncode=1), # git diff --cached --quiet (has changes)
|
MagicMock(returncode=1), # git diff --cached --quiet (has changes)
|
||||||
|
MagicMock(returncode=0), # git config user.email
|
||||||
|
MagicMock(returncode=0), # git config user.name
|
||||||
MagicMock(returncode=0), # git commit
|
MagicMock(returncode=0), # git commit
|
||||||
MagicMock(returncode=1, stdout="", stderr="push failed"), # git push
|
MagicMock(returncode=1, stdout="", stderr="push failed"), # git push
|
||||||
]
|
]
|
||||||
|
|||||||
Reference in New Issue
Block a user