@@ -14,10 +14,13 @@ set -o nounset
14
14
set -o pipefail
15
15
16
16
IFS=$' \n\t '
17
- SCRIPT_FOLDER=" $( dirname " $( readlink -f " ${0} " ) " ) "
18
- CI_ADMIN_ROOT=" ${SCRIPT_FOLDER} /.."
19
17
20
- TOKEN=" $( " ${CI_ADMIN_ROOT} /utils/local_config.sh" " get_var" " access_token" " github" ) "
18
+ SCRIPT_FOLDER=" $( dirname " $( readlink -f " ${BASH_SOURCE[0]} " ) " ) "
19
+ # shellcheck disable=SC1091
20
+ source " ${SCRIPT_FOLDER} /../pass/pass_wrapper.sh"
21
+
22
+ GITHUB_PASS_DOMAIN=" github.com"
23
+
21
24
# shellcheck disable=SC2089
22
25
EVENTS=' ["push","pull_request"]'
23
26
@@ -47,13 +50,16 @@ org() {
47
50
exit 1
48
51
fi
49
52
53
+ local pw_store_path=" bots/${project_name} /${GITHUB_PASS_DOMAIN} "
54
+ local bot_token=$( passw cbi " ${pw_store_path} /api-token" )
55
+
50
56
echo " Creating organization webhook..."
51
57
52
58
local response
53
59
response=" $( curl -sS\
54
60
-X POST \
55
61
-H " Accept: application/vnd.github+json" \
56
- -H " Authorization: Bearer ${TOKEN } " \
62
+ -H " Authorization: Bearer ${bot_token } " \
57
63
-H " X-GitHub-Api-Version: 2022-11-28" \
58
64
" https://api.github.com/orgs/${org} /hooks" \
59
65
-d ' {"name":"web","active":true,"events":' ${EVENTS} ' ,"config":{"url":"' ${webhook_url} ' ","content_type":"json"}}' ) "
@@ -62,6 +68,7 @@ org() {
62
68
echo " ERROR:"
63
69
printf " Message: %s\n" " $( echo " ${response} " | jq ' .message' ) "
64
70
printf " Errors/Message: %s\n" " $( echo " ${response} " | jq ' .errors[].message' ) "
71
+ exit 1
65
72
fi
66
73
}
67
74
@@ -71,6 +78,7 @@ repo() {
71
78
local short_name=" ${project_name##* .} "
72
79
local webhook_url=" https://ci.eclipse.org/${short_name} /github-webhook/"
73
80
81
+
74
82
# check that project name is not empty
75
83
if [[ -z " ${project_name} " ]]; then
76
84
printf " ERROR: a project name must be given.\n"
@@ -83,13 +91,16 @@ repo() {
83
91
exit 1
84
92
fi
85
93
94
+ local pw_store_path=" bots/${project_name} /${GITHUB_PASS_DOMAIN} "
95
+ local bot_token=$( passw cbi " ${pw_store_path} /api-token" )
96
+
86
97
echo " Creating repo webhook..."
87
98
88
99
local response
89
100
response=" $( curl -sS\
90
101
-X POST \
91
102
-H " Accept: application/vnd.github+json" \
92
- -H " Authorization: Bearer ${TOKEN } " \
103
+ -H " Authorization: Bearer ${bot_token } " \
93
104
-H " X-GitHub-Api-Version: 2022-11-28" \
94
105
" https://api.github.com/repos/${repo} /hooks" \
95
106
-d ' {"name":"web","active":true,"events":' ${EVENTS} ' ,"config":{"url":"' ${webhook_url} ' ","content_type":"json"}}' ) "
0 commit comments