@@ -168,7 +168,46 @@ RUN date > /date.txt`,
168
168
files : map [string ]string {
169
169
"Dockerfile" : `
170
170
FROM localhost:5000/test-ubuntu:latest
171
- COPY date.txt /date.txt` ,
171
+ COPY date.txt /date.txt
172
+ RUN chown 1000:1000 /date.txt` ,
173
+ "date.txt" : fmt .Sprintf ("%d" , time .Now ().Unix ()),
174
+ },
175
+ extraEnv : map [string ]string {
176
+ "CODER_AGENT_TOKEN" : "some-token" ,
177
+ "CODER_AGENT_URL" : "https://coder.example.com" ,
178
+ "FOO" : testEnvValue ,
179
+ "ENVBUILDER_GIT_URL" : "https://not.the.real.git/url" ,
180
+ "ENVBUILDER_CACHE_REPO" : "not-the-real-cache-repo" ,
181
+ "ENVBUILDER_DOCKERFILE_PATH" : "Dockerfile" ,
182
+ },
183
+ assertEnv : func (t * testing.T , deps testDependencies ) resource.TestCheckFunc {
184
+ return resource .ComposeAggregateTestCheckFunc (
185
+ assertEnv (t ,
186
+ "CODER_AGENT_TOKEN" , "some-token" ,
187
+ "CODER_AGENT_URL" , "https://coder.example.com" ,
188
+ "ENVBUILDER_CACHE_REPO" , deps .CacheRepo ,
189
+ "ENVBUILDER_DOCKERFILE_PATH" , "Dockerfile" ,
190
+ "ENVBUILDER_DOCKER_CONFIG_BASE64" , deps .DockerConfigBase64 ,
191
+ "ENVBUILDER_GIT_SSH_PRIVATE_KEY_PATH" , deps .Repo .Key ,
192
+ "ENVBUILDER_GIT_URL" , deps .Repo .URL ,
193
+ "ENVBUILDER_REMOTE_REPO_BUILD_MODE" , "true" ,
194
+ "ENVBUILDER_VERBOSE" , "true" ,
195
+ "FOO" , "bar\n baz" ,
196
+ ),
197
+ )
198
+ },
199
+ },
200
+ {
201
+ // Same as above, except for multi-stage build.
202
+ name : "copy_perms_multistage" ,
203
+ files : map [string ]string {
204
+ "Dockerfile" : `
205
+ FROM localhost:5000/test-ubuntu:latest AS a
206
+ COPY date.txt /date.txt
207
+ RUN chown 1000:1000 /date.txt
208
+ FROM localhost:5000/test-ubuntu:latest
209
+ COPY --from=a /date.txt /date.txt
210
+ RUN chown 1001:1001 /date.txt` ,
172
211
"date.txt" : fmt .Sprintf ("%d" , time .Now ().Unix ()),
173
212
},
174
213
extraEnv : map [string ]string {
0 commit comments