ApplicationArgs

data class ApplicationArgs(val acrAssumeRoleArn: Output<String>? = null, val acrInstanceId: Output<String>? = null, val appDescription: Output<String>? = null, val appName: Output<String>? = null, val autoConfig: Output<Boolean>? = null, val autoEnableApplicationScalingRule: Output<Boolean>? = null, val batchWaitTime: Output<Int>? = null, val changeOrderDesc: Output<String>? = null, val command: Output<String>? = null, val commandArgs: Output<String>? = null, val commandArgsV2s: Output<List<String>>? = null, val configMapMountDesc: Output<String>? = null, val configMapMountDescV2s: Output<List<ApplicationConfigMapMountDescV2Args>>? = null, val cpu: Output<Int>? = null, val customHostAlias: Output<String>? = null, val customHostAliasV2s: Output<List<ApplicationCustomHostAliasV2Args>>? = null, val deploy: Output<Boolean>? = null, val edasContainerVersion: Output<String>? = null, val enableAhas: Output<String>? = null, val enableGreyTagRoute: Output<Boolean>? = null, val envs: Output<String>? = null, val imagePullSecrets: Output<String>? = null, val imageUrl: Output<String>? = null, val jarStartArgs: Output<String>? = null, val jarStartOptions: Output<String>? = null, val jdk: Output<String>? = null, val kafkaConfigs: Output<ApplicationKafkaConfigsArgs>? = null, val liveness: Output<String>? = null, val livenessV2: Output<ApplicationLivenessV2Args>? = null, val memory: Output<Int>? = null, val microRegistration: Output<String>? = null, val minReadyInstanceRatio: Output<Int>? = null, val minReadyInstances: Output<Int>? = null, val namespaceId: Output<String>? = null, val nasConfigs: Output<List<ApplicationNasConfigArgs>>? = null, val ossAkId: Output<String>? = null, val ossAkSecret: Output<String>? = null, val ossMountDescs: Output<String>? = null, val ossMountDescsV2s: Output<List<ApplicationOssMountDescsV2Args>>? = null, val packageType: Output<String>? = null, val packageUrl: Output<String>? = null, val packageVersion: Output<String>? = null, val php: Output<String>? = null, val phpArmsConfigLocation: Output<String>? = null, val phpConfig: Output<String>? = null, val phpConfigLocation: Output<String>? = null, val postStart: Output<String>? = null, val postStartV2: Output<ApplicationPostStartV2Args>? = null, val preStop: Output<String>? = null, val preStopV2: Output<ApplicationPreStopV2Args>? = null, val programmingLanguage: Output<String>? = null, val pvtzDiscoverySvc: Output<ApplicationPvtzDiscoverySvcArgs>? = null, val readiness: Output<String>? = null, val readinessV2: Output<ApplicationReadinessV2Args>? = null, val replicas: Output<Int>? = null, val securityGroupId: Output<String>? = null, val slsConfigs: Output<String>? = null, val status: Output<String>? = null, val tags: Output<Map<String, String>>? = null, val terminationGracePeriodSeconds: Output<Int>? = null, val timezone: Output<String>? = null, val tomcatConfig: Output<String>? = null, val tomcatConfigV2: Output<ApplicationTomcatConfigV2Args>? = null, val updateStrategy: Output<String>? = null, val updateStrategyV2: Output<ApplicationUpdateStrategyV2Args>? = null, val vpcId: Output<String>? = null, val vswitchId: Output<String>? = null, val warStartOptions: Output<String>? = null, val webContainer: Output<String>? = null) : ConvertibleToJava<ApplicationArgs>

Provides a Serverless App Engine (SAE) Application resource. For information about Serverless App Engine (SAE) Application and how to use it, see What is Application.

NOTE: Available since v1.161.0.

Example Usage

Basic Usage

import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
import * as random from "@pulumi/random";
const config = new pulumi.Config();
const region = config.get("region") || "cn-hangzhou";
const name = config.get("name") || "tf-example";
const defaultInteger = new random.index.Integer("default", {
max: 99999,
min: 10000,
});
const _default = alicloud.getRegions({
current: true,
});
const defaultGetZones = alicloud.getZones({
availableResourceCreation: "VSwitch",
});
const defaultNetwork = new alicloud.vpc.Network("default", {
vpcName: name,
cidrBlock: "10.4.0.0/16",
});
const defaultSwitch = new alicloud.vpc.Switch("default", {
vswitchName: name,
cidrBlock: "10.4.0.0/24",
vpcId: defaultNetwork.id,
zoneId: defaultGetZones.then(defaultGetZones => defaultGetZones.zones?.[0]?.id),
});
const defaultSecurityGroup = new alicloud.ecs.SecurityGroup("default", {vpcId: defaultNetwork.id});
const defaultNamespace = new alicloud.sae.Namespace("default", {
namespaceId: _default.then(_default => `${_default.regions?.[0]?.id}:example${defaultInteger.result}`),
namespaceName: name,
namespaceDescription: name,
enableMicroRegistration: false,
});
const defaultApplication = new alicloud.sae.Application("default", {
appDescription: name,
appName: `${name}-${defaultInteger.result}`,
namespaceId: defaultNamespace.id,
imageUrl: _default.then(_default => `registry-vpc.${_default.regions?.[0]?.id}.aliyuncs.com/sae-demo-image/consumer:1.0`),
packageType: "Image",
securityGroupId: defaultSecurityGroup.id,
vpcId: defaultNetwork.id,
vswitchId: defaultSwitch.id,
timezone: "Asia/Beijing",
replicas: 5,
cpu: 500,
memory: 2048,
});
import pulumi
import pulumi_alicloud as alicloud
import pulumi_random as random
config = pulumi.Config()
region = config.get("region")
if region is None:
region = "cn-hangzhou"
name = config.get("name")
if name is None:
name = "tf-example"
default_integer = random.index.Integer("default",
max=99999,
min=10000)
default = alicloud.get_regions(current=True)
default_get_zones = alicloud.get_zones(available_resource_creation="VSwitch")
default_network = alicloud.vpc.Network("default",
vpc_name=name,
cidr_block="10.4.0.0/16")
default_switch = alicloud.vpc.Switch("default",
vswitch_name=name,
cidr_block="10.4.0.0/24",
vpc_id=default_network.id,
zone_id=default_get_zones.zones[0].id)
default_security_group = alicloud.ecs.SecurityGroup("default", vpc_id=default_network.id)
default_namespace = alicloud.sae.Namespace("default",
namespace_id=f"{default.regions[0]&#46;id}:example{default_integer['result']}",
namespace_name=name,
namespace_description=name,
enable_micro_registration=False)
default_application = alicloud.sae.Application("default",
app_description=name,
app_name=f"{name}-{default_integer['result']}",
namespace_id=default_namespace.id,
image_url=f"registry-vpc.{default.regions[0].id}.aliyuncs.com/sae-demo-image/consumer:1.0",
package_type="Image",
security_group_id=default_security_group.id,
vpc_id=default_network.id,
vswitch_id=default_switch.id,
timezone="Asia/Beijing",
replicas=5,
cpu=500,
memory=2048)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
using Random = Pulumi.Random;
return await Deployment.RunAsync(() =>
{
var config = new Config();
var region = config.Get("region") ?? "cn-hangzhou";
var name = config.Get("name") ?? "tf-example";
var defaultInteger = new Random.Index.Integer("default", new()
{
Max = 99999,
Min = 10000,
});
var @default = AliCloud.GetRegions.Invoke(new()
{
Current = true,
});
var defaultGetZones = AliCloud.GetZones.Invoke(new()
{
AvailableResourceCreation = "VSwitch",
});
var defaultNetwork = new AliCloud.Vpc.Network("default", new()
{
VpcName = name,
CidrBlock = "10.4.0.0/16",
});
var defaultSwitch = new AliCloud.Vpc.Switch("default", new()
{
VswitchName = name,
CidrBlock = "10.4.0.0/24",
VpcId = defaultNetwork.Id,
ZoneId = defaultGetZones.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
});
var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup("default", new()
{
VpcId = defaultNetwork.Id,
});
var defaultNamespace = new AliCloud.Sae.Namespace("default", new()
{
NamespaceId = @default.Apply(@default => $"{@default.Apply(getRegionsResult => getRegionsResult.Regions[0]?.Id)}:example{defaultInteger.Result}"),
NamespaceName = name,
NamespaceDescription = name,
EnableMicroRegistration = false,
});
var defaultApplication = new AliCloud.Sae.Application("default", new()
{
AppDescription = name,
AppName = $"{name}-{defaultInteger.Result}",
NamespaceId = defaultNamespace.Id,
ImageUrl = @default.Apply(@default => $"registry-vpc.{@default.Apply(getRegionsResult => getRegionsResult.Regions[0]?.Id)}.aliyuncs.com/sae-demo-image/consumer:1.0"),
PackageType = "Image",
SecurityGroupId = defaultSecurityGroup.Id,
VpcId = defaultNetwork.Id,
VswitchId = defaultSwitch.Id,
Timezone = "Asia/Beijing",
Replicas = 5,
Cpu = 500,
Memory = 2048,
});
});
package main
import (
"fmt"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/sae"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"github.com/pulumi/pulumi-random/sdk/v4/go/random"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cfg := config.New(ctx, "")
region := "cn-hangzhou"
if param := cfg.Get("region"); param != "" {
region = param
}
name := "tf-example"
if param := cfg.Get("name"); param != "" {
name = param
}
defaultInteger, err := random.NewInteger(ctx, "default", &random.IntegerArgs{
Max: 99999,
Min: 10000,
})
if err != nil {
return err
}
_default, err := alicloud.GetRegions(ctx, &alicloud.GetRegionsArgs{
Current: pulumi.BoolRef(true),
}, nil)
if err != nil {
return err
}
defaultGetZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
AvailableResourceCreation: pulumi.StringRef("VSwitch"),
}, nil)
if err != nil {
return err
}
defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
VpcName: pulumi.String(name),
CidrBlock: pulumi.String("10.4.0.0/16"),
})
if err != nil {
return err
}
defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
VswitchName: pulumi.String(name),
CidrBlock: pulumi.String("10.4.0.0/24"),
VpcId: defaultNetwork.ID(),
ZoneId: pulumi.String(defaultGetZones.Zones[0].Id),
})
if err != nil {
return err
}
defaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, "default", &ecs.SecurityGroupArgs{
VpcId: defaultNetwork.ID(),
})
if err != nil {
return err
}
defaultNamespace, err := sae.NewNamespace(ctx, "default", &sae.NamespaceArgs{
NamespaceId: pulumi.Sprintf("%v:example%v", _default.Regions[0].Id, defaultInteger.Result),
NamespaceName: pulumi.String(name),
NamespaceDescription: pulumi.String(name),
EnableMicroRegistration: pulumi.Bool(false),
})
if err != nil {
return err
}
_, err = sae.NewApplication(ctx, "default", &sae.ApplicationArgs{
AppDescription: pulumi.String(name),
AppName: pulumi.Sprintf("%v-%v", name, defaultInteger.Result),
NamespaceId: defaultNamespace.ID(),
ImageUrl: pulumi.Sprintf("registry-vpc.%v.aliyuncs.com/sae-demo-image/consumer:1.0", _default.Regions[0].Id),
PackageType: pulumi.String("Image"),
SecurityGroupId: defaultSecurityGroup.ID(),
VpcId: defaultNetwork.ID(),
VswitchId: defaultSwitch.ID(),
Timezone: pulumi.String("Asia/Beijing"),
Replicas: pulumi.Int(5),
Cpu: pulumi.Int(500),
Memory: pulumi.Int(2048),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.random.integer;
import com.pulumi.random.IntegerArgs;
import com.pulumi.alicloud.AlicloudFunctions;
import com.pulumi.alicloud.inputs.GetRegionsArgs;
import com.pulumi.alicloud.inputs.GetZonesArgs;
import com.pulumi.alicloud.vpc.Network;
import com.pulumi.alicloud.vpc.NetworkArgs;
import com.pulumi.alicloud.vpc.Switch;
import com.pulumi.alicloud.vpc.SwitchArgs;
import com.pulumi.alicloud.ecs.SecurityGroup;
import com.pulumi.alicloud.ecs.SecurityGroupArgs;
import com.pulumi.alicloud.sae.Namespace;
import com.pulumi.alicloud.sae.NamespaceArgs;
import com.pulumi.alicloud.sae.Application;
import com.pulumi.alicloud.sae.ApplicationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var config = ctx.config();
final var region = config.get("region").orElse("cn-hangzhou");
final var name = config.get("name").orElse("tf-example");
var defaultInteger = new Integer("defaultInteger", IntegerArgs.builder()
.max(99999)
.min(10000)
.build());
final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()
.current(true)
.build());
final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()
.availableResourceCreation("VSwitch")
.build());
var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()
.vpcName(name)
.cidrBlock("10.4.0.0/16")
.build());
var defaultSwitch = new Switch("defaultSwitch", SwitchArgs.builder()
.vswitchName(name)
.cidrBlock("10.4.0.0/24")
.vpcId(defaultNetwork.id())
.zoneId(defaultGetZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
.build());
var defaultSecurityGroup = new SecurityGroup("defaultSecurityGroup", SecurityGroupArgs.builder()
.vpcId(defaultNetwork.id())
.build());
var defaultNamespace = new Namespace("defaultNamespace", NamespaceArgs.builder()
.namespaceId(String.format("%s:example%s", default_.regions()[0].id(),defaultInteger.result()))
.namespaceName(name)
.namespaceDescription(name)
.enableMicroRegistration(false)
.build());
var defaultApplication = new Application("defaultApplication", ApplicationArgs.builder()
.appDescription(name)
.appName(String.format("%s-%s", name,defaultInteger.result()))
.namespaceId(defaultNamespace.id())
.imageUrl(String.format("registry-vpc.%s.aliyuncs.com/sae-demo-image/consumer:1.0", default_.regions()[0].id()))
.packageType("Image")
.securityGroupId(defaultSecurityGroup.id())
.vpcId(defaultNetwork.id())
.vswitchId(defaultSwitch.id())
.timezone("Asia/Beijing")
.replicas("5")
.cpu("500")
.memory("2048")
.build());
}
}
configuration:
region:
type: string
default: cn-hangzhou
name:
type: string
default: tf-example
resources:
defaultInteger:
type: random:integer
name: default
properties:
max: 99999
min: 10000
defaultNetwork:
type: alicloud:vpc:Network
name: default
properties:
vpcName: ${name}
cidrBlock: 10.4.0.0/16
defaultSwitch:
type: alicloud:vpc:Switch
name: default
properties:
vswitchName: ${name}
cidrBlock: 10.4.0.0/24
vpcId: ${defaultNetwork.id}
zoneId: ${defaultGetZones.zones[0].id}
defaultSecurityGroup:
type: alicloud:ecs:SecurityGroup
name: default
properties:
vpcId: ${defaultNetwork.id}
defaultNamespace:
type: alicloud:sae:Namespace
name: default
properties:
namespaceId: ${default.regions[0].id}:example${defaultInteger.result}
namespaceName: ${name}
namespaceDescription: ${name}
enableMicroRegistration: false
defaultApplication:
type: alicloud:sae:Application
name: default
properties:
appDescription: ${name}
appName: ${name}-${defaultInteger.result}
namespaceId: ${defaultNamespace.id}
imageUrl: registry-vpc.${default.regions[0].id}.aliyuncs.com/sae-demo-image/consumer:1.0
packageType: Image
securityGroupId: ${defaultSecurityGroup.id}
vpcId: ${defaultNetwork.id}
vswitchId: ${defaultSwitch.id}
timezone: Asia/Beijing
replicas: '5'
cpu: '500'
memory: '2048'
variables:
default:
fn::invoke:
function: alicloud:getRegions
arguments:
current: true
defaultGetZones:
fn::invoke:
function: alicloud:getZones
arguments:
availableResourceCreation: VSwitch

Import

Serverless App Engine (SAE) Application can be imported using the id, e.g.

$ pulumi import alicloud:sae/application:Application example <id>

Constructors

Link copied to clipboard
constructor(acrAssumeRoleArn: Output<String>? = null, acrInstanceId: Output<String>? = null, appDescription: Output<String>? = null, appName: Output<String>? = null, autoConfig: Output<Boolean>? = null, autoEnableApplicationScalingRule: Output<Boolean>? = null, batchWaitTime: Output<Int>? = null, changeOrderDesc: Output<String>? = null, command: Output<String>? = null, commandArgs: Output<String>? = null, commandArgsV2s: Output<List<String>>? = null, configMapMountDesc: Output<String>? = null, configMapMountDescV2s: Output<List<ApplicationConfigMapMountDescV2Args>>? = null, cpu: Output<Int>? = null, customHostAlias: Output<String>? = null, customHostAliasV2s: Output<List<ApplicationCustomHostAliasV2Args>>? = null, deploy: Output<Boolean>? = null, edasContainerVersion: Output<String>? = null, enableAhas: Output<String>? = null, enableGreyTagRoute: Output<Boolean>? = null, envs: Output<String>? = null, imagePullSecrets: Output<String>? = null, imageUrl: Output<String>? = null, jarStartArgs: Output<String>? = null, jarStartOptions: Output<String>? = null, jdk: Output<String>? = null, kafkaConfigs: Output<ApplicationKafkaConfigsArgs>? = null, liveness: Output<String>? = null, livenessV2: Output<ApplicationLivenessV2Args>? = null, memory: Output<Int>? = null, microRegistration: Output<String>? = null, minReadyInstanceRatio: Output<Int>? = null, minReadyInstances: Output<Int>? = null, namespaceId: Output<String>? = null, nasConfigs: Output<List<ApplicationNasConfigArgs>>? = null, ossAkId: Output<String>? = null, ossAkSecret: Output<String>? = null, ossMountDescs: Output<String>? = null, ossMountDescsV2s: Output<List<ApplicationOssMountDescsV2Args>>? = null, packageType: Output<String>? = null, packageUrl: Output<String>? = null, packageVersion: Output<String>? = null, php: Output<String>? = null, phpArmsConfigLocation: Output<String>? = null, phpConfig: Output<String>? = null, phpConfigLocation: Output<String>? = null, postStart: Output<String>? = null, postStartV2: Output<ApplicationPostStartV2Args>? = null, preStop: Output<String>? = null, preStopV2: Output<ApplicationPreStopV2Args>? = null, programmingLanguage: Output<String>? = null, pvtzDiscoverySvc: Output<ApplicationPvtzDiscoverySvcArgs>? = null, readiness: Output<String>? = null, readinessV2: Output<ApplicationReadinessV2Args>? = null, replicas: Output<Int>? = null, securityGroupId: Output<String>? = null, slsConfigs: Output<String>? = null, status: Output<String>? = null, tags: Output<Map<String, String>>? = null, terminationGracePeriodSeconds: Output<Int>? = null, timezone: Output<String>? = null, tomcatConfig: Output<String>? = null, tomcatConfigV2: Output<ApplicationTomcatConfigV2Args>? = null, updateStrategy: Output<String>? = null, updateStrategyV2: Output<ApplicationUpdateStrategyV2Args>? = null, vpcId: Output<String>? = null, vswitchId: Output<String>? = null, warStartOptions: Output<String>? = null, webContainer: Output<String>? = null)

Properties

Link copied to clipboard
val acrAssumeRoleArn: Output<String>? = null

The ARN of the RAM role required when pulling images across accounts. Only necessary if the image_url is pointing to an ACR EE instance.

Link copied to clipboard
val acrInstanceId: Output<String>? = null

The ID of the ACR EE instance. Only necessary if the image_url is pointing to an ACR EE instance.

Link copied to clipboard
val appDescription: Output<String>? = null

Application description information. No more than 1024 characters. NOTE: From version 1.211.0, app_description can be modified.

Link copied to clipboard
val appName: Output<String>? = null

Application Name. Combinations of numbers, letters, and dashes (-) are allowed. It must start with a letter and the maximum length is 36 characters.

Link copied to clipboard
val autoConfig: Output<Boolean>? = null

The auto config. Valid values: true, false.

Link copied to clipboard

The auto enable application scaling rule. Valid values: true, false.

Link copied to clipboard
val batchWaitTime: Output<Int>? = null

The batch wait time.

Link copied to clipboard
val changeOrderDesc: Output<String>? = null

The change order desc.

Link copied to clipboard
val command: Output<String>? = null

Mirror start command. The command must be an executable object in the container. For example: sleep. Setting this command will cause the original startup command of the mirror to become invalid.

Link copied to clipboard
val commandArgs: Output<String>? = null

Mirror startup command parameters. The parameters required for the above start command. For example: 1d. NOTE: Field command_args has been deprecated from provider version 1.211.0. New field command_args_v2 instead.

Link copied to clipboard
val commandArgsV2s: Output<List<String>>? = null

The parameters of the image startup command.

Link copied to clipboard
val configMapMountDesc: Output<String>? = null

ConfigMap mount description. NOTE: Field config_map_mount_desc has been deprecated from provider version 1.211.0. New field config_map_mount_desc_v2 instead.

Link copied to clipboard

The description of the ConfigMap that is mounted to the application. A ConfigMap that is created on the ConfigMaps page of a namespace is used to inject configurations into containers. See config_map_mount_desc_v2 below.

Link copied to clipboard
val cpu: Output<Int>? = null

The CPU required for each instance, in millicores, cannot be 0. Valid values: 500, 1000, 2000, 4000, 8000, 16000, 32000.

Link copied to clipboard
val customHostAlias: Output<String>? = null

Custom host mapping in the container. For example: {`hostName`:`samplehost`,`ip`:`127.0.0.1`}. NOTE: Field custom_host_alias has been deprecated from provider version 1.211.0. New field custom_host_alias_v2 instead.

Link copied to clipboard

The custom mapping between the hostname and IP address in the container. See custom_host_alias_v2 below.

Link copied to clipboard
val deploy: Output<Boolean>? = null

The deploy. Valid values: true, false.

Link copied to clipboard
val edasContainerVersion: Output<String>? = null

The operating environment used by the Pandora application.

Link copied to clipboard
val enableAhas: Output<String>? = null

The enable ahas. Valid values: true, false.

Link copied to clipboard
val enableGreyTagRoute: Output<Boolean>? = null

The enable grey tag route. Default value: false. Valid values:

Link copied to clipboard
val envs: Output<String>? = null

Container environment variable parameters. For example,[{"name":"envtmp","value":"0"}]. The value description is as follows:

Link copied to clipboard
val imagePullSecrets: Output<String>? = null

The ID of the corresponding Secret.

Link copied to clipboard
val imageUrl: Output<String>? = null

Mirror address. Only Image type applications can configure the mirror address.

Link copied to clipboard
val jarStartArgs: Output<String>? = null

The JAR package starts application parameters. Application default startup command: $JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs.

Link copied to clipboard
val jarStartOptions: Output<String>? = null

The JAR package starts the application option. Application default startup command: $JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs.

Link copied to clipboard
val jdk: Output<String>? = null

The JDK version that the deployment package depends on. Image type applications are not supported.

Link copied to clipboard

The logging configurations of ApsaraMQ for Kafka. See kafka_configs below.

Link copied to clipboard
val liveness: Output<String>? = null

Container health check. Containers that fail the health check will be shut down and restored. Currently, only the method of issuing commands in the container is supported. NOTE: Field liveness has been deprecated from provider version 1.211.0. New field liveness_v2 instead.

Link copied to clipboard

The liveness check settings of the container. See liveness_v2 below.

Link copied to clipboard
val memory: Output<Int>? = null

The memory required for each instance, in MB, cannot be 0. One-to-one correspondence with CPU. Valid values: 1024, 2048, 4096, 8192, 12288, 16384, 24576, 32768, 65536, 131072.

Link copied to clipboard
val microRegistration: Output<String>? = null

Select the Nacos registry. Valid values: 0, 1, 2.

Link copied to clipboard
val minReadyInstanceRatio: Output<Int>? = null

Minimum Survival Instance Percentage. NOTE: When min_ready_instances and min_ready_instance_ratio are passed at the same time, and the value of min_ready_instance_ratio is not -1, the min_ready_instance_ratio parameter shall prevail. Assuming that min_ready_instances is 5 and min_ready_instance_ratio is 50, 50 is used to calculate the minimum number of surviving instances.The value description is as follows:

Link copied to clipboard
val minReadyInstances: Output<Int>? = null

The Minimum Available Instance. On the Change Had Promised during the Available Number of Instances to Be.

Link copied to clipboard
val namespaceId: Output<String>? = null

SAE namespace ID. Only namespaces whose names are lowercase letters and dashes (-) are supported, and must start with a letter. The namespace can be obtained by calling the DescribeNamespaceList interface.

Link copied to clipboard

The configurations for mounting the NAS file system. See nas_configs below.

Link copied to clipboard
val ossAkId: Output<String>? = null

OSS AccessKey ID.

Link copied to clipboard
val ossAkSecret: Output<String>? = null

OSS AccessKey Secret.

Link copied to clipboard
val ossMountDescs: Output<String>? = null

OSS mount description information. NOTE: Field oss_mount_descs has been deprecated from provider version 1.211.0. New field oss_mount_descs_v2 instead.

Link copied to clipboard

The description of the mounted Object Storage Service (OSS) bucket. See oss_mount_descs_v2 below.

Link copied to clipboard
val packageType: Output<String>? = null

Application package type. Valid values: FatJar, War, Image, PhpZip, IMAGE_PHP_5_4, IMAGE_PHP_5_4_ALPINE, IMAGE_PHP_5_5, IMAGE_PHP_5_5_ALPINE, IMAGE_PHP_5_6, IMAGE_PHP_5_6_ALPINE, IMAGE_PHP_7_0, IMAGE_PHP_7_0_ALPINE, IMAGE_PHP_7_1, IMAGE_PHP_7_1_ALPINE, IMAGE_PHP_7_2, IMAGE_PHP_7_2_ALPINE, IMAGE_PHP_7_3, IMAGE_PHP_7_3_ALPINE, PythonZip.

Link copied to clipboard
val packageUrl: Output<String>? = null

Deployment package address. Only FatJar or War type applications can configure the deployment package address.

Link copied to clipboard
val packageVersion: Output<String>? = null

The version number of the deployment package. Required when the Package Type is War and FatJar.

Link copied to clipboard
val php: Output<String>? = null

The Php environment.

Link copied to clipboard
val phpArmsConfigLocation: Output<String>? = null

The PHP application monitors the mount path, and you need to ensure that the PHP server will load the configuration file of this path. You don't need to pay attention to the configuration content, SAE will automatically render the correct configuration file.

Link copied to clipboard
val phpConfig: Output<String>? = null

PHP configuration file content.

Link copied to clipboard
val phpConfigLocation: Output<String>? = null

PHP application startup configuration mount path, you need to ensure that the PHP server will start using this configuration file.

Link copied to clipboard
val postStart: Output<String>? = null

Execute the script after startup, the format is like: {exec:{command:`cat`,"/etc/group"}}. NOTE: Field post_start has been deprecated from provider version 1.211.0. New field post_start_v2 instead.

Link copied to clipboard

The script that is run immediately after the container is started. See post_start_v2 below.

Link copied to clipboard
val preStop: Output<String>? = null

Execute the script before stopping, the format is like: {exec:{command:`cat`,"/etc/group"}}. NOTE: Field pre_stop has been deprecated from provider version 1.211.0. New field pre_stop_v2 instead.

Link copied to clipboard
val preStopV2: Output<ApplicationPreStopV2Args>? = null

The script that is run before the container is stopped. See pre_stop_v2 below.

Link copied to clipboard
val programmingLanguage: Output<String>? = null

The programming language that is used to create the application. Valid values: java, php, other.

Link copied to clipboard

The configurations of Kubernetes Service-based service registration and discovery. See pvtz_discovery_svc below.

Link copied to clipboard
val readiness: Output<String>? = null

Application startup status checks, containers that fail multiple health checks will be shut down and restarted. Containers that do not pass the health check will not receive SLB traffic. For example: {exec:{command:`sh`,"-c","cat /home/admin/start.sh"},initialDelaySeconds:30,periodSeconds:30,"timeoutSeconds ":2}. Valid values: command, initialDelaySeconds, periodSeconds, timeoutSeconds. NOTE: Field readiness has been deprecated from provider version 1.211.0. New field readiness_v2 instead.

Link copied to clipboard

The readiness check settings of the container. If a container fails this health check multiple times, the container is stopped and then restarted. See readiness_v2 below.

Link copied to clipboard
val replicas: Output<Int>? = null

Initial number of instances.

Link copied to clipboard
val securityGroupId: Output<String>? = null

Security group ID.

Link copied to clipboard
val slsConfigs: Output<String>? = null

Configuration for log collection to SLS. Valid parameter descriptions are as follows:

Link copied to clipboard
val status: Output<String>? = null

The status of the resource. Valid values: RUNNING, STOPPED, UNKNOWN.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

A mapping of tags to assign to the resource.

Link copied to clipboard
val terminationGracePeriodSeconds: Output<Int>? = null

Graceful offline timeout, the default is 30, the unit is seconds. The value range is 1~60. Valid values: 1,60.

Link copied to clipboard
val timezone: Output<String>? = null

Time zone. Default value: Asia/Shanghai.

Link copied to clipboard
val tomcatConfig: Output<String>? = null

Tomcat file configuration, set to "{}" means to delete the configuration: useDefaultConfig: Whether to use a custom configuration, if it is true, it means that the custom configuration is not used; if it is false, it means that the custom configuration is used. If you do not use custom configuration, the following parameter configuration will not take effect. contextInputType: Select the access path of the application. war: No need to fill in the custom path, the access path of the application is the WAR package name. root: No need to fill in the custom path, the access path of the application is /. custom: You need to fill in the custom path in the custom path below. contextPath: custom path, this parameter only needs to be configured when the contextInputType type is custom. httpPort: The port range is 1024~65535. Ports less than 1024 need Root permission to operate. Because the container is configured with Admin permissions, please fill in a port greater than 1024. If not configured, the default is 8080. maxThreads: Configure the number of connections in the connection pool, the default size is 400. uriEncoding: Tomcat encoding format, including UTF-8, ISO-8859-1, GBK and GB2312. If not set, the default is ISO-8859-1. useBodyEncoding: Whether to use BodyEncoding for URL. Valid values: contextInputType, contextPath, httpPort, maxThreads, uriEncoding, useBodyEncoding, useDefaultConfig. NOTE: Field tomcat_config has been deprecated from provider version 1.211.0. New field tomcat_config_v2 instead.

Link copied to clipboard

The Tomcat configuration. See tomcat_config_v2 below.

Link copied to clipboard
val updateStrategy: Output<String>? = null

The update strategy. NOTE: Field update_strategy has been deprecated from provider version 1.211.0. New field update_strategy_v2 instead.

Link copied to clipboard

The release policy. See update_strategy_v2 below.

Link copied to clipboard
val vpcId: Output<String>? = null

The vpc id.

Link copied to clipboard
val vswitchId: Output<String>? = null

The vswitch id. NOTE: From version 1.211.0, vswitch_id can be modified.

Link copied to clipboard
val warStartOptions: Output<String>? = null

WAR package launch application option. Application default startup command: java $JAVA_OPTS $CATALINA_OPTS -Options org.apache.catalina.startup.Bootstrap "$@" start.

Link copied to clipboard
val webContainer: Output<String>? = null

The version of tomcat that the deployment package depends on. Image type applications are not supported.

Functions

Link copied to clipboard
open override fun toJava(): ApplicationArgs