File tree 2 files changed +48
-7
lines changed 2 files changed +48
-7
lines changed Original file line number Diff line number Diff line change 7
7
inputs :
8
8
pr_number :
9
9
description : " PR number"
10
+ type : number
10
11
required : true
11
12
skip_build :
12
13
description : " Skip build job"
13
14
required : false
15
+ type : boolean
14
16
default : false
17
+ experiments :
18
+ description : " Experiments to enable"
19
+ required : false
20
+ type : string
21
+ default : " *"
15
22
16
23
env :
17
24
REPO : ghcr.io/coder/coder-preview
@@ -229,6 +236,20 @@ jobs:
229
236
kubectl create secret generic coder-db-url -n pr${{ env.PR_NUMBER }} \
230
237
--from-literal=url="postgres://coder:coder@coder-db-postgresql.pr${{ env.PR_NUMBER }}.svc.cluster.local:5432/coder?sslmode=disable"
231
238
239
+ - name : Get experiments
240
+ id : get_experiments
241
+ run : |
242
+ set -euxo pipefail
243
+ if [[ ${{ github.event_name }} == "workflow_dispatch" ]]; then
244
+ experiments=${{ github.event.inputs.experiments }}
245
+ else
246
+ experiments=$(echo "${{ github.event.comment.body }}" | grep -oP '(?<=--experiments ).*')
247
+ if [ -z "$experiments" ]; then
248
+ experiments="*"
249
+ fi
250
+ fi
251
+ echo "experiments=$experiments" >> $GITHUB_OUTPUT
252
+
232
253
- name : Create values.yaml
233
254
run : |
234
255
cat <<EOF > pr-deploy-values.yaml
@@ -245,7 +266,7 @@ jobs:
245
266
- name: "CODER_WILDCARD_ACCESS_URL"
246
267
value: "*.${{ env.PR_DEPLOYMENT_ACCESS_URL }}"
247
268
- name: "CODER_EXPERIMENTS"
248
- value: "* "
269
+ value: "${{ steps.get_experiments.outputs.experiments }} "
249
270
- name: CODER_PG_CONNECTION_URL
250
271
valueFrom:
251
272
secretKeyRef:
Original file line number Diff line number Diff line change @@ -9,24 +9,43 @@ set -euo pipefail
9
9
skipBuild=false
10
10
dryRun=false
11
11
confirm=true
12
+ experiments=" "
12
13
13
14
# parse arguments
14
- for arg in " $@ " ; do
15
- case $arg in
15
+ while (( " $# " )) ; do
16
+ case " $1 " in
16
17
-s | --skip-build)
17
18
skipBuild=true
18
- shift # Remove --skip-build from processing
19
+ shift
19
20
;;
20
21
-n | --dry-run)
21
22
dryRun=true
22
- shift # Remove --dry-run from processing
23
+ shift
24
+ ;;
25
+ -e | --experiments)
26
+ if [ -n " $2 " ] && [ ${2: 0: 1} != " -" ]; then
27
+ experiments=" $2 "
28
+ shift
29
+ else
30
+ echo " Error: Argument for $1 is missing" >&2
31
+ exit 1
32
+ fi
33
+ shift
23
34
;;
24
35
-y | --yes)
25
36
confirm=false
26
- shift # Remove --yes from processing
37
+ shift
38
+ ;;
39
+ --)
40
+ shift
41
+ break
42
+ ;;
43
+ -* | --* )
44
+ echo " Error: Unsupported flag $1 " >&2
45
+ exit 1
27
46
;;
28
47
* )
29
- shift # Remove generic argument from processing
48
+ shift
30
49
;;
31
50
esac
32
51
done
@@ -61,6 +80,7 @@ if $dryRun; then
61
80
echo " branchName: ${branchName} "
62
81
echo " prNumber: ${prNumber} "
63
82
echo " skipBuild: ${skipBuild} "
83
+ echo " experiments: ${experiments} "
64
84
exit 0
65
85
fi
66
86
You can’t perform that action at this time.
0 commit comments