diff --git a/internal/pipe/s3/s3.go b/internal/pipe/s3/s3.go index b88709202..076304a1a 100644 --- a/internal/pipe/s3/s3.go +++ b/internal/pipe/s3/s3.go @@ -71,6 +71,12 @@ func upload(ctx *context.Context, conf config.S3) error { svc := s3.New(sess, &aws.Config{ Region: aws.String(conf.Region), }) + + bucket, err := tmpl.New(ctx).Apply(conf.Bucket) + if err != nil { + return err + } + folder, err := tmpl.New(ctx).Apply(conf.Folder) if err != nil { return err @@ -93,12 +99,12 @@ func upload(ctx *context.Context, conf config.S3) error { return err } log.WithFields(log.Fields{ - "bucket": conf.Bucket, + "bucket": bucket, "folder": folder, "artifact": artifact.Name, }).Info("uploading") _, err = svc.PutObjectWithContext(ctx, &s3.PutObjectInput{ - Bucket: aws.String(conf.Bucket), + Bucket: aws.String(bucket), Key: aws.String(filepath.Join(folder, artifact.Name)), Body: f, ACL: aws.String(conf.ACL), diff --git a/www/content/s3.md b/www/content/s3.md index 0a60e51c7..5b42b11e8 100644 --- a/www/content/s3.md +++ b/www/content/s3.md @@ -22,6 +22,7 @@ s3: # You can have multiple s3 configs - # Bucket name (without the s3:// prefix) + # You can use `{{ .Env.BUCKET_ID }}` # Default is empty. bucket: my-bucket # AWS Region to use.