@@ -20,6 +20,8 @@ resource "null_resource" "api_key" {
20
20
provisioner "local-exec" {
21
21
interpreter = [" /bin/bash" , " -c" ]
22
22
command = << EOF
23
+ set -e
24
+
23
25
curl '${ local . deployments . primary . url } /api/v2/users/first' \
24
26
--data-raw $'{"email":"${ local . coder_admin_email } ","password":"${ local . coder_admin_password } ","username":"${ local . coder_admin_user } ","name":"${ local . coder_admin_full_name } ","trial":false}' \
25
27
--insecure --silent --output /dev/null
@@ -28,12 +30,13 @@ session_token=$(curl '${local.deployments.primary.url}/api/v2/users/login' \
28
30
--data-raw $'{"email":"${ local . coder_admin_email } ","password":"${ local . coder_admin_password } "}' \
29
31
--insecure --silent | jq -r .session_token)
30
32
31
- api_key=$(curl '${ local . deployments . primary . url } /users/me/keys/tokens' \
33
+ echo -n $${session_token} > ${ path . module } /.coderv2/session_token
34
+
35
+ api_key=$(curl '${ local . deployments . primary . url } /api/v2/users/me/keys/tokens' \
32
36
-H "Coder-Session-Token: $${session_token}" \
33
37
--data-raw '{"token_name":"terraform","scope":"all"}' \
34
38
--insecure --silent | jq -r .key)
35
39
36
- mkdir -p ${ path . module } /.coderv2
37
40
echo -n $${api_key} > ${ path . module } /.coderv2/api_key
38
41
EOF
39
42
}
58
61
}
59
62
}
60
63
61
- resource "null_resource" "proxy_tokens " {
64
+ resource "null_resource" "europe_proxy_token " {
62
65
provisioner "local-exec" {
63
66
interpreter = [" /bin/bash" , " -c" ]
64
67
command = << EOF
65
- europe_token=$( curl '${ local . deployments . primary . url } /api/v2/workspaceproxies' \
68
+ curl '${ local . deployments . primary . url } /api/v2/workspaceproxies' \
66
69
-H "Coder-Session-Token: ${ trimspace (data. local_file . api_key . content )} " \
67
70
--data-raw '{"name":"europe","display_name":"Europe","icon":"/emojis/1f950.png"}' \
68
- --insecure --silent | jq -r .proxy_token)
69
-
70
- asia_token=$(curl '${ local . deployments . primary . url } /api/v2/workspaceproxies' \
71
- -H "Coder-Session-Token: ${ trimspace (data. local_file . api_key . content )} " \
72
- --data-raw '{"name":"asia","display_name":"Asia","icon":"/emojis/1f35b.png"}' \
73
- --insecure --silent | jq -r .proxy_token)
74
-
75
- echo -n $${europe_token} > ${ path . module } /.coderv2/europe_proxy_token
76
- echo -n $${asia_token} > ${ path . module } /.coderv2/asia_proxy_token
71
+ --insecure --silent \
72
+ | jq -r .proxy_token > ${ path . module } /.coderv2/europe_proxy_token
77
73
EOF
78
74
}
79
75
80
- depends_on = [data . http . coder_healthy ]
76
+ depends_on = [null_resource . license ]
81
77
}
82
78
83
79
data "local_file" "europe_proxy_token" {
84
80
filename = " ${ path . module } /.coderv2/europe_proxy_token"
85
- depends_on = [null_resource. proxy_tokens ]
81
+ depends_on = [null_resource. europe_proxy_token ]
82
+ }
83
+
84
+ resource "null_resource" "asia_proxy_token" {
85
+ provisioner "local-exec" {
86
+ interpreter = [" /bin/bash" , " -c" ]
87
+ command = << EOF
88
+ curl '${ local . deployments . primary . url } /api/v2/workspaceproxies' \
89
+ -H "Coder-Session-Token: ${ trimspace (data. local_file . api_key . content )} " \
90
+ --data-raw '{"name":"asia","display_name":"Asia","icon":"/emojis/1f35b.png"}' \
91
+ --insecure --silent \
92
+ | jq -r .proxy_token > ${ path . module } /.coderv2/asia_proxy_token
93
+ EOF
94
+ }
95
+
96
+ depends_on = [null_resource. license ]
86
97
}
87
98
88
99
data "local_file" "asia_proxy_token" {
89
100
filename = " ${ path . module } /.coderv2/asia_proxy_token"
90
- depends_on = [null_resource. proxy_tokens ]
101
+ depends_on = [null_resource. asia_proxy_token ]
91
102
}
0 commit comments