package awscdk // Initialization properties for `AssetStaging`. // // Example: // // The code below shows an example of how to instantiate this type. // // The values are placeholders you should change. // import "github.com/aws/aws-cdk-go/awscdk" // // var dockerImage dockerImage // var localBundling iLocalBundling // // assetStagingProps := &AssetStagingProps{ // SourcePath: jsii.String("sourcePath"), // // // the properties below are optional // AssetHash: jsii.String("assetHash"), // AssetHashType: cdk.AssetHashType_SOURCE, // Bundling: &BundlingOptions{ // Image: dockerImage, // // // the properties below are optional // BundlingFileAccess: cdk.BundlingFileAccess_VOLUME_COPY, // Command: []*string{ // jsii.String("command"), // }, // Entrypoint: []*string{ // jsii.String("entrypoint"), // }, // Environment: map[string]*string{ // "environmentKey": jsii.String("environment"), // }, // Local: localBundling, // Network: jsii.String("network"), // OutputType: cdk.BundlingOutput_ARCHIVED, // Platform: jsii.String("platform"), // SecurityOpt: jsii.String("securityOpt"), // User: jsii.String("user"), // Volumes: []dockerVolume{ // &dockerVolume{ // ContainerPath: jsii.String("containerPath"), // HostPath: jsii.String("hostPath"), // // // the properties below are optional // Consistency: cdk.DockerVolumeConsistency_CONSISTENT, // }, // }, // VolumesFrom: []*string{ // jsii.String("volumesFrom"), // }, // WorkingDirectory: jsii.String("workingDirectory"), // }, // Exclude: []*string{ // jsii.String("exclude"), // }, // ExtraHash: jsii.String("extraHash"), // Follow: cdk.SymlinkFollowMode_NEVER, // IgnoreMode: cdk.IgnoreMode_GLOB, // } // type AssetStagingProps struct { // File paths matching the patterns will be excluded. // // See `ignoreMode` to set the matching behavior. // Has no effect on Assets bundled using the `bundling` property. Exclude *[]*string `field:"optional" json:"exclude" yaml:"exclude"` // A strategy for how to handle symlinks. Follow SymlinkFollowMode `field:"optional" json:"follow" yaml:"follow"` // The ignore behavior to use for `exclude` patterns. IgnoreMode IgnoreMode `field:"optional" json:"ignoreMode" yaml:"ignoreMode"` // Extra information to encode into the fingerprint (e.g. build instructions and other inputs). ExtraHash *string `field:"optional" json:"extraHash" yaml:"extraHash"` // Specify a custom hash for this asset. // // If `assetHashType` is set it must // be set to `AssetHashType.CUSTOM`. For consistency, this custom hash will // be SHA256 hashed and encoded as hex. The resulting hash will be the asset // hash. // // NOTE: the hash is used in order to identify a specific revision of the asset, and // used for optimizing and caching deployment activities related to this asset such as // packaging, uploading to Amazon S3, etc. If you chose to customize the hash, you will // need to make sure it is updated every time the asset changes, or otherwise it is // possible that some deployments will not be invalidated. AssetHash *string `field:"optional" json:"assetHash" yaml:"assetHash"` // Specifies the type of hash to calculate for this asset. // // If `assetHash` is configured, this option must be `undefined` or // `AssetHashType.CUSTOM`. AssetHashType AssetHashType `field:"optional" json:"assetHashType" yaml:"assetHashType"` // Bundle the asset by executing a command in a Docker container or a custom bundling provider. // // The asset path will be mounted at `/asset-input`. The Docker // container is responsible for putting content at `/asset-output`. // The content at `/asset-output` will be zipped and used as the // final asset. Bundling *BundlingOptions `field:"optional" json:"bundling" yaml:"bundling"` // The source file or directory to copy from. SourcePath *string `field:"required" json:"sourcePath" yaml:"sourcePath"` }