ProjectArtifacts
Information about the build output artifacts for the build project.
Contents
Note
In the following list, the required parameters are described first.
- type
-
The type of build output artifact. Valid values include:
-
CODEPIPELINE
: The build project has build output generated through CodePipeline.Note
The
CODEPIPELINE
type is not supported forsecondaryArtifacts
. -
NO_ARTIFACTS
: The build project does not produce any build output. -
S3
: The build project stores build output in Amazon S3.
Type: String
Valid Values:
CODEPIPELINE | S3 | NO_ARTIFACTS
Required: Yes
-
- artifactIdentifier
-
An identifier for this artifact definition.
Type: String
Required: No
- bucketOwnerAccess
-
Specifies the bucket owner's access for objects that another account uploads to their Amazon S3 bucket. By default, only the account that uploads the objects to the bucket has access to these objects. This property allows you to give the bucket owner access to these objects.
Note
To use this property, your CodeBuild service role must have the
s3:PutBucketAcl
permission. This permission allows CodeBuild to modify the access control list for the bucket.This property can be one of the following values:
- NONE
-
The bucket owner does not have access to the objects. This is the default.
- READ_ONLY
-
The bucket owner has read-only access to the objects. The uploading account retains ownership of the objects.
- FULL
-
The bucket owner has full access to the objects. Object ownership is determined by the following criteria:
-
If the bucket is configured with the Bucket owner preferred setting, the bucket owner owns the objects. The uploading account will have object access as specified by the bucket's policy.
-
Otherwise, the uploading account retains ownership of the objects.
For more information about Amazon S3 object ownership, see Controlling ownership of uploaded objects using S3 Object Ownership in the Amazon Simple Storage Service User Guide.
-
Type: String
Valid Values:
NONE | READ_ONLY | FULL
Required: No
- encryptionDisabled
-
Set to true if you do not want your output artifacts encrypted. This option is valid only if your artifacts type is Amazon S3. If this is set with another artifacts type, an invalidInputException is thrown.
Type: Boolean
Required: No
- location
-
Information about the build output artifact location:
-
If
type
is set toCODEPIPELINE
, CodePipeline ignores this value if specified. This is because CodePipeline manages its build output locations instead of AWS CodeBuild. -
If
type
is set toNO_ARTIFACTS
, this value is ignored if specified, because no build output is produced. -
If
type
is set toS3
, this is the name of the output bucket.
Type: String
Required: No
-
- name
-
Along with
path
andnamespaceType
, the pattern that AWS CodeBuild uses to name and store the output artifact:-
If
type
is set toCODEPIPELINE
, CodePipeline ignores this value if specified. This is because CodePipeline manages its build output names instead of AWS CodeBuild. -
If
type
is set toNO_ARTIFACTS
, this value is ignored if specified, because no build output is produced. -
If
type
is set toS3
, this is the name of the output artifact object. If you set the name to be a forward slash ("/"), the artifact is stored in the root of the output bucket.
For example:
-
If
path
is set toMyArtifacts
,namespaceType
is set toBUILD_ID
, andname
is set toMyArtifact.zip
, then the output artifact is stored inMyArtifacts/<build-ID>/MyArtifact.zip
. -
If
path
is empty,namespaceType
is set toNONE
, andname
is set to "/
", the output artifact is stored in the root of the output bucket. -
If
path
is set toMyArtifacts
,namespaceType
is set toBUILD_ID
, andname
is set to "/
", the output artifact is stored inMyArtifacts/<build-ID>
.
Type: String
Required: No
-
- namespaceType
-
Along with
path
andname
, the pattern that AWS CodeBuild uses to determine the name and location to store the output artifact:-
If
type
is set toCODEPIPELINE
, CodePipeline ignores this value if specified. This is because CodePipeline manages its build output names instead of AWS CodeBuild. -
If
type
is set toNO_ARTIFACTS
, this value is ignored if specified, because no build output is produced. -
If
type
is set toS3
, valid values include:-
BUILD_ID
: Include the build ID in the location of the build output artifact. -
NONE
: Do not include the build ID. This is the default ifnamespaceType
is not specified.
-
For example, if
path
is set toMyArtifacts
,namespaceType
is set toBUILD_ID
, andname
is set toMyArtifact.zip
, the output artifact is stored inMyArtifacts/<build-ID>/MyArtifact.zip
.Type: String
Valid Values:
NONE | BUILD_ID
Required: No
-
- overrideArtifactName
-
If this flag is set, a name specified in the buildspec file overrides the artifact name. The name specified in a buildspec file is calculated at build time and uses the Shell Command Language. For example, you can append a date and time to your artifact name so that it is always unique.
Type: Boolean
Required: No
- packaging
-
The type of build output artifact to create:
-
If
type
is set toCODEPIPELINE
, CodePipeline ignores this value if specified. This is because CodePipeline manages its build output artifacts instead of AWS CodeBuild. -
If
type
is set toNO_ARTIFACTS
, this value is ignored if specified, because no build output is produced. -
If
type
is set toS3
, valid values include:-
NONE
: AWS CodeBuild creates in the output bucket a folder that contains the build output. This is the default ifpackaging
is not specified. -
ZIP
: AWS CodeBuild creates in the output bucket a ZIP file that contains the build output.
-
Type: String
Valid Values:
NONE | ZIP
Required: No
-
- path
-
Along with
namespaceType
andname
, the pattern that AWS CodeBuild uses to name and store the output artifact:-
If
type
is set toCODEPIPELINE
, CodePipeline ignores this value if specified. This is because CodePipeline manages its build output names instead of AWS CodeBuild. -
If
type
is set toNO_ARTIFACTS
, this value is ignored if specified, because no build output is produced. -
If
type
is set toS3
, this is the path to the output artifact. Ifpath
is not specified,path
is not used.
For example, if
path
is set toMyArtifacts
,namespaceType
is set toNONE
, andname
is set toMyArtifact.zip
, the output artifact is stored in the output bucket atMyArtifacts/MyArtifact.zip
.Type: String
Required: No
-
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: