java.lang.Object
software.amazon.jsii.JsiiObject
All Implemented Interfaces:
IConstruct, IDependable, IInspectable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:30:00.578Z") @Stability(Stable) public class CfnApp extends CfnResource implements IInspectable
A CloudFormation AWS::OpsWorks::App.

Creates an app for a specified stack. For more information, see Creating Apps .

Required Permissions : To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions .

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.opsworks.*;
 CfnApp cfnApp = CfnApp.Builder.create(this, "MyCfnApp")
         .name("name")
         .stackId("stackId")
         .type("type")
         // the properties below are optional
         .appSource(SourceProperty.builder()
                 .password("password")
                 .revision("revision")
                 .sshKey("sshKey")
                 .type("type")
                 .url("url")
                 .username("username")
                 .build())
         .attributes(Map.of(
                 "attributesKey", "attributes"))
         .dataSources(List.of(DataSourceProperty.builder()
                 .arn("arn")
                 .databaseName("databaseName")
                 .type("type")
                 .build()))
         .description("description")
         .domains(List.of("domains"))
         .enableSsl(false)
         .environment(List.of(EnvironmentVariableProperty.builder()
                 .key("key")
                 .value("value")
                 // the properties below are optional
                 .secure(false)
                 .build()))
         .shortname("shortname")
         .sslConfiguration(SslConfigurationProperty.builder()
                 .certificate("certificate")
                 .chain("chain")
                 .privateKey("privateKey")
                 .build())
         .build();
 
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnApp

      protected CfnApp(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnApp

      protected CfnApp(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnApp

      @Stability(Stable) public CfnApp(@NotNull Construct scope, @NotNull String id, @NotNull CfnAppProps props)
      Create a new AWS::OpsWorks::App.

      Parameters:
      scope -
      • scope in which this resource is defined.
      This parameter is required.
      id -
      • scoped id of the resource.
      This parameter is required.
      props -
      • resource properties.
      This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector -
      • tree inspector to collect and process attributes.
      This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getName

      @Stability(Stable) @NotNull public String getName()
      The app name.
    • setName

      @Stability(Stable) public void setName(@NotNull String value)
      The app name.
    • getStackId

      @Stability(Stable) @NotNull public String getStackId()
      The stack ID.
    • setStackId

      @Stability(Stable) public void setStackId(@NotNull String value)
      The stack ID.
    • getType

      @Stability(Stable) @NotNull public String getType()
      The app type.

      Each supported type is associated with a particular layer. For example, PHP applications are associated with a PHP layer. AWS OpsWorks Stacks deploys an application to those instances that are members of the corresponding layer. If your app isn't one of the standard types, or you prefer to implement your own Deploy recipes, specify other .

    • setType

      @Stability(Stable) public void setType(@NotNull String value)
      The app type.

      Each supported type is associated with a particular layer. For example, PHP applications are associated with a PHP layer. AWS OpsWorks Stacks deploys an application to those instances that are members of the corresponding layer. If your app isn't one of the standard types, or you prefer to implement your own Deploy recipes, specify other .

    • getAppSource

      @Stability(Stable) @Nullable public Object getAppSource()
      A Source object that specifies the app repository.
    • setAppSource

      @Stability(Stable) public void setAppSource(@Nullable CfnApp.SourceProperty value)
      A Source object that specifies the app repository.
    • setAppSource

      @Stability(Stable) public void setAppSource(@Nullable IResolvable value)
      A Source object that specifies the app repository.
    • getAttributes

      @Stability(Stable) @Nullable public Object getAttributes()
      One or more user-defined key/value pairs to be added to the stack attributes.
    • setAttributes

      @Stability(Stable) public void setAttributes(@Nullable IResolvable value)
      One or more user-defined key/value pairs to be added to the stack attributes.
    • setAttributes

      @Stability(Stable) public void setAttributes(@Nullable Map<String,String> value)
      One or more user-defined key/value pairs to be added to the stack attributes.
    • getDataSources

      @Stability(Stable) @Nullable public Object getDataSources()
      The app's data source.
    • setDataSources

      @Stability(Stable) public void setDataSources(@Nullable IResolvable value)
      The app's data source.
    • setDataSources

      @Stability(Stable) public void setDataSources(@Nullable List<Object> value)
      The app's data source.
    • getDescription

      @Stability(Stable) @Nullable public String getDescription()
      A description of the app.
    • setDescription

      @Stability(Stable) public void setDescription(@Nullable String value)
      A description of the app.
    • getDomains

      @Stability(Stable) @Nullable public List<String> getDomains()
      The app virtual host settings, with multiple domains separated by commas.

      For example: 'www.example.com, example.com'

    • setDomains

      @Stability(Stable) public void setDomains(@Nullable List<String> value)
      The app virtual host settings, with multiple domains separated by commas.

      For example: 'www.example.com, example.com'

    • getEnableSsl

      @Stability(Stable) @Nullable public Object getEnableSsl()
      Whether to enable SSL for the app.
    • setEnableSsl

      @Stability(Stable) public void setEnableSsl(@Nullable Boolean value)
      Whether to enable SSL for the app.
    • setEnableSsl

      @Stability(Stable) public void setEnableSsl(@Nullable IResolvable value)
      Whether to enable SSL for the app.
    • getEnvironment

      @Stability(Stable) @Nullable public Object getEnvironment()
      An array of EnvironmentVariable objects that specify environment variables to be associated with the app.

      After you deploy the app, these variables are defined on the associated app server instance. For more information, see Environment Variables .

      There is no specific limit on the number of environment variables. However, the size of the associated data structure - which includes the variables' names, values, and protected flag values - cannot exceed 20 KB. This limit should accommodate most if not all use cases. Exceeding it will cause an exception with the message, "Environment: is too large (maximum is 20KB)."

      If you have specified one or more environment variables, you cannot modify the stack's Chef version.

    • setEnvironment

      @Stability(Stable) public void setEnvironment(@Nullable IResolvable value)
      An array of EnvironmentVariable objects that specify environment variables to be associated with the app.

      After you deploy the app, these variables are defined on the associated app server instance. For more information, see Environment Variables .

      There is no specific limit on the number of environment variables. However, the size of the associated data structure - which includes the variables' names, values, and protected flag values - cannot exceed 20 KB. This limit should accommodate most if not all use cases. Exceeding it will cause an exception with the message, "Environment: is too large (maximum is 20KB)."

      If you have specified one or more environment variables, you cannot modify the stack's Chef version.

    • setEnvironment

      @Stability(Stable) public void setEnvironment(@Nullable List<Object> value)
      An array of EnvironmentVariable objects that specify environment variables to be associated with the app.

      After you deploy the app, these variables are defined on the associated app server instance. For more information, see Environment Variables .

      There is no specific limit on the number of environment variables. However, the size of the associated data structure - which includes the variables' names, values, and protected flag values - cannot exceed 20 KB. This limit should accommodate most if not all use cases. Exceeding it will cause an exception with the message, "Environment: is too large (maximum is 20KB)."

      If you have specified one or more environment variables, you cannot modify the stack's Chef version.

    • getShortname

      @Stability(Stable) @Nullable public String getShortname()
      The app's short name.
    • setShortname

      @Stability(Stable) public void setShortname(@Nullable String value)
      The app's short name.
    • getSslConfiguration

      @Stability(Stable) @Nullable public Object getSslConfiguration()
      An SslConfiguration object with the SSL configuration.
    • setSslConfiguration

      @Stability(Stable) public void setSslConfiguration(@Nullable IResolvable value)
      An SslConfiguration object with the SSL configuration.
    • setSslConfiguration

      @Stability(Stable) public void setSslConfiguration(@Nullable CfnApp.SslConfigurationProperty value)
      An SslConfiguration object with the SSL configuration.