S3Storage
Amazon S3 Artifact Storage
Example. Adds new storage that allows TeamCity to store build artifacts in S3
project {
// Other Project settings ...
features {
// Other Project Features ...
s3Storage {
id = "S3_STORAGE_ID"
storageName = "Storage Name"
bucketName = "Bucket_Name"
bucketPrefix = "path/prefix"
forceVirtualHostAddressing = true
enableTransferAcceleration = false
multipartThreshold = "8MB"
multipartChunksize = "8MB"
// AWS S3 storage requires configured Credentials
connectionId = "AWS Connection ID"
}
Content copied to clipboard }
}
Example. Adds new storage that allows TeamCity to store build artifacts in S3 and upload/download them using CloudFront
project {
// Other Project settings ...
features {
// Other Project Features ...
s3Storage {
id = "S3_STORAGE_ID"
storageName = "Storage Name"
bucketName = "Bucket_Name"
bucketPrefix = "path/prefix"
forceVirtualHostAddressing = true
multipartThreshold = "6MB"
multipartChunksize = "8MB"
connectionId = "AWS Connection ID"
//CloudFront configuration
cloudFrontEnabled = true
cloudFrontUploadDistribution = "ID of CloudFront Distribution used for uploads"
cloudFrontDownloadDistribution = "ID of CloudFront Distribution used for downloads"
cloudFrontPublicKeyId = "ID of CloudFront public key"
cloudFrontPrivateKey = "credentialsJSON:CloudFront-private-key-link"
}
Content copied to clipboard }
}
Example. Adds new storage that allows TeamCity to store build artifacts in S3 and upload/download them with Transfer Acceleration
project {
// Other Project settings ...
features {
// Other Project Features ...
s3Storage {
id = "S3_STORAGE_ID"
storageName = "Storage Name"
bucketName = "Bucket_Name"
connectionId = "AWS Connection ID"
// must be set to true to enable Transfer Acceleration
forceVirtualHostAddressing = true
enableTransferAcceleration = true
}
Content copied to clipboard }
}
Example. S3 Storage. Disable integrity verification
project {
// Other Project settings ...
features {
// Other Project Features ...
s3Storage {
id = "S3_STORAGE_ID"
storageName = "Storage Name"
bucketName = "Bucket_Name"
connectionId = "AWS Connection ID"
verifyIntegrityAfterUpload = false
}
Content copied to clipboard }
}
Example. AWSEnvironment. Selects default environment with specific AWS region
awsEnvironment = default {
awsRegionName = ""
}
Example. AWSEnvironment. Selects custom environment with specific region
awsEnvironment = custom {
endpoint = "URL of custom endpoint"
awsRegionName = "region"
}
See also
Constructors
Properties
AWS account access key ID
Bucket name
Bucket path prefix
Name of CloudFront distribution for downloads
Whether to use CloudFront for artifact transport
Private key that corresponds to chosen public key
Id of Public Key in CloudFront that has access to selected distribution
Name of CloudFront distribution for uploads
The ID of configured AWS Connection to access the AWS S3. @see AwsConnection
Whether to use Pre-Signed URLs to upload
Whether to enable Transfer Acceleration
Whether to force Virtual Host Addressing
Specify the maximum allowed part size. Minimum value is 5MB. Allowed suffixes: KB, MB, GB, TB. Leave empty to use the default value.
Initiates multipart upload for files larger than the specified value. Minimum value is 5MB. Allowed suffixes: KB, MB, GB, TB. Leave empty to use the default value.
Storage name
Use default credential provider chain
Whether to verify integrity of artifacts after upload
Functions
Use pre-configured AWS account access keys
Copies parameters of this object to the specified target
Creates an instance of this project feature via reflection using a no argument constructor, used during copying. Throws an error if this class doesn't have a default constructor. Subclasses can override it to create an instance without using a default constructor.
Get temporary access keys via AWS STS
Validates this object and reports found errors to the provided consumer