Skip to content

Commit

Permalink
move tar writer close
Browse files Browse the repository at this point in the history
  • Loading branch information
zulkhair committed Aug 8, 2024
1 parent 2306458 commit 20bcf05
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 6 deletions.
12 changes: 8 additions & 4 deletions common/docker/docker.go
Original file line number Diff line number Diff line change
Expand Up @@ -291,9 +291,9 @@ func pullImageIfNotExists(ctx context.Context, cli *client.Client, imageName str

func buildImage(ctx context.Context, cli *client.Client, dockerfile Dockerfile, imageName string) error {
fmt.Println("Building image ", imageName)

buf := new(bytes.Buffer)
tw := tar.NewWriter(buf)
defer tw.Close()

// Add the Dockerfile to the tar archive
header := &tar.Header{
Expand All @@ -312,18 +312,22 @@ func buildImage(ctx context.Context, cli *client.Client, dockerfile Dockerfile,
return err
}

if err := tw.Close(); err != nil {
return eris.Wrap(err, "Failed to close tar writer")
}

// Read the tar archive
tarReader := bytes.NewReader(buf.Bytes())
buildContext := io.NopCloser(bytes.NewReader(buf.Bytes()))
defer buildContext.Close()

buildOptions := types.ImageBuildOptions{
Dockerfile: "Dockerfile",
Tags: []string{imageName},
Target: dockerfile.Target,
Version: types.BuilderBuildKit,
}

// Build the image
buildResponse, err := cli.ImageBuild(ctx, tarReader, buildOptions)
buildResponse, err := cli.ImageBuild(ctx, buildContext, buildOptions)
if err != nil {
return err
}
Expand Down
6 changes: 4 additions & 2 deletions common/docker/script.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ const (
# Copy the rest of the source code and build the binary
COPY /cardinal ./
RUN --mount=type=cache,target="/root/.cache/go-build" go build -v -o /go/bin/app
# RUN --mount=type=cache,target="/root/.cache/go-build" go build -v -o /go/bin/app
RUN go build -v -o /go/bin/app
################################
# Runtime Image - Normal
Expand Down Expand Up @@ -57,7 +58,8 @@ const (
# Copy the rest of the source code and build the binary with debugging symbols
COPY /cardinal ./
RUN --mount=type=cache,target="/root/.cache/go-build" go build -gcflags="all=-N -l" -v -o /usr/bin/app
# RUN --mount=type=cache,target="/root/.cache/go-build" go build -gcflags="all=-N -l" -v -o /usr/bin/app
RUN go build -gcflags="all=-N -l" -v -o /usr/bin/app
# Copy world.toml to the image
COPY world.toml world.toml
Expand Down

0 comments on commit 20bcf05

Please sign in to comment.