Skip to content

ApplicationProps

Properties for defining a Application.

See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-sae-application

Initializer

import "github.com/alibabacloud-go/ros-cdk/alicloudroscdksae"
&alicloudroscdksae.ApplicationProps {
    AppName: interface{},
    Cpu: interface{},
    Memory: interface{},
    NamespaceId: interface{},
    PackageType: interface{},
    Replicas: interface{},
    AcrAssumeRoleArn: interface{},
    AcrInstanceId: interface{},
    AppDescription: interface{},
    AppSource: interface{},
    AssociateEip: interface{},
    AutoConfig: interface{},
    BaseAppId: interface{},
    Command: interface{},
    CommandArgs: interface{},
    ConfigMapMountDesc: interface{},
    CustomHostAlias: interface{},
    Deploy: interface{},
    EdasContainerVersion: interface{},
    EnableEbpf: interface{},
    Envs: interface{},
    ImagePullSecrets: interface{},
    ImageUrl: interface{},
    JarStartArgs: interface{},
    JarStartOptions: interface{},
    Jdk: interface{},
    KafkaConfigs: interface{},
    Liveness: interface{},
    MicroRegistration: interface{},
    MicroRegistrationConfig: interface{},
    MountDesc: interface{},
    MountHost: interface{},
    NasConfigs: interface{},
    NasId: interface{},
    OssAkId: interface{},
    OssAkSecret: interface{},
    OssMountDescs: interface{},
    PackageUrl: interface{},
    PackageVersion: interface{},
    Php: interface{},
    PhpArmsConfigLocation: interface{},
    PhpConfig: interface{},
    PhpConfigLocation: interface{},
    PostStart: interface{},
    PreStop: interface{},
    ProgrammingLanguage: interface{},
    PvtzDiscoverySvc: interface{},
    Python: interface{},
    PythonModules: interface{},
    Readiness: interface{},
    SaeVersion: interface{},
    SecurityGroupId: interface{},
    ServiceTags: interface{},
    SlsConfigs: interface{},
    Tags: *[]github.com/alibabacloud-go/ros-cdk/alicloudroscdksae.RosApplication.TagsProperty,
    TerminationGracePeriodSeconds: interface{},
    Timezone: interface{},
    TomcatConfig: interface{},
    VpcId: interface{},
    VSwitchId: interface{},
    WarStartOptions: interface{},
    WebContainer: interface{},
}

Properties

Name Type Description
AppName interface{} Property appName: Application Name.
Cpu interface{} Property cpu: Each instance of the CPU required, in units of milli core, can not be zero.
Memory interface{} Property memory: Each instance of the required memory, in units of MB, can not be zero.
NamespaceId interface{} Property namespaceId: EDAS namespace corresponding to ID.
PackageType interface{} Property packageType: Application package type.
Replicas interface{} Property replicas: The initial number of instances.
AcrAssumeRoleArn interface{} Property acrAssumeRoleArn: The ARN of the RAM role required when pulling the image across accounts.
AcrInstanceId interface{} Property acrInstanceId: Container Image service ACR Enterprise Edition instance ID.
AppDescription interface{} Property appDescription: Application description.
AppSource interface{} Property appSource: Application source.
AssociateEip interface{} Property associateEip: Whether to bind EIP.
AutoConfig interface{} Property autoConfig: Whether to automatically configure the network environment.
BaseAppId interface{} Property baseAppId: Base application ID.
Command interface{} Property command: Mirroring the start command.
CommandArgs interface{} Property commandArgs: Mirroring the start command parameters.
ConfigMapMountDesc interface{} Property configMapMountDesc: ConfigMap mount description.
CustomHostAlias interface{} Property customHostAlias: Custom mapping host vessel.
Deploy interface{} Property deploy: Whether deployed immediately take effect, the default is false.
EdasContainerVersion interface{} Property edasContainerVersion: EDAS pandora runtime environment used by the application.
EnableEbpf interface{} Property enableEbpf: Whether to enable EBPF.
Envs interface{} Property envs: Container environment variable parameters.
ImagePullSecrets interface{} Property imagePullSecrets: Corresponding to the secret dictionary ID.
ImageUrl interface{} Property imageUrl: Mirroring address.
JarStartArgs interface{} Property jarStartArgs: Jar package startup application parameters.
JarStartOptions interface{} Property jarStartOptions: Jar start the application package option.
Jdk interface{} Property jdk: Deployment of JDK version of the package depends on.
KafkaConfigs interface{} Property kafkaConfigs: Logs are ingested to Kafka configuration summary information.
Liveness interface{} Property liveness: Container health check, health check fails container will be killed and recovery.
MicroRegistration interface{} Property microRegistration: Select the Nacos registry with the following values: - 0: SAE built-in Nacos.
MicroRegistrationConfig interface{} Property microRegistrationConfig: Registry configuration information.
MountDesc interface{} Property mountDesc: Mount Description.
MountHost interface{} Property mountHost: nas mount point in the application of vpc.
NasConfigs interface{} Property nasConfigs: Configuration to mount the NAS.
NasId interface{} Property nasId: Mount the NAS ID, you must be in the same region and cluster.
OssAkId interface{} Property ossAkId: AccessKey ID of the OSS.
OssAkSecret interface{} Property ossAkSecret: AccessKey Secret of the OSS.
OssMountDescs interface{} Property ossMountDescs: OSS mount description information.
PackageUrl interface{} Property packageUrl: Deployment packages address.
PackageVersion interface{} Property packageVersion: The version number of the deployed package, War FatJar type required.
Php interface{} Property php: PHP version.
PhpArmsConfigLocation interface{} Property phpArmsConfigLocation: The PHP application monitors the mount path and requires you to ensure that the PHP server loads the configuration file for this path.
PhpConfig interface{} Property phpConfig: PHP configuration file contents.
PhpConfigLocation interface{} Property phpConfigLocation: PHP application launch configuration mount path, you need to ensure that the PHP server will be started with this configuration file.
PostStart interface{} Property postStart: Executing the script, such as after starting the format: { "exec": { "command": "cat", "\/ etc \/ group"}}.
PreStop interface{} Property preStop: Script is executed before stopping the format as: { "exec": { "command": "cat", "\/ etc \/ group"}}.
ProgrammingLanguage interface{} Property programmingLanguage: Create the stack language for the application.
PvtzDiscoverySvc interface{} Property pvtzDiscoverySvc: Enable K8s Service registration discovery.
Python interface{} Property python: Python version.
PythonModules interface{} Property pythonModules: Install custom module dependencies.
Readiness interface{} Property readiness: Application launch status check, health check fails repeatedly container will be killed and restarted.
SaeVersion interface{} Property saeVersion: SAE version.
SecurityGroupId interface{} Property securityGroupId: Security group ID.
ServiceTags interface{} Property serviceTags: Service tags.
SlsConfigs interface{} Property slsConfigs: Log collection configuration file.
Tags *[]TagsProperty Property tags: Tags to attach to application.
TerminationGracePeriodSeconds interface{} Property terminationGracePeriodSeconds: Graceful offline timeout, default 30, unit of seconds.
Timezone interface{} Property timezone: Application time zone.
TomcatConfig interface{} Property tomcatConfig: Tomcat file configuration, set to "" or "{}" to delete the configuration: - port: Ports in the range of 1024 to 65535 require Root privileges to operate on ports below 1024 Because the container is configured with Admin access, please specify a port greater than 1024.
VpcId interface{} Property vpcId: EDAS namespace corresponding VPC.
VSwitchId interface{} Property vSwitchId: Application examples where the elastic card virtual switch.
WarStartOptions interface{} Property warStartOptions: War Start the application package option.
WebContainer interface{} Property webContainer: Tomcat deployment of the package depends on the version.

AppNameRequired

AppName interface{}
  • Type: interface{}

Property appName: Application Name.

Allowed numbers, letters and underlined combinations thereof. We must begin with the letters, the maximum length of 36 characters.


CpuRequired

Cpu interface{}
  • Type: interface{}

Property cpu: Each instance of the CPU required, in units of milli core, can not be zero.

Currently only supports fixed specifications instance type.


MemoryRequired

Memory interface{}
  • Type: interface{}

Property memory: Each instance of the required memory, in units of MB, can not be zero.

Currently only supports fixed specifications instance type.


NamespaceIdRequired

NamespaceId interface{}
  • Type: interface{}

Property namespaceId: EDAS namespace corresponding to ID.

Canada supports only the name of the scribe lowercase namespace must begin with a letter. Namespace can interface to obtain from DescribeNamespaceList.


PackageTypeRequired

PackageType interface{}
  • Type: interface{}

Property packageType: Application package type.

Support FatJar, War, Image.


ReplicasRequired

Replicas interface{}
  • Type: interface{}

Property replicas: The initial number of instances.


AcrAssumeRoleArnOptional

AcrAssumeRoleArn interface{}
  • Type: interface{}

Property acrAssumeRoleArn: The ARN of the RAM role required when pulling the image across accounts.


AcrInstanceIdOptional

AcrInstanceId interface{}
  • Type: interface{}

Property acrInstanceId: Container Image service ACR Enterprise Edition instance ID.

Required when ImageUrl serves enterprise edition for container images.


AppDescriptionOptional

AppDescription interface{}
  • Type: interface{}

Property appDescription: Application description.

No more than 1024 characters.


AppSourceOptional

AppSource interface{}
  • Type: interface{}

Property appSource: Application source.


AssociateEipOptional

AssociateEip interface{}
  • Type: interface{}

Property associateEip: Whether to bind EIP.

The values are explained as follows:

  • true: Binding.
  • false: No binding

AutoConfigOptional

AutoConfig interface{}
  • Type: interface{}

Property autoConfig: Whether to automatically configure the network environment.

The values are explained as follows:

  • true: SAE automatically config the network environment when creating the application. The values for NamespaceId, VpcId, vSwitchId, and SecurityGroupId are ignored.
  • false: SAE manually config the network environment when creating the application.

BaseAppIdOptional

BaseAppId interface{}
  • Type: interface{}

Property baseAppId: Base application ID.


CommandOptional

Command interface{}
  • Type: interface{}

Property command: Mirroring the start command.

The command object in memory executable container must be. For example: sleep. This command will cause the image to set the original startup command failure.


CommandArgsOptional

CommandArgs interface{}
  • Type: interface{}

Property commandArgs: Mirroring the start command parameters.

Parameters required for the start-command. For example: [ "1d"]


ConfigMapMountDescOptional

ConfigMapMountDesc interface{}
  • Type: interface{}

Property configMapMountDesc: ConfigMap mount description.

Use the configuration items created on the namespace configuration items page to inject configuration information into the container.


CustomHostAliasOptional

CustomHostAlias interface{}
  • Type: interface{}

Property customHostAlias: Custom mapping host vessel.

For example: [{ "hostName": "samplehost", "ip": "127.0.0.1"}]


DeployOptional

Deploy interface{}
  • Type: interface{}

Property deploy: Whether deployed immediately take effect, the default is false.


EdasContainerVersionOptional

EdasContainerVersion interface{}
  • Type: interface{}

Property edasContainerVersion: EDAS pandora runtime environment used by the application.


EnableEbpfOptional

EnableEbpf interface{}
  • Type: interface{}

Property enableEbpf: Whether to enable EBPF.

Enable application monitoring for non-Java applications. The values are explained as follows:

  • true: Enable.
  • false: Disable.

EnvsOptional

Envs interface{}
  • Type: interface{}

Property envs: Container environment variable parameters.

For example: [{ "name": "envtmp", "value": "0"}]


ImagePullSecretsOptional

ImagePullSecrets interface{}
  • Type: interface{}

Property imagePullSecrets: Corresponding to the secret dictionary ID.


ImageUrlOptional

ImageUrl interface{}
  • Type: interface{}

Property imageUrl: Mirroring address.

Image only type of application can be configured to mirror address.


JarStartArgsOptional

JarStartArgs interface{}
  • Type: interface{}

Property jarStartArgs: Jar package startup application parameters.

Apply the default startup command: $ JAVA_HOME / bin / java $ JarStartOptions -jar $ CATALINA_OPTS "$ package_path" $ JarStartArgs


JarStartOptionsOptional

JarStartOptions interface{}
  • Type: interface{}

Property jarStartOptions: Jar start the application package option.

Apply the default startup command: $ JAVA_HOME / bin / java $ JarStartOptions -jar $ CATALINA_OPTS "$ package_path" $ JarStartArgs


JdkOptional

Jdk interface{}
  • Type: interface{}

Property jdk: Deployment of JDK version of the package depends on.

Mirroring not supported.


KafkaConfigsOptional

KafkaConfigs interface{}
  • Type: interface{}

Property kafkaConfigs: Logs are ingested to Kafka configuration summary information.

The values are explained as follows:

  • kafkaEndpoint: The service access address for the Kafka API
  • kafkaInstanceId: Kafka instance ID
  • kafkaConfigs: Configuration summary information for one or more logs See Request parameters kafkaConfigs for a description of these values.

LivenessOptional

Liveness interface{}
  • Type: interface{}

Property liveness: Container health check, health check fails container will be killed and recovery.

Currently only supports mode command issued in the container. The columns: { "exec": { "command": [ "sleep", "5s"]}, "initialDelaySeconds": 10, "timeoutSeconds": 11}


MicroRegistrationOptional

MicroRegistration interface{}
  • Type: interface{}

Property microRegistration: Select the Nacos registry with the following values: - 0: SAE built-in Nacos.

  • 1: User-built Nacos.
  • 2: MSE commercial version of Nacos.

MicroRegistrationConfigOptional

MicroRegistrationConfig interface{}
  • Type: interface{}

Property microRegistrationConfig: Registry configuration information.


MountDescOptional

MountDesc interface{}
  • Type: interface{}

Property mountDesc: Mount Description.


MountHostOptional

MountHost interface{}
  • Type: interface{}

Property mountHost: nas mount point in the application of vpc.


NasConfigsOptional

NasConfigs interface{}
  • Type: interface{}

Property nasConfigs: Configuration to mount the NAS.

The values are explained as follows:

  • mountPath: The container mount path
  • readOnly: A value of false indicates read and write permission.
  • nasId: NAS ID
  • mountDomain: The container mount point address For more information, see DescribeMountTargets.
  • nasPath: NAS relative file directory

NasIdOptional

NasId interface{}
  • Type: interface{}

Property nasId: Mount the NAS ID, you must be in the same region and cluster.

It must be available to create a mount point limit, or switch on its mount point already in the VPC. If you do not fill, and there mountDescs field, the default will automatically purchase a NAS and mount it onto the switch within the VPC.


OssAkIdOptional

OssAkId interface{}
  • Type: interface{}

Property ossAkId: AccessKey ID of the OSS.


OssAkSecretOptional

OssAkSecret interface{}
  • Type: interface{}

Property ossAkSecret: AccessKey Secret of the OSS.


OssMountDescsOptional

OssMountDescs interface{}
  • Type: interface{}

Property ossMountDescs: OSS mount description information.

The parameters are described as follows:

  • bucketName: The name of the Bucket
  • bucketPath: The directory or OSS object you created in OSS that will raise an exception if the OSS mount directory does not exist.
  • mountPath: Your container path in SAE. If the path already exists, it is a covering relationship. If the path doesn't exist, it will be created.
  • readOnly: This specifies whether the container path has read-only permissions for mount directory resources:

  • true: Read-only permission

  • false: Read and write permissions

PackageUrlOptional

PackageUrl interface{}
  • Type: interface{}

Property packageUrl: Deployment packages address.

Only FatJar War or the type of application can be configured to deploy packet address.


PackageVersionOptional

PackageVersion interface{}
  • Type: interface{}

Property packageVersion: The version number of the deployed package, War FatJar type required.

Please customize it meaning.


PhpOptional

Php interface{}
  • Type: interface{}

Property php: PHP version.


PhpArmsConfigLocationOptional

PhpArmsConfigLocation interface{}
  • Type: interface{}

Property phpArmsConfigLocation: The PHP application monitors the mount path and requires you to ensure that the PHP server loads the configuration file for this path.

You don't need to worry about the configuration content; SAE will automatically render the correct configuration file.


PhpConfigOptional

PhpConfig interface{}
  • Type: interface{}

Property phpConfig: PHP configuration file contents.


PhpConfigLocationOptional

PhpConfigLocation interface{}
  • Type: interface{}

Property phpConfigLocation: PHP application launch configuration mount path, you need to ensure that the PHP server will be started with this configuration file.


PostStartOptional

PostStart interface{}
  • Type: interface{}

Property postStart: Executing the script, such as after starting the format: { "exec": { "command": "cat", "\/ etc \/ group"}}.


PreStopOptional

PreStop interface{}
  • Type: interface{}

Property preStop: Script is executed before stopping the format as: { "exec": { "command": "cat", "\/ etc \/ group"}}.


ProgrammingLanguageOptional

ProgrammingLanguage interface{}
  • Type: interface{}

Property programmingLanguage: Create the stack language for the application.

The values are explained as follows:

  • java: The Java language
  • php: PHP language.
  • other: Multiple languages such as Python, C++, Go,.NET, Node.js, etc.

PvtzDiscoverySvcOptional

PvtzDiscoverySvc interface{}
  • Type: interface{}

Property pvtzDiscoverySvc: Enable K8s Service registration discovery.

The values are explained as follows:

  • serviceName: The name of the service The format is custom-namespace ID, in which the postfix-namespace ID does not support customization and needs to be filled in according to the namespace of the application. For example, choosing the default namespace for the North China 2 (Beijing) region would be -cn-beijing-default.
  • namespaceId: The namespace ID
  • portProtocols: Ports and protocols The port is in the range [1,65535] and supports both TCP and UDP protocols.
  • portAndProtocol: Ports and protocols The port is in the range [1,65535] and supports both TCP and UDP protocols. portProtocols is preferred. If portProtocols is set, only portProtocols will take effect.
  • enable: Enable K8s Service registration discovery.

PythonOptional

Python interface{}
  • Type: interface{}

Property python: Python version.

Supports PYTHON 3.9.15


PythonModulesOptional

PythonModules interface{}
  • Type: interface{}

Property pythonModules: Install custom module dependencies.

The dependencies defined in requirements.txt in the root directory are installed by default. If the package is not configured or customized, you can specify the dependencies to install.


ReadinessOptional

Readiness interface{}
  • Type: interface{}

Property readiness: Application launch status check, health check fails repeatedly container will be killed and restarted.

Do not pass health check of the vessel will not have to enter SLB traffic. For example: { "exec": { "command": [ "sleep", "6s"]}, "initialDelaySeconds": 15, "timeoutSeconds": 12}


SaeVersionOptional

SaeVersion interface{}
  • Type: interface{}

Property saeVersion: SAE version.


SecurityGroupIdOptional

SecurityGroupId interface{}
  • Type: interface{}

Property securityGroupId: Security group ID.


ServiceTagsOptional

ServiceTags interface{}
  • Type: interface{}

Property serviceTags: Service tags.


SlsConfigsOptional

SlsConfigs interface{}
  • Type: interface{}

Property slsConfigs: Log collection configuration file.


TagsOptional

Tags *[]TagsProperty

Property tags: Tags to attach to application.

Max support 20 tags to add during create application. Each tag with two properties Key and Value, and Key is required.


TerminationGracePeriodSecondsOptional

TerminationGracePeriodSeconds interface{}
  • Type: interface{}

Property terminationGracePeriodSeconds: Graceful offline timeout, default 30, unit of seconds.

The value ranges from 1 to 300.


TimezoneOptional

Timezone interface{}
  • Type: interface{}

Property timezone: Application time zone.

Default Asia/Shanghai.


TomcatConfigOptional

TomcatConfig interface{}
  • Type: interface{}

Property tomcatConfig: Tomcat file configuration, set to "" or "{}" to delete the configuration: - port: Ports in the range of 1024 to 65535 require Root privileges to operate on ports below 1024 Because the container is configured with Admin access, please specify a port greater than 1024.

If not configured, it defaults to 8080.

  • contextPath: The access path, defaults to the root directory "/"
  • maxThreads: This config the number of connections in the pool; the default is 400.
  • uriEncoding: Tomcat's encoding formats, including UTF-8, ISO-8859-1, GBK, and GB2312 If not set, it defaults to ISO-8859-1.
  • useBodyEncodingForUri: Whether to useBodyEncoding for URL (defaults to true).

VpcIdOptional

VpcId interface{}
  • Type: interface{}

Property vpcId: EDAS namespace corresponding VPC.

In Serverless in a corresponding one of the VPC namespace only, and can not be modified. Serverless first created in the application name space will form a binding relationship. You may correspond to a plurality of namespaces VPC. Do not fill was VpcId namespace binding.


VSwitchIdOptional

VSwitchId interface{}
  • Type: interface{}

Property vSwitchId: Application examples where the elastic card virtual switch.

The switch must be located above the VPC. The same switch with EDAS namespace binding relationship. Do not fill was VSwitchId namespace binding.


WarStartOptionsOptional

WarStartOptions interface{}
  • Type: interface{}

Property warStartOptions: War Start the application package option.

Apply the default startup command: java $ JAVA_OPTS $ CATALINA_OPTS -Options org.apache.catalina.startup.Bootstrap "$ @" start


WebContainerOptional

WebContainer interface{}
  • Type: interface{}

Property webContainer: Tomcat deployment of the package depends on the version.

Mirroring not supported.