multiple-languages/dotnet/AlibabaCloud.SDK.ROS.CDK.Eci/AlibabaCloud/SDK/ROS/CDK/Eci/RosContainerGroup.cs (6,438 lines of code) (raw):
using Amazon.JSII.Runtime.Deputy;
#pragma warning disable CS0672,CS0809,CS1591
namespace AlibabaCloud.SDK.ROS.CDK.Eci
{
/// <summary>This class is a base encapsulation around the ROS resource type `ALIYUN::ECI::ContainerGroup`, which is used to create a container group.</summary>
/// <remarks>
/// A container group is an elastic container instance.
///
/// <strong>Note</strong>: This class does not contain additional functions, so it is recommended to use the `ContainerGroup` class instead of this class for a more convenient development experience.
/// See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-eci-containergroup
/// </remarks>
[JsiiClass(nativeType: typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup", parametersJson: "[{\"docs\":{\"summary\":\"- scope in which this resource is defined.\"},\"name\":\"scope\",\"type\":{\"fqn\":\"@alicloud/ros-cdk-core.Construct\"}},{\"docs\":{\"summary\":\"- scoped id of the resource.\"},\"name\":\"id\",\"type\":{\"primitive\":\"string\"}},{\"docs\":{\"summary\":\"- resource properties.\"},\"name\":\"props\",\"type\":{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroupProps\"}},{\"name\":\"enableResourcePropertyConstraint\",\"type\":{\"primitive\":\"boolean\"}}]")]
public class RosContainerGroup : AlibabaCloud.SDK.ROS.CDK.Core.RosResource
{
/// <param name="scope">- scope in which this resource is defined.</param>
/// <param name="id">- scoped id of the resource.</param>
/// <param name="props">- resource properties.</param>
public RosContainerGroup(AlibabaCloud.SDK.ROS.CDK.Core.Construct scope, string id, AlibabaCloud.SDK.ROS.CDK.Eci.IRosContainerGroupProps props, bool enableResourcePropertyConstraint): base(_MakeDeputyProps(scope, id, props, enableResourcePropertyConstraint))
{
}
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveInlining)]
private static DeputyProps _MakeDeputyProps(AlibabaCloud.SDK.ROS.CDK.Core.Construct scope, string id, AlibabaCloud.SDK.ROS.CDK.Eci.IRosContainerGroupProps props, bool enableResourcePropertyConstraint)
{
return new DeputyProps(new object?[]{scope, id, props, enableResourcePropertyConstraint});
}
/// <summary>Used by jsii to construct an instance of this class from a Javascript-owned object reference</summary>
/// <param name="reference">The Javascript-owned object reference</param>
[System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
protected RosContainerGroup(ByRefValue reference): base(reference)
{
}
/// <summary>Used by jsii to construct an instance of this class from DeputyProps</summary>
/// <param name="props">The deputy props</param>
[System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
protected RosContainerGroup(DeputyProps props): base(props)
{
}
[JsiiMethod(name: "renderProperties", returnsJson: "{\"type\":{\"collection\":{\"elementtype\":{\"primitive\":\"any\"},\"kind\":\"map\"}}}", parametersJson: "[{\"name\":\"props\",\"type\":{\"collection\":{\"elementtype\":{\"primitive\":\"any\"},\"kind\":\"map\"}}}]")]
protected override System.Collections.Generic.IDictionary<string, object> RenderProperties(System.Collections.Generic.IDictionary<string, object> props)
{
return InvokeInstanceMethod<System.Collections.Generic.IDictionary<string, object>>(new System.Type[]{typeof(System.Collections.Generic.IDictionary<string, object>)}, new object[]{props})!;
}
/// <summary>The resource type name for this resource class.</summary>
[JsiiProperty(name: "ROS_RESOURCE_TYPE_NAME", typeJson: "{\"primitive\":\"string\"}")]
public static string ROS_RESOURCE_TYPE_NAME
{
get;
}
= GetStaticProperty<string>(typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup))!;
/// <remarks>
/// <strong>Attribute</strong>: ContainerGroupId: The ID of the container group.
/// </remarks>
[JsiiProperty(name: "attrContainerGroupId", typeJson: "{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}")]
public virtual AlibabaCloud.SDK.ROS.CDK.Core.IResolvable AttrContainerGroupId
{
get => GetInstanceProperty<AlibabaCloud.SDK.ROS.CDK.Core.IResolvable>()!;
}
/// <remarks>
/// <strong>Attribute</strong>: ContainerGroupName: The name of the container group.
/// </remarks>
[JsiiProperty(name: "attrContainerGroupName", typeJson: "{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}")]
public virtual AlibabaCloud.SDK.ROS.CDK.Core.IResolvable AttrContainerGroupName
{
get => GetInstanceProperty<AlibabaCloud.SDK.ROS.CDK.Core.IResolvable>()!;
}
/// <remarks>
/// <strong>Attribute</strong>: EniInstanceId: ENI instance ID.
/// </remarks>
[JsiiProperty(name: "attrEniInstanceId", typeJson: "{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}")]
public virtual AlibabaCloud.SDK.ROS.CDK.Core.IResolvable AttrEniInstanceId
{
get => GetInstanceProperty<AlibabaCloud.SDK.ROS.CDK.Core.IResolvable>()!;
}
/// <remarks>
/// <strong>Attribute</strong>: InternetIp: Internet IP.
/// </remarks>
[JsiiProperty(name: "attrInternetIp", typeJson: "{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}")]
public virtual AlibabaCloud.SDK.ROS.CDK.Core.IResolvable AttrInternetIp
{
get => GetInstanceProperty<AlibabaCloud.SDK.ROS.CDK.Core.IResolvable>()!;
}
/// <remarks>
/// <strong>Attribute</strong>: IntranetIp: Intranet IP.
/// </remarks>
[JsiiProperty(name: "attrIntranetIp", typeJson: "{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}")]
public virtual AlibabaCloud.SDK.ROS.CDK.Core.IResolvable AttrIntranetIp
{
get => GetInstanceProperty<AlibabaCloud.SDK.ROS.CDK.Core.IResolvable>()!;
}
/// <remarks>
/// <strong>Attribute</strong>: Ipv6Address: Ipv6 address.
/// </remarks>
[JsiiProperty(name: "attrIpv6Address", typeJson: "{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}")]
public virtual AlibabaCloud.SDK.ROS.CDK.Core.IResolvable AttrIpv6Address
{
get => GetInstanceProperty<AlibabaCloud.SDK.ROS.CDK.Core.IResolvable>()!;
}
/// <remarks>
/// <strong>Attribute</strong>: RegionId: The ID of the region in which the instance resides.
/// </remarks>
[JsiiProperty(name: "attrRegionId", typeJson: "{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}")]
public virtual AlibabaCloud.SDK.ROS.CDK.Core.IResolvable AttrRegionId
{
get => GetInstanceProperty<AlibabaCloud.SDK.ROS.CDK.Core.IResolvable>()!;
}
/// <remarks>
/// <strong>Attribute</strong>: SecurityGroupId: The ID of the security group to which the instance belongs. Instances in the same security group can access one another.
/// </remarks>
[JsiiProperty(name: "attrSecurityGroupId", typeJson: "{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}")]
public virtual AlibabaCloud.SDK.ROS.CDK.Core.IResolvable AttrSecurityGroupId
{
get => GetInstanceProperty<AlibabaCloud.SDK.ROS.CDK.Core.IResolvable>()!;
}
/// <remarks>
/// <strong>Attribute</strong>: VSwitchId: The ID of the VSwitch. Currently, ECI instances can only be deployed in VPCs.
/// </remarks>
[JsiiProperty(name: "attrVSwitchId", typeJson: "{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}")]
public virtual AlibabaCloud.SDK.ROS.CDK.Core.IResolvable AttrVSwitchId
{
get => GetInstanceProperty<AlibabaCloud.SDK.ROS.CDK.Core.IResolvable>()!;
}
/// <remarks>
/// <strong>Attribute</strong>: ZoneId: The ID of the zone in which the instance resides. If you leave the parameter blank, the system assigns a zone for you. The default value is blank.
/// </remarks>
[JsiiProperty(name: "attrZoneId", typeJson: "{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}")]
public virtual AlibabaCloud.SDK.ROS.CDK.Core.IResolvable AttrZoneId
{
get => GetInstanceProperty<AlibabaCloud.SDK.ROS.CDK.Core.IResolvable>()!;
}
[JsiiProperty(name: "rosProperties", typeJson: "{\"collection\":{\"elementtype\":{\"primitive\":\"any\"},\"kind\":\"map\"}}")]
protected override System.Collections.Generic.IDictionary<string, object> RosProperties
{
get => GetInstanceProperty<System.Collections.Generic.IDictionary<string, object>>()!;
}
/// <remarks>
/// <strong>Property</strong>: container: The containers that constitute the container group.
/// </remarks>
[JsiiProperty(name: "container", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.ContainerProperty\"}]}},\"kind\":\"array\"}}]}}")]
public virtual object Container
{
get => GetInstanceProperty<object>()!;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IContainerProperty cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IContainerProperty).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IContainerProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: containerGroupName: The name of the container group.
/// The length is [2,128] English lowercase letters, numbers or hyphens (-), cannot begin or end with a hyphens.
/// </remarks>
[JsiiProperty(name: "containerGroupName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public virtual object ContainerGroupName
{
get => GetInstanceProperty<object>()!;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
[JsiiProperty(name: "enableResourcePropertyConstraint", typeJson: "{\"primitive\":\"boolean\"}")]
public virtual bool EnableResourcePropertyConstraint
{
get => GetInstanceProperty<bool>()!;
set => SetInstanceProperty(value);
}
/// <remarks>
/// <strong>Property</strong>: acrRegistryInfo: Enterprise Edition access credential configuration information.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "acrRegistryInfo", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.AcrRegistryInfoProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public virtual object? AcrRegistryInfo
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IAcrRegistryInfoProperty cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IAcrRegistryInfoProperty).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IAcrRegistryInfoProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: activeDeadlineSeconds: The validity period in seconds.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "activeDeadlineSeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? ActiveDeadlineSeconds
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: autoMatchImageCache: Specifies whether to automatically match the image cache.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "autoMatchImageCache", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? AutoMatchImageCache
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case bool cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: bool, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: cpu: CPU size
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "cpu", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? Cpu
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: dnsConfig: The information about DNS configurations.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "dnsConfig", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.DnsConfigProperty\"}]}}", isOptional: true)]
public virtual object? DnsConfig
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IDnsConfigProperty cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IDnsConfigProperty).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: eipInstanceId: Elastic IP ID
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "eipInstanceId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? EipInstanceId
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: hostAliase: Customize the hostname mapping of a container inside the pod
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "hostAliase", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.HostAliaseProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public virtual object? HostAliase
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IHostAliaseProperty cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IHostAliaseProperty).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IHostAliaseProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: imageRegistryCredential: The information that you need to log on to the container image repository, including the server address, username, and password.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "imageRegistryCredential", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.ImageRegistryCredentialProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public virtual object? ImageRegistryCredential
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IImageRegistryCredentialProperty cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IImageRegistryCredentialProperty).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IImageRegistryCredentialProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: imageSnapshotId: Image cache ID or snapshot ID.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "imageSnapshotId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? ImageSnapshotId
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: initContainer: The containers that constitute the container group for initializing.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "initContainer", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public virtual object? InitContainer
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerProperty cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerProperty).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: instanceType: The type of the ECS instance.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "instanceType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? InstanceType
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: ipv6AddressCount: The number of IPv6 addresses.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "ipv6AddressCount", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? Ipv6AddressCount
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: memory: memory size
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "memory", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? Memory
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: ramRoleName: The RAM role that the container group assumes. ECI and ECS share the same RAM role.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "ramRoleName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? RamRoleName
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: resourceGroupId: Resource group id.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "resourceGroupId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? ResourceGroupId
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: restartPolicy: The policy for restarting the instance. Default value: Always.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "restartPolicy", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? RestartPolicy
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: securityContextSysctl: ECI Sysctl is valid for every container in ECI.
/// Currently only two Sysctl keyNames are supported:
/// Kernel.shm_rmid_forced
/// Kernel.msgmax
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "securityContextSysctl", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.SecurityContextSysctlProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public virtual object? SecurityContextSysctl
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.ISecurityContextSysctlProperty cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.ISecurityContextSysctlProperty).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.ISecurityContextSysctlProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: securityGroupId: The ID of the security group to which the instance belongs. Instances in the same security group can access one another.
/// If no security group is specified, the system automatically uses the default security group in the region you select.
/// If you do not have a default security group in this region, the system automatically creates a default security group and adds the container protocol and port you declared to the inbound direction rules of this security group.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "securityGroupId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? SecurityGroupId
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: slsEnable: Enable user log collection. The default is False.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "slsEnable", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? SlsEnable
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case bool cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: bool, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: spotPriceLimit: Set the hourly maximum price of the instance. It supports a maximum of 3 decimal places. It takes effect when the value of the parameter SpotStrategy is SpotWithPriceLimit.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "spotPriceLimit", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? SpotPriceLimit
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: spotStrategy: Instance preemption strategy.
/// Ranges:
/// NoSpot (default): normal pay-as-you-go instances.
/// SpotWithPriceLimit: Preemptive instance that sets a cap price.
/// SpotAsPriceGo: The system automatically bids, following the current market actual price.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "spotStrategy", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? SpotStrategy
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: tag: The list of container group tags in the form of key\/value pairs. You can define a maximum of 20 tags for each container group.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "tag", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-core.RosTag\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public virtual object? Tag
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IRosTag cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IRosTag).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IRosTag).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: terminationGracePeriodSeconds: The buffer time for the program to handle operations before it is stopped.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "terminationGracePeriodSeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? TerminationGracePeriodSeconds
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: volume: The data volume. You can specify a maximum of 20 data volumes.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "volume", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.VolumeProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public virtual object? Volume
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IVolumeProperty cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IVolumeProperty).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IVolumeProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: vSwitchId: The ID of the specified VSwitch.
/// If no switch is specified, the system automatically uses the default switch in the default VPC in the selected region.
/// If no default VPC or default switch is available in the region, the system automatically creates a default VPC and a default switch
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "vSwitchId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? VSwitchId
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
/// <remarks>
/// <strong>Property</strong>: zoneId: The ID of the zone in which the instance resides. If you leave the parameter blank, the system assigns a zone for you. The default value is blank.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "zoneId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public virtual object? ZoneId
{
get => GetInstanceProperty<object?>();
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
SetInstanceProperty(value);
}
}
[JsiiInterface(nativeType: typeof(IAcrRegistryInfoProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.AcrRegistryInfoProperty")]
public interface IAcrRegistryInfoProperty
{
/// <remarks>
/// <strong>Property</strong>: instanceId: Instance id
/// </remarks>
[JsiiProperty(name: "instanceId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
object InstanceId
{
get;
}
/// <remarks>
/// <strong>Property</strong>: domain: domain
/// </remarks>
[JsiiProperty(name: "domain", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Domain
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: instanceName: instance name
/// </remarks>
[JsiiProperty(name: "instanceName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? InstanceName
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: regionId: The region to which it belongs. Optional, the default is the local region
/// </remarks>
[JsiiProperty(name: "regionId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? RegionId
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(IAcrRegistryInfoProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.AcrRegistryInfoProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IAcrRegistryInfoProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: instanceId: Instance id
/// </remarks>
[JsiiProperty(name: "instanceId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object InstanceId
{
get => GetInstanceProperty<object>()!;
}
/// <remarks>
/// <strong>Property</strong>: domain: domain
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "domain", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Domain
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: instanceName: instance name
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "instanceName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? InstanceName
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: regionId: The region to which it belongs. Optional, the default is the local region
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "regionId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? RegionId
{
get => GetInstanceProperty<object?>();
}
}
}
#pragma warning disable CS8618
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.AcrRegistryInfoProperty")]
public class AcrRegistryInfoProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IAcrRegistryInfoProperty
{
private object _instanceId;
/// <remarks>
/// <strong>Property</strong>: instanceId: Instance id
/// </remarks>
[JsiiProperty(name: "instanceId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object InstanceId
{
get => _instanceId;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_instanceId = value;
}
}
private object? _domain;
/// <remarks>
/// <strong>Property</strong>: domain: domain
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "domain", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Domain
{
get => _domain;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case string cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_domain = value;
}
}
private object? _instanceName;
/// <remarks>
/// <strong>Property</strong>: instanceName: instance name
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "instanceName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? InstanceName
{
get => _instanceName;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_instanceName = value;
}
}
private object? _regionId;
/// <remarks>
/// <strong>Property</strong>: regionId: The region to which it belongs. Optional, the default is the local region
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "regionId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? RegionId
{
get => _regionId;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_regionId = value;
}
}
}
[JsiiInterface(nativeType: typeof(IConfigFileVolumeConfigFileToPathProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.ConfigFileVolumeConfigFileToPathProperty")]
public interface IConfigFileVolumeConfigFileToPathProperty
{
/// <remarks>
/// <strong>Property</strong>: path: The relative path in the configuration file. You can specify a location of a directory relative to another directory.
/// </remarks>
[JsiiProperty(name: "path", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
object Path
{
get;
}
/// <remarks>
/// <strong>Property</strong>: content: The content of the configuration file. Maximum size: 32 KB.
/// </remarks>
[JsiiProperty(name: "content", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Content
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(IConfigFileVolumeConfigFileToPathProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.ConfigFileVolumeConfigFileToPathProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IConfigFileVolumeConfigFileToPathProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: path: The relative path in the configuration file. You can specify a location of a directory relative to another directory.
/// </remarks>
[JsiiProperty(name: "path", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object Path
{
get => GetInstanceProperty<object>()!;
}
/// <remarks>
/// <strong>Property</strong>: content: The content of the configuration file. Maximum size: 32 KB.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "content", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Content
{
get => GetInstanceProperty<object?>();
}
}
}
#pragma warning disable CS8618
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.ConfigFileVolumeConfigFileToPathProperty")]
public class ConfigFileVolumeConfigFileToPathProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IConfigFileVolumeConfigFileToPathProperty
{
private object _path;
/// <remarks>
/// <strong>Property</strong>: path: The relative path in the configuration file. You can specify a location of a directory relative to another directory.
/// </remarks>
[JsiiProperty(name: "path", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object Path
{
get => _path;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_path = value;
}
}
private object? _content;
/// <remarks>
/// <strong>Property</strong>: content: The content of the configuration file. Maximum size: 32 KB.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "content", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Content
{
get => _content;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_content = value;
}
}
}
[JsiiInterface(nativeType: typeof(IContainerProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.ContainerProperty")]
public interface IContainerProperty
{
/// <remarks>
/// <strong>Property</strong>: image: The container image.
/// </remarks>
[JsiiProperty(name: "image", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
object Image
{
get;
}
/// <remarks>
/// <strong>Property</strong>: name: The name of the container.
/// </remarks>
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
object Name
{
get;
}
/// <remarks>
/// <strong>Property</strong>: arg: The arguments passed to the commands. A maximum of 10 arguments are supported.
/// </remarks>
[JsiiProperty(name: "arg", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Arg
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: command: The list of commands that you want to send to a container to run. You can specify a maximum of 1 commands. Maximum length per string: 256 characters.
/// </remarks>
[JsiiProperty(name: "command", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Command
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: cpu: The number of vCPUs assigned to the container. Unit: vCPUs (cores).
/// </remarks>
[JsiiProperty(name: "cpu", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Cpu
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: environmentVar: Environment variables in the operating system of the container. Each environment variable is a key\/value pair, and both the key and value are strings. A maximum of 100 environment variables are supported. The key indicates the name of a variable. The value indicates the value of the variable.
/// </remarks>
[JsiiProperty(name: "environmentVar", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.EnvironmentVarProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? EnvironmentVar
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: imagePullPolicy: The image pull policy. You can use it to pull the image from the image repository.
/// </remarks>
[JsiiProperty(name: "imagePullPolicy", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? ImagePullPolicy
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: livenessProbe: The liveness probe.
/// </remarks>
[JsiiProperty(name: "livenessProbe", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.LivenessProbeProperty\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? LivenessProbe
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: memory: The memory assigned to the container. Unit: GiB.
/// </remarks>
[JsiiProperty(name: "memory", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Memory
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: port: The open ports and protocols. You can set a maximum of 100 ports.
/// </remarks>
[JsiiProperty(name: "port", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.PortProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Port
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: readinessProbe: The readiness probe.
/// </remarks>
[JsiiProperty(name: "readinessProbe", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.ReadinessProbeProperty\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? ReadinessProbe
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: securityContext: The security context of the container group.
/// </remarks>
[JsiiProperty(name: "securityContext", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.SecurityContextProperty\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? SecurityContext
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: stdin: undefined
/// </remarks>
[JsiiProperty(name: "stdin", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Stdin
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: stdinOnce: undefined
/// </remarks>
[JsiiProperty(name: "stdinOnce", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? StdinOnce
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: tty: undefined
/// </remarks>
[JsiiProperty(name: "tty", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Tty
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: volumeMount: The number of volumes that are mounted to the container. A maximum of 16 volumes are supported.
/// </remarks>
[JsiiProperty(name: "volumeMount", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.VolumeMountProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? VolumeMount
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: workingDir: The working directory for the container.
/// </remarks>
[JsiiProperty(name: "workingDir", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? WorkingDir
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(IContainerProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.ContainerProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IContainerProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: image: The container image.
/// </remarks>
[JsiiProperty(name: "image", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object Image
{
get => GetInstanceProperty<object>()!;
}
/// <remarks>
/// <strong>Property</strong>: name: The name of the container.
/// </remarks>
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object Name
{
get => GetInstanceProperty<object>()!;
}
/// <remarks>
/// <strong>Property</strong>: arg: The arguments passed to the commands. A maximum of 10 arguments are supported.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "arg", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Arg
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: command: The list of commands that you want to send to a container to run. You can specify a maximum of 1 commands. Maximum length per string: 256 characters.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "command", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Command
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: cpu: The number of vCPUs assigned to the container. Unit: vCPUs (cores).
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "cpu", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Cpu
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: environmentVar: Environment variables in the operating system of the container. Each environment variable is a key\/value pair, and both the key and value are strings. A maximum of 100 environment variables are supported. The key indicates the name of a variable. The value indicates the value of the variable.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "environmentVar", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.EnvironmentVarProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? EnvironmentVar
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: imagePullPolicy: The image pull policy. You can use it to pull the image from the image repository.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "imagePullPolicy", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? ImagePullPolicy
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: livenessProbe: The liveness probe.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "livenessProbe", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.LivenessProbeProperty\"}]}}", isOptional: true)]
public object? LivenessProbe
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: memory: The memory assigned to the container. Unit: GiB.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "memory", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Memory
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: port: The open ports and protocols. You can set a maximum of 100 ports.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "port", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.PortProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Port
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: readinessProbe: The readiness probe.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "readinessProbe", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.ReadinessProbeProperty\"}]}}", isOptional: true)]
public object? ReadinessProbe
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: securityContext: The security context of the container group.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "securityContext", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.SecurityContextProperty\"}]}}", isOptional: true)]
public object? SecurityContext
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: stdin: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "stdin", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Stdin
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: stdinOnce: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "stdinOnce", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? StdinOnce
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: tty: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "tty", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Tty
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: volumeMount: The number of volumes that are mounted to the container. A maximum of 16 volumes are supported.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "volumeMount", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.VolumeMountProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? VolumeMount
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: workingDir: The working directory for the container.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "workingDir", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? WorkingDir
{
get => GetInstanceProperty<object?>();
}
}
}
#pragma warning disable CS8618
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.ContainerProperty")]
public class ContainerProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IContainerProperty
{
private object _image;
/// <remarks>
/// <strong>Property</strong>: image: The container image.
/// </remarks>
[JsiiProperty(name: "image", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object Image
{
get => _image;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_image = value;
}
}
private object _name;
/// <remarks>
/// <strong>Property</strong>: name: The name of the container.
/// </remarks>
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object Name
{
get => _name;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_name = value;
}
}
private object? _arg;
/// <remarks>
/// <strong>Property</strong>: arg: The arguments passed to the commands. A maximum of 10 arguments are supported.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "arg", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Arg
{
get => _arg;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case string cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_arg = value;
}
}
private object? _command;
/// <remarks>
/// <strong>Property</strong>: command: The list of commands that you want to send to a container to run. You can specify a maximum of 1 commands. Maximum length per string: 256 characters.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "command", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Command
{
get => _command;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case string cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_command = value;
}
}
private object? _cpu;
/// <remarks>
/// <strong>Property</strong>: cpu: The number of vCPUs assigned to the container. Unit: vCPUs (cores).
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "cpu", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Cpu
{
get => _cpu;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_cpu = value;
}
}
private object? _environmentVar;
/// <remarks>
/// <strong>Property</strong>: environmentVar: Environment variables in the operating system of the container. Each environment variable is a key\/value pair, and both the key and value are strings. A maximum of 100 environment variables are supported. The key indicates the name of a variable. The value indicates the value of the variable.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "environmentVar", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.EnvironmentVarProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? EnvironmentVar
{
get => _environmentVar;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IEnvironmentVarProperty cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IEnvironmentVarProperty).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IEnvironmentVarProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_environmentVar = value;
}
}
private object? _imagePullPolicy;
/// <remarks>
/// <strong>Property</strong>: imagePullPolicy: The image pull policy. You can use it to pull the image from the image repository.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "imagePullPolicy", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? ImagePullPolicy
{
get => _imagePullPolicy;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_imagePullPolicy = value;
}
}
private object? _livenessProbe;
/// <remarks>
/// <strong>Property</strong>: livenessProbe: The liveness probe.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "livenessProbe", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.LivenessProbeProperty\"}]}}", isOptional: true)]
public object? LivenessProbe
{
get => _livenessProbe;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.ILivenessProbeProperty cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.ILivenessProbeProperty).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_livenessProbe = value;
}
}
private object? _memory;
/// <remarks>
/// <strong>Property</strong>: memory: The memory assigned to the container. Unit: GiB.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "memory", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Memory
{
get => _memory;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_memory = value;
}
}
private object? _port;
/// <remarks>
/// <strong>Property</strong>: port: The open ports and protocols. You can set a maximum of 100 ports.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "port", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.PortProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Port
{
get => _port;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IPortProperty cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IPortProperty).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IPortProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_port = value;
}
}
private object? _readinessProbe;
/// <remarks>
/// <strong>Property</strong>: readinessProbe: The readiness probe.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "readinessProbe", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.ReadinessProbeProperty\"}]}}", isOptional: true)]
public object? ReadinessProbe
{
get => _readinessProbe;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IReadinessProbeProperty cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IReadinessProbeProperty).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_readinessProbe = value;
}
}
private object? _securityContext;
/// <remarks>
/// <strong>Property</strong>: securityContext: The security context of the container group.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "securityContext", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.SecurityContextProperty\"}]}}", isOptional: true)]
public object? SecurityContext
{
get => _securityContext;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.ISecurityContextProperty cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.ISecurityContextProperty).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_securityContext = value;
}
}
private object? _stdin;
/// <remarks>
/// <strong>Property</strong>: stdin: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "stdin", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Stdin
{
get => _stdin;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case bool cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: bool, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_stdin = value;
}
}
private object? _stdinOnce;
/// <remarks>
/// <strong>Property</strong>: stdinOnce: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "stdinOnce", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? StdinOnce
{
get => _stdinOnce;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case bool cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: bool, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_stdinOnce = value;
}
}
private object? _tty;
/// <remarks>
/// <strong>Property</strong>: tty: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "tty", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Tty
{
get => _tty;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case bool cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: bool, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_tty = value;
}
}
private object? _volumeMount;
/// <remarks>
/// <strong>Property</strong>: volumeMount: The number of volumes that are mounted to the container. A maximum of 16 volumes are supported.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "volumeMount", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.VolumeMountProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? VolumeMount
{
get => _volumeMount;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IVolumeMountProperty cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IVolumeMountProperty).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IVolumeMountProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_volumeMount = value;
}
}
private object? _workingDir;
/// <remarks>
/// <strong>Property</strong>: workingDir: The working directory for the container.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "workingDir", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? WorkingDir
{
get => _workingDir;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_workingDir = value;
}
}
}
[JsiiInterface(nativeType: typeof(IDnsConfigProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.DnsConfigProperty")]
public interface IDnsConfigProperty
{
/// <remarks>
/// <strong>Property</strong>: nameServer: The list of IP addresses for DNS servers.
/// </remarks>
[JsiiProperty(name: "nameServer", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? NameServer
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: option: The list of options. Each option includes a name and a value. The value is optional.
/// </remarks>
[JsiiProperty(name: "option", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.OptionProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Option
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: search: The list of DNS search domains.
/// </remarks>
[JsiiProperty(name: "search", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Search
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(IDnsConfigProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.DnsConfigProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IDnsConfigProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: nameServer: The list of IP addresses for DNS servers.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "nameServer", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? NameServer
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: option: The list of options. Each option includes a name and a value. The value is optional.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "option", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.OptionProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Option
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: search: The list of DNS search domains.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "search", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Search
{
get => GetInstanceProperty<object?>();
}
}
}
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.DnsConfigProperty")]
public class DnsConfigProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IDnsConfigProperty
{
private object? _nameServer;
/// <remarks>
/// <strong>Property</strong>: nameServer: The list of IP addresses for DNS servers.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "nameServer", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? NameServer
{
get => _nameServer;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case string cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_nameServer = value;
}
}
private object? _option;
/// <remarks>
/// <strong>Property</strong>: option: The list of options. Each option includes a name and a value. The value is optional.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "option", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.OptionProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Option
{
get => _option;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IOptionProperty cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IOptionProperty).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IOptionProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_option = value;
}
}
private object? _search;
/// <remarks>
/// <strong>Property</strong>: search: The list of DNS search domains.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "search", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Search
{
get => _search;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case string cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_search = value;
}
}
}
[JsiiInterface(nativeType: typeof(IEnvironmentVarProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.EnvironmentVarProperty")]
public interface IEnvironmentVarProperty
{
/// <remarks>
/// <strong>Property</strong>: fieldRefFieldPath: A reference to another variable. Currently, only status.podIP is supported.
/// </remarks>
[JsiiProperty(name: "fieldRefFieldPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? FieldRefFieldPath
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: key: The name of the variable. The name must be [1,128] characters in length and can contain [, 0-9a-zA-Z, ], and underscores (_). It cannot start with a digit.
/// </remarks>
[JsiiProperty(name: "key", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Key
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: value: The value of the variable.
/// </remarks>
[JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Value
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(IEnvironmentVarProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.EnvironmentVarProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IEnvironmentVarProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: fieldRefFieldPath: A reference to another variable. Currently, only status.podIP is supported.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "fieldRefFieldPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? FieldRefFieldPath
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: key: The name of the variable. The name must be [1,128] characters in length and can contain [, 0-9a-zA-Z, ], and underscores (_). It cannot start with a digit.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "key", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Key
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: value: The value of the variable.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Value
{
get => GetInstanceProperty<object?>();
}
}
}
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.EnvironmentVarProperty")]
public class EnvironmentVarProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IEnvironmentVarProperty
{
private object? _fieldRefFieldPath;
/// <remarks>
/// <strong>Property</strong>: fieldRefFieldPath: A reference to another variable. Currently, only status.podIP is supported.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "fieldRefFieldPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? FieldRefFieldPath
{
get => _fieldRefFieldPath;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_fieldRefFieldPath = value;
}
}
private object? _key;
/// <remarks>
/// <strong>Property</strong>: key: The name of the variable. The name must be [1,128] characters in length and can contain [, 0-9a-zA-Z, ], and underscores (_). It cannot start with a digit.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "key", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Key
{
get => _key;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_key = value;
}
}
private object? _value;
/// <remarks>
/// <strong>Property</strong>: value: The value of the variable.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Value
{
get => _value;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_value = value;
}
}
}
[JsiiInterface(nativeType: typeof(IHostAliaseProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.HostAliaseProperty")]
public interface IHostAliaseProperty
{
/// <remarks>
/// <strong>Property</strong>: hostname: undefined
/// </remarks>
[JsiiProperty(name: "hostname", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Hostname
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: ip: undefined
/// </remarks>
[JsiiProperty(name: "ip", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Ip
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(IHostAliaseProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.HostAliaseProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IHostAliaseProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: hostname: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "hostname", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Hostname
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: ip: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "ip", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Ip
{
get => GetInstanceProperty<object?>();
}
}
}
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.HostAliaseProperty")]
public class HostAliaseProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IHostAliaseProperty
{
private object? _hostname;
/// <remarks>
/// <strong>Property</strong>: hostname: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "hostname", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Hostname
{
get => _hostname;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case string cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_hostname = value;
}
}
private object? _ip;
/// <remarks>
/// <strong>Property</strong>: ip: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "ip", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Ip
{
get => _ip;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_ip = value;
}
}
}
[JsiiInterface(nativeType: typeof(IImageRegistryCredentialProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.ImageRegistryCredentialProperty")]
public interface IImageRegistryCredentialProperty
{
/// <remarks>
/// <strong>Property</strong>: password: The password that is used to log on to the image repository.
/// </remarks>
[JsiiProperty(name: "password", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
object Password
{
get;
}
/// <remarks>
/// <strong>Property</strong>: server: The IP address of the image repository. This address does not include a protocol prefix, such as http:\/\/ or https:\/\/.
/// </remarks>
[JsiiProperty(name: "server", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
object Server
{
get;
}
/// <remarks>
/// <strong>Property</strong>: userName: The username that is used to log on to the image repository.
/// </remarks>
[JsiiProperty(name: "userName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
object UserName
{
get;
}
[JsiiTypeProxy(nativeType: typeof(IImageRegistryCredentialProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.ImageRegistryCredentialProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IImageRegistryCredentialProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: password: The password that is used to log on to the image repository.
/// </remarks>
[JsiiProperty(name: "password", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object Password
{
get => GetInstanceProperty<object>()!;
}
/// <remarks>
/// <strong>Property</strong>: server: The IP address of the image repository. This address does not include a protocol prefix, such as http:\/\/ or https:\/\/.
/// </remarks>
[JsiiProperty(name: "server", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object Server
{
get => GetInstanceProperty<object>()!;
}
/// <remarks>
/// <strong>Property</strong>: userName: The username that is used to log on to the image repository.
/// </remarks>
[JsiiProperty(name: "userName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object UserName
{
get => GetInstanceProperty<object>()!;
}
}
}
#pragma warning disable CS8618
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.ImageRegistryCredentialProperty")]
public class ImageRegistryCredentialProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IImageRegistryCredentialProperty
{
private object _password;
/// <remarks>
/// <strong>Property</strong>: password: The password that is used to log on to the image repository.
/// </remarks>
[JsiiProperty(name: "password", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object Password
{
get => _password;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_password = value;
}
}
private object _server;
/// <remarks>
/// <strong>Property</strong>: server: The IP address of the image repository. This address does not include a protocol prefix, such as http:\/\/ or https:\/\/.
/// </remarks>
[JsiiProperty(name: "server", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object Server
{
get => _server;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_server = value;
}
}
private object _userName;
/// <remarks>
/// <strong>Property</strong>: userName: The username that is used to log on to the image repository.
/// </remarks>
[JsiiProperty(name: "userName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object UserName
{
get => _userName;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_userName = value;
}
}
}
[JsiiInterface(nativeType: typeof(IInitContainerEnvironmentVarProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerEnvironmentVarProperty")]
public interface IInitContainerEnvironmentVarProperty
{
/// <remarks>
/// <strong>Property</strong>: fieldRefFieldPath: A reference to another variable. Currently, only status.podIP is supported.
/// </remarks>
[JsiiProperty(name: "fieldRefFieldPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? FieldRefFieldPath
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: key: The name of the variable. The name must be [1,128] characters in length and can contain [, 0-9a-zA-Z, ], and underscores (_). It cannot start with a digit.
/// </remarks>
[JsiiProperty(name: "key", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Key
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: value: The value of the variable. The value must be [0,256] characters in length.
/// </remarks>
[JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Value
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(IInitContainerEnvironmentVarProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerEnvironmentVarProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerEnvironmentVarProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: fieldRefFieldPath: A reference to another variable. Currently, only status.podIP is supported.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "fieldRefFieldPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? FieldRefFieldPath
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: key: The name of the variable. The name must be [1,128] characters in length and can contain [, 0-9a-zA-Z, ], and underscores (_). It cannot start with a digit.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "key", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Key
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: value: The value of the variable. The value must be [0,256] characters in length.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Value
{
get => GetInstanceProperty<object?>();
}
}
}
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerEnvironmentVarProperty")]
public class InitContainerEnvironmentVarProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerEnvironmentVarProperty
{
private object? _fieldRefFieldPath;
/// <remarks>
/// <strong>Property</strong>: fieldRefFieldPath: A reference to another variable. Currently, only status.podIP is supported.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "fieldRefFieldPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? FieldRefFieldPath
{
get => _fieldRefFieldPath;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_fieldRefFieldPath = value;
}
}
private object? _key;
/// <remarks>
/// <strong>Property</strong>: key: The name of the variable. The name must be [1,128] characters in length and can contain [, 0-9a-zA-Z, ], and underscores (_). It cannot start with a digit.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "key", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Key
{
get => _key;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_key = value;
}
}
private object? _value;
/// <remarks>
/// <strong>Property</strong>: value: The value of the variable. The value must be [0,256] characters in length.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Value
{
get => _value;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_value = value;
}
}
}
[JsiiInterface(nativeType: typeof(IInitContainerPortProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerPortProperty")]
public interface IInitContainerPortProperty
{
/// <remarks>
/// <strong>Property</strong>: port: The port number. Valid values: 1-65535.
/// </remarks>
[JsiiProperty(name: "port", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Port
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: protocol: The protocol that the port uses. Valid values: TCP and UDP
/// </remarks>
[JsiiProperty(name: "protocol", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Protocol
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(IInitContainerPortProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerPortProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerPortProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: port: The port number. Valid values: 1-65535.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "port", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Port
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: protocol: The protocol that the port uses. Valid values: TCP and UDP
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "protocol", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Protocol
{
get => GetInstanceProperty<object?>();
}
}
}
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerPortProperty")]
public class InitContainerPortProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerPortProperty
{
private object? _port;
/// <remarks>
/// <strong>Property</strong>: port: The port number. Valid values: 1-65535.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "port", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Port
{
get => _port;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_port = value;
}
}
private object? _protocol;
/// <remarks>
/// <strong>Property</strong>: protocol: The protocol that the port uses. Valid values: TCP and UDP
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "protocol", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Protocol
{
get => _protocol;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_protocol = value;
}
}
}
[JsiiInterface(nativeType: typeof(IInitContainerProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerProperty")]
public interface IInitContainerProperty
{
/// <remarks>
/// <strong>Property</strong>: arg: The arguments passed to the commands. A maximum of 10 arguments are supported.
/// </remarks>
[JsiiProperty(name: "arg", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Arg
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: command: The list of commands that you want to send to a container to run. You can specify a maximum of 1 commands. Maximum length per string: 256 characters.
/// </remarks>
[JsiiProperty(name: "command", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Command
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: cpu: The number of vCPUs assigned to the container. Unit: vCPUs (cores).
/// </remarks>
[JsiiProperty(name: "cpu", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Cpu
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: environmentVar: Environment variables in the operating system of the container. Each environment variable is a key\/value pair, and both the key and value are strings. A maximum of 100 environment variables are supported. The key indicates the name of a variable. The value indicates the value of the variable.
/// </remarks>
[JsiiProperty(name: "environmentVar", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerEnvironmentVarProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? EnvironmentVar
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: image: The container image.
/// </remarks>
[JsiiProperty(name: "image", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Image
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: imagePullPolicy: The image pull policy. You can use it to pull the image from the image repository.
/// </remarks>
[JsiiProperty(name: "imagePullPolicy", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? ImagePullPolicy
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: memory: The memory assigned to the container. Unit: GiB.
/// </remarks>
[JsiiProperty(name: "memory", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Memory
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: name: The name of the container.
/// </remarks>
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Name
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: port: The open ports and protocols. You can set a maximum of 100 ports.
/// </remarks>
[JsiiProperty(name: "port", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerPortProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Port
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: securityContext: The security context of the container group.
/// </remarks>
[JsiiProperty(name: "securityContext", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerSecurityContextProperty\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? SecurityContext
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: volumeMount: The number of volumes that are mounted to the container. A maximum of 16 volumes are supported.
/// </remarks>
[JsiiProperty(name: "volumeMount", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerVolumeMountProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? VolumeMount
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: workingDir: The working directory for the container.
/// </remarks>
[JsiiProperty(name: "workingDir", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? WorkingDir
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(IInitContainerProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: arg: The arguments passed to the commands. A maximum of 10 arguments are supported.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "arg", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Arg
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: command: The list of commands that you want to send to a container to run. You can specify a maximum of 1 commands. Maximum length per string: 256 characters.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "command", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Command
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: cpu: The number of vCPUs assigned to the container. Unit: vCPUs (cores).
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "cpu", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Cpu
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: environmentVar: Environment variables in the operating system of the container. Each environment variable is a key\/value pair, and both the key and value are strings. A maximum of 100 environment variables are supported. The key indicates the name of a variable. The value indicates the value of the variable.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "environmentVar", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerEnvironmentVarProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? EnvironmentVar
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: image: The container image.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "image", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Image
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: imagePullPolicy: The image pull policy. You can use it to pull the image from the image repository.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "imagePullPolicy", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? ImagePullPolicy
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: memory: The memory assigned to the container. Unit: GiB.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "memory", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Memory
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: name: The name of the container.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Name
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: port: The open ports and protocols. You can set a maximum of 100 ports.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "port", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerPortProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Port
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: securityContext: The security context of the container group.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "securityContext", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerSecurityContextProperty\"}]}}", isOptional: true)]
public object? SecurityContext
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: volumeMount: The number of volumes that are mounted to the container. A maximum of 16 volumes are supported.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "volumeMount", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerVolumeMountProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? VolumeMount
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: workingDir: The working directory for the container.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "workingDir", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? WorkingDir
{
get => GetInstanceProperty<object?>();
}
}
}
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerProperty")]
public class InitContainerProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerProperty
{
private object? _arg;
/// <remarks>
/// <strong>Property</strong>: arg: The arguments passed to the commands. A maximum of 10 arguments are supported.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "arg", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Arg
{
get => _arg;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case string cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_arg = value;
}
}
private object? _command;
/// <remarks>
/// <strong>Property</strong>: command: The list of commands that you want to send to a container to run. You can specify a maximum of 1 commands. Maximum length per string: 256 characters.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "command", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Command
{
get => _command;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case string cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_command = value;
}
}
private object? _cpu;
/// <remarks>
/// <strong>Property</strong>: cpu: The number of vCPUs assigned to the container. Unit: vCPUs (cores).
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "cpu", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Cpu
{
get => _cpu;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_cpu = value;
}
}
private object? _environmentVar;
/// <remarks>
/// <strong>Property</strong>: environmentVar: Environment variables in the operating system of the container. Each environment variable is a key\/value pair, and both the key and value are strings. A maximum of 100 environment variables are supported. The key indicates the name of a variable. The value indicates the value of the variable.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "environmentVar", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerEnvironmentVarProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? EnvironmentVar
{
get => _environmentVar;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerEnvironmentVarProperty cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerEnvironmentVarProperty).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerEnvironmentVarProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_environmentVar = value;
}
}
private object? _image;
/// <remarks>
/// <strong>Property</strong>: image: The container image.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "image", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Image
{
get => _image;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_image = value;
}
}
private object? _imagePullPolicy;
/// <remarks>
/// <strong>Property</strong>: imagePullPolicy: The image pull policy. You can use it to pull the image from the image repository.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "imagePullPolicy", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? ImagePullPolicy
{
get => _imagePullPolicy;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_imagePullPolicy = value;
}
}
private object? _memory;
/// <remarks>
/// <strong>Property</strong>: memory: The memory assigned to the container. Unit: GiB.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "memory", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Memory
{
get => _memory;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_memory = value;
}
}
private object? _name;
/// <remarks>
/// <strong>Property</strong>: name: The name of the container.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Name
{
get => _name;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_name = value;
}
}
private object? _port;
/// <remarks>
/// <strong>Property</strong>: port: The open ports and protocols. You can set a maximum of 100 ports.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "port", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerPortProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? Port
{
get => _port;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerPortProperty cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerPortProperty).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerPortProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_port = value;
}
}
private object? _securityContext;
/// <remarks>
/// <strong>Property</strong>: securityContext: The security context of the container group.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "securityContext", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerSecurityContextProperty\"}]}}", isOptional: true)]
public object? SecurityContext
{
get => _securityContext;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerSecurityContextProperty cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerSecurityContextProperty).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_securityContext = value;
}
}
private object? _volumeMount;
/// <remarks>
/// <strong>Property</strong>: volumeMount: The number of volumes that are mounted to the container. A maximum of 16 volumes are supported.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "volumeMount", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerVolumeMountProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? VolumeMount
{
get => _volumeMount;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerVolumeMountProperty cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerVolumeMountProperty).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerVolumeMountProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_volumeMount = value;
}
}
private object? _workingDir;
/// <remarks>
/// <strong>Property</strong>: workingDir: The working directory for the container.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "workingDir", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? WorkingDir
{
get => _workingDir;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_workingDir = value;
}
}
}
[JsiiInterface(nativeType: typeof(IInitContainerSecurityContextProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerSecurityContextProperty")]
public interface IInitContainerSecurityContextProperty
{
/// <remarks>
/// <strong>Property</strong>: capabilityAdd: undefined
/// </remarks>
[JsiiProperty(name: "capabilityAdd", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? CapabilityAdd
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: readOnlyRootFilesystem: Valid value: True.
/// </remarks>
[JsiiProperty(name: "readOnlyRootFilesystem", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? ReadOnlyRootFilesystem
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: runAsUser: Valid value: 1337.
/// </remarks>
[JsiiProperty(name: "runAsUser", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? RunAsUser
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(IInitContainerSecurityContextProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerSecurityContextProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerSecurityContextProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: capabilityAdd: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "capabilityAdd", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? CapabilityAdd
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: readOnlyRootFilesystem: Valid value: True.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "readOnlyRootFilesystem", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? ReadOnlyRootFilesystem
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: runAsUser: Valid value: 1337.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "runAsUser", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? RunAsUser
{
get => GetInstanceProperty<object?>();
}
}
}
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerSecurityContextProperty")]
public class InitContainerSecurityContextProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerSecurityContextProperty
{
private object? _capabilityAdd;
/// <remarks>
/// <strong>Property</strong>: capabilityAdd: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "capabilityAdd", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? CapabilityAdd
{
get => _capabilityAdd;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case string cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_capabilityAdd = value;
}
}
private object? _readOnlyRootFilesystem;
/// <remarks>
/// <strong>Property</strong>: readOnlyRootFilesystem: Valid value: True.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "readOnlyRootFilesystem", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? ReadOnlyRootFilesystem
{
get => _readOnlyRootFilesystem;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case bool cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: bool, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_readOnlyRootFilesystem = value;
}
}
private object? _runAsUser;
/// <remarks>
/// <strong>Property</strong>: runAsUser: Valid value: 1337.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "runAsUser", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? RunAsUser
{
get => _runAsUser;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_runAsUser = value;
}
}
}
[JsiiInterface(nativeType: typeof(IInitContainerVolumeMountProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerVolumeMountProperty")]
public interface IInitContainerVolumeMountProperty
{
/// <remarks>
/// <strong>Property</strong>: mountPath: A mount path. The data in the target directory is overwritten by the data in the mounted volume. Therefore, use caution when you mount a volume to a directory.
/// </remarks>
[JsiiProperty(name: "mountPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? MountPath
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: name: The name of the volume. The name is the same as that specified for the Name parameter in the Volume section.
/// </remarks>
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Name
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: readOnly: Default value: False.
/// </remarks>
[JsiiProperty(name: "readOnly", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? ReadOnly
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(IInitContainerVolumeMountProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerVolumeMountProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerVolumeMountProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: mountPath: A mount path. The data in the target directory is overwritten by the data in the mounted volume. Therefore, use caution when you mount a volume to a directory.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "mountPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? MountPath
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: name: The name of the volume. The name is the same as that specified for the Name parameter in the Volume section.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Name
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: readOnly: Default value: False.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "readOnly", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? ReadOnly
{
get => GetInstanceProperty<object?>();
}
}
}
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.InitContainerVolumeMountProperty")]
public class InitContainerVolumeMountProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IInitContainerVolumeMountProperty
{
private object? _mountPath;
/// <remarks>
/// <strong>Property</strong>: mountPath: A mount path. The data in the target directory is overwritten by the data in the mounted volume. Therefore, use caution when you mount a volume to a directory.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "mountPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? MountPath
{
get => _mountPath;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_mountPath = value;
}
}
private object? _name;
/// <remarks>
/// <strong>Property</strong>: name: The name of the volume. The name is the same as that specified for the Name parameter in the Volume section.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Name
{
get => _name;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_name = value;
}
}
private object? _readOnly;
/// <remarks>
/// <strong>Property</strong>: readOnly: Default value: False.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "readOnly", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? ReadOnly
{
get => _readOnly;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case bool cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: bool, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_readOnly = value;
}
}
}
[JsiiInterface(nativeType: typeof(ILivenessProbeProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.LivenessProbeProperty")]
public interface ILivenessProbeProperty
{
/// <remarks>
/// <strong>Property</strong>: execCommand: The commands for running the readiness probe.
/// </remarks>
[JsiiProperty(name: "execCommand", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? ExecCommand
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: failureThreshold: The minimum consecutive failures for the probe to be considered to have failed after having succeeded. Default value: 3.
/// </remarks>
[JsiiProperty(name: "failureThreshold", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? FailureThreshold
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: httpGetPath: The path to which the system sends an HTTP GET request to perform the check.
/// </remarks>
[JsiiProperty(name: "httpGetPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? HttpGetPath
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: httpGetPort: The port to which the system sends an HTTP GET request to perform the check.
/// </remarks>
[JsiiProperty(name: "httpGetPort", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? HttpGetPort
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: httpGetScheme: The protocol that is used to connect the host. Valid values: HTTP and HTTPS.
/// </remarks>
[JsiiProperty(name: "httpGetScheme", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? HttpGetScheme
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: initialDelaySeconds: The number of seconds after the container has started before probes are initiated.
/// </remarks>
[JsiiProperty(name: "initialDelaySeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? InitialDelaySeconds
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: periodSeconds: Specifies the period at which the probe is performed. Unit: seconds. Default value: 10. Minimum value: 1.
/// </remarks>
[JsiiProperty(name: "periodSeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? PeriodSeconds
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: successThreshold: The minimum consecutive successes for the probe to be considered successful after having failed. Default value: 1.
/// </remarks>
[JsiiProperty(name: "successThreshold", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? SuccessThreshold
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: tcpSocketPort: The port to which the system sends a TCP SOCKET request to perform the check.
/// </remarks>
[JsiiProperty(name: "tcpSocketPort", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? TcpSocketPort
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: timeoutSeconds: The number of seconds after which the probe times out. Default value: 1. Minimum value: 1.
/// </remarks>
[JsiiProperty(name: "timeoutSeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? TimeoutSeconds
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(ILivenessProbeProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.LivenessProbeProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.ILivenessProbeProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: execCommand: The commands for running the readiness probe.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "execCommand", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? ExecCommand
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: failureThreshold: The minimum consecutive failures for the probe to be considered to have failed after having succeeded. Default value: 3.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "failureThreshold", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? FailureThreshold
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: httpGetPath: The path to which the system sends an HTTP GET request to perform the check.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "httpGetPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? HttpGetPath
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: httpGetPort: The port to which the system sends an HTTP GET request to perform the check.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "httpGetPort", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? HttpGetPort
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: httpGetScheme: The protocol that is used to connect the host. Valid values: HTTP and HTTPS.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "httpGetScheme", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? HttpGetScheme
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: initialDelaySeconds: The number of seconds after the container has started before probes are initiated.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "initialDelaySeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? InitialDelaySeconds
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: periodSeconds: Specifies the period at which the probe is performed. Unit: seconds. Default value: 10. Minimum value: 1.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "periodSeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? PeriodSeconds
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: successThreshold: The minimum consecutive successes for the probe to be considered successful after having failed. Default value: 1.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "successThreshold", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? SuccessThreshold
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: tcpSocketPort: The port to which the system sends a TCP SOCKET request to perform the check.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "tcpSocketPort", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? TcpSocketPort
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: timeoutSeconds: The number of seconds after which the probe times out. Default value: 1. Minimum value: 1.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "timeoutSeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? TimeoutSeconds
{
get => GetInstanceProperty<object?>();
}
}
}
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.LivenessProbeProperty")]
public class LivenessProbeProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.ILivenessProbeProperty
{
private object? _execCommand;
/// <remarks>
/// <strong>Property</strong>: execCommand: The commands for running the readiness probe.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "execCommand", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? ExecCommand
{
get => _execCommand;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case string cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_execCommand = value;
}
}
private object? _failureThreshold;
/// <remarks>
/// <strong>Property</strong>: failureThreshold: The minimum consecutive failures for the probe to be considered to have failed after having succeeded. Default value: 3.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "failureThreshold", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? FailureThreshold
{
get => _failureThreshold;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_failureThreshold = value;
}
}
private object? _httpGetPath;
/// <remarks>
/// <strong>Property</strong>: httpGetPath: The path to which the system sends an HTTP GET request to perform the check.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "httpGetPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? HttpGetPath
{
get => _httpGetPath;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_httpGetPath = value;
}
}
private object? _httpGetPort;
/// <remarks>
/// <strong>Property</strong>: httpGetPort: The port to which the system sends an HTTP GET request to perform the check.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "httpGetPort", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? HttpGetPort
{
get => _httpGetPort;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_httpGetPort = value;
}
}
private object? _httpGetScheme;
/// <remarks>
/// <strong>Property</strong>: httpGetScheme: The protocol that is used to connect the host. Valid values: HTTP and HTTPS.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "httpGetScheme", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? HttpGetScheme
{
get => _httpGetScheme;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_httpGetScheme = value;
}
}
private object? _initialDelaySeconds;
/// <remarks>
/// <strong>Property</strong>: initialDelaySeconds: The number of seconds after the container has started before probes are initiated.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "initialDelaySeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? InitialDelaySeconds
{
get => _initialDelaySeconds;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_initialDelaySeconds = value;
}
}
private object? _periodSeconds;
/// <remarks>
/// <strong>Property</strong>: periodSeconds: Specifies the period at which the probe is performed. Unit: seconds. Default value: 10. Minimum value: 1.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "periodSeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? PeriodSeconds
{
get => _periodSeconds;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_periodSeconds = value;
}
}
private object? _successThreshold;
/// <remarks>
/// <strong>Property</strong>: successThreshold: The minimum consecutive successes for the probe to be considered successful after having failed. Default value: 1.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "successThreshold", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? SuccessThreshold
{
get => _successThreshold;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_successThreshold = value;
}
}
private object? _tcpSocketPort;
/// <remarks>
/// <strong>Property</strong>: tcpSocketPort: The port to which the system sends a TCP SOCKET request to perform the check.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "tcpSocketPort", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? TcpSocketPort
{
get => _tcpSocketPort;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_tcpSocketPort = value;
}
}
private object? _timeoutSeconds;
/// <remarks>
/// <strong>Property</strong>: timeoutSeconds: The number of seconds after which the probe times out. Default value: 1. Minimum value: 1.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "timeoutSeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? TimeoutSeconds
{
get => _timeoutSeconds;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_timeoutSeconds = value;
}
}
}
[JsiiInterface(nativeType: typeof(IOptionProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.OptionProperty")]
public interface IOptionProperty
{
/// <remarks>
/// <strong>Property</strong>: name: The name of the option.
/// </remarks>
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Name
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: value: The value of the option.
/// </remarks>
[JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Value
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(IOptionProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.OptionProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IOptionProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: name: The name of the option.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Name
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: value: The value of the option.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Value
{
get => GetInstanceProperty<object?>();
}
}
}
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.OptionProperty")]
public class OptionProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IOptionProperty
{
private object? _name;
/// <remarks>
/// <strong>Property</strong>: name: The name of the option.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Name
{
get => _name;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_name = value;
}
}
private object? _value;
/// <remarks>
/// <strong>Property</strong>: value: The value of the option.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Value
{
get => _value;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_value = value;
}
}
}
[JsiiInterface(nativeType: typeof(IPortProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.PortProperty")]
public interface IPortProperty
{
/// <remarks>
/// <strong>Property</strong>: port: The port number. Valid values: 1-65535.
/// </remarks>
[JsiiProperty(name: "port", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Port
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: protocol: The protocol that the port uses. Valid values: TCP and UDP
/// </remarks>
[JsiiProperty(name: "protocol", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Protocol
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(IPortProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.PortProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IPortProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: port: The port number. Valid values: 1-65535.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "port", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Port
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: protocol: The protocol that the port uses. Valid values: TCP and UDP
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "protocol", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Protocol
{
get => GetInstanceProperty<object?>();
}
}
}
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.PortProperty")]
public class PortProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IPortProperty
{
private object? _port;
/// <remarks>
/// <strong>Property</strong>: port: The port number. Valid values: 1-65535.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "port", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Port
{
get => _port;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_port = value;
}
}
private object? _protocol;
/// <remarks>
/// <strong>Property</strong>: protocol: The protocol that the port uses. Valid values: TCP and UDP
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "protocol", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Protocol
{
get => _protocol;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_protocol = value;
}
}
}
[JsiiInterface(nativeType: typeof(IReadinessProbeProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.ReadinessProbeProperty")]
public interface IReadinessProbeProperty
{
/// <remarks>
/// <strong>Property</strong>: execCommand: The commands for running the readiness probe.
/// </remarks>
[JsiiProperty(name: "execCommand", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? ExecCommand
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: failureThreshold: The minimum consecutive failures for the probe to be considered to have failed after having succeeded. Default value: 3.
/// </remarks>
[JsiiProperty(name: "failureThreshold", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? FailureThreshold
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: httpGetPath: The path to which the system sends an HTTP GET request to perform the check.
/// </remarks>
[JsiiProperty(name: "httpGetPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? HttpGetPath
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: httpGetPort: The port to which the system sends an HTTP GET request to perform the check.
/// </remarks>
[JsiiProperty(name: "httpGetPort", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? HttpGetPort
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: httpGetScheme: The protocol that is used to connect the host. Valid values: HTTP and HTTPS.
/// </remarks>
[JsiiProperty(name: "httpGetScheme", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? HttpGetScheme
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: initialDelaySeconds: The number of seconds after the container has started before probes are initiated.
/// </remarks>
[JsiiProperty(name: "initialDelaySeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? InitialDelaySeconds
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: periodSeconds: Specifies the period at which the probe is performed. Unit: seconds. Default value: 10. Minimum value: 1.
/// </remarks>
[JsiiProperty(name: "periodSeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? PeriodSeconds
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: successThreshold: The minimum consecutive successes for the probe to be considered successful after having failed. Default value: 1.
/// </remarks>
[JsiiProperty(name: "successThreshold", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? SuccessThreshold
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: tcpSocketPort: The port to which the system sends a TCP SOCKET request to perform the check.
/// </remarks>
[JsiiProperty(name: "tcpSocketPort", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? TcpSocketPort
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: timeoutSeconds: The number of seconds after which the probe times out. Default value: 1. Minimum value: 1.
/// </remarks>
[JsiiProperty(name: "timeoutSeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? TimeoutSeconds
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(IReadinessProbeProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.ReadinessProbeProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IReadinessProbeProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: execCommand: The commands for running the readiness probe.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "execCommand", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? ExecCommand
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: failureThreshold: The minimum consecutive failures for the probe to be considered to have failed after having succeeded. Default value: 3.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "failureThreshold", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? FailureThreshold
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: httpGetPath: The path to which the system sends an HTTP GET request to perform the check.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "httpGetPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? HttpGetPath
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: httpGetPort: The port to which the system sends an HTTP GET request to perform the check.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "httpGetPort", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? HttpGetPort
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: httpGetScheme: The protocol that is used to connect the host. Valid values: HTTP and HTTPS.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "httpGetScheme", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? HttpGetScheme
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: initialDelaySeconds: The number of seconds after the container has started before probes are initiated.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "initialDelaySeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? InitialDelaySeconds
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: periodSeconds: Specifies the period at which the probe is performed. Unit: seconds. Default value: 10. Minimum value: 1.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "periodSeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? PeriodSeconds
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: successThreshold: The minimum consecutive successes for the probe to be considered successful after having failed. Default value: 1.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "successThreshold", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? SuccessThreshold
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: tcpSocketPort: The port to which the system sends a TCP SOCKET request to perform the check.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "tcpSocketPort", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? TcpSocketPort
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: timeoutSeconds: The number of seconds after which the probe times out. Default value: 1. Minimum value: 1.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "timeoutSeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? TimeoutSeconds
{
get => GetInstanceProperty<object?>();
}
}
}
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.ReadinessProbeProperty")]
public class ReadinessProbeProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IReadinessProbeProperty
{
private object? _execCommand;
/// <remarks>
/// <strong>Property</strong>: execCommand: The commands for running the readiness probe.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "execCommand", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? ExecCommand
{
get => _execCommand;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case string cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_execCommand = value;
}
}
private object? _failureThreshold;
/// <remarks>
/// <strong>Property</strong>: failureThreshold: The minimum consecutive failures for the probe to be considered to have failed after having succeeded. Default value: 3.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "failureThreshold", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? FailureThreshold
{
get => _failureThreshold;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_failureThreshold = value;
}
}
private object? _httpGetPath;
/// <remarks>
/// <strong>Property</strong>: httpGetPath: The path to which the system sends an HTTP GET request to perform the check.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "httpGetPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? HttpGetPath
{
get => _httpGetPath;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_httpGetPath = value;
}
}
private object? _httpGetPort;
/// <remarks>
/// <strong>Property</strong>: httpGetPort: The port to which the system sends an HTTP GET request to perform the check.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "httpGetPort", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? HttpGetPort
{
get => _httpGetPort;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_httpGetPort = value;
}
}
private object? _httpGetScheme;
/// <remarks>
/// <strong>Property</strong>: httpGetScheme: The protocol that is used to connect the host. Valid values: HTTP and HTTPS.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "httpGetScheme", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? HttpGetScheme
{
get => _httpGetScheme;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_httpGetScheme = value;
}
}
private object? _initialDelaySeconds;
/// <remarks>
/// <strong>Property</strong>: initialDelaySeconds: The number of seconds after the container has started before probes are initiated.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "initialDelaySeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? InitialDelaySeconds
{
get => _initialDelaySeconds;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_initialDelaySeconds = value;
}
}
private object? _periodSeconds;
/// <remarks>
/// <strong>Property</strong>: periodSeconds: Specifies the period at which the probe is performed. Unit: seconds. Default value: 10. Minimum value: 1.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "periodSeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? PeriodSeconds
{
get => _periodSeconds;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_periodSeconds = value;
}
}
private object? _successThreshold;
/// <remarks>
/// <strong>Property</strong>: successThreshold: The minimum consecutive successes for the probe to be considered successful after having failed. Default value: 1.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "successThreshold", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? SuccessThreshold
{
get => _successThreshold;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_successThreshold = value;
}
}
private object? _tcpSocketPort;
/// <remarks>
/// <strong>Property</strong>: tcpSocketPort: The port to which the system sends a TCP SOCKET request to perform the check.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "tcpSocketPort", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? TcpSocketPort
{
get => _tcpSocketPort;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_tcpSocketPort = value;
}
}
private object? _timeoutSeconds;
/// <remarks>
/// <strong>Property</strong>: timeoutSeconds: The number of seconds after which the probe times out. Default value: 1. Minimum value: 1.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "timeoutSeconds", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? TimeoutSeconds
{
get => _timeoutSeconds;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_timeoutSeconds = value;
}
}
}
[JsiiInterface(nativeType: typeof(ISecurityContextProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.SecurityContextProperty")]
public interface ISecurityContextProperty
{
/// <remarks>
/// <strong>Property</strong>: capabilityAdd: undefined
/// </remarks>
[JsiiProperty(name: "capabilityAdd", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? CapabilityAdd
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: readOnlyRootFilesystem: Valid value: True.
/// </remarks>
[JsiiProperty(name: "readOnlyRootFilesystem", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? ReadOnlyRootFilesystem
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: runAsUser: User ID.
/// </remarks>
[JsiiProperty(name: "runAsUser", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? RunAsUser
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(ISecurityContextProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.SecurityContextProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.ISecurityContextProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: capabilityAdd: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "capabilityAdd", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? CapabilityAdd
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: readOnlyRootFilesystem: Valid value: True.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "readOnlyRootFilesystem", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? ReadOnlyRootFilesystem
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: runAsUser: User ID.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "runAsUser", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? RunAsUser
{
get => GetInstanceProperty<object?>();
}
}
}
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.SecurityContextProperty")]
public class SecurityContextProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.ISecurityContextProperty
{
private object? _capabilityAdd;
/// <remarks>
/// <strong>Property</strong>: capabilityAdd: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "capabilityAdd", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? CapabilityAdd
{
get => _capabilityAdd;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case string cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_capabilityAdd = value;
}
}
private object? _readOnlyRootFilesystem;
/// <remarks>
/// <strong>Property</strong>: readOnlyRootFilesystem: Valid value: True.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "readOnlyRootFilesystem", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? ReadOnlyRootFilesystem
{
get => _readOnlyRootFilesystem;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case bool cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: bool, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_readOnlyRootFilesystem = value;
}
}
private object? _runAsUser;
/// <remarks>
/// <strong>Property</strong>: runAsUser: User ID.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "runAsUser", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? RunAsUser
{
get => _runAsUser;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case double cast_cd4240:
break;
case byte cast_cd4240:
break;
case decimal cast_cd4240:
break;
case float cast_cd4240:
break;
case int cast_cd4240:
break;
case long cast_cd4240:
break;
case sbyte cast_cd4240:
break;
case short cast_cd4240:
break;
case uint cast_cd4240:
break;
case ulong cast_cd4240:
break;
case ushort cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_runAsUser = value;
}
}
}
[JsiiInterface(nativeType: typeof(ISecurityContextSysctlProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.SecurityContextSysctlProperty")]
public interface ISecurityContextSysctlProperty
{
/// <remarks>
/// <strong>Property</strong>: name: undefined
/// </remarks>
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Name
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: value: undefined
/// </remarks>
[JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Value
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(ISecurityContextSysctlProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.SecurityContextSysctlProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.ISecurityContextSysctlProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: name: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Name
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: value: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Value
{
get => GetInstanceProperty<object?>();
}
}
}
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.SecurityContextSysctlProperty")]
public class SecurityContextSysctlProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.ISecurityContextSysctlProperty
{
private object? _name;
/// <remarks>
/// <strong>Property</strong>: name: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Name
{
get => _name;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_name = value;
}
}
private object? _value;
/// <remarks>
/// <strong>Property</strong>: value: undefined
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Value
{
get => _value;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_value = value;
}
}
}
[JsiiInterface(nativeType: typeof(ITagProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.TagProperty")]
public interface ITagProperty
{
/// <remarks>
/// <strong>Property</strong>: key: The keyword of the tag.
/// </remarks>
[JsiiProperty(name: "key", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
object Key
{
get;
}
/// <remarks>
/// <strong>Property</strong>: value: The value of the tag.
/// </remarks>
[JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Value
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(ITagProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.TagProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.ITagProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: key: The keyword of the tag.
/// </remarks>
[JsiiProperty(name: "key", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object Key
{
get => GetInstanceProperty<object>()!;
}
/// <remarks>
/// <strong>Property</strong>: value: The value of the tag.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Value
{
get => GetInstanceProperty<object?>();
}
}
}
#pragma warning disable CS8618
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.TagProperty")]
public class TagProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.ITagProperty
{
private object _key;
/// <remarks>
/// <strong>Property</strong>: key: The keyword of the tag.
/// </remarks>
[JsiiProperty(name: "key", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object Key
{
get => _key;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_key = value;
}
}
private object? _value;
/// <remarks>
/// <strong>Property</strong>: value: The value of the tag.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Value
{
get => _value;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_value = value;
}
}
}
[JsiiInterface(nativeType: typeof(IVolumeMountProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.VolumeMountProperty")]
public interface IVolumeMountProperty
{
/// <remarks>
/// <strong>Property</strong>: mountPath: A mount path. The data in the target directory is overwritten by the data in the mounted volume. Therefore, use caution when you mount a volume to a directory.
/// </remarks>
[JsiiProperty(name: "mountPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? MountPath
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: mountPropagation: Mount propagation Settings for data volumes. Mount propagation allows container mounted volumes to be shared to other containers on the same ECI instance, or even to other ECI instances on the same host machine. Valid values:
/// - None: This volume is not aware of any subsequent mount operations performed on this volume or its subdirectories.
/// - HostToContainer: This volume will be aware of subsequent mount operations on this volume or its subdirectories
/// - Bidirectional: Mount aware, similar to HostToContainer In addition, the volume will be propagated back to the host and to all containers of all ECI instances that use the same volume.
/// Default value: None
/// </remarks>
[JsiiProperty(name: "mountPropagation", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? MountPropagation
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: name: The name of the volume. The name is the same as that specified for the Name parameter in the Volume section.
/// </remarks>
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? Name
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: readOnly: Default value: False.
/// </remarks>
[JsiiProperty(name: "readOnly", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? ReadOnly
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: subPath: A subdirectory under the data volume. The convenience instance mounts different directories under the same data volume to different directories of the container.
/// </remarks>
[JsiiProperty(name: "subPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? SubPath
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(IVolumeMountProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.VolumeMountProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IVolumeMountProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: mountPath: A mount path. The data in the target directory is overwritten by the data in the mounted volume. Therefore, use caution when you mount a volume to a directory.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "mountPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? MountPath
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: mountPropagation: Mount propagation Settings for data volumes. Mount propagation allows container mounted volumes to be shared to other containers on the same ECI instance, or even to other ECI instances on the same host machine. Valid values:
/// - None: This volume is not aware of any subsequent mount operations performed on this volume or its subdirectories.
/// - HostToContainer: This volume will be aware of subsequent mount operations on this volume or its subdirectories
/// - Bidirectional: Mount aware, similar to HostToContainer In addition, the volume will be propagated back to the host and to all containers of all ECI instances that use the same volume.
/// Default value: None
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "mountPropagation", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? MountPropagation
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: name: The name of the volume. The name is the same as that specified for the Name parameter in the Volume section.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Name
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: readOnly: Default value: False.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "readOnly", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? ReadOnly
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: subPath: A subdirectory under the data volume. The convenience instance mounts different directories under the same data volume to different directories of the container.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "subPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? SubPath
{
get => GetInstanceProperty<object?>();
}
}
}
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.VolumeMountProperty")]
public class VolumeMountProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IVolumeMountProperty
{
private object? _mountPath;
/// <remarks>
/// <strong>Property</strong>: mountPath: A mount path. The data in the target directory is overwritten by the data in the mounted volume. Therefore, use caution when you mount a volume to a directory.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "mountPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? MountPath
{
get => _mountPath;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_mountPath = value;
}
}
private object? _mountPropagation;
/// <remarks>
/// <strong>Property</strong>: mountPropagation: Mount propagation Settings for data volumes. Mount propagation allows container mounted volumes to be shared to other containers on the same ECI instance, or even to other ECI instances on the same host machine. Valid values:
/// - None: This volume is not aware of any subsequent mount operations performed on this volume or its subdirectories.
/// - HostToContainer: This volume will be aware of subsequent mount operations on this volume or its subdirectories
/// - Bidirectional: Mount aware, similar to HostToContainer In addition, the volume will be propagated back to the host and to all containers of all ECI instances that use the same volume.
/// Default value: None
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "mountPropagation", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? MountPropagation
{
get => _mountPropagation;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_mountPropagation = value;
}
}
private object? _name;
/// <remarks>
/// <strong>Property</strong>: name: The name of the volume. The name is the same as that specified for the Name parameter in the Volume section.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? Name
{
get => _name;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_name = value;
}
}
private object? _readOnly;
/// <remarks>
/// <strong>Property</strong>: readOnly: Default value: False.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "readOnly", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? ReadOnly
{
get => _readOnly;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case bool cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: bool, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_readOnly = value;
}
}
private object? _subPath;
/// <remarks>
/// <strong>Property</strong>: subPath: A subdirectory under the data volume. The convenience instance mounts different directories under the same data volume to different directories of the container.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "subPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? SubPath
{
get => _subPath;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_subPath = value;
}
}
}
[JsiiInterface(nativeType: typeof(IVolumeProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.VolumeProperty")]
public interface IVolumeProperty
{
/// <remarks>
/// <strong>Property</strong>: name: The name of the volume.
/// </remarks>
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
object Name
{
get;
}
/// <remarks>
/// <strong>Property</strong>: type: The type of volume. Valid values:
/// - EmptyDirVolume: A data volume of type EmptyDir that represents an empty directory.
/// - NFSVolume: A data volume of type NFS that represents a network filesystem
/// - ConfigFileVolume: A data volume of type ConfigFile, which represents configuration files
/// - FlexVolume: Use FlexVolume plug-in to extend the storage type and support mounting cloud disk.
/// - HostPathVolume: A data volume of type HostPath, representing a file or directory of the host node.
/// - DiskVolume (not recommended) : Cloud disk volume FlexVolume is recommended to mount the cloud disk.
/// </remarks>
[JsiiProperty(name: "type", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
object Type
{
get;
}
/// <remarks>
/// <strong>Property</strong>: configFileVolumeConfigFileToPath: The path to the configuration file.
/// </remarks>
[JsiiProperty(name: "configFileVolumeConfigFileToPath", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.ConfigFileVolumeConfigFileToPathProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? ConfigFileVolumeConfigFileToPath
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: emptyDirVolumeMedium: The storage medium for EmptyDirVolume. By default, the file system on the node is used. Default value: not specified. Valid value: Memory. If this parameter is set to Memory, the EmptyDirVolume volume is stored in memory.
/// </remarks>
[JsiiProperty(name: "emptyDirVolumeMedium", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? EmptyDirVolumeMedium
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: flexVolumeDriver: Driver type when using the FlexVolume plug-in to mount a data volume. Valid values:
/// - alicloud\/disk: Mount the cloud disk
/// - alicloud\/nas: Mount NAS
/// - alicloud\/oss: Mount OSS
/// </remarks>
[JsiiProperty(name: "flexVolumeDriver", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? FlexVolumeDriver
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: flexVolumeFsType: The type of file system to mount depends, by default, on FlexVolume's script.
/// </remarks>
[JsiiProperty(name: "flexVolumeFsType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? FlexVolumeFsType
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: flexVolumeOptions: The options of FlexVolume.
/// </remarks>
[JsiiProperty(name: "flexVolumeOptions", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"primitive\":\"any\"},\"kind\":\"map\"}}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? FlexVolumeOptions
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: nfsVolumePath: The path to the NFS volume.
/// </remarks>
[JsiiProperty(name: "nfsVolumePath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? NfsVolumePath
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: nfsVolumeReadOnly: Default value: False.
/// </remarks>
[JsiiProperty(name: "nfsVolumeReadOnly", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? NfsVolumeReadOnly
{
get
{
return null;
}
}
/// <remarks>
/// <strong>Property</strong>: nfsVolumeServer: The IP address of the NFS server.
/// </remarks>
[JsiiProperty(name: "nfsVolumeServer", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
[Amazon.JSII.Runtime.Deputy.JsiiOptional]
object? NfsVolumeServer
{
get
{
return null;
}
}
[JsiiTypeProxy(nativeType: typeof(IVolumeProperty), fullyQualifiedName: "@alicloud/ros-cdk-eci.RosContainerGroup.VolumeProperty")]
internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IVolumeProperty
{
private _Proxy(ByRefValue reference): base(reference)
{
}
/// <remarks>
/// <strong>Property</strong>: name: The name of the volume.
/// </remarks>
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object Name
{
get => GetInstanceProperty<object>()!;
}
/// <remarks>
/// <strong>Property</strong>: type: The type of volume. Valid values:
/// - EmptyDirVolume: A data volume of type EmptyDir that represents an empty directory.
/// - NFSVolume: A data volume of type NFS that represents a network filesystem
/// - ConfigFileVolume: A data volume of type ConfigFile, which represents configuration files
/// - FlexVolume: Use FlexVolume plug-in to extend the storage type and support mounting cloud disk.
/// - HostPathVolume: A data volume of type HostPath, representing a file or directory of the host node.
/// - DiskVolume (not recommended) : Cloud disk volume FlexVolume is recommended to mount the cloud disk.
/// </remarks>
[JsiiProperty(name: "type", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object Type
{
get => GetInstanceProperty<object>()!;
}
/// <remarks>
/// <strong>Property</strong>: configFileVolumeConfigFileToPath: The path to the configuration file.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "configFileVolumeConfigFileToPath", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.ConfigFileVolumeConfigFileToPathProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? ConfigFileVolumeConfigFileToPath
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: emptyDirVolumeMedium: The storage medium for EmptyDirVolume. By default, the file system on the node is used. Default value: not specified. Valid value: Memory. If this parameter is set to Memory, the EmptyDirVolume volume is stored in memory.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "emptyDirVolumeMedium", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? EmptyDirVolumeMedium
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: flexVolumeDriver: Driver type when using the FlexVolume plug-in to mount a data volume. Valid values:
/// - alicloud\/disk: Mount the cloud disk
/// - alicloud\/nas: Mount NAS
/// - alicloud\/oss: Mount OSS
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "flexVolumeDriver", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? FlexVolumeDriver
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: flexVolumeFsType: The type of file system to mount depends, by default, on FlexVolume's script.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "flexVolumeFsType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? FlexVolumeFsType
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: flexVolumeOptions: The options of FlexVolume.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "flexVolumeOptions", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"primitive\":\"any\"},\"kind\":\"map\"}}]}}", isOptional: true)]
public object? FlexVolumeOptions
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: nfsVolumePath: The path to the NFS volume.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "nfsVolumePath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? NfsVolumePath
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: nfsVolumeReadOnly: Default value: False.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "nfsVolumeReadOnly", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? NfsVolumeReadOnly
{
get => GetInstanceProperty<object?>();
}
/// <remarks>
/// <strong>Property</strong>: nfsVolumeServer: The IP address of the NFS server.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "nfsVolumeServer", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? NfsVolumeServer
{
get => GetInstanceProperty<object?>();
}
}
}
#pragma warning disable CS8618
[JsiiByValue(fqn: "@alicloud/ros-cdk-eci.RosContainerGroup.VolumeProperty")]
public class VolumeProperty : AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IVolumeProperty
{
private object _name;
/// <remarks>
/// <strong>Property</strong>: name: The name of the volume.
/// </remarks>
[JsiiProperty(name: "name", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object Name
{
get => _name;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_name = value;
}
}
private object _type;
/// <remarks>
/// <strong>Property</strong>: type: The type of volume. Valid values:
/// - EmptyDirVolume: A data volume of type EmptyDir that represents an empty directory.
/// - NFSVolume: A data volume of type NFS that represents a network filesystem
/// - ConfigFileVolume: A data volume of type ConfigFile, which represents configuration files
/// - FlexVolume: Use FlexVolume plug-in to extend the storage type and support mounting cloud disk.
/// - HostPathVolume: A data volume of type HostPath, representing a file or directory of the host node.
/// - DiskVolume (not recommended) : Cloud disk volume FlexVolume is recommended to mount the cloud disk.
/// </remarks>
[JsiiProperty(name: "type", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")]
public object Type
{
get => _type;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_type = value;
}
}
private object? _configFileVolumeConfigFileToPath;
/// <remarks>
/// <strong>Property</strong>: configFileVolumeConfigFileToPath: The path to the configuration file.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "configFileVolumeConfigFileToPath", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-eci.RosContainerGroup.ConfigFileVolumeConfigFileToPathProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)]
public object? ConfigFileVolumeConfigFileToPath
{
get => _configFileVolumeConfigFileToPath;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case object[] cast_cd4240:
for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++)
{
switch (cast_cd4240[__idx_f64a5c])
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718:
break;
case AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IConfigFileVolumeConfigFileToPathProperty cast_201718:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718:
// Not enough information to type-check...
break;
case null:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IConfigFileVolumeConfigFileToPathProperty).FullName}; received null", nameof(value));
default:
throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Eci.RosContainerGroup.IConfigFileVolumeConfigFileToPathProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value));
}
}
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value));
}
}
_configFileVolumeConfigFileToPath = value;
}
}
private object? _emptyDirVolumeMedium;
/// <remarks>
/// <strong>Property</strong>: emptyDirVolumeMedium: The storage medium for EmptyDirVolume. By default, the file system on the node is used. Default value: not specified. Valid value: Memory. If this parameter is set to Memory, the EmptyDirVolume volume is stored in memory.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "emptyDirVolumeMedium", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? EmptyDirVolumeMedium
{
get => _emptyDirVolumeMedium;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_emptyDirVolumeMedium = value;
}
}
private object? _flexVolumeDriver;
/// <remarks>
/// <strong>Property</strong>: flexVolumeDriver: Driver type when using the FlexVolume plug-in to mount a data volume. Valid values:
/// - alicloud\/disk: Mount the cloud disk
/// - alicloud\/nas: Mount NAS
/// - alicloud\/oss: Mount OSS
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "flexVolumeDriver", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? FlexVolumeDriver
{
get => _flexVolumeDriver;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_flexVolumeDriver = value;
}
}
private object? _flexVolumeFsType;
/// <remarks>
/// <strong>Property</strong>: flexVolumeFsType: The type of file system to mount depends, by default, on FlexVolume's script.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "flexVolumeFsType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? FlexVolumeFsType
{
get => _flexVolumeFsType;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_flexVolumeFsType = value;
}
}
private object? _flexVolumeOptions;
/// <remarks>
/// <strong>Property</strong>: flexVolumeOptions: The options of FlexVolume.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "flexVolumeOptions", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"primitive\":\"any\"},\"kind\":\"map\"}}]}}", isOptional: true)]
public object? FlexVolumeOptions
{
get => _flexVolumeOptions;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case System.Collections.Generic.IDictionary<string, object> cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, System.Collections.Generic.IDictionary<string, object>; received {value.GetType().FullName}", nameof(value));
}
}
_flexVolumeOptions = value;
}
}
private object? _nfsVolumePath;
/// <remarks>
/// <strong>Property</strong>: nfsVolumePath: The path to the NFS volume.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "nfsVolumePath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? NfsVolumePath
{
get => _nfsVolumePath;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_nfsVolumePath = value;
}
}
private object? _nfsVolumeReadOnly;
/// <remarks>
/// <strong>Property</strong>: nfsVolumeReadOnly: Default value: False.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "nfsVolumeReadOnly", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? NfsVolumeReadOnly
{
get => _nfsVolumeReadOnly;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case bool cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: bool, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_nfsVolumeReadOnly = value;
}
}
private object? _nfsVolumeServer;
/// <remarks>
/// <strong>Property</strong>: nfsVolumeServer: The IP address of the NFS server.
/// </remarks>
[JsiiOptional]
[JsiiProperty(name: "nfsVolumeServer", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)]
public object? NfsVolumeServer
{
get => _nfsVolumeServer;
set
{
if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking)
{
switch (value)
{
case string cast_cd4240:
break;
case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240:
break;
case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240:
// Not enough information to type-check...
break;
case null:
break;
default:
throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value));
}
}
_nfsVolumeServer = value;
}
}
}
}
}