parse gitea pr webhook

This commit is contained in:
2026-05-28 21:35:41 +00:00
parent e33187dc80
commit c119bed142
7 changed files with 321 additions and 8 deletions
+224
View File
@@ -0,0 +1,224 @@
{
"action": "created",
"issue": {
"id": 1,
"url": "https://gitea.example.com/api/v1/repos/username/repo-name/issues/1",
"html_url": "https://gitea.example.com/username/repo-name/pulls/1",
"number": 1,
"user": {
"id": 1,
"login": "username",
"login_name": "",
"source_id": 0,
"full_name": "",
"email": "user@example.com",
"avatar_url": "https://gitea.example.com/avatars/aabbccdd",
"html_url": "https://gitea.example.com/username",
"language": "en-US",
"is_admin": true,
"last_login": "2026-01-01T00:00:00+02:00",
"created": "2025-01-01T00:00:00+02:00",
"restricted": false,
"active": true,
"prohibit_login": false,
"location": "",
"website": "",
"description": "",
"visibility": "public",
"followers_count": 0,
"following_count": 0,
"starred_repos_count": 0,
"username": "username"
},
"original_author": "",
"original_author_id": 0,
"title": "impl webhook route",
"body": "",
"ref": "",
"assets": [],
"labels": [],
"milestone": null,
"assignee": null,
"assignees": null,
"state": "open",
"is_locked": false,
"comments": 1,
"created_at": "2026-01-01T00:00:00+02:00",
"updated_at": "2026-01-01T00:00:00+02:00",
"closed_at": null,
"due_date": null,
"time_estimate": 0,
"pull_request": {
"merged": false,
"merged_at": null,
"draft": false,
"html_url": "https://gitea.example.com/username/repo-name/pulls/1"
},
"repository": {
"id": 8,
"name": "repo-name",
"owner": "username",
"full_name": "username/repo-name"
},
"pin_order": 0,
"content_version": 0
},
"pull_request": {
"id": 1,
"url": "https://gitea.example.com/username/repo-name/pulls/1",
"number": 1,
"user": {
"id": 1,
"login": "username",
"login_name": "",
"source_id": 0,
"full_name": "",
"email": "user@example.com",
"avatar_url": "https://gitea.example.com/avatars/aabbccdd",
"html_url": "https://gitea.example.com/username",
"language": "en-US",
"is_admin": true,
"last_login": "2026-01-01T00:00:00+02:00",
"created": "2025-01-01T00:00:00+02:00",
"restricted": false,
"active": true,
"prohibit_login": false,
"location": "",
"website": "",
"description": "",
"visibility": "public",
"followers_count": 0,
"following_count": 0,
"starred_repos_count": 0,
"username": "username"
},
"title": "impl webhook route",
"body": "",
"labels": [],
"milestone": null,
"assignee": null,
"assignees": [],
"requested_reviewers": [],
"requested_reviewers_teams": [],
"state": "open",
"draft": false,
"is_locked": false,
"comments": 1,
"review_comments": 0,
"additions": 3,
"deletions": 3,
"changed_files": 2,
"html_url": "https://gitea.example.com/username/repo-name/pulls/1",
"diff_url": "https://gitea.example.com/username/repo-name/pulls/1.diff",
"patch_url": "https://gitea.example.com/username/repo-name/pulls/1.patch",
"mergeable": true,
"merged": false,
"merged_at": null,
"merge_commit_sha": null,
"merged_by": null,
"allow_maintainer_edit": false,
"base": {
"label": "main",
"ref": "main",
"sha": "aabbccdd00112233445566778899aabbccdd0011",
"repo_id": 8,
"repo": {
"id": 8,
"owner": {
"id": 1,
"login": "username",
"email": "user@example.com",
"avatar_url": "https://gitea.example.com/avatars/aabbccdd",
"html_url": "https://gitea.example.com/username",
"username": "username"
},
"name": "repo-name",
"full_name": "username/repo-name",
"description": "A self-hosted Gitea bot.",
"html_url": "https://gitea.example.com/username/repo-name",
"url": "https://gitea.example.com/api/v1/repos/username/repo-name",
"ssh_url": "git@gitea.example.com:username/repo-name.git",
"clone_url": "https://gitea.example.com/username/repo-name.git",
"default_branch": "main"
}
},
"head": {
"label": "webhook",
"ref": "webhook",
"sha": "eeff00112233445566778899aabbccddeeff0011",
"repo_id": 8,
"repo": {
"id": 8,
"owner": {
"id": 1,
"login": "username",
"email": "user@example.com",
"avatar_url": "https://gitea.example.com/avatars/aabbccdd",
"html_url": "https://gitea.example.com/username",
"username": "username"
},
"name": "repo-name",
"full_name": "username/repo-name",
"description": "A self-hosted Gitea bot.",
"html_url": "https://gitea.example.com/username/repo-name",
"url": "https://gitea.example.com/api/v1/repos/username/repo-name",
"ssh_url": "git@gitea.example.com:username/repo-name.git",
"clone_url": "https://gitea.example.com/username/repo-name.git",
"default_branch": "main"
}
},
"merge_base": "aabbccdd00112233445566778899aabbccdd0011",
"due_date": null,
"created_at": "2026-01-01T00:00:00+02:00",
"updated_at": "2026-01-01T00:00:00+02:00",
"closed_at": null
},
"comment": {
"id": 3,
"html_url": "https://gitea.example.com/username/repo-name/pulls/1#issuecomment-3",
"pull_request_url": "https://gitea.example.com/username/repo-name/pulls/1",
"issue_url": "",
"user": {
"id": 1,
"login": "username",
"email": "user@example.com",
"avatar_url": "https://gitea.example.com/avatars/aabbccdd",
"html_url": "https://gitea.example.com/username",
"username": "username"
},
"original_author": "",
"original_author_id": 0,
"body": "Test comment",
"assets": [],
"created_at": "2026-01-01T00:00:00+02:00",
"updated_at": "2026-01-01T00:00:00+02:00"
},
"repository": {
"id": 8,
"owner": {
"id": 1,
"login": "username",
"email": "user@example.com",
"avatar_url": "https://gitea.example.com/avatars/aabbccdd",
"html_url": "https://gitea.example.com/username",
"username": "username"
},
"name": "repo-name",
"full_name": "username/repo-name",
"description": "A self-hosted Gitea bot.",
"html_url": "https://gitea.example.com/username/repo-name",
"url": "https://gitea.example.com/api/v1/repos/username/repo-name",
"ssh_url": "git@gitea.example.com:username/repo-name.git",
"clone_url": "https://gitea.example.com/username/repo-name.git",
"default_branch": "main"
},
"sender": {
"id": 1,
"login": "username",
"email": "user@example.com",
"avatar_url": "https://gitea.example.com/avatars/aabbccdd",
"html_url": "https://gitea.example.com/username",
"username": "username"
},
"is_pull": true
}