forked from gm3dmo/the-power
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcreate-an-organization-secret.sh
executable file
·31 lines (26 loc) · 1.1 KB
/
create-an-organization-secret.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
. ./.gh-api-examples.conf
# https://docs.github.com/en/rest/reference/actions#create-or-update-an-organization-secret
# PUT /orgs/{org}/actions/secrets/{secret_name}
json_file=tmp/organization-secret.json
rm -f ${json_file}
secret_name=${org_secret_name}
visibility="all"
key_id=$(./get-an-organization-public-key.sh | jq -r '.key_id')
org_public_key=$(./get-an-organization-public-key.sh | jq -r '.key')
encrypted_value=$(ruby create-an-organization-secret-helper.rb ${org_public_key})
jq -n \
--arg secret_name "${secret_name}" \
--arg key_id "${key_id}" \
--arg visibility "${visibility}" \
--arg encrypted_value "${encrypted_value}" \
'{
secret_name: $secret_name,
key_id: $key_id,
visibility: $visibility,
encrypted_value: $encrypted_value
}' > ${json_file}
curl ${curl_custom_flags} \
-X PUT \
-H "Accept: application/vnd.github.v3+json" \
-H "Authorization: Bearer ${GITHUB_TOKEN}" \
${GITHUB_API_BASE_URL}/orgs/${org}/actions/secrets/${secret_name} --data @${json_file}