Skip to content

Commit

Permalink
fix: Fill IMAGE_TAG,etc on Docker builds
Browse files Browse the repository at this point in the history
Resolves #4295
Docs have long stated that these fields are available when
using the local docker builder, now they actually are.
  • Loading branch information
0xADD1E committed Aug 19, 2022
1 parent 7c6fd9b commit 01c6f7c
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 2 deletions.
11 changes: 10 additions & 1 deletion pkg/skaffold/build/docker/docker.go
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,16 @@ func (b *Builder) Build(ctx context.Context, out io.Writer, a *latest.Artifact,

func (b *Builder) dockerCLIBuild(ctx context.Context, out io.Writer, name string, workspace string, dockerfilePath string, a *latest.DockerArtifact, opts docker.BuildOptions, pl v1.Platform) (string, error) {
args := []string{"build", workspace, "--file", dockerfilePath, "-t", opts.Tag}
ba, err := docker.EvalBuildArgs(b.cfg.Mode(), workspace, a.DockerfilePath, a.BuildArgs, opts.ExtraBuildArgs)
imgRef, err := docker.ParseReference(opts.Tag)
if err != nil {
return "", fmt.Errorf("couldn't parse image tag: %w", err)
}
imageInfoEnv := map[string]string{
"IMAGE_REPO": imgRef.Repo,
"IMAGE_NAME": imgRef.Name,
"IMAGE_TAG": imgRef.Tag,
}
ba, err := docker.EvalBuildArgsWithEnv(b.cfg.Mode(), workspace, a.DockerfilePath, a.BuildArgs, opts.ExtraBuildArgs, imageInfoEnv)
if err != nil {
return "", fmt.Errorf("unable to evaluate build args: %w", err)
}
Expand Down
11 changes: 10 additions & 1 deletion pkg/skaffold/docker/image.go
Original file line number Diff line number Diff line change
Expand Up @@ -312,7 +312,16 @@ func (l *localDaemon) Build(ctx context.Context, out io.Writer, workspace string
if err := l.CheckCompatible(a); err != nil {
return "", err
}
buildArgs, err := EvalBuildArgs(opts.Mode, workspace, a.DockerfilePath, a.BuildArgs, opts.ExtraBuildArgs)
imgRef, err := ParseReference(opts.Tag)
if err != nil {
return "", fmt.Errorf("couldn't parse image tag: %w", err)
}
imageInfoEnv := map[string]string{
"IMAGE_REPO": imgRef.Repo,
"IMAGE_NAME": imgRef.Name,
"IMAGE_TAG": imgRef.Tag,
}
buildArgs, err := EvalBuildArgsWithEnv(opts.Mode, workspace, a.DockerfilePath, a.BuildArgs, opts.ExtraBuildArgs, imageInfoEnv)
if err != nil {
return "", fmt.Errorf("unable to evaluate build args: %w", err)
}
Expand Down

0 comments on commit 01c6f7c

Please sign in to comment.