Skip to content

Commit 0093621

Browse files
committed
fmt
1 parent 0f00e25 commit 0093621

File tree

2 files changed

+38
-23
lines changed

2 files changed

+38
-23
lines changed

.github/workflows/pr-cleanup.yaml

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ jobs:
3737
run: |
3838
set -euxo pipefail
3939
mkdir -p ~/.kube
40-
echo "${{ secrets.DELIVERYBOT_KUBECONFIG }}" > ~/.kube/config
40+
echo "${{ secrets.PR_DEPLOYMENTS_KUBECONFIG }}" > ~/.kube/config
4141
export KUBECONFIG=~/.kube/config
4242
4343
- name: Delete helm release
@@ -49,9 +49,17 @@ jobs:
4949
run: |
5050
kubectl delete namespace "pr${{ steps.pr_number.outputs.PR_NUMBER }}" || echo "namespace not found"
5151
52-
- name: "Remove DNS record"
52+
- name: "Remove DNS records"
5353
run: |
54-
curl -X DELETE "https://api.cloudflare.com/client/v4/zones/${{ secrets.PR_DEPLOYMENTS_ZONE_ID }}/dns_records" \
54+
set -euxo pipefail
55+
# Get identifier for the record
56+
record_id=$(curl -X GET "https://api.cloudflare.com/client/v4/zones/${{ secrets.PR_DEPLOYMENTS_ZONE_ID }}/dns_records?name=*.pr${{ steps.pr_number.outputs.PR_NUMBER }}.${{ secrets.PR_DEPLOYMENTS_DOMAIN }}" \
57+
-H "Authorization: Bearer ${{ secrets.PR_DEPLOYMENTS_CLOUDFLARE_API_TOKEN }}" \
58+
-H "Content-Type:application/json" | jq -r '.result[0].id')
59+
60+
set::add-mask $record_id
61+
62+
# Delete the record
63+
curl -X DELETE "https://api.cloudflare.com/client/v4/zones/${{ secrets.PR_DEPLOYMENTS_ZONE_ID }}/dns_records/$recrd_id" \
5564
-H "Authorization: Bearer ${{ secrets.PR_DEPLOYMENTS_CLOUDFLARE_API_TOKEN }}" \
56-
-H "Content-Type:application/json" \
57-
--data '{"type":"A","name":"*.pr${{ env.PR_NUMBER }}.${{ secrets.PR_DEPLOYMENTS_DOMAIN }}","content":"${{ secrets.PR_DEPLOYMENTS_CLUSTER_IP_1 }}","ttl":1,"proxied":false}'
65+
-H "Content-Type:application/json"

.github/workflows/pr-deploy.yaml

Lines changed: 25 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ jobs:
136136
PR_TITLE: ${{ needs.pr_commented.outputs.PR_TITLE }}
137137
PR_URL: ${{ needs.pr_commented.outputs.PR_URL }}
138138
PR_BRANCH: ${{ needs.pr_commented.outputs.PR_BRANCH }}
139-
PR_DEPLOYMENT_ACCESS_URL: "https://pr${{ needs.pr_commented.outputs.PR_NUMBER }}.${{ secrets.PR_DEPLOYMENTS_DOMAIN }}"
139+
PR_DEPLOYMENT_ACCESS_URL: "pr${{ needs.pr_commented.outputs.PR_NUMBER }}.${{ secrets.PR_DEPLOYMENTS_DOMAIN }}"
140140
steps:
141141
- name: Check if image exists
142142
run: |
@@ -154,11 +154,7 @@ jobs:
154154
curl -X POST "https://api.cloudflare.com/client/v4/zones/${{ secrets.PR_DEPLOYMENTS_ZONE_ID }}/dns_records" \
155155
-H "Authorization: Bearer ${{ secrets.PR_DEPLOYMENTS_CLOUDFLARE_API_TOKEN }}" \
156156
-H "Content-Type:application/json" \
157-
--data '{"type":"A","name":"*.pr${{ env.PR_NUMBER }}.${{ secrets.PR_DEPLOYMENTS_DOMAIN }}","content":"${{ secrets.PR_DEPLOYMENTS_CLUSTER_IP_1 }}","ttl":1,"proxied":false}'
158-
curl -X POST "https://api.cloudflare.com/client/v4/zones/${{ secrets.PR_DEPLOYMENTS_ZONE_ID }}/dns_records" \
159-
-H "Authorization: Bearer ${{ secrets.PR_DEPLOYMENTS_CLOUDFLARE_API_TOKEN }}" \
160-
-H "Content-Type:application/json" \
161-
--data '{"type":"A","name":"*.pr${{ env.PR_NUMBER }}.${{ secrets.PR_DEPLOYMENTS_DOMAIN }}","content":"${{ secrets.PR_DEPLOYMENTS_CLUSTER_IP_2 }}","ttl":1,"proxied":false}'
157+
--data '{"type":"CNAME","name":"*.${{ env.PR_DEPLOYMENT_ACCESS_URL }}","content":"${{ env.PR_DEPLOYMENT_ACCESS_URL }}","ttl":1,"proxied":false}'
162158
163159
- name: Checkout
164160
uses: actions/checkout@v3
@@ -192,11 +188,21 @@ jobs:
192188
spec:
193189
tls:
194190
- hosts:
195-
- "${{ secrets.PR_DEPLOYMENTS_DOMAIN }}"
196-
- "*.${{ secrets.PR_DEPLOYMENTS_DOMAIN }}"
191+
- "${{ env.PR_DEPLOYMENT_ACCESS_URL }}"
192+
- "*.${{ env.PR_DEPLOYMENT_ACCESS_URL }}"
197193
secretName: pr${{ env.PR_NUMBER }}-tls
198194
rules:
199-
- host: "pr${{ env.PR_NUMBER }}.${{ secrets.PR_DEPLOYMENTS_DOMAIN }}"
195+
- host: "${{ env.PR_DEPLOYMENT_ACCESS_URL }}"
196+
http:
197+
paths:
198+
- pathType: Prefix
199+
path: "/"
200+
backend:
201+
service:
202+
name: coder
203+
port:
204+
number: 80
205+
- host: "*.${{ env.PR_DEPLOYMENT_ACCESS_URL }}"
200206
http:
201207
paths:
202208
- pathType: Prefix
@@ -233,9 +239,9 @@ jobs:
233239
type: ClusterIP
234240
env:
235241
- name: "CODER_ACCESS_URL"
236-
value: "https://pr${{ env.PR_NUMBER }}.${{ secrets.PR_DEPLOYMENTS_DOMAIN }}"
242+
value: "https://${{ env.PR_DEPLOYMENT_ACCESS_URL }}"
237243
- name: "CODER_WILDCARD_ACCESS_URL"
238-
value: "*--pr${{ env.PR_NUMBER }}.${{ secrets.PR_DEPLOYMENTS_DOMAIN }}"
244+
value: "*.${{ env.PR_DEPLOYMENT_ACCESS_URL }}"
239245
- name: "CODER_EXPERIMENTS"
240246
value: "*"
241247
- name: CODER_PG_CONNECTION_URL
@@ -272,7 +278,7 @@ jobs:
272278
set -euxo pipefail
273279
274280
DEST="${HOME}/coder"
275-
URL="${{ env.PR_DEPLOYMENT_ACCESS_URL }}/bin/coder-linux-amd64"
281+
URL="https://${{ env.PR_DEPLOYMENT_ACCESS_URL }}/bin/coder-linux-amd64"
276282
277283
mkdir -p "$(dirname ${DEST})"
278284
@@ -290,6 +296,7 @@ jobs:
290296
curl -fsSL "$URL" -o "${DEST}"
291297
chmod +x "${DEST}"
292298
"${DEST}" version
299+
mv "${DEST}" /home/usr/bin/coder
293300
294301
- name: Create first user, template and workspace
295302
id: setup_deployment
@@ -305,16 +312,16 @@ jobs:
305312
echo "::add-mask::$password"
306313
echo "password=$password" >> $GITHUB_OUTPUT
307314
308-
/home/runner/coder login \
315+
coder login \
309316
--first-user-username pr${{ env.PR_NUMBER }} \
310-
--first-user-email ${{ env.PR_NUMBER }}@coder.com \
317+
--first-user-email pr${{ env.PR_NUMBER }}@coder.com \
311318
--first-user-password $password \
312319
--first-user-trial \
313320
--use-token-as-session \
314-
${{ env.PR_DEPLOYMENT_ACCESS_URL }}
321+
https://${{ env.PR_DEPLOYMENT_ACCESS_URL }}
315322
316323
# Create template
317-
/home/runner/coder templates init --id kubernetes && cd ./kubernetes/ && /home/runner/coder templates create -y --variable namespace=pr${{ env.PR_NUMBER }}
324+
coder templates init --id kubernetes && cd ./kubernetes/ && /home/runner/coder templates create -y --variable namespace=pr${{ env.PR_NUMBER }}
318325
319326
# Create workspace
320327
cat <<EOF > workspace.yaml
@@ -323,8 +330,8 @@ jobs:
323330
home_disk_size: "2"
324331
EOF
325332
326-
/home/runner/coder create --template="kubernetes" pr${{ env.PR_NUMBER }} --rich-parameter-file ./workspace.yaml -y
327-
/home/runner/coder stop pr${{ env.PR_NUMBER }} -y
333+
coder create --template="kubernetes" pr${{ env.PR_NUMBER }} --rich-parameter-file ./workspace.yaml -y
334+
coder stop pr${{ env.PR_NUMBER }} -y
328335
329336
- name: Send Slack notification
330337
run: |

0 commit comments

Comments
 (0)