Skip to content

Commit 5cd66e4

Browse files
committed
Improve error handling ❗️
1 parent d07bb32 commit 5cd66e4

File tree

1 file changed

+16
-8
lines changed

1 file changed

+16
-8
lines changed

main.go

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,16 @@ import (
2424

2525
var defaultS3Bucket = "static.buffer.com"
2626

27+
func fatal(format string, a ...interface{}) {
28+
s := "Error: " + format + "\n"
29+
if a != nil {
30+
fmt.Printf(s, a)
31+
} else {
32+
fmt.Print(s)
33+
}
34+
os.Exit(1)
35+
}
36+
2737
// GetFileMd5 returns a checksum for a given file
2838
func GetFileMd5(file *os.File) (string, error) {
2939
var fileHash string
@@ -82,8 +92,7 @@ func GetS3Uploader() (*s3manager.Uploader, error) {
8292

8393
_, err := creds.Get()
8494
if err != nil {
85-
fmt.Printf("failed to load AWS credentials %s", err)
86-
return uploader, err
95+
fatal("failed to load AWS credentials %s", err)
8796
}
8897

8998
uploader = s3manager.NewUploader(sess)
@@ -152,29 +161,28 @@ func main() {
152161
flag.Parse()
153162

154163
if *directory == "" && *s3Bucket == defaultS3Bucket {
155-
fmt.Println("To use the default bucket you need to specify an upload directory (-dir)")
156-
os.Exit(1)
164+
fatal("To use the default bucket you need to specify an upload directory (-dir)")
157165
}
158166

159167
files, err := GetFilesFromGlobsList(*filesArg)
160168
if err != nil {
161-
fmt.Printf("failed to get files %s", err)
169+
fatal("failed to get files %s", err)
162170
}
163171
fmt.Printf("Found %d files to upload and version:\n", len(files))
164172

165173
fileVersions, err := VersionAndUploadFiles(*s3Bucket, *directory, files)
166174
if err != nil {
167-
fmt.Printf("failed to upload files %s", err)
175+
fatal("failed to upload files %s", err)
168176
}
169177

170178
output, err := json.MarshalIndent(fileVersions, "", " ")
171179
if err != nil {
172-
fmt.Printf("failed to generate versions json file %s", err)
180+
fatal("failed to generate versions json file %s", err)
173181
}
174182

175183
err = ioutil.WriteFile(*outputFilename, output, 0644)
176184
if err != nil {
177-
fmt.Printf("failed to write versions json file %s", err)
185+
fatal("failed to write versions json file %s", err)
178186
}
179187

180188
fmt.Printf("\nSuccessfully uploaded static assets and generated %s\n", *outputFilename)

0 commit comments

Comments
 (0)