Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions commands/create_stack.go
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,11 @@ func createStackRun(flags createStackFlags) error {
if err != nil {
return err
}
defer os.RemoveAll(scratch)
defer func() {
if err2 := os.RemoveAll(scratch); err2 != nil && err == nil {
err = err2
}
}()

client, err := ihop.NewClient(scratch)
if err != nil {
Expand Down Expand Up @@ -127,5 +131,5 @@ func createStackRun(flags createStackFlags) error {
}
}

return nil
return err // err should be nil here, but return err to catch deferred error
}
12 changes: 8 additions & 4 deletions commands/pack.go
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,11 @@ func packRun(flags packFlags) error {
if err != nil {
return fmt.Errorf("unable to create temporary directory: %s", err)
}
defer os.RemoveAll(tmpDir)
defer func() {
if err2 := os.RemoveAll(tmpDir); err2 != nil && err == nil {
err = err2
}
}()

if flags.extensionTOMLPath != "" {
err := packRunExtension(flags, tmpDir)
Expand All @@ -91,7 +95,7 @@ func packRun(flags packFlags) error {

config.Buildpack.Version = flags.version

fmt.Fprintf(os.Stdout, "Packing %s %s...\n", config.Buildpack.Name, flags.version)
_, _ = fmt.Fprintf(os.Stdout, "Packing %s %s...\n", config.Buildpack.Name, flags.version)

if flags.stack != "" {
var filteredDependencies []cargo.ConfigMetadataDependency
Expand Down Expand Up @@ -137,7 +141,7 @@ func packRun(flags packFlags) error {
return fmt.Errorf("failed to create output: %s", err)
}

return nil
return err // err should be nil here, but return err to catch deferred error
}

func packRunExtension(flags packFlags, tmpDir string) error {
Expand All @@ -158,7 +162,7 @@ func packRunExtension(flags packFlags, tmpDir string) error {

config.Extension.Version = flags.version

fmt.Fprintf(os.Stdout, "Packing %s %s...\n", config.Extension.Name, flags.version)
_, _ = fmt.Fprintf(os.Stdout, "Packing %s %s...\n", config.Extension.Name, flags.version)

if flags.stack != "" {
var filteredDependencies []cargo.ConfigExtensionMetadataDependency
Expand Down
8 changes: 6 additions & 2 deletions commands/publish_image.go
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,11 @@ func publishImageRun(flags publishImageFlags) error {
if err != nil {
return err
}
defer os.RemoveAll(scratch)
defer func() {
if err2 := os.RemoveAll(scratch); err2 != nil && err == nil {
err = err2
}
}()

tmpExtractedImage := filepath.Join(scratch, "extracted_image")
err = extractTar(flags.imageArchive, tmpExtractedImage)
Expand All @@ -71,5 +75,5 @@ func publishImageRun(flags publishImageFlags) error {
return err
}

return nil
return err // err should be nil here, but return err to catch deferred error
}
8 changes: 6 additions & 2 deletions commands/publish_stack.go
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,11 @@ func publishStackRun(flags publishStackFlags) error {
if err != nil {
return err
}
defer os.RemoveAll(scratch)
defer func() {
if err2 := os.RemoveAll(scratch); err2 != nil && err == nil {
err = err2
}
}()

tmpBuild := filepath.Join(scratch, "build")
err = extractTar(flags.buildArchive, tmpBuild)
Expand Down Expand Up @@ -100,7 +104,7 @@ func publishStackRun(flags publishStackFlags) error {
return err
}

return nil
return err // err should be nil here, but return err to catch deferred error
}

func extractTar(input string, destination string) error {
Expand Down
8 changes: 6 additions & 2 deletions commands/update_dependencies.go
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,11 @@ func updateDependenciesRun(flags updateDependenciesFlags) error {
if err != nil {
return fmt.Errorf("failed to open buildpack config file: %w", err)
}
defer file.Close()
defer func() {
if err2 := file.Close(); err2 != nil && err == nil {
err = err2
}
}()

err = cargo.EncodeConfig(file, config)
if err != nil {
Expand All @@ -110,5 +114,5 @@ func updateDependenciesRun(flags updateDependenciesFlags) error {

fmt.Println("Updating buildpack.toml with new versions: ", reflect.ValueOf(newVersionsFound).MapKeys())

return nil
return err // err should be nil here, but return err to catch deferred error
}
Loading
Loading