mirror of
				https://github.com/containers/podman.git
				synced 2025-10-26 02:35:43 +08:00 
			
		
		
		
	remote build: EvalSymlinks() the context directory
Use EvalSymlinks() to find the context directory, in case there's shenanigans. Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
This commit is contained in:
		| @ -230,6 +230,9 @@ func Build(ctx context.Context, containerFiles []string, options entities.BuildO | |||||||
| 			params.Add("platform", platform) | 			params.Add("platform", platform) | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
|  | 	if contextDir, err := filepath.EvalSymlinks(options.ContextDirectory); err == nil { | ||||||
|  | 		options.ContextDirectory = contextDir | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	params.Set("pullpolicy", options.PullPolicy.String()) | 	params.Set("pullpolicy", options.PullPolicy.String()) | ||||||
|  |  | ||||||
|  | |||||||
| @ -956,6 +956,15 @@ EOF | |||||||
|     run_podman build -t build_test $tmpdir |     run_podman build -t build_test $tmpdir | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @test "podman build build context is a symlink to a directory" { | ||||||
|  |     tmpdir=$PODMAN_TMPDIR/build-test | ||||||
|  |     mkdir -p $tmpdir/target | ||||||
|  |     ln -s target $tmpdir/link | ||||||
|  |     echo FROM alpine > $tmpdir/link/Dockerfile | ||||||
|  |     echo RUN echo hello >> $tmpdir/link/Dockerfile | ||||||
|  |     run_podman build -t build_test $tmpdir/link | ||||||
|  | } | ||||||
|  |  | ||||||
| function teardown() { | function teardown() { | ||||||
|     # A timeout or other error in 'build' can leave behind stale images |     # A timeout or other error in 'build' can leave behind stale images | ||||||
|     # that podman can't even see and which will cascade into subsequent |     # that podman can't even see and which will cascade into subsequent | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user
	 Nalin Dahyabhai
					Nalin Dahyabhai