// AttachTaskFiles is responsible for sending the // specified file to the API Server func (c *S3CopyCommand) AttachTaskFiles(pluginLogger plugin.Logger, pluginCom plugin.PluginCommunicator, request S3CopyRequest) error { remotePath := filepath.ToSlash(request.S3DestinationPath) fileLink := s3baseURL + request.S3DestinationBucket + "/" + remotePath displayName := request.S3DisplayName if displayName == "" { displayName = filepath.Base(request.S3SourcePath) } pluginLogger.LogExecution(slogger.INFO, "attaching file with name %v", displayName) file := artifact.File{ Name: displayName, Link: fileLink, } files := []*artifact.File{&file} err := pluginCom.PostTaskFiles(files) if err != nil { return fmt.Errorf("Attach files failed: %v", err) } pluginLogger.LogExecution(slogger.INFO, "API attach files call succeeded") return nil }
// AttachTaskFiles is responsible for sending the // specified file to the API Server func (s3pc *S3PutCommand) AttachTaskFiles(log plugin.Logger, com plugin.PluginCommunicator) error { remoteFile := filepath.ToSlash(s3pc.RemoteFile) fileLink := s3baseURL + s3pc.Bucket + "/" + remoteFile displayName := s3pc.DisplayName if displayName == "" { displayName = filepath.Base(s3pc.LocalFile) } file := &artifact.File{ Name: displayName, Link: fileLink, Visibility: s3pc.Visibility, } err := com.PostTaskFiles([]*artifact.File{file}) if err != nil { return fmt.Errorf("Attach files failed: %v", err) } log.LogExecution(slogger.INFO, "API attach files call succeeded") return nil }