@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
1,159 lines • 172 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ImagebuilderImagePipeline = exports.ImagebuilderImagePipelineWorkflowList = exports.ImagebuilderImagePipelineWorkflowOutputReference = exports.imagebuilderImagePipelineWorkflowToHclTerraform = exports.imagebuilderImagePipelineWorkflowToTerraform = exports.ImagebuilderImagePipelineWorkflowParameterList = exports.ImagebuilderImagePipelineWorkflowParameterOutputReference = exports.imagebuilderImagePipelineWorkflowParameterToHclTerraform = exports.imagebuilderImagePipelineWorkflowParameterToTerraform = exports.ImagebuilderImagePipelineScheduleOutputReference = exports.imagebuilderImagePipelineScheduleToHclTerraform = exports.imagebuilderImagePipelineScheduleToTerraform = exports.ImagebuilderImagePipelineImageTestsConfigurationOutputReference = exports.imagebuilderImagePipelineImageTestsConfigurationToHclTerraform = exports.imagebuilderImagePipelineImageTestsConfigurationToTerraform = exports.ImagebuilderImagePipelineImageScanningConfigurationOutputReference = exports.imagebuilderImagePipelineImageScanningConfigurationToHclTerraform = exports.imagebuilderImagePipelineImageScanningConfigurationToTerraform = exports.ImagebuilderImagePipelineImageScanningConfigurationEcrConfigurationOutputReference = exports.imagebuilderImagePipelineImageScanningConfigurationEcrConfigurationToHclTerraform = exports.imagebuilderImagePipelineImageScanningConfigurationEcrConfigurationToTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function imagebuilderImagePipelineImageScanningConfigurationEcrConfigurationToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
container_tags: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.containerTags),
repository_name: cdktf.stringToTerraform(struct.repositoryName),
};
}
exports.imagebuilderImagePipelineImageScanningConfigurationEcrConfigurationToTerraform = imagebuilderImagePipelineImageScanningConfigurationEcrConfigurationToTerraform;
function imagebuilderImagePipelineImageScanningConfigurationEcrConfigurationToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
container_tags: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.containerTags),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
repository_name: {
value: cdktf.stringToHclTerraform(struct.repositoryName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.imagebuilderImagePipelineImageScanningConfigurationEcrConfigurationToHclTerraform = imagebuilderImagePipelineImageScanningConfigurationEcrConfigurationToHclTerraform;
class ImagebuilderImagePipelineImageScanningConfigurationEcrConfigurationOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._containerTags !== undefined) {
hasAnyValues = true;
internalValueResult.containerTags = this._containerTags;
}
if (this._repositoryName !== undefined) {
hasAnyValues = true;
internalValueResult.repositoryName = this._repositoryName;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._containerTags = undefined;
this._repositoryName = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._containerTags = value.containerTags;
this._repositoryName = value.repositoryName;
}
}
get containerTags() {
return cdktf.Fn.tolist(this.getListAttribute('container_tags'));
}
set containerTags(value) {
this._containerTags = value;
}
resetContainerTags() {
this._containerTags = undefined;
}
// Temporarily expose input value. Use with caution.
get containerTagsInput() {
return this._containerTags;
}
get repositoryName() {
return this.getStringAttribute('repository_name');
}
set repositoryName(value) {
this._repositoryName = value;
}
resetRepositoryName() {
this._repositoryName = undefined;
}
// Temporarily expose input value. Use with caution.
get repositoryNameInput() {
return this._repositoryName;
}
}
exports.ImagebuilderImagePipelineImageScanningConfigurationEcrConfigurationOutputReference = ImagebuilderImagePipelineImageScanningConfigurationEcrConfigurationOutputReference;
_a = JSII_RTTI_SYMBOL_1;
ImagebuilderImagePipelineImageScanningConfigurationEcrConfigurationOutputReference[_a] = { fqn: "@cdktf/provider-aws.imagebuilderImagePipeline.ImagebuilderImagePipelineImageScanningConfigurationEcrConfigurationOutputReference", version: "19.50.0" };
function imagebuilderImagePipelineImageScanningConfigurationToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
image_scanning_enabled: cdktf.booleanToTerraform(struct.imageScanningEnabled),
ecr_configuration: imagebuilderImagePipelineImageScanningConfigurationEcrConfigurationToTerraform(struct.ecrConfiguration),
};
}
exports.imagebuilderImagePipelineImageScanningConfigurationToTerraform = imagebuilderImagePipelineImageScanningConfigurationToTerraform;
function imagebuilderImagePipelineImageScanningConfigurationToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
image_scanning_enabled: {
value: cdktf.booleanToHclTerraform(struct.imageScanningEnabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
ecr_configuration: {
value: imagebuilderImagePipelineImageScanningConfigurationEcrConfigurationToHclTerraform(struct.ecrConfiguration),
isBlock: true,
type: "list",
storageClassType: "ImagebuilderImagePipelineImageScanningConfigurationEcrConfigurationList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.imagebuilderImagePipelineImageScanningConfigurationToHclTerraform = imagebuilderImagePipelineImageScanningConfigurationToHclTerraform;
class ImagebuilderImagePipelineImageScanningConfigurationOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
// ecr_configuration - computed: false, optional: true, required: false
this._ecrConfiguration = new ImagebuilderImagePipelineImageScanningConfigurationEcrConfigurationOutputReference(this, "ecr_configuration");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._imageScanningEnabled !== undefined) {
hasAnyValues = true;
internalValueResult.imageScanningEnabled = this._imageScanningEnabled;
}
if (this._ecrConfiguration?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.ecrConfiguration = this._ecrConfiguration?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._imageScanningEnabled = undefined;
this._ecrConfiguration.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._imageScanningEnabled = value.imageScanningEnabled;
this._ecrConfiguration.internalValue = value.ecrConfiguration;
}
}
get imageScanningEnabled() {
return this.getBooleanAttribute('image_scanning_enabled');
}
set imageScanningEnabled(value) {
this._imageScanningEnabled = value;
}
resetImageScanningEnabled() {
this._imageScanningEnabled = undefined;
}
// Temporarily expose input value. Use with caution.
get imageScanningEnabledInput() {
return this._imageScanningEnabled;
}
get ecrConfiguration() {
return this._ecrConfiguration;
}
putEcrConfiguration(value) {
this._ecrConfiguration.internalValue = value;
}
resetEcrConfiguration() {
this._ecrConfiguration.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get ecrConfigurationInput() {
return this._ecrConfiguration.internalValue;
}
}
exports.ImagebuilderImagePipelineImageScanningConfigurationOutputReference = ImagebuilderImagePipelineImageScanningConfigurationOutputReference;
_b = JSII_RTTI_SYMBOL_1;
ImagebuilderImagePipelineImageScanningConfigurationOutputReference[_b] = { fqn: "@cdktf/provider-aws.imagebuilderImagePipeline.ImagebuilderImagePipelineImageScanningConfigurationOutputReference", version: "19.50.0" };
function imagebuilderImagePipelineImageTestsConfigurationToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
image_tests_enabled: cdktf.booleanToTerraform(struct.imageTestsEnabled),
timeout_minutes: cdktf.numberToTerraform(struct.timeoutMinutes),
};
}
exports.imagebuilderImagePipelineImageTestsConfigurationToTerraform = imagebuilderImagePipelineImageTestsConfigurationToTerraform;
function imagebuilderImagePipelineImageTestsConfigurationToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
image_tests_enabled: {
value: cdktf.booleanToHclTerraform(struct.imageTestsEnabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
timeout_minutes: {
value: cdktf.numberToHclTerraform(struct.timeoutMinutes),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.imagebuilderImagePipelineImageTestsConfigurationToHclTerraform = imagebuilderImagePipelineImageTestsConfigurationToHclTerraform;
class ImagebuilderImagePipelineImageTestsConfigurationOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._imageTestsEnabled !== undefined) {
hasAnyValues = true;
internalValueResult.imageTestsEnabled = this._imageTestsEnabled;
}
if (this._timeoutMinutes !== undefined) {
hasAnyValues = true;
internalValueResult.timeoutMinutes = this._timeoutMinutes;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._imageTestsEnabled = undefined;
this._timeoutMinutes = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._imageTestsEnabled = value.imageTestsEnabled;
this._timeoutMinutes = value.timeoutMinutes;
}
}
get imageTestsEnabled() {
return this.getBooleanAttribute('image_tests_enabled');
}
set imageTestsEnabled(value) {
this._imageTestsEnabled = value;
}
resetImageTestsEnabled() {
this._imageTestsEnabled = undefined;
}
// Temporarily expose input value. Use with caution.
get imageTestsEnabledInput() {
return this._imageTestsEnabled;
}
get timeoutMinutes() {
return this.getNumberAttribute('timeout_minutes');
}
set timeoutMinutes(value) {
this._timeoutMinutes = value;
}
resetTimeoutMinutes() {
this._timeoutMinutes = undefined;
}
// Temporarily expose input value. Use with caution.
get timeoutMinutesInput() {
return this._timeoutMinutes;
}
}
exports.ImagebuilderImagePipelineImageTestsConfigurationOutputReference = ImagebuilderImagePipelineImageTestsConfigurationOutputReference;
_c = JSII_RTTI_SYMBOL_1;
ImagebuilderImagePipelineImageTestsConfigurationOutputReference[_c] = { fqn: "@cdktf/provider-aws.imagebuilderImagePipeline.ImagebuilderImagePipelineImageTestsConfigurationOutputReference", version: "19.50.0" };
function imagebuilderImagePipelineScheduleToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
pipeline_execution_start_condition: cdktf.stringToTerraform(struct.pipelineExecutionStartCondition),
schedule_expression: cdktf.stringToTerraform(struct.scheduleExpression),
timezone: cdktf.stringToTerraform(struct.timezone),
};
}
exports.imagebuilderImagePipelineScheduleToTerraform = imagebuilderImagePipelineScheduleToTerraform;
function imagebuilderImagePipelineScheduleToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
pipeline_execution_start_condition: {
value: cdktf.stringToHclTerraform(struct.pipelineExecutionStartCondition),
isBlock: false,
type: "simple",
storageClassType: "string",
},
schedule_expression: {
value: cdktf.stringToHclTerraform(struct.scheduleExpression),
isBlock: false,
type: "simple",
storageClassType: "string",
},
timezone: {
value: cdktf.stringToHclTerraform(struct.timezone),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.imagebuilderImagePipelineScheduleToHclTerraform = imagebuilderImagePipelineScheduleToHclTerraform;
class ImagebuilderImagePipelineScheduleOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._pipelineExecutionStartCondition !== undefined) {
hasAnyValues = true;
internalValueResult.pipelineExecutionStartCondition = this._pipelineExecutionStartCondition;
}
if (this._scheduleExpression !== undefined) {
hasAnyValues = true;
internalValueResult.scheduleExpression = this._scheduleExpression;
}
if (this._timezone !== undefined) {
hasAnyValues = true;
internalValueResult.timezone = this._timezone;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._pipelineExecutionStartCondition = undefined;
this._scheduleExpression = undefined;
this._timezone = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._pipelineExecutionStartCondition = value.pipelineExecutionStartCondition;
this._scheduleExpression = value.scheduleExpression;
this._timezone = value.timezone;
}
}
get pipelineExecutionStartCondition() {
return this.getStringAttribute('pipeline_execution_start_condition');
}
set pipelineExecutionStartCondition(value) {
this._pipelineExecutionStartCondition = value;
}
resetPipelineExecutionStartCondition() {
this._pipelineExecutionStartCondition = undefined;
}
// Temporarily expose input value. Use with caution.
get pipelineExecutionStartConditionInput() {
return this._pipelineExecutionStartCondition;
}
get scheduleExpression() {
return this.getStringAttribute('schedule_expression');
}
set scheduleExpression(value) {
this._scheduleExpression = value;
}
// Temporarily expose input value. Use with caution.
get scheduleExpressionInput() {
return this._scheduleExpression;
}
get timezone() {
return this.getStringAttribute('timezone');
}
set timezone(value) {
this._timezone = value;
}
resetTimezone() {
this._timezone = undefined;
}
// Temporarily expose input value. Use with caution.
get timezoneInput() {
return this._timezone;
}
}
exports.ImagebuilderImagePipelineScheduleOutputReference = ImagebuilderImagePipelineScheduleOutputReference;
_d = JSII_RTTI_SYMBOL_1;
ImagebuilderImagePipelineScheduleOutputReference[_d] = { fqn: "@cdktf/provider-aws.imagebuilderImagePipeline.ImagebuilderImagePipelineScheduleOutputReference", version: "19.50.0" };
function imagebuilderImagePipelineWorkflowParameterToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
name: cdktf.stringToTerraform(struct.name),
value: cdktf.stringToTerraform(struct.value),
};
}
exports.imagebuilderImagePipelineWorkflowParameterToTerraform = imagebuilderImagePipelineWorkflowParameterToTerraform;
function imagebuilderImagePipelineWorkflowParameterToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
name: {
value: cdktf.stringToHclTerraform(struct.name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
value: {
value: cdktf.stringToHclTerraform(struct.value),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.imagebuilderImagePipelineWorkflowParameterToHclTerraform = imagebuilderImagePipelineWorkflowParameterToHclTerraform;
class ImagebuilderImagePipelineWorkflowParameterOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._name !== undefined) {
hasAnyValues = true;
internalValueResult.name = this._name;
}
if (this._value !== undefined) {
hasAnyValues = true;
internalValueResult.value = this._value;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._name = undefined;
this._value = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._name = value.name;
this._value = value.value;
}
}
get name() {
return this.getStringAttribute('name');
}
set name(value) {
this._name = value;
}
// Temporarily expose input value. Use with caution.
get nameInput() {
return this._name;
}
get value() {
return this.getStringAttribute('value');
}
set value(value) {
this._value = value;
}
// Temporarily expose input value. Use with caution.
get valueInput() {
return this._value;
}
}
exports.ImagebuilderImagePipelineWorkflowParameterOutputReference = ImagebuilderImagePipelineWorkflowParameterOutputReference;
_e = JSII_RTTI_SYMBOL_1;
ImagebuilderImagePipelineWorkflowParameterOutputReference[_e] = { fqn: "@cdktf/provider-aws.imagebuilderImagePipeline.ImagebuilderImagePipelineWorkflowParameterOutputReference", version: "19.50.0" };
class ImagebuilderImagePipelineWorkflowParameterList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new ImagebuilderImagePipelineWorkflowParameterOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.ImagebuilderImagePipelineWorkflowParameterList = ImagebuilderImagePipelineWorkflowParameterList;
_f = JSII_RTTI_SYMBOL_1;
ImagebuilderImagePipelineWorkflowParameterList[_f] = { fqn: "@cdktf/provider-aws.imagebuilderImagePipeline.ImagebuilderImagePipelineWorkflowParameterList", version: "19.50.0" };
function imagebuilderImagePipelineWorkflowToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
on_failure: cdktf.stringToTerraform(struct.onFailure),
parallel_group: cdktf.stringToTerraform(struct.parallelGroup),
workflow_arn: cdktf.stringToTerraform(struct.workflowArn),
parameter: cdktf.listMapper(imagebuilderImagePipelineWorkflowParameterToTerraform, true)(struct.parameter),
};
}
exports.imagebuilderImagePipelineWorkflowToTerraform = imagebuilderImagePipelineWorkflowToTerraform;
function imagebuilderImagePipelineWorkflowToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
on_failure: {
value: cdktf.stringToHclTerraform(struct.onFailure),
isBlock: false,
type: "simple",
storageClassType: "string",
},
parallel_group: {
value: cdktf.stringToHclTerraform(struct.parallelGroup),
isBlock: false,
type: "simple",
storageClassType: "string",
},
workflow_arn: {
value: cdktf.stringToHclTerraform(struct.workflowArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
parameter: {
value: cdktf.listMapperHcl(imagebuilderImagePipelineWorkflowParameterToHclTerraform, true)(struct.parameter),
isBlock: true,
type: "set",
storageClassType: "ImagebuilderImagePipelineWorkflowParameterList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.imagebuilderImagePipelineWorkflowToHclTerraform = imagebuilderImagePipelineWorkflowToHclTerraform;
class ImagebuilderImagePipelineWorkflowOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
// parameter - computed: false, optional: true, required: false
this._parameter = new ImagebuilderImagePipelineWorkflowParameterList(this, "parameter", true);
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._onFailure !== undefined) {
hasAnyValues = true;
internalValueResult.onFailure = this._onFailure;
}
if (this._parallelGroup !== undefined) {
hasAnyValues = true;
internalValueResult.parallelGroup = this._parallelGroup;
}
if (this._workflowArn !== undefined) {
hasAnyValues = true;
internalValueResult.workflowArn = this._workflowArn;
}
if (this._parameter?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.parameter = this._parameter?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._onFailure = undefined;
this._parallelGroup = undefined;
this._workflowArn = undefined;
this._parameter.internalValue = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._onFailure = value.onFailure;
this._parallelGroup = value.parallelGroup;
this._workflowArn = value.workflowArn;
this._parameter.internalValue = value.parameter;
}
}
get onFailure() {
return this.getStringAttribute('on_failure');
}
set onFailure(value) {
this._onFailure = value;
}
resetOnFailure() {
this._onFailure = undefined;
}
// Temporarily expose input value. Use with caution.
get onFailureInput() {
return this._onFailure;
}
get parallelGroup() {
return this.getStringAttribute('parallel_group');
}
set parallelGroup(value) {
this._parallelGroup = value;
}
resetParallelGroup() {
this._parallelGroup = undefined;
}
// Temporarily expose input value. Use with caution.
get parallelGroupInput() {
return this._parallelGroup;
}
get workflowArn() {
return this.getStringAttribute('workflow_arn');
}
set workflowArn(value) {
this._workflowArn = value;
}
// Temporarily expose input value. Use with caution.
get workflowArnInput() {
return this._workflowArn;
}
get parameter() {
return this._parameter;
}
putParameter(value) {
this._parameter.internalValue = value;
}
resetParameter() {
this._parameter.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get parameterInput() {
return this._parameter.internalValue;
}
}
exports.ImagebuilderImagePipelineWorkflowOutputReference = ImagebuilderImagePipelineWorkflowOutputReference;
_g = JSII_RTTI_SYMBOL_1;
ImagebuilderImagePipelineWorkflowOutputReference[_g] = { fqn: "@cdktf/provider-aws.imagebuilderImagePipeline.ImagebuilderImagePipelineWorkflowOutputReference", version: "19.50.0" };
class ImagebuilderImagePipelineWorkflowList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new ImagebuilderImagePipelineWorkflowOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.ImagebuilderImagePipelineWorkflowList = ImagebuilderImagePipelineWorkflowList;
_h = JSII_RTTI_SYMBOL_1;
ImagebuilderImagePipelineWorkflowList[_h] = { fqn: "@cdktf/provider-aws.imagebuilderImagePipeline.ImagebuilderImagePipelineWorkflowList", version: "19.50.0" };
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/imagebuilder_image_pipeline aws_imagebuilder_image_pipeline}
*/
class ImagebuilderImagePipeline extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a ImagebuilderImagePipeline resource upon running "cdktf plan <stack-name>"
* @param scope The scope in which to define this construct
* @param importToId The construct id used in the generated config for the ImagebuilderImagePipeline to import
* @param importFromId The id of the existing ImagebuilderImagePipeline that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/imagebuilder_image_pipeline#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the ImagebuilderImagePipeline to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aws_imagebuilder_image_pipeline", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/imagebuilder_image_pipeline aws_imagebuilder_image_pipeline} Resource
*
* @param scope The scope in which to define this construct
* @param id The scoped construct ID. Must be unique amongst siblings in the same scope
* @param options ImagebuilderImagePipelineConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'aws_imagebuilder_image_pipeline',
terraformGeneratorMetadata: {
providerName: 'aws',
providerVersion: '5.84.0',
providerVersionConstraint: '~> 5.0'
},
provider: config.provider,
dependsOn: config.dependsOn,
count: config.count,
lifecycle: config.lifecycle,
provisioners: config.provisioners,
connection: config.connection,
forEach: config.forEach
});
// image_scanning_configuration - computed: false, optional: true, required: false
this._imageScanningConfiguration = new ImagebuilderImagePipelineImageScanningConfigurationOutputReference(this, "image_scanning_configuration");
// image_tests_configuration - computed: false, optional: true, required: false
this._imageTestsConfiguration = new ImagebuilderImagePipelineImageTestsConfigurationOutputReference(this, "image_tests_configuration");
// schedule - computed: false, optional: true, required: false
this._schedule = new ImagebuilderImagePipelineScheduleOutputReference(this, "schedule");
// workflow - computed: false, optional: true, required: false
this._workflow = new ImagebuilderImagePipelineWorkflowList(this, "workflow", false);
this._containerRecipeArn = config.containerRecipeArn;
this._description = config.description;
this._distributionConfigurationArn = config.distributionConfigurationArn;
this._enhancedImageMetadataEnabled = config.enhancedImageMetadataEnabled;
this._executionRole = config.executionRole;
this._id = config.id;
this._imageRecipeArn = config.imageRecipeArn;
this._infrastructureConfigurationArn = config.infrastructureConfigurationArn;
this._name = config.name;
this._status = config.status;
this._tags = config.tags;
this._tagsAll = config.tagsAll;
this._imageScanningConfiguration.internalValue = config.imageScanningConfiguration;
this._imageTestsConfiguration.internalValue = config.imageTestsConfiguration;
this._schedule.internalValue = config.schedule;
this._workflow.internalValue = config.workflow;
}
// ==========
// ATTRIBUTES
// ==========
// arn - computed: true, optional: false, required: false
get arn() {
return this.getStringAttribute('arn');
}
get containerRecipeArn() {
return this.getStringAttribute('container_recipe_arn');
}
set containerRecipeArn(value) {
this._containerRecipeArn = value;
}
resetContainerRecipeArn() {
this._containerRecipeArn = undefined;
}
// Temporarily expose input value. Use with caution.
get containerRecipeArnInput() {
return this._containerRecipeArn;
}
// date_created - computed: true, optional: false, required: false
get dateCreated() {
return this.getStringAttribute('date_created');
}
// date_last_run - computed: true, optional: false, required: false
get dateLastRun() {
return this.getStringAttribute('date_last_run');
}
// date_next_run - computed: true, optional: false, required: false
get dateNextRun() {
return this.getStringAttribute('date_next_run');
}
// date_updated - computed: true, optional: false, required: false
get dateUpdated() {
return this.getStringAttribute('date_updated');
}
get description() {
return this.getStringAttribute('description');
}
set description(value) {
this._description = value;
}
resetDescription() {
this._description = undefined;
}
// Temporarily expose input value. Use with caution.
get descriptionInput() {
return this._description;
}
get distributionConfigurationArn() {
return this.getStringAttribute('distribution_configuration_arn');
}
set distributionConfigurationArn(value) {
this._distributionConfigurationArn = value;
}
resetDistributionConfigurationArn() {
this._distributionConfigurationArn = undefined;
}
// Temporarily expose input value. Use with caution.
get distributionConfigurationArnInput() {
return this._distributionConfigurationArn;
}
get enhancedImageMetadataEnabled() {
return this.getBooleanAttribute('enhanced_image_metadata_enabled');
}
set enhancedImageMetadataEnabled(value) {
this._enhancedImageMetadataEnabled = value;
}
resetEnhancedImageMetadataEnabled() {
this._enhancedImageMetadataEnabled = undefined;
}
// Temporarily expose input value. Use with caution.
get enhancedImageMetadataEnabledInput() {
return this._enhancedImageMetadataEnabled;
}
get executionRole() {
return this.getStringAttribute('execution_role');
}
set executionRole(value) {
this._executionRole = value;
}
resetExecutionRole() {
this._executionRole = undefined;
}
// Temporarily expose input value. Use with caution.
get executionRoleInput() {
return this._executionRole;
}
get id() {
return this.getStringAttribute('id');
}
set id(value) {
this._id = value;
}
resetId() {
this._id = undefined;
}
// Temporarily expose input value. Use with caution.
get idInput() {
return this._id;
}
get imageRecipeArn() {
return this.getStringAttribute('image_recipe_arn');
}
set imageRecipeArn(value) {
this._imageRecipeArn = value;
}
resetImageRecipeArn() {
this._imageRecipeArn = undefined;
}
// Temporarily expose input value. Use with caution.
get imageRecipeArnInput() {
return this._imageRecipeArn;
}
get infrastructureConfigurationArn() {
return this.getStringAttribute('infrastructure_configuration_arn');
}
set infrastructureConfigurationArn(value) {
this._infrastructureConfigurationArn = value;
}
// Temporarily expose input value. Use with caution.
get infrastructureConfigurationArnInput() {
return this._infrastructureConfigurationArn;
}
get name() {
return this.getStringAttribute('name');
}
set name(value) {
this._name = value;
}
// Temporarily expose input value. Use with caution.
get nameInput() {
return this._name;
}
// platform - computed: true, optional: false, required: false
get platform() {
return this.getStringAttribute('platform');
}
get status() {
return this.getStringAttribute('status');
}
set status(value) {
this._status = value;
}
resetStatus() {
this._status = undefined;
}
// Temporarily expose input value. Use with caution.
get statusInput() {
return this._status;
}
get tags() {
return this.getStringMapAttribute('tags');
}
set tags(value) {
this._tags = value;
}
resetTags() {
this._tags = undefined;
}
// Temporarily expose input value. Use with caution.
get tagsInput() {
return this._tags;
}
get tagsAll() {
return this.getStringMapAttribute('tags_all');
}
set tagsAll(value) {
this._tagsAll = value;
}
resetTagsAll() {
this._tagsAll = undefined;
}
// Temporarily expose input value. Use with caution.
get tagsAllInput() {
return this._tagsAll;
}
get imageScanningConfiguration() {
return this._imageScanningConfiguration;
}
putImageScanningConfiguration(value) {
this._imageScanningConfiguration.internalValue = value;
}
resetImageScanningConfiguration() {
this._imageScanningConfiguration.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get imageScanningConfigurationInput() {
return this._imageScanningConfiguration.internalValue;
}
get imageTestsConfiguration() {
return this._imageTestsConfiguration;
}
putImageTestsConfiguration(value) {
this._imageTestsConfiguration.internalValue = value;
}
resetImageTestsConfiguration() {
this._imageTestsConfiguration.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get imageTestsConfigurationInput() {
return this._imageTestsConfiguration.internalValue;
}
get schedule() {
return this._schedule;
}
putSchedule(value) {
this._schedule.internalValue = value;
}
resetSchedule() {
this._schedule.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get scheduleInput() {
return this._schedule.internalValue;
}
get workflow() {
return this._workflow;
}
putWorkflow(value) {
this._workflow.internalValue = value;
}
resetWorkflow() {
this._workflow.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get workflowInput() {
return this._workflow.internalValue;
}
// =========
// SYNTHESIS
// =========
synthesizeAttributes() {
return {
container_recipe_arn: cdktf.stringToTerraform(this._containerRecipeArn),
description: cdktf.stringToTerraform(this._description),
distribution_configuration_arn: cdktf.stringToTerraform(this._distributionConfigurationArn),
enhanced_image_metadata_enabled: cdktf.booleanToTerraform(this._enhancedImageMetadataEnabled),
execution_role: cdktf.stringToTerraform(this._executionRole),
id: cdktf.stringToTerraform(this._id),
image_recipe_arn: cdktf.stringToTerraform(this._imageRecipeArn),
infrastructure_configuration_arn: cdktf.stringToTerraform(this._infrastructureConfigurationArn),
name: cdktf.stringToTerraform(this._name),
status: cdktf.stringToTerraform(this._status),
tags: cdktf.hashMapper(cdktf.stringToTerraform)(this._tags),
tags_all: cdktf.hashMapper(cdktf.stringToTerraform)(this._tagsAll),
image_scanning_configuration: imagebuilderImagePipelineImageScanningConfigurationToTerraform(this._imageScanningConfiguration.internalValue),
image_tests_configuration: imagebuilderImagePipelineImageTestsConfigurationToTerraform(this._imageTestsConfiguration.internalValue),
schedule: imagebuilderImagePipelineScheduleToTerraform(this._schedule.internalValue),
workflow: cdktf.listMapper(imagebuilderImagePipelineWorkflowToTerraform, true)(this._workflow.internalValue),
};
}
synthesizeHclAttributes() {
const attrs = {
container_recipe_arn: {
value: cdktf.stringToHclTerraform(this._containerRecipeArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
description: {
value: cdktf.stringToHclTerraform(this._description),
isBlock: false,
type: "simple",
storageClassType: "string",
},
distribution_configuration_arn: {
value: cdktf.stringToHclTerraform(this._distributionConfigurationArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
enhanced_image_metadata_enabled: {
value: cdktf.booleanToHclTerraform(this._enhancedImageMetadataEnabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
execution_role: {
value: cdktf.stringToHclTerraform(this._executionRole),
isBlock: false,
type: "simple",
storageClassType: "string",
},
id: {
value: cdktf.stringToHclTerraform(this._id),
isBlock: false,
type: "simple",
storageClassType: "string",
},
image_recipe_arn: {
value: cdktf.stringToHclTerraform(this._imageRecipeArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
infrastructure_configuration_arn: {
value: cdktf.stringToHclTerraform(this._infrastructureConfigurationArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
name: {
value: cdktf.stringToHclTerraform(this._name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
status: {
value: cdktf.stringToHclTerraform(this._status),
isBlock: false,
type: "simple",
storageClassType: "string",
},
tags: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tags),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
tags_all: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tagsAll),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
image_scanning_configuration: {
value: imagebuilderImagePipelineImageScanningConfigurationToHclTerraform(this._imageScanningConfiguration.internalValue),
isBlock: true,
type: "list",
storageClassType: "ImagebuilderImagePipelineImageScanningConfigurationList",
},
image_tests_configuration: {
value: imagebuilderImagePipelineImageTestsConfigurationToHclTerraform(this._imageTestsConfiguration.internalValue),
isBlock: true,
type: "list",
stor