Class: AWSCDK::Codepipeline::CfnPipeline::ArtifactStoreProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
codepipeline/cfn_pipeline.rb

Overview

The S3 bucket where artifacts for the pipeline are stored.

You must include either artifact_store or artifact_stores in your pipeline, but you cannot use both. If you create a cross-region action in your pipeline, you must use artifact_stores .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(location:, type:, encryption_key: nil) ⇒ ArtifactStoreProperty

Returns a new instance of ArtifactStoreProperty.

Parameters:

  • location (String)

    The S3 bucket used for storing the artifacts for a pipeline.

  • type (String)

    The type of the artifact store, such as S3.

  • encryption_key (AWSCDK::IResolvable, AWSCDK::Codepipeline::CfnPipeline::EncryptionKeyProperty, nil) (defaults to: nil)

    The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service ( AWS KMS) key.



987
988
989
990
991
992
993
994
# File 'codepipeline/cfn_pipeline.rb', line 987

def initialize(location:, type:, encryption_key: nil)
  @location = location
  Jsii::Type.check_type(@location, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "location")
  @type = type
  Jsii::Type.check_type(@type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "type")
  @encryption_key = encryption_key.is_a?(Hash) ? ::AWSCDK::Codepipeline::CfnPipeline::EncryptionKeyProperty.new(**encryption_key.transform_keys(&:to_sym)) : encryption_key
  Jsii::Type.check_type(@encryption_key, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb2RlcGlwZWxpbmUuQ2ZuUGlwZWxpbmUuRW5jcnlwdGlvbktleVByb3BlcnR5In1dfX0=")), "encryptionKey") unless @encryption_key.nil?
end

Instance Attribute Details

#encryption_keyAWSCDK::IResolvable, ... (readonly)

The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service ( AWS KMS) key.

If this is undefined, the default key for Amazon S3 is used. To see an example artifact store encryption key field, see the example structure here: AWS::CodePipeline::Pipeline .



1014
1015
1016
# File 'codepipeline/cfn_pipeline.rb', line 1014

def encryption_key
  @encryption_key
end

#locationString (readonly)

The S3 bucket used for storing the artifacts for a pipeline.

You can specify the name of an S3 bucket but not a folder in the bucket. A folder to contain the pipeline artifacts is created for you based on the name of the pipeline. You can use any S3 bucket in the same AWS Region as the pipeline to store your pipeline artifacts.



1002
1003
1004
# File 'codepipeline/cfn_pipeline.rb', line 1002

def location
  @location
end

#typeString (readonly)

The type of the artifact store, such as S3.



1007
1008
1009
# File 'codepipeline/cfn_pipeline.rb', line 1007

def type
  @type
end

Class Method Details

.jsii_propertiesObject



1016
1017
1018
1019
1020
1021
1022
# File 'codepipeline/cfn_pipeline.rb', line 1016

def self.jsii_properties
  {
    :location => "location",
    :type => "type",
    :encryption_key => "encryptionKey",
  }
end

Instance Method Details

#to_jsiiObject



1024
1025
1026
1027
1028
1029
1030
1031
1032
# File 'codepipeline/cfn_pipeline.rb', line 1024

def to_jsii
  result = {}
  result.merge!({
    "location" => @location,
    "type" => @type,
    "encryptionKey" => @encryption_key,
  })
  result.compact
end