Skip to content

Commit b64af5d

Browse files
committed
use plugin to fetch rubygems token via OIDC
1 parent fc748cb commit b64af5d

File tree

2 files changed

+6
-35
lines changed

2 files changed

+6
-35
lines changed

.buildkite/pipeline.release.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,7 @@ steps:
77
key: release
88
env:
99
RELEASE_VERSION: "__TEMPLATE__"
10+
plugins:
11+
- rubygems-oidc#bashify:
12+
role: "rg_oidc_akr_xoy8sqmj25t8ok4rn5sq"
1013

auto/release-gem

Lines changed: 3 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -2,43 +2,11 @@
22

33
set -euo pipefail
44

5-
echo "--- Request OIDC token"
6-
7-
export BUILDKITE_OIDC_TOKEN="$(buildkite-agent oidc request-token --audience "rubygems.org" --lifetime 60)"
8-
9-
echo "${BUILDKITE_OIDC_TOKEN}" | head -c 20
10-
echo
11-
12-
echo "--- Request rubygems token"
13-
14-
RUBYGEMS_ROLE="rg_oidc_akr_xoy8sqmj25t8ok4rn5sq"
15-
16-
echo "{\"jwt\":\"${BUILDKITE_OIDC_TOKEN}\"}" | head -c 30
17-
echo
18-
19-
#curl -v -s -X POST \
20-
# --fail-with-body \
21-
# -H "Content-Type: application/json" \
22-
# --data "{\"jwt\":\"${BUILDKITE_OIDC_TOKEN}\"}" \
23-
# "https://rubygems.org/api/v1/oidc/api_key_roles/${RUBYGEMS_ROLE}/assume_role"
24-
25-
#--fail-with-body \
26-
RESPONSE=$(curl -s -X POST \
27-
-H "Content-Type: application/json" \
28-
--data "{\"jwt\":\"${BUILDKITE_OIDC_TOKEN}\"}" \
29-
"https://rubygems.org/api/v1/oidc/api_key_roles/${RUBYGEMS_ROLE}/assume_role")
30-
31-
ERROR_MESSAGE=$(echo "${RESPONSE}" | jq -r .error)
32-
GEM_HOST_API_KEY==$(echo "${RESPONSE}" | jq -r .rubygems_api_key)
33-
34-
if [ "${ERROR_MESSAGE}" != "null" ]; then
35-
echo "Requesting API token failed"
36-
echo "ERROR: ${ERROR_MESSAGE}"
37-
exit 1
5+
if [ -z "${GEM_HOST_API_KEY}" ]; then
6+
echo "GEM_HOST_API_KEY environment variable not found"
7+
exit
388
fi
399

40-
echo "${GEM_HOST_API_KEY}" | head -c 10
41-
4210
echo "--- Build and publish gem"
4311

4412
cd $(dirname $0)/..

0 commit comments

Comments
 (0)