All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pwrdrvr.microapps.cdk.MicroAppsChildDeployer Maven / Gradle / Ivy

package com.pwrdrvr.microapps.cdk;

/**
 * (experimental) Create a new MicroApps Child Deployer construct.
 */
@javax.annotation.Generated(value = "jsii-pacmak/1.75.0 (build 63bb957)", date = "2023-06-14T17:32:47.058Z")
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@software.amazon.jsii.Jsii(module = com.pwrdrvr.microapps.cdk.$Module.class, fqn = "@pwrdrvr/microapps-cdk.MicroAppsChildDeployer")
public class MicroAppsChildDeployer extends software.constructs.Construct implements com.pwrdrvr.microapps.cdk.IMicroAppsChildDeployer {

    protected MicroAppsChildDeployer(final software.amazon.jsii.JsiiObjectRef objRef) {
        super(objRef);
    }

    protected MicroAppsChildDeployer(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) {
        super(initializationMode);
    }

    /**
     * @param scope This parameter is required.
     * @param id This parameter is required.
     * @param props
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
    public MicroAppsChildDeployer(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id, final @org.jetbrains.annotations.Nullable com.pwrdrvr.microapps.cdk.MicroAppsChildDeployerProps props) {
        super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
        software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(id, "id is required"), props });
    }

    /**
     * @param scope This parameter is required.
     * @param id This parameter is required.
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
    public MicroAppsChildDeployer(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id) {
        super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
        software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(id, "id is required") });
    }

    /**
     * (experimental) Lambda function for the Deployer.
     */
    @Override
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
    public @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.lambda.IFunction getDeployerFunc() {
        return software.amazon.jsii.Kernel.get(this, "deployerFunc", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.lambda.IFunction.class));
    }

    /**
     * (experimental) A fluent builder for {@link com.pwrdrvr.microapps.cdk.MicroAppsChildDeployer}.
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
    public static final class Builder implements software.amazon.jsii.Builder {
        /**
         * @return a new instance of {@link Builder}.
         * @param scope This parameter is required.
         * @param id This parameter is required.
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
        public static Builder create(final software.constructs.Construct scope, final java.lang.String id) {
            return new Builder(scope, id);
        }

        private final software.constructs.Construct scope;
        private final java.lang.String id;
        private com.pwrdrvr.microapps.cdk.MicroAppsChildDeployerProps.Builder props;

        private Builder(final software.constructs.Construct scope, final java.lang.String id) {
            this.scope = scope;
            this.id = id;
        }

        /**
         * (experimental) Application environment, passed as `NODE_ENV` to the Router and Deployer Lambda functions.
         * 

* @return {@code this} * @param appEnv Application environment, passed as `NODE_ENV` to the Router and Deployer Lambda functions. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder appEnv(final java.lang.String appEnv) { this.props().appEnv(appEnv); return this; } /** * (experimental) ARN of the parent Deployer Lambda Function. *

* @return {@code this} * @param parentDeployerLambdaArn ARN of the parent Deployer Lambda Function. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder parentDeployerLambdaArn(final java.lang.String parentDeployerLambdaArn) { this.props().parentDeployerLambdaArn(parentDeployerLambdaArn); return this; } /** * (experimental) Optional asset name root. *

* Default: - resource names auto assigned *

* Example: *

*

         * microapps
         * 
*

* @return {@code this} * @param assetNameRoot Optional asset name root. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder assetNameRoot(final java.lang.String assetNameRoot) { this.props().assetNameRoot(assetNameRoot); return this; } /** * (experimental) Optional asset name suffix. *

* Default: none *

* Example: *

*

         * -dev-pr-12
         * 
*

* @return {@code this} * @param assetNameSuffix Optional asset name suffix. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder assetNameSuffix(final java.lang.String assetNameSuffix) { this.props().assetNameSuffix(assetNameSuffix); return this; } /** * (experimental) Deployer timeout. *

* For larger applications this needs to be set up to 2-5 minutes for the S3 copy *

* Default: 2 minutes *

* @return {@code this} * @param deployerTimeout Deployer timeout. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder deployerTimeout(final software.amazon.awscdk.Duration deployerTimeout) { this.props().deployerTimeout(deployerTimeout); return this; } /** * (experimental) ARN of the IAM Role for the Edge to Origin Lambda Function. *

* For child accounts this can be blank as it is retrieved from the parent Deployer *

* @return {@code this} * @param edgeToOriginRoleArn ARN of the IAM Role for the Edge to Origin Lambda Function. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder edgeToOriginRoleArn(final java.lang.String edgeToOriginRoleArn) { this.props().edgeToOriginRoleArn(edgeToOriginRoleArn); return this; } /** * (experimental) RemovalPolicy override for child resources. *

* Note: if set to DESTROY the S3 buckes will have autoDeleteObjects set to true *

* Default: - per resource default *

* @return {@code this} * @param removalPolicy RemovalPolicy override for child resources. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder removalPolicy(final software.amazon.awscdk.RemovalPolicy removalPolicy) { this.props().removalPolicy(removalPolicy); return this; } /** * @returns a newly built instance of {@link com.pwrdrvr.microapps.cdk.MicroAppsChildDeployer}. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public com.pwrdrvr.microapps.cdk.MicroAppsChildDeployer build() { return new com.pwrdrvr.microapps.cdk.MicroAppsChildDeployer( this.scope, this.id, this.props != null ? this.props.build() : null ); } private com.pwrdrvr.microapps.cdk.MicroAppsChildDeployerProps.Builder props() { if (this.props == null) { this.props = new com.pwrdrvr.microapps.cdk.MicroAppsChildDeployerProps.Builder(); } return this.props; } } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy