
software.amazon.awscdk.services.codepipeline.actions.CloudFormationActionProps Maven / Gradle / Ivy
package software.amazon.awscdk.services.codepipeline.actions;
/**
* Properties common to all CloudFormation actions.
*/
@javax.annotation.Generated(value = "jsii-pacmak/0.10.3 (build 6bbf743)", date = "2019-05-02T10:15:47.462Z")
public interface CloudFormationActionProps extends software.amazon.jsii.JsiiSerializable, software.amazon.awscdk.services.codepipeline.CommonActionProps {
/**
* The name of the stack to apply this action to.
*/
java.lang.String getStackName();
/**
* The name of the output artifact to generate.
*
* Only applied if `outputFileName` is set as well.
*
* Default: Automatically generated artifact name.
*/
software.amazon.awscdk.services.codepipeline.Artifact getOutput();
/**
* A name for the filename in the output artifact to store the AWS CloudFormation call's result.
*
* The file will contain the result of the call to AWS CloudFormation (for example
* the call to UpdateStack or CreateChangeSet).
*
* AWS CodePipeline adds the file to the output artifact after performing
* the specified action.
*
* Default: No output artifact generated
*/
java.lang.String getOutputFileName();
/**
* The AWS region the given Action resides in. Note that a cross-region Pipeline requires replication buckets to function correctly. You can provide their names with the {@link PipelineProps#crossRegionReplicationBuckets} property. If you don't, the CodePipeline Construct will create new Stacks in your CDK app containing those buckets, that you will need to `cdk deploy` before deploying the main, Pipeline-containing Stack.
*
* Default: the Action resides in the same region as the Pipeline
*/
java.lang.String getRegion();
/**
* The service role that is assumed during execution of action. This role is not mandatory, however more advanced configuration may require specifying it.
*
* @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html
*/
software.amazon.awscdk.services.iam.IRole getRole();
/**
* @return a {@link Builder} of {@link CloudFormationActionProps}
*/
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link CloudFormationActionProps}
*/
final class Builder {
private java.lang.String _stackName;
@javax.annotation.Nullable
private software.amazon.awscdk.services.codepipeline.Artifact _output;
@javax.annotation.Nullable
private java.lang.String _outputFileName;
@javax.annotation.Nullable
private java.lang.String _region;
@javax.annotation.Nullable
private software.amazon.awscdk.services.iam.IRole _role;
private java.lang.String _actionName;
@javax.annotation.Nullable
private java.lang.Number _runOrder;
/**
* Sets the value of StackName
* @param value The name of the stack to apply this action to.
* @return {@code this}
*/
public Builder withStackName(final java.lang.String value) {
this._stackName = java.util.Objects.requireNonNull(value, "stackName is required");
return this;
}
/**
* Sets the value of Output
* @param value The name of the output artifact to generate.
* @return {@code this}
*/
public Builder withOutput(@javax.annotation.Nullable final software.amazon.awscdk.services.codepipeline.Artifact value) {
this._output = value;
return this;
}
/**
* Sets the value of OutputFileName
* @param value A name for the filename in the output artifact to store the AWS CloudFormation call's result.
* @return {@code this}
*/
public Builder withOutputFileName(@javax.annotation.Nullable final java.lang.String value) {
this._outputFileName = value;
return this;
}
/**
* Sets the value of Region
* @param value The AWS region the given Action resides in. Note that a cross-region Pipeline requires replication buckets to function correctly. You can provide their names with the {@link PipelineProps#crossRegionReplicationBuckets} property. If you don't, the CodePipeline Construct will create new Stacks in your CDK app containing those buckets, that you will need to `cdk deploy` before deploying the main, Pipeline-containing Stack.
* @return {@code this}
*/
public Builder withRegion(@javax.annotation.Nullable final java.lang.String value) {
this._region = value;
return this;
}
/**
* Sets the value of Role
* @param value The service role that is assumed during execution of action. This role is not mandatory, however more advanced configuration may require specifying it.
* @return {@code this}
*/
public Builder withRole(@javax.annotation.Nullable final software.amazon.awscdk.services.iam.IRole value) {
this._role = value;
return this;
}
/**
* Sets the value of ActionName
* @param value The physical, human-readable name of the Action. Not that Action names must be unique within a single Stage.
* @return {@code this}
*/
public Builder withActionName(final java.lang.String value) {
this._actionName = java.util.Objects.requireNonNull(value, "actionName is required");
return this;
}
/**
* Sets the value of RunOrder
* @param value The runOrder property for this Action. RunOrder determines the relative order in which multiple Actions in the same Stage execute.
* @return {@code this}
*/
public Builder withRunOrder(@javax.annotation.Nullable final java.lang.Number value) {
this._runOrder = value;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link CloudFormationActionProps}
* @throws NullPointerException if any required attribute was not provided
*/
public CloudFormationActionProps build() {
return new CloudFormationActionProps() {
private final java.lang.String $stackName = java.util.Objects.requireNonNull(_stackName, "stackName is required");
@javax.annotation.Nullable
private final software.amazon.awscdk.services.codepipeline.Artifact $output = _output;
@javax.annotation.Nullable
private final java.lang.String $outputFileName = _outputFileName;
@javax.annotation.Nullable
private final java.lang.String $region = _region;
@javax.annotation.Nullable
private final software.amazon.awscdk.services.iam.IRole $role = _role;
private final java.lang.String $actionName = java.util.Objects.requireNonNull(_actionName, "actionName is required");
@javax.annotation.Nullable
private final java.lang.Number $runOrder = _runOrder;
@Override
public java.lang.String getStackName() {
return this.$stackName;
}
@Override
public software.amazon.awscdk.services.codepipeline.Artifact getOutput() {
return this.$output;
}
@Override
public java.lang.String getOutputFileName() {
return this.$outputFileName;
}
@Override
public java.lang.String getRegion() {
return this.$region;
}
@Override
public software.amazon.awscdk.services.iam.IRole getRole() {
return this.$role;
}
@Override
public java.lang.String getActionName() {
return this.$actionName;
}
@Override
public java.lang.Number getRunOrder() {
return this.$runOrder;
}
public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() {
com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE;
com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
obj.set("stackName", om.valueToTree(this.getStackName()));
obj.set("output", om.valueToTree(this.getOutput()));
obj.set("outputFileName", om.valueToTree(this.getOutputFileName()));
obj.set("region", om.valueToTree(this.getRegion()));
obj.set("role", om.valueToTree(this.getRole()));
obj.set("actionName", om.valueToTree(this.getActionName()));
obj.set("runOrder", om.valueToTree(this.getRunOrder()));
return obj;
}
};
}
}
/**
* A proxy class which represents a concrete javascript instance of this type.
*/
final static class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements software.amazon.awscdk.services.codepipeline.actions.CloudFormationActionProps {
protected Jsii$Proxy(final software.amazon.jsii.JsiiObject.InitializationMode mode) {
super(mode);
}
/**
* The name of the stack to apply this action to.
*/
@Override
public java.lang.String getStackName() {
return this.jsiiGet("stackName", java.lang.String.class);
}
/**
* The name of the output artifact to generate.
*
* Only applied if `outputFileName` is set as well.
*
* Default: Automatically generated artifact name.
*/
@Override
@javax.annotation.Nullable
public software.amazon.awscdk.services.codepipeline.Artifact getOutput() {
return this.jsiiGet("output", software.amazon.awscdk.services.codepipeline.Artifact.class);
}
/**
* A name for the filename in the output artifact to store the AWS CloudFormation call's result.
*
* The file will contain the result of the call to AWS CloudFormation (for example
* the call to UpdateStack or CreateChangeSet).
*
* AWS CodePipeline adds the file to the output artifact after performing
* the specified action.
*
* Default: No output artifact generated
*/
@Override
@javax.annotation.Nullable
public java.lang.String getOutputFileName() {
return this.jsiiGet("outputFileName", java.lang.String.class);
}
/**
* The AWS region the given Action resides in. Note that a cross-region Pipeline requires replication buckets to function correctly. You can provide their names with the {@link PipelineProps#crossRegionReplicationBuckets} property. If you don't, the CodePipeline Construct will create new Stacks in your CDK app containing those buckets, that you will need to `cdk deploy` before deploying the main, Pipeline-containing Stack.
*
* Default: the Action resides in the same region as the Pipeline
*/
@Override
@javax.annotation.Nullable
public java.lang.String getRegion() {
return this.jsiiGet("region", java.lang.String.class);
}
/**
* The service role that is assumed during execution of action. This role is not mandatory, however more advanced configuration may require specifying it.
*
* @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html
*/
@Override
@javax.annotation.Nullable
public software.amazon.awscdk.services.iam.IRole getRole() {
return this.jsiiGet("role", software.amazon.awscdk.services.iam.IRole.class);
}
/**
* The physical, human-readable name of the Action. Not that Action names must be unique within a single Stage.
*/
@Override
public java.lang.String getActionName() {
return this.jsiiGet("actionName", java.lang.String.class);
}
/**
* The runOrder property for this Action. RunOrder determines the relative order in which multiple Actions in the same Stage execute.
*
* Default: 1
*
* @see https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html
*/
@Override
@javax.annotation.Nullable
public java.lang.Number getRunOrder() {
return this.jsiiGet("runOrder", java.lang.Number.class);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy