func upload(_file file, uploads chan<- bool, client *s3.S3, bucket *s3.Bucket) { err := bucket.Put(_file.path, _file.data, _file.contentType, permissions) if err != nil { fmt.Printf("UPLOAD ERROR: %+v\n", err) panic(err) } uploads <- true fmt.Printf("Uploaded %s!\n", _file.path) }
func s3Upload(bucket *s3.Bucket, path string, im *Image) (string, error) { var url string if len(im.Data) == 0 { return "", fmt.Errorf("No image data found for %s", path) } err := bucket.Put(path, im.Data, im.MimeType(), s3.PublicRead) if err != nil { return url, err } url = bucket.URL(path) return url, nil }
func writeS3FileToS3(sourceBucket, targetBucket *s3.Bucket, sourceKeyPath, targetKeyPath string) error { data, err := sourceBucket.Get(sourceKeyPath) if err != nil { return err } contType := mime.TypeByExtension(filepath.Ext(sourceKeyPath)) Perms := s3.ACL("private") if err := targetBucket.Put(targetKeyPath, data, contType, Perms); err != nil { return err } return nil }
func writeLocalFileToS3(bucket *s3.Bucket, path string, file string) error { contType := mime.TypeByExtension(filepath.Ext(file)) Perms := s3.ACL("private") data, err := ioutil.ReadFile(file) if err != nil { return err } if err := bucket.Put(path, data, contType, Perms); err != nil { return err } return nil }
// account for roundtrip to s3 Eventually(session, 5*time.Second).Should(gexec.Exit(0)) err = json.Unmarshal(session.Out.Contents(), &response) Ω(err).ShouldNot(HaveOccurred()) }) Context("with no version", func() { BeforeEach(func() { request.Version.Number = "" }) Context("when a version is present in the source", func() { BeforeEach(func() { err := bucket.Put(key, []byte("1.2.3"), "text/plain", "") Ω(err).ShouldNot(HaveOccurred()) }) It("returns the version present at the source", func() { Ω(response).Should(HaveLen(1)) Ω(response[0].Number).Should(Equal("1.2.3")) }) }) Context("when no version is present at the source", func() { Context("and an initial version is set", func() { BeforeEach(func() { request.Source.InitialVersion = "10.9.8" })
It("reports the version as the resource's version", func() { Ω(response.Version.Number).Should(Equal("1.2.3")) }) It("saves the contents of the file in the configured bucket", func() { contents, err := bucket.Get(key) Ω(err).ShouldNot(HaveOccurred()) Ω(string(contents)).Should(Equal("1.2.3")) }) }) }) Context("when bumping the version", func() { BeforeEach(func() { err := bucket.Put(key, []byte("1.2.3"), "text/plain", s3.Private) Ω(err).ShouldNot(HaveOccurred()) }) for bump, result := range map[string]string{ "final": "1.2.3", "patch": "1.2.4", "minor": "1.3.0", "major": "2.0.0", } { bumpLocal := bump resultLocal := result Context(fmt.Sprintf("when bumping %s", bumpLocal), func() { BeforeEach(func() { request.Params.Bump = bumpLocal