actions: automerge: check when review happens after CI success

This commit is contained in:
Earl Warren 2024-05-27 23:08:39 +02:00
parent 7fd268b02f
commit fcb48eff5c
No known key found for this signature in database
GPG key ID: 0579CB2928A78A00
2 changed files with 85 additions and 6 deletions

View file

@ -3,6 +3,29 @@
# SPDX-License-Identifier: MIT
API_TMPDIR=$(mktemp -d)
: ${PASSWORD:=admin1234}
function api_user_make_admin() {
local api="$1" username="$2"
forgejo-curl.sh api_json -X PATCH --data '{"admin":true}' $api/admin/users/$username
}
function api_user_create() {
local api="$1" username="$2" email="$3"
log_info "(re)create user $username"
forgejo-curl.sh api_json -X DELETE $api/admin/users/$username?purge=true >& /dev/null || true
forgejo-curl.sh api_json --data '{"username":"'$username'","email":"'$email'","password":"admin1234","must_change_password":false}' $api/admin/users
}
function user_login() {
local username=$1
(
export DOT=$API_TMPDIR/$username
forgejo-curl.sh logout
forgejo-curl.sh --user $username --password "admin1234" login http://${HOST_PORT}
)
}
function api_branch_tip() {
local api="$1"
@ -13,6 +36,23 @@ function api_branch_tip() {
forgejo-curl.sh api_json $api/repos/$repo/branches/$branch | jq --raw-output .commit.id
}
function api_branch_protect() {
local api="$1"
local repo="$2"
local branch="$3"
forgejo-curl.sh api_json -X DELETE $api/repos/${repo}/branch_protections/$branch >&/dev/null || true
forgejo-curl.sh api_json --data '{"branch_name":"'$branch'","required_approvals":1}' $api/repos/${repo}/branch_protections
}
function api_pr_approve() {
local api="$1"
local repo="$2"
local pr="$3"
forgejo-curl.sh api_json --data '{"event":"APPROVED"}' $api/repos/${repo}/pulls/$pr/reviews
}
function api_pr_is_merged() {
local api="$1"
local repo="$2"