github.com/GregorioDiStefano/go-file-storage@v0.0.0-20161001105139-5707ab351525/controllers/s3upload.go (about) 1 package controller 2 3 import ( 4 "fmt" 5 "io" 6 7 "github.com/aws/aws-sdk-go/aws" 8 "github.com/aws/aws-sdk-go/aws/session" 9 "github.com/aws/aws-sdk-go/service/s3/s3manager" 10 ) 11 12 func (upload Upload) doActualUpload(data io.ReadCloser, key string, fn string) error { 13 //TODO:why no recovery when crash here? ex: failed DNS lookup. 14 15 s3uploader := s3manager.NewUploader(session.New(&aws.Config{Region: aws.String(upload.awsRegion)})) 16 17 _, err := s3uploader.Upload(&s3manager.UploadInput{ 18 Body: data, 19 Bucket: aws.String(upload.awsBucket), 20 Key: aws.String(fmt.Sprintf("%s/%s", key, fn)), 21 }) 22 23 if err != nil { 24 return err 25 } 26 27 return nil 28 } 29 30 func (upload Upload) doActualDelete(deleteKey, fileKey, filename string) error { 31 return nil 32 }