@@ -16,19 +16,23 @@ terraform {
16
16
}
17
17
18
18
locals {
19
- username = data. coder_workspace . me . owner
19
+ # if the jfrog username is same as the coder username, you can use the following
20
+ # username = data.coder_workspace.me.owner
21
+ # if the username is same as email, you can use the following
22
+ # username = urlencode(data.coder_workspace.me.owner_email)
23
+ artifactory_username = data. coder_workspace . me . owner
20
24
artifactory_registry_keys = {
21
- " npm" = " npm"
22
- " pypi " = " pypi "
23
- " go" = " go"
25
+ " npm" = " npm"
26
+ " python " = " python "
27
+ " go" = " go"
24
28
}
29
+ workspace_user = data. coder_workspace . me . owner
25
30
}
26
31
27
32
data "coder_provisioner" "me" {
28
33
}
29
34
30
35
provider "docker" {
31
- host = " tcp://100.117.102.81:2375"
32
36
}
33
37
34
38
data "coder_workspace" "me" {
@@ -51,7 +55,7 @@ provider "artifactory" {
51
55
}
52
56
53
57
resource "artifactory_scoped_token" "me" {
54
- username = data . coder_workspace . me . owner
58
+ username = local . artifactory_username
55
59
}
56
60
57
61
resource "coder_agent" "main" {
@@ -84,21 +88,21 @@ resource "coder_agent" "main" {
84
88
mkdir -p ~/.pip
85
89
cat << EOF > ~/.pip/pip.conf
86
90
[global]
87
- index-url = https://${ data . coder_workspace . me . owner } :${ artifactory_scoped_token . me . access_token } @${ var . jfrog_url } /artifactory/api/pypi/${ local . artifactory_registry_keys [" pypi " ]} /simple
91
+ index-url = https://${ local . artifactory_username } :${ artifactory_scoped_token . me . access_token } @${ var . jfrog_url } /artifactory/api/pypi/${ local . artifactory_registry_keys [" python " ]} /simple
88
92
EOF
89
93
90
94
EOT
91
95
# Set GOPROXY to use the Artifactory "go" registry.
92
96
env = {
93
- GOPROXY : " https://${ data . coder_workspace . me . owner } :${ artifactory_scoped_token . me . access_token } @${ var . jfrog_url } /artifactory/api/go/${ local . artifactory_registry_keys [" go" ]} "
97
+ GOPROXY : " https://${ local . artifactory_username } :${ artifactory_scoped_token . me . access_token } @${ var . jfrog_url } /artifactory/api/go/${ local . artifactory_registry_keys [" go" ]} "
94
98
}
95
99
}
96
100
97
101
resource "coder_app" "code-server" {
98
102
agent_id = coder_agent. main . id
99
103
slug = " code-server"
100
104
display_name = " code-server"
101
- url = " http://localhost:13337/?folder=/home/${ local . username } "
105
+ url = " http://localhost:13337/?folder=/home/${ local . workspace_user } "
102
106
icon = " /icon/code.svg"
103
107
subdomain = false
104
108
share = " owner"
@@ -123,7 +127,7 @@ resource "docker_image" "main" {
123
127
build {
124
128
context = " ./build"
125
129
build_args = {
126
- USER = local.username
130
+ USER = local.workspace_user
127
131
}
128
132
}
129
133
triggers = {
@@ -145,7 +149,7 @@ resource "docker_container" "workspace" {
145
149
ip = " host-gateway"
146
150
}
147
151
volumes {
148
- container_path = " /home/${ local . username } "
152
+ container_path = " /home/${ local . workspace_user } "
149
153
volume_name = docker_volume. home_volume . name
150
154
read_only = false
151
155
}
0 commit comments