Class CfnProject.ArtifactsProperty.Builder

java.lang.Object
software.amazon.awscdk.services.codebuild.CfnProject.ArtifactsProperty.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<CfnProject.ArtifactsProperty>
Enclosing interface:
CfnProject.ArtifactsProperty

@Stability(Stable) public static final class CfnProject.ArtifactsProperty.Builder extends Object implements software.amazon.jsii.Builder<CfnProject.ArtifactsProperty>
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • type

      @Stability(Stable) public CfnProject.ArtifactsProperty.Builder type(String type)
      Parameters:
      type - The type of build output artifact. Valid values include:. This parameter is required.
      • CODEPIPELINE : The build project has build output generated through CodePipeline.

      The CODEPIPELINE type is not supported for secondaryArtifacts .

      • NO_ARTIFACTS : The build project does not produce any build output.
      • S3 : The build project stores build output in Amazon S3.
      Returns:
      this
    • artifactIdentifier

      @Stability(Stable) public CfnProject.ArtifactsProperty.Builder artifactIdentifier(String artifactIdentifier)
      Parameters:
      artifactIdentifier - An identifier for this artifact definition.
      Returns:
      this
    • encryptionDisabled

      @Stability(Stable) public CfnProject.ArtifactsProperty.Builder encryptionDisabled(Boolean encryptionDisabled)
      Parameters:
      encryptionDisabled - Set to true if you do not want your output artifacts encrypted. This option is valid only if your artifacts type is Amazon Simple Storage Service (Amazon S3). If this is set with another artifacts type, an invalidInputException is thrown.
      Returns:
      this
    • encryptionDisabled

      @Stability(Stable) public CfnProject.ArtifactsProperty.Builder encryptionDisabled(IResolvable encryptionDisabled)
      Parameters:
      encryptionDisabled - Set to true if you do not want your output artifacts encrypted. This option is valid only if your artifacts type is Amazon Simple Storage Service (Amazon S3). If this is set with another artifacts type, an invalidInputException is thrown.
      Returns:
      this
    • location

      @Stability(Stable) public CfnProject.ArtifactsProperty.Builder location(String location)
      Parameters:
      location - Information about the build output artifact location:.
      • If type is set to CODEPIPELINE , AWS CodePipeline ignores this value if specified. This is because CodePipeline manages its build output locations instead of CodeBuild .
      • If type is set to NO_ARTIFACTS , this value is ignored if specified, because no build output is produced.
      • If type is set to S3 , this is the name of the output bucket.

      If you specify CODEPIPELINE or NO_ARTIFACTS for the Type property, don't specify this property. For all of the other types, you must specify this property.

      Returns:
      this
    • name

      @Stability(Stable) public CfnProject.ArtifactsProperty.Builder name(String name)
      Parameters:
      name - Along with path and namespaceType , the pattern that AWS CodeBuild uses to name and store the output artifact:.
      • If type is set to CODEPIPELINE , AWS CodePipeline ignores this value if specified. This is because CodePipeline manages its build output names instead of AWS CodeBuild .
      • If type is set to NO_ARTIFACTS , this value is ignored if specified, because no build output is produced.
      • If type is set to S3 , 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 to MyArtifacts , namespaceType is set to BUILD_ID , and name is set to MyArtifact.zip , then the output artifact is stored in MyArtifacts/ *build-ID* /MyArtifact.zip .
      • If path is empty, namespaceType is set to NONE , and name is set to " / ", the output artifact is stored in the root of the output bucket.
      • If path is set to MyArtifacts , namespaceType is set to BUILD_ID , and name is set to " / ", the output artifact is stored in MyArtifacts/ *build-ID* .

      If you specify CODEPIPELINE or NO_ARTIFACTS for the Type property, don't specify this property. For all of the other types, you must specify this property.

      Returns:
      this
    • namespaceType

      @Stability(Stable) public CfnProject.ArtifactsProperty.Builder namespaceType(String namespaceType)
      Parameters:
      namespaceType - Along with path and name , the pattern that AWS CodeBuild uses to determine the name and location to store the output artifact: - If type is set to CODEPIPELINE , CodePipeline ignores this value if specified. This is because CodePipeline manages its build output names instead of AWS CodeBuild .

      • If type is set to NO_ARTIFACTS , this value is ignored if specified, because no build output is produced.
      • If type is set to S3 , 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 if namespaceType is not specified.

      For example, if path is set to MyArtifacts , namespaceType is set to BUILD_ID , and name is set to MyArtifact.zip , the output artifact is stored in MyArtifacts/<build-ID>/MyArtifact.zip .

      Returns:
      this
    • overrideArtifactName

      @Stability(Stable) public CfnProject.ArtifactsProperty.Builder overrideArtifactName(Boolean overrideArtifactName)
      Parameters:
      overrideArtifactName - If set to true 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.
      Returns:
      this
    • overrideArtifactName

      @Stability(Stable) public CfnProject.ArtifactsProperty.Builder overrideArtifactName(IResolvable overrideArtifactName)
      Parameters:
      overrideArtifactName - If set to true 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.
      Returns:
      this
    • packaging

      @Stability(Stable) public CfnProject.ArtifactsProperty.Builder packaging(String packaging)
      Parameters:
      packaging - The type of build output artifact to create:.
      • If type is set to CODEPIPELINE , CodePipeline ignores this value if specified. This is because CodePipeline manages its build output artifacts instead of AWS CodeBuild .
      • If type is set to NO_ARTIFACTS , this value is ignored if specified, because no build output is produced.
      • If type is set to S3 , valid values include:
      • NONE : AWS CodeBuild creates in the output bucket a folder that contains the build output. This is the default if packaging is not specified.
      • ZIP : AWS CodeBuild creates in the output bucket a ZIP file that contains the build output.
      Returns:
      this
    • path

      @Stability(Stable) public CfnProject.ArtifactsProperty.Builder path(String path)
      Parameters:
      path - Along with namespaceType and name , the pattern that AWS CodeBuild uses to name and store the output artifact:.
      • If type is set to CODEPIPELINE , CodePipeline ignores this value if specified. This is because CodePipeline manages its build output names instead of AWS CodeBuild .
      • If type is set to NO_ARTIFACTS , this value is ignored if specified, because no build output is produced.
      • If type is set to S3 , this is the path to the output artifact. If path is not specified, path is not used.

      For example, if path is set to MyArtifacts , namespaceType is set to NONE , and name is set to MyArtifact.zip , the output artifact is stored in the output bucket at MyArtifacts/MyArtifact.zip .

      Returns:
      this
    • build

      @Stability(Stable) public CfnProject.ArtifactsProperty build()
      Builds the configured instance.
      Specified by:
      build in interface software.amazon.jsii.Builder<CfnProject.ArtifactsProperty>
      Returns:
      a new instance of CfnProject.ArtifactsProperty
      Throws:
      NullPointerException - if any required attribute was not provided