gitea/modules/structs
ChristopherHX cda90eca31
Add workflow_run api + webhook (#33964)
Implements 
- https://docs.github.com/en/rest/actions/workflow-jobs?apiVersion=2022-11-28#list-jobs-for-a-workflow-run--code-samples
- https://docs.github.com/en/rest/actions/workflow-jobs?apiVersion=2022-11-28#get-a-job-for-a-workflow-run--code-samples
- https://docs.github.com/en/rest/actions/workflow-runs?apiVersion=2022-11-28#list-workflow-runs-for-a-repository
- https://docs.github.com/en/rest/actions/workflow-runs?apiVersion=2022-11-28#get-a-workflow-run
  - `/actions/runs` for global + user + org (Gitea only)
  - `/actions/jobs` for global + user + org + repository (Gitea only)
  - workflow_run webhook + action trigger
    - limitations
- workflow id is assigned to a string, this may result into problems in
strongly typed clients

Fixes
- workflow_job webhook url to no longer contain the `runs/<run>` part to
align with api
- workflow instance does now use it's name inside the file instead of
filename if set

Refactoring
- Moved a lot of logic from workflows/workflow_job into a shared module
used by both webhook and api

TODO
- [x] Verify Keda Compatibility
- [x] Edit Webhook API bug is resolved
 
Closes https://github.com/go-gitea/gitea/issues/23670
Closes https://github.com/go-gitea/gitea/issues/23796
Closes https://github.com/go-gitea/gitea/issues/24898
Replaces https://github.com/go-gitea/gitea/pull/28047 and is much more
complete

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2025-06-20 20:14:00 +08:00
..
activity.go Document possible action types for the user activity feed API (#31196) 2024-06-03 13:40:48 +00:00
activitypub.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
admin_user.go chore(api): support ignore password if login source type is LDAP for creating user API (#28491) 2023-12-19 02:32:45 +00:00
attachment.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
cron.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
doc.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
fork.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
git_blob.go Add API endpoint to request contents of multiple files simultaniously (#34139) 2025-04-22 01:20:11 +08:00
git_hook.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
hook.go Add workflow_run api + webhook (#33964) 2025-06-20 20:14:00 +08:00
issue_comment.go Add API management for issue/pull and comment attachments (#21783) 2022-12-09 14:35:56 +08:00
issue_label.go Support using label names when changing issue labels (#30943) 2024-05-13 04:28:53 +00:00
issue_milestone.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
issue_reaction.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
issue_stopwatch.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
issue_test.go Support issue template assignees (#31083) 2024-08-12 16:00:40 +08:00
issue_tracked_time.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
issue.go Run gopls modernize on codebase (#34751) 2025-06-18 01:48:09 +00:00
lfs_lock.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
mirror.go Fix push mirror, wrong timestamp format (#27153) 2023-09-23 12:15:05 +00:00
miscellaneous.go Refactor render system (#32492) 2024-11-14 05:02:11 +00:00
nodeinfo.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
notifications.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
org_member.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
org_team.go Increase max length of org team names from 30 to 255 characters (#31410) 2024-06-19 10:36:09 -04:00
org.go Inclusion of rename organization api (#33303) 2025-02-01 00:59:49 +00:00
package.go Add package version api endpoints (#34173) 2025-04-13 20:00:44 +00:00
pull_review.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
pull.go Decouple diff stats query from actual diffing (#33810) 2025-03-08 17:36:08 +08:00
release.go Support annotated tags when using create release API (#31840) 2025-06-18 05:12:38 +00:00
repo_actions.go Add workflow_run api + webhook (#33964) 2025-06-20 20:14:00 +08:00
repo_branch.go Add ff_only parameter to POST /repos/{owner}/{repo}/merge-upstream (#34770) 2025-06-19 12:29:10 -07:00
repo_collaborator.go Add permission description for API to add repo collaborator (#31744) 2024-08-01 09:33:40 +00:00
repo_commit.go Add file status for API "Get a single commit from a repository" (#16205) (#25831) 2023-07-20 16:35:47 +08:00
repo_compare.go feat(api): implement branch/commit comparison API (#30349) 2024-04-16 11:45:04 +08:00
repo_file.go Add API endpoint to request contents of multiple files simultaniously (#34139) 2025-04-22 01:20:11 +08:00
repo_key.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
repo_note.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
repo_refs.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
repo_tag.go fix: do not return archive download URLs in API if downloads are disabled (#34324) 2025-04-30 10:06:37 -07:00
repo_topic.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
repo_tree.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
repo_watch.go Replace interface{} with any (#25686) 2023-07-04 18:36:08 +00:00
repo_wiki.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
repo.go Run gopls modernize on codebase (#34751) 2025-06-18 01:48:09 +00:00
secret.go Added Description Field for Secrets and Variables (#33526) 2025-03-17 19:24:54 +00:00
settings.go Add API endpoint to request contents of multiple files simultaniously (#34139) 2025-04-22 01:20:11 +08:00
status.go Keeping consistent between UI and API about combined commit status state and fix some bugs (#34562) 2025-06-09 04:05:33 +00:00
task.go Make repo migration cancelable and fix various bugs (#24605) 2023-05-11 08:25:46 +00:00
user_app.go feat: return time of last usage for public keys and access tokens in the api (#34323) 2025-05-01 21:42:17 +03:00
user_email.go add admin API email endpoints (#22792) 2023-03-14 03:54:40 -04:00
user_gpgkey.go Run gopls modernize on codebase (#34751) 2025-06-18 01:48:09 +00:00
user_key.go Run gopls modernize on codebase (#34751) 2025-06-18 01:48:09 +00:00
user.go Run gopls modernize on codebase (#34751) 2025-06-18 01:48:09 +00:00
variable.go Added Description Field for Secrets and Variables (#33526) 2025-03-17 19:24:54 +00:00
visible_type.go change org_type.go to visible_type.go and fix the notes (#22752) 2023-02-09 06:40:34 +00:00