1. Packages
  2. Spotinst Provider
  3. API Docs
  4. oceancd
  5. RolloutSpec
Spotinst v3.100.0 published on Wednesday, Nov 20, 2024 by Pulumi

spotinst.oceancd.RolloutSpec

Explore with Pulumi AI

spotinst logo
Spotinst v3.100.0 published on Wednesday, Nov 20, 2024 by Pulumi

    Manages a Spotinst OceanCD Rollout Spec resource.

    Create RolloutSpec Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new RolloutSpec(name: string, args: RolloutSpecArgs, opts?: CustomResourceOptions);
    @overload
    def RolloutSpec(resource_name: str,
                    args: RolloutSpecArgs,
                    opts: Optional[ResourceOptions] = None)
    
    @overload
    def RolloutSpec(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    rollout_spec_name: Optional[str] = None,
                    strategy: Optional[RolloutSpecStrategyArgs] = None,
                    failure_policy: Optional[RolloutSpecFailurePolicyArgs] = None,
                    spot_deployment: Optional[RolloutSpecSpotDeploymentArgs] = None,
                    spot_deployments: Optional[Sequence[RolloutSpecSpotDeploymentArgs]] = None,
                    traffic: Optional[RolloutSpecTrafficArgs] = None)
    func NewRolloutSpec(ctx *Context, name string, args RolloutSpecArgs, opts ...ResourceOption) (*RolloutSpec, error)
    public RolloutSpec(string name, RolloutSpecArgs args, CustomResourceOptions? opts = null)
    public RolloutSpec(String name, RolloutSpecArgs args)
    public RolloutSpec(String name, RolloutSpecArgs args, CustomResourceOptions options)
    
    type: spotinst:oceancd:RolloutSpec
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args RolloutSpecArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args RolloutSpecArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args RolloutSpecArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args RolloutSpecArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args RolloutSpecArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var rolloutSpecResource = new SpotInst.Oceancd.RolloutSpec("rolloutSpecResource", new()
    {
        RolloutSpecName = "string",
        Strategy = new SpotInst.Oceancd.Inputs.RolloutSpecStrategyArgs
        {
            StrategyName = "string",
            Args = new[]
            {
                new SpotInst.Oceancd.Inputs.RolloutSpecStrategyArgArgs
                {
                    ArgName = "string",
                    ArgValue = "string",
                    ValueFrom = new SpotInst.Oceancd.Inputs.RolloutSpecStrategyArgValueFromArgs
                    {
                        FieldRef = new SpotInst.Oceancd.Inputs.RolloutSpecStrategyArgValueFromFieldRefArgs
                        {
                            FieldPath = "string",
                        },
                    },
                },
            },
        },
        FailurePolicy = new SpotInst.Oceancd.Inputs.RolloutSpecFailurePolicyArgs
        {
            Action = "string",
        },
        SpotDeployment = new SpotInst.Oceancd.Inputs.RolloutSpecSpotDeploymentArgs
        {
            SpotDeploymentsClusterId = "string",
            SpotDeploymentsName = "string",
            SpotDeploymentsNamespace = "string",
        },
        SpotDeployments = new[]
        {
            new SpotInst.Oceancd.Inputs.RolloutSpecSpotDeploymentArgs
            {
                SpotDeploymentsClusterId = "string",
                SpotDeploymentsName = "string",
                SpotDeploymentsNamespace = "string",
            },
        },
        Traffic = new SpotInst.Oceancd.Inputs.RolloutSpecTrafficArgs
        {
            Alb = new SpotInst.Oceancd.Inputs.RolloutSpecTrafficAlbArgs
            {
                AlbIngress = "string",
                AlbRootService = "string",
                ServicePort = 0,
                AlbAnnotationPrefix = "string",
                StickinessConfig = new SpotInst.Oceancd.Inputs.RolloutSpecTrafficAlbStickinessConfigArgs
                {
                    DurationSeconds = 0,
                    Enabled = false,
                },
            },
            Ambassador = new SpotInst.Oceancd.Inputs.RolloutSpecTrafficAmbassadorArgs
            {
                Mappings = new[]
                {
                    "string",
                },
            },
            CanaryService = "string",
            Istio = new SpotInst.Oceancd.Inputs.RolloutSpecTrafficIstioArgs
            {
                VirtualServices = new[]
                {
                    new SpotInst.Oceancd.Inputs.RolloutSpecTrafficIstioVirtualServiceArgs
                    {
                        VirtualServiceName = "string",
                        TlsRoutes = new[]
                        {
                            new SpotInst.Oceancd.Inputs.RolloutSpecTrafficIstioVirtualServiceTlsRouteArgs
                            {
                                Port = 0,
                                SniHosts = new[]
                                {
                                    "string",
                                },
                            },
                        },
                        VirtualServiceRoutes = new[]
                        {
                            "string",
                        },
                    },
                },
                DestinationRule = new SpotInst.Oceancd.Inputs.RolloutSpecTrafficIstioDestinationRuleArgs
                {
                    CanarySubsetName = "string",
                    DestinationRuleName = "string",
                    StableSubsetName = "string",
                },
            },
            Nginx = new SpotInst.Oceancd.Inputs.RolloutSpecTrafficNginxArgs
            {
                StableIngress = "string",
                AdditionalIngressAnnotation = new SpotInst.Oceancd.Inputs.RolloutSpecTrafficNginxAdditionalIngressAnnotationArgs
                {
                    CanaryByHeader = "string",
                    Key1 = "string",
                },
                NginxAnnotationPrefix = "string",
            },
            PingPong = new SpotInst.Oceancd.Inputs.RolloutSpecTrafficPingPongArgs
            {
                PingService = "string",
                PongService = "string",
            },
            Smi = new SpotInst.Oceancd.Inputs.RolloutSpecTrafficSmiArgs
            {
                SmiRootService = "string",
                TrafficSplitName = "string",
            },
            StableService = "string",
        },
    });
    
    example, err := oceancd.NewRolloutSpec(ctx, "rolloutSpecResource", &oceancd.RolloutSpecArgs{
    	RolloutSpecName: pulumi.String("string"),
    	Strategy: &oceancd.RolloutSpecStrategyArgs{
    		StrategyName: pulumi.String("string"),
    		Args: oceancd.RolloutSpecStrategyArgArray{
    			&oceancd.RolloutSpecStrategyArgArgs{
    				ArgName:  pulumi.String("string"),
    				ArgValue: pulumi.String("string"),
    				ValueFrom: &oceancd.RolloutSpecStrategyArgValueFromArgs{
    					FieldRef: &oceancd.RolloutSpecStrategyArgValueFromFieldRefArgs{
    						FieldPath: pulumi.String("string"),
    					},
    				},
    			},
    		},
    	},
    	FailurePolicy: &oceancd.RolloutSpecFailurePolicyArgs{
    		Action: pulumi.String("string"),
    	},
    	SpotDeployment: &oceancd.RolloutSpecSpotDeploymentArgs{
    		SpotDeploymentsClusterId: pulumi.String("string"),
    		SpotDeploymentsName:      pulumi.String("string"),
    		SpotDeploymentsNamespace: pulumi.String("string"),
    	},
    	SpotDeployments: oceancd.RolloutSpecSpotDeploymentArray{
    		&oceancd.RolloutSpecSpotDeploymentArgs{
    			SpotDeploymentsClusterId: pulumi.String("string"),
    			SpotDeploymentsName:      pulumi.String("string"),
    			SpotDeploymentsNamespace: pulumi.String("string"),
    		},
    	},
    	Traffic: &oceancd.RolloutSpecTrafficArgs{
    		Alb: &oceancd.RolloutSpecTrafficAlbArgs{
    			AlbIngress:          pulumi.String("string"),
    			AlbRootService:      pulumi.String("string"),
    			ServicePort:         pulumi.Int(0),
    			AlbAnnotationPrefix: pulumi.String("string"),
    			StickinessConfig: &oceancd.RolloutSpecTrafficAlbStickinessConfigArgs{
    				DurationSeconds: pulumi.Int(0),
    				Enabled:         pulumi.Bool(false),
    			},
    		},
    		Ambassador: &oceancd.RolloutSpecTrafficAmbassadorArgs{
    			Mappings: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    		CanaryService: pulumi.String("string"),
    		Istio: &oceancd.RolloutSpecTrafficIstioArgs{
    			VirtualServices: oceancd.RolloutSpecTrafficIstioVirtualServiceArray{
    				&oceancd.RolloutSpecTrafficIstioVirtualServiceArgs{
    					VirtualServiceName: pulumi.String("string"),
    					TlsRoutes: oceancd.RolloutSpecTrafficIstioVirtualServiceTlsRouteArray{
    						&oceancd.RolloutSpecTrafficIstioVirtualServiceTlsRouteArgs{
    							Port: pulumi.Int(0),
    							SniHosts: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    						},
    					},
    					VirtualServiceRoutes: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    				},
    			},
    			DestinationRule: &oceancd.RolloutSpecTrafficIstioDestinationRuleArgs{
    				CanarySubsetName:    pulumi.String("string"),
    				DestinationRuleName: pulumi.String("string"),
    				StableSubsetName:    pulumi.String("string"),
    			},
    		},
    		Nginx: &oceancd.RolloutSpecTrafficNginxArgs{
    			StableIngress: pulumi.String("string"),
    			AdditionalIngressAnnotation: &oceancd.RolloutSpecTrafficNginxAdditionalIngressAnnotationArgs{
    				CanaryByHeader: pulumi.String("string"),
    				Key1:           pulumi.String("string"),
    			},
    			NginxAnnotationPrefix: pulumi.String("string"),
    		},
    		PingPong: &oceancd.RolloutSpecTrafficPingPongArgs{
    			PingService: pulumi.String("string"),
    			PongService: pulumi.String("string"),
    		},
    		Smi: &oceancd.RolloutSpecTrafficSmiArgs{
    			SmiRootService:   pulumi.String("string"),
    			TrafficSplitName: pulumi.String("string"),
    		},
    		StableService: pulumi.String("string"),
    	},
    })
    
    var rolloutSpecResource = new RolloutSpec("rolloutSpecResource", RolloutSpecArgs.builder()
        .rolloutSpecName("string")
        .strategy(RolloutSpecStrategyArgs.builder()
            .strategyName("string")
            .args(RolloutSpecStrategyArgArgs.builder()
                .argName("string")
                .argValue("string")
                .valueFrom(RolloutSpecStrategyArgValueFromArgs.builder()
                    .fieldRef(RolloutSpecStrategyArgValueFromFieldRefArgs.builder()
                        .fieldPath("string")
                        .build())
                    .build())
                .build())
            .build())
        .failurePolicy(RolloutSpecFailurePolicyArgs.builder()
            .action("string")
            .build())
        .spotDeployment(RolloutSpecSpotDeploymentArgs.builder()
            .spotDeploymentsClusterId("string")
            .spotDeploymentsName("string")
            .spotDeploymentsNamespace("string")
            .build())
        .spotDeployments(RolloutSpecSpotDeploymentArgs.builder()
            .spotDeploymentsClusterId("string")
            .spotDeploymentsName("string")
            .spotDeploymentsNamespace("string")
            .build())
        .traffic(RolloutSpecTrafficArgs.builder()
            .alb(RolloutSpecTrafficAlbArgs.builder()
                .albIngress("string")
                .albRootService("string")
                .servicePort(0)
                .albAnnotationPrefix("string")
                .stickinessConfig(RolloutSpecTrafficAlbStickinessConfigArgs.builder()
                    .durationSeconds(0)
                    .enabled(false)
                    .build())
                .build())
            .ambassador(RolloutSpecTrafficAmbassadorArgs.builder()
                .mappings("string")
                .build())
            .canaryService("string")
            .istio(RolloutSpecTrafficIstioArgs.builder()
                .virtualServices(RolloutSpecTrafficIstioVirtualServiceArgs.builder()
                    .virtualServiceName("string")
                    .tlsRoutes(RolloutSpecTrafficIstioVirtualServiceTlsRouteArgs.builder()
                        .port(0)
                        .sniHosts("string")
                        .build())
                    .virtualServiceRoutes("string")
                    .build())
                .destinationRule(RolloutSpecTrafficIstioDestinationRuleArgs.builder()
                    .canarySubsetName("string")
                    .destinationRuleName("string")
                    .stableSubsetName("string")
                    .build())
                .build())
            .nginx(RolloutSpecTrafficNginxArgs.builder()
                .stableIngress("string")
                .additionalIngressAnnotation(RolloutSpecTrafficNginxAdditionalIngressAnnotationArgs.builder()
                    .canaryByHeader("string")
                    .key1("string")
                    .build())
                .nginxAnnotationPrefix("string")
                .build())
            .pingPong(RolloutSpecTrafficPingPongArgs.builder()
                .pingService("string")
                .pongService("string")
                .build())
            .smi(RolloutSpecTrafficSmiArgs.builder()
                .smiRootService("string")
                .trafficSplitName("string")
                .build())
            .stableService("string")
            .build())
        .build());
    
    rollout_spec_resource = spotinst.oceancd.RolloutSpec("rolloutSpecResource",
        rollout_spec_name="string",
        strategy={
            "strategy_name": "string",
            "args": [{
                "arg_name": "string",
                "arg_value": "string",
                "value_from": {
                    "field_ref": {
                        "field_path": "string",
                    },
                },
            }],
        },
        failure_policy={
            "action": "string",
        },
        spot_deployment={
            "spot_deployments_cluster_id": "string",
            "spot_deployments_name": "string",
            "spot_deployments_namespace": "string",
        },
        spot_deployments=[{
            "spot_deployments_cluster_id": "string",
            "spot_deployments_name": "string",
            "spot_deployments_namespace": "string",
        }],
        traffic={
            "alb": {
                "alb_ingress": "string",
                "alb_root_service": "string",
                "service_port": 0,
                "alb_annotation_prefix": "string",
                "stickiness_config": {
                    "duration_seconds": 0,
                    "enabled": False,
                },
            },
            "ambassador": {
                "mappings": ["string"],
            },
            "canary_service": "string",
            "istio": {
                "virtual_services": [{
                    "virtual_service_name": "string",
                    "tls_routes": [{
                        "port": 0,
                        "sni_hosts": ["string"],
                    }],
                    "virtual_service_routes": ["string"],
                }],
                "destination_rule": {
                    "canary_subset_name": "string",
                    "destination_rule_name": "string",
                    "stable_subset_name": "string",
                },
            },
            "nginx": {
                "stable_ingress": "string",
                "additional_ingress_annotation": {
                    "canary_by_header": "string",
                    "key1": "string",
                },
                "nginx_annotation_prefix": "string",
            },
            "ping_pong": {
                "ping_service": "string",
                "pong_service": "string",
            },
            "smi": {
                "smi_root_service": "string",
                "traffic_split_name": "string",
            },
            "stable_service": "string",
        })
    
    const rolloutSpecResource = new spotinst.oceancd.RolloutSpec("rolloutSpecResource", {
        rolloutSpecName: "string",
        strategy: {
            strategyName: "string",
            args: [{
                argName: "string",
                argValue: "string",
                valueFrom: {
                    fieldRef: {
                        fieldPath: "string",
                    },
                },
            }],
        },
        failurePolicy: {
            action: "string",
        },
        spotDeployment: {
            spotDeploymentsClusterId: "string",
            spotDeploymentsName: "string",
            spotDeploymentsNamespace: "string",
        },
        spotDeployments: [{
            spotDeploymentsClusterId: "string",
            spotDeploymentsName: "string",
            spotDeploymentsNamespace: "string",
        }],
        traffic: {
            alb: {
                albIngress: "string",
                albRootService: "string",
                servicePort: 0,
                albAnnotationPrefix: "string",
                stickinessConfig: {
                    durationSeconds: 0,
                    enabled: false,
                },
            },
            ambassador: {
                mappings: ["string"],
            },
            canaryService: "string",
            istio: {
                virtualServices: [{
                    virtualServiceName: "string",
                    tlsRoutes: [{
                        port: 0,
                        sniHosts: ["string"],
                    }],
                    virtualServiceRoutes: ["string"],
                }],
                destinationRule: {
                    canarySubsetName: "string",
                    destinationRuleName: "string",
                    stableSubsetName: "string",
                },
            },
            nginx: {
                stableIngress: "string",
                additionalIngressAnnotation: {
                    canaryByHeader: "string",
                    key1: "string",
                },
                nginxAnnotationPrefix: "string",
            },
            pingPong: {
                pingService: "string",
                pongService: "string",
            },
            smi: {
                smiRootService: "string",
                trafficSplitName: "string",
            },
            stableService: "string",
        },
    });
    
    type: spotinst:oceancd:RolloutSpec
    properties:
        failurePolicy:
            action: string
        rolloutSpecName: string
        spotDeployment:
            spotDeploymentsClusterId: string
            spotDeploymentsName: string
            spotDeploymentsNamespace: string
        spotDeployments:
            - spotDeploymentsClusterId: string
              spotDeploymentsName: string
              spotDeploymentsNamespace: string
        strategy:
            args:
                - argName: string
                  argValue: string
                  valueFrom:
                    fieldRef:
                        fieldPath: string
            strategyName: string
        traffic:
            alb:
                albAnnotationPrefix: string
                albIngress: string
                albRootService: string
                servicePort: 0
                stickinessConfig:
                    durationSeconds: 0
                    enabled: false
            ambassador:
                mappings:
                    - string
            canaryService: string
            istio:
                destinationRule:
                    canarySubsetName: string
                    destinationRuleName: string
                    stableSubsetName: string
                virtualServices:
                    - tlsRoutes:
                        - port: 0
                          sniHosts:
                            - string
                      virtualServiceName: string
                      virtualServiceRoutes:
                        - string
            nginx:
                additionalIngressAnnotation:
                    canaryByHeader: string
                    key1: string
                nginxAnnotationPrefix: string
                stableIngress: string
            pingPong:
                pingService: string
                pongService: string
            smi:
                smiRootService: string
                trafficSplitName: string
            stableService: string
    

    RolloutSpec Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The RolloutSpec resource accepts the following input properties:

    RolloutSpecName string
    Identifier name for Ocean CD Rollout Spec. Must be unique
    Strategy Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecStrategy
    Determines the Ocean CD strategy
    FailurePolicy Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecFailurePolicy
    Holds information on how to react when failure happens.
    SpotDeployment Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecSpotDeployment
    Represents the SpotDeployment selector.
    SpotDeployments List<Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecSpotDeployment>
    You must specify either spotDeployment OR spotDeployments but not both. Every SpotDeployment has to be unique. If more than one SpotDeployment has been configured, no traffic managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
    Traffic Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecTraffic
    Hosts all of the supported service meshes needed to enable more fine-grained traffic routing. In case SpotDeployments contains more than one SpotDeployment the traffic manager may not be configured.
    RolloutSpecName string
    Identifier name for Ocean CD Rollout Spec. Must be unique
    Strategy RolloutSpecStrategyArgs
    Determines the Ocean CD strategy
    FailurePolicy RolloutSpecFailurePolicyArgs
    Holds information on how to react when failure happens.
    SpotDeployment RolloutSpecSpotDeploymentArgs
    Represents the SpotDeployment selector.
    SpotDeployments []RolloutSpecSpotDeploymentArgs
    You must specify either spotDeployment OR spotDeployments but not both. Every SpotDeployment has to be unique. If more than one SpotDeployment has been configured, no traffic managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
    Traffic RolloutSpecTrafficArgs
    Hosts all of the supported service meshes needed to enable more fine-grained traffic routing. In case SpotDeployments contains more than one SpotDeployment the traffic manager may not be configured.
    rolloutSpecName String
    Identifier name for Ocean CD Rollout Spec. Must be unique
    strategy RolloutSpecStrategy
    Determines the Ocean CD strategy
    failurePolicy RolloutSpecFailurePolicy
    Holds information on how to react when failure happens.
    spotDeployment RolloutSpecSpotDeployment
    Represents the SpotDeployment selector.
    spotDeployments List<RolloutSpecSpotDeployment>
    You must specify either spotDeployment OR spotDeployments but not both. Every SpotDeployment has to be unique. If more than one SpotDeployment has been configured, no traffic managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
    traffic RolloutSpecTraffic
    Hosts all of the supported service meshes needed to enable more fine-grained traffic routing. In case SpotDeployments contains more than one SpotDeployment the traffic manager may not be configured.
    rolloutSpecName string
    Identifier name for Ocean CD Rollout Spec. Must be unique
    strategy RolloutSpecStrategy
    Determines the Ocean CD strategy
    failurePolicy RolloutSpecFailurePolicy
    Holds information on how to react when failure happens.
    spotDeployment RolloutSpecSpotDeployment
    Represents the SpotDeployment selector.
    spotDeployments RolloutSpecSpotDeployment[]
    You must specify either spotDeployment OR spotDeployments but not both. Every SpotDeployment has to be unique. If more than one SpotDeployment has been configured, no traffic managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
    traffic RolloutSpecTraffic
    Hosts all of the supported service meshes needed to enable more fine-grained traffic routing. In case SpotDeployments contains more than one SpotDeployment the traffic manager may not be configured.
    rollout_spec_name str
    Identifier name for Ocean CD Rollout Spec. Must be unique
    strategy RolloutSpecStrategyArgs
    Determines the Ocean CD strategy
    failure_policy RolloutSpecFailurePolicyArgs
    Holds information on how to react when failure happens.
    spot_deployment RolloutSpecSpotDeploymentArgs
    Represents the SpotDeployment selector.
    spot_deployments Sequence[RolloutSpecSpotDeploymentArgs]
    You must specify either spotDeployment OR spotDeployments but not both. Every SpotDeployment has to be unique. If more than one SpotDeployment has been configured, no traffic managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
    traffic RolloutSpecTrafficArgs
    Hosts all of the supported service meshes needed to enable more fine-grained traffic routing. In case SpotDeployments contains more than one SpotDeployment the traffic manager may not be configured.
    rolloutSpecName String
    Identifier name for Ocean CD Rollout Spec. Must be unique
    strategy Property Map
    Determines the Ocean CD strategy
    failurePolicy Property Map
    Holds information on how to react when failure happens.
    spotDeployment Property Map
    Represents the SpotDeployment selector.
    spotDeployments List<Property Map>
    You must specify either spotDeployment OR spotDeployments but not both. Every SpotDeployment has to be unique. If more than one SpotDeployment has been configured, no traffic managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
    traffic Property Map
    Hosts all of the supported service meshes needed to enable more fine-grained traffic routing. In case SpotDeployments contains more than one SpotDeployment the traffic manager may not be configured.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the RolloutSpec resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing RolloutSpec Resource

    Get an existing RolloutSpec resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: RolloutSpecState, opts?: CustomResourceOptions): RolloutSpec
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            failure_policy: Optional[RolloutSpecFailurePolicyArgs] = None,
            rollout_spec_name: Optional[str] = None,
            spot_deployment: Optional[RolloutSpecSpotDeploymentArgs] = None,
            spot_deployments: Optional[Sequence[RolloutSpecSpotDeploymentArgs]] = None,
            strategy: Optional[RolloutSpecStrategyArgs] = None,
            traffic: Optional[RolloutSpecTrafficArgs] = None) -> RolloutSpec
    func GetRolloutSpec(ctx *Context, name string, id IDInput, state *RolloutSpecState, opts ...ResourceOption) (*RolloutSpec, error)
    public static RolloutSpec Get(string name, Input<string> id, RolloutSpecState? state, CustomResourceOptions? opts = null)
    public static RolloutSpec get(String name, Output<String> id, RolloutSpecState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    FailurePolicy Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecFailurePolicy
    Holds information on how to react when failure happens.
    RolloutSpecName string
    Identifier name for Ocean CD Rollout Spec. Must be unique
    SpotDeployment Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecSpotDeployment
    Represents the SpotDeployment selector.
    SpotDeployments List<Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecSpotDeployment>
    You must specify either spotDeployment OR spotDeployments but not both. Every SpotDeployment has to be unique. If more than one SpotDeployment has been configured, no traffic managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
    Strategy Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecStrategy
    Determines the Ocean CD strategy
    Traffic Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecTraffic
    Hosts all of the supported service meshes needed to enable more fine-grained traffic routing. In case SpotDeployments contains more than one SpotDeployment the traffic manager may not be configured.
    FailurePolicy RolloutSpecFailurePolicyArgs
    Holds information on how to react when failure happens.
    RolloutSpecName string
    Identifier name for Ocean CD Rollout Spec. Must be unique
    SpotDeployment RolloutSpecSpotDeploymentArgs
    Represents the SpotDeployment selector.
    SpotDeployments []RolloutSpecSpotDeploymentArgs
    You must specify either spotDeployment OR spotDeployments but not both. Every SpotDeployment has to be unique. If more than one SpotDeployment has been configured, no traffic managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
    Strategy RolloutSpecStrategyArgs
    Determines the Ocean CD strategy
    Traffic RolloutSpecTrafficArgs
    Hosts all of the supported service meshes needed to enable more fine-grained traffic routing. In case SpotDeployments contains more than one SpotDeployment the traffic manager may not be configured.
    failurePolicy RolloutSpecFailurePolicy
    Holds information on how to react when failure happens.
    rolloutSpecName String
    Identifier name for Ocean CD Rollout Spec. Must be unique
    spotDeployment RolloutSpecSpotDeployment
    Represents the SpotDeployment selector.
    spotDeployments List<RolloutSpecSpotDeployment>
    You must specify either spotDeployment OR spotDeployments but not both. Every SpotDeployment has to be unique. If more than one SpotDeployment has been configured, no traffic managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
    strategy RolloutSpecStrategy
    Determines the Ocean CD strategy
    traffic RolloutSpecTraffic
    Hosts all of the supported service meshes needed to enable more fine-grained traffic routing. In case SpotDeployments contains more than one SpotDeployment the traffic manager may not be configured.
    failurePolicy RolloutSpecFailurePolicy
    Holds information on how to react when failure happens.
    rolloutSpecName string
    Identifier name for Ocean CD Rollout Spec. Must be unique
    spotDeployment RolloutSpecSpotDeployment
    Represents the SpotDeployment selector.
    spotDeployments RolloutSpecSpotDeployment[]
    You must specify either spotDeployment OR spotDeployments but not both. Every SpotDeployment has to be unique. If more than one SpotDeployment has been configured, no traffic managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
    strategy RolloutSpecStrategy
    Determines the Ocean CD strategy
    traffic RolloutSpecTraffic
    Hosts all of the supported service meshes needed to enable more fine-grained traffic routing. In case SpotDeployments contains more than one SpotDeployment the traffic manager may not be configured.
    failure_policy RolloutSpecFailurePolicyArgs
    Holds information on how to react when failure happens.
    rollout_spec_name str
    Identifier name for Ocean CD Rollout Spec. Must be unique
    spot_deployment RolloutSpecSpotDeploymentArgs
    Represents the SpotDeployment selector.
    spot_deployments Sequence[RolloutSpecSpotDeploymentArgs]
    You must specify either spotDeployment OR spotDeployments but not both. Every SpotDeployment has to be unique. If more than one SpotDeployment has been configured, no traffic managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
    strategy RolloutSpecStrategyArgs
    Determines the Ocean CD strategy
    traffic RolloutSpecTrafficArgs
    Hosts all of the supported service meshes needed to enable more fine-grained traffic routing. In case SpotDeployments contains more than one SpotDeployment the traffic manager may not be configured.
    failurePolicy Property Map
    Holds information on how to react when failure happens.
    rolloutSpecName String
    Identifier name for Ocean CD Rollout Spec. Must be unique
    spotDeployment Property Map
    Represents the SpotDeployment selector.
    spotDeployments List<Property Map>
    You must specify either spotDeployment OR spotDeployments but not both. Every SpotDeployment has to be unique. If more than one SpotDeployment has been configured, no traffic managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
    strategy Property Map
    Determines the Ocean CD strategy
    traffic Property Map
    Hosts all of the supported service meshes needed to enable more fine-grained traffic routing. In case SpotDeployments contains more than one SpotDeployment the traffic manager may not be configured.

    Supporting Types

    RolloutSpecFailurePolicy, RolloutSpecFailurePolicyArgs

    Action string
    Choose an action to perform on failure. Default is abort. Enum: "abort" "pause" "promote".
    Action string
    Choose an action to perform on failure. Default is abort. Enum: "abort" "pause" "promote".
    action String
    Choose an action to perform on failure. Default is abort. Enum: "abort" "pause" "promote".
    action string
    Choose an action to perform on failure. Default is abort. Enum: "abort" "pause" "promote".
    action str
    Choose an action to perform on failure. Default is abort. Enum: "abort" "pause" "promote".
    action String
    Choose an action to perform on failure. Default is abort. Enum: "abort" "pause" "promote".

    RolloutSpecSpotDeployment, RolloutSpecSpotDeploymentArgs

    SpotDeploymentsClusterId string
    Ocean CD cluster identifier for the references SpotDeployment.
    SpotDeploymentsName string
    The name of the SpotDeployment resource
    SpotDeploymentsNamespace string
    The namespace which the SpotDeployment resource exists within.
    SpotDeploymentsClusterId string
    Ocean CD cluster identifier for the references SpotDeployment.
    SpotDeploymentsName string
    The name of the SpotDeployment resource
    SpotDeploymentsNamespace string
    The namespace which the SpotDeployment resource exists within.
    spotDeploymentsClusterId String
    Ocean CD cluster identifier for the references SpotDeployment.
    spotDeploymentsName String
    The name of the SpotDeployment resource
    spotDeploymentsNamespace String
    The namespace which the SpotDeployment resource exists within.
    spotDeploymentsClusterId string
    Ocean CD cluster identifier for the references SpotDeployment.
    spotDeploymentsName string
    The name of the SpotDeployment resource
    spotDeploymentsNamespace string
    The namespace which the SpotDeployment resource exists within.
    spot_deployments_cluster_id str
    Ocean CD cluster identifier for the references SpotDeployment.
    spot_deployments_name str
    The name of the SpotDeployment resource
    spot_deployments_namespace str
    The namespace which the SpotDeployment resource exists within.
    spotDeploymentsClusterId String
    Ocean CD cluster identifier for the references SpotDeployment.
    spotDeploymentsName String
    The name of the SpotDeployment resource
    spotDeploymentsNamespace String
    The namespace which the SpotDeployment resource exists within.

    RolloutSpecStrategy, RolloutSpecStrategyArgs

    StrategyName string
    Ocean CD strategy name identifier.
    Args List<Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecStrategyArg>
    Arguments defined in Verification Templates.
    StrategyName string
    Ocean CD strategy name identifier.
    Args []RolloutSpecStrategyArg
    Arguments defined in Verification Templates.
    strategyName String
    Ocean CD strategy name identifier.
    args List<RolloutSpecStrategyArg>
    Arguments defined in Verification Templates.
    strategyName string
    Ocean CD strategy name identifier.
    args RolloutSpecStrategyArg[]
    Arguments defined in Verification Templates.
    strategy_name str
    Ocean CD strategy name identifier.
    args Sequence[RolloutSpecStrategyArg]
    Arguments defined in Verification Templates.
    strategyName String
    Ocean CD strategy name identifier.
    args List<Property Map>
    Arguments defined in Verification Templates.

    RolloutSpecStrategyArg, RolloutSpecStrategyArgArgs

    ArgName string
    Name of an argument.
    ArgValue string
    Value of an argument.
    ValueFrom Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecStrategyArgValueFrom
    Defines from where to get the value of an argument.
    ArgName string
    Name of an argument.
    ArgValue string
    Value of an argument.
    ValueFrom RolloutSpecStrategyArgValueFrom
    Defines from where to get the value of an argument.
    argName String
    Name of an argument.
    argValue String
    Value of an argument.
    valueFrom RolloutSpecStrategyArgValueFrom
    Defines from where to get the value of an argument.
    argName string
    Name of an argument.
    argValue string
    Value of an argument.
    valueFrom RolloutSpecStrategyArgValueFrom
    Defines from where to get the value of an argument.
    arg_name str
    Name of an argument.
    arg_value str
    Value of an argument.
    value_from RolloutSpecStrategyArgValueFrom
    Defines from where to get the value of an argument.
    argName String
    Name of an argument.
    argValue String
    Value of an argument.
    valueFrom Property Map
    Defines from where to get the value of an argument.

    RolloutSpecStrategyArgValueFrom, RolloutSpecStrategyArgValueFromArgs

    FieldRef Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecStrategyArgValueFromFieldRef
    Defines the field path from where to get the value of an argument.
    FieldRef RolloutSpecStrategyArgValueFromFieldRef
    Defines the field path from where to get the value of an argument.
    fieldRef RolloutSpecStrategyArgValueFromFieldRef
    Defines the field path from where to get the value of an argument.
    fieldRef RolloutSpecStrategyArgValueFromFieldRef
    Defines the field path from where to get the value of an argument.
    field_ref RolloutSpecStrategyArgValueFromFieldRef
    Defines the field path from where to get the value of an argument.
    fieldRef Property Map
    Defines the field path from where to get the value of an argument.

    RolloutSpecStrategyArgValueFromFieldRef, RolloutSpecStrategyArgValueFromFieldRefArgs

    FieldPath string
    Path to SpotDeployment's field from where to get the value of an argument.
    FieldPath string
    Path to SpotDeployment's field from where to get the value of an argument.
    fieldPath String
    Path to SpotDeployment's field from where to get the value of an argument.
    fieldPath string
    Path to SpotDeployment's field from where to get the value of an argument.
    field_path str
    Path to SpotDeployment's field from where to get the value of an argument.
    fieldPath String
    Path to SpotDeployment's field from where to get the value of an argument.

    RolloutSpecTraffic, RolloutSpecTrafficArgs

    Alb Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecTrafficAlb
    Holds ALB Ingress specific configuration to route traffic.
    Ambassador Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecTrafficAmbassador
    Holds specific configuration to use Ambassador to route traffic.
    CanaryService string
    The canary service name.
    Istio Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecTrafficIstio
    Holds Istio specific configuration to route traffic.
    Nginx Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecTrafficNginx
    Holds Nginx Ingress specific configuration to route traffic.
    PingPong Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecTrafficPingPong
    Holds the ping and pong services. You can use pingPong field only when using ALB as a traffic manager with the IP Mode approach.
    Smi Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecTrafficSmi
    Holds TrafficSplit specific configuration to route traffic.
    StableService string
    The stable service name.
    Alb RolloutSpecTrafficAlb
    Holds ALB Ingress specific configuration to route traffic.
    Ambassador RolloutSpecTrafficAmbassador
    Holds specific configuration to use Ambassador to route traffic.
    CanaryService string
    The canary service name.
    Istio RolloutSpecTrafficIstio
    Holds Istio specific configuration to route traffic.
    Nginx RolloutSpecTrafficNginx
    Holds Nginx Ingress specific configuration to route traffic.
    PingPong RolloutSpecTrafficPingPong
    Holds the ping and pong services. You can use pingPong field only when using ALB as a traffic manager with the IP Mode approach.
    Smi RolloutSpecTrafficSmi
    Holds TrafficSplit specific configuration to route traffic.
    StableService string
    The stable service name.
    alb RolloutSpecTrafficAlb
    Holds ALB Ingress specific configuration to route traffic.
    ambassador RolloutSpecTrafficAmbassador
    Holds specific configuration to use Ambassador to route traffic.
    canaryService String
    The canary service name.
    istio RolloutSpecTrafficIstio
    Holds Istio specific configuration to route traffic.
    nginx RolloutSpecTrafficNginx
    Holds Nginx Ingress specific configuration to route traffic.
    pingPong RolloutSpecTrafficPingPong
    Holds the ping and pong services. You can use pingPong field only when using ALB as a traffic manager with the IP Mode approach.
    smi RolloutSpecTrafficSmi
    Holds TrafficSplit specific configuration to route traffic.
    stableService String
    The stable service name.
    alb RolloutSpecTrafficAlb
    Holds ALB Ingress specific configuration to route traffic.
    ambassador RolloutSpecTrafficAmbassador
    Holds specific configuration to use Ambassador to route traffic.
    canaryService string
    The canary service name.
    istio RolloutSpecTrafficIstio
    Holds Istio specific configuration to route traffic.
    nginx RolloutSpecTrafficNginx
    Holds Nginx Ingress specific configuration to route traffic.
    pingPong RolloutSpecTrafficPingPong
    Holds the ping and pong services. You can use pingPong field only when using ALB as a traffic manager with the IP Mode approach.
    smi RolloutSpecTrafficSmi
    Holds TrafficSplit specific configuration to route traffic.
    stableService string
    The stable service name.
    alb RolloutSpecTrafficAlb
    Holds ALB Ingress specific configuration to route traffic.
    ambassador RolloutSpecTrafficAmbassador
    Holds specific configuration to use Ambassador to route traffic.
    canary_service str
    The canary service name.
    istio RolloutSpecTrafficIstio
    Holds Istio specific configuration to route traffic.
    nginx RolloutSpecTrafficNginx
    Holds Nginx Ingress specific configuration to route traffic.
    ping_pong RolloutSpecTrafficPingPong
    Holds the ping and pong services. You can use pingPong field only when using ALB as a traffic manager with the IP Mode approach.
    smi RolloutSpecTrafficSmi
    Holds TrafficSplit specific configuration to route traffic.
    stable_service str
    The stable service name.
    alb Property Map
    Holds ALB Ingress specific configuration to route traffic.
    ambassador Property Map
    Holds specific configuration to use Ambassador to route traffic.
    canaryService String
    The canary service name.
    istio Property Map
    Holds Istio specific configuration to route traffic.
    nginx Property Map
    Holds Nginx Ingress specific configuration to route traffic.
    pingPong Property Map
    Holds the ping and pong services. You can use pingPong field only when using ALB as a traffic manager with the IP Mode approach.
    smi Property Map
    Holds TrafficSplit specific configuration to route traffic.
    stableService String
    The stable service name.

    RolloutSpecTrafficAlb, RolloutSpecTrafficAlbArgs

    AlbIngress string
    Refers to the name of an Ingress resource in the same namespace as the SpotDeployment.
    AlbRootService string
    References the service in the ingress to the controller should add the action to.
    ServicePort int
    Refers to the port that the Ingress action should route traffic to.
    AlbAnnotationPrefix string
    Has to match the configured annotation prefix on the alb ingress controller.
    StickinessConfig Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecTrafficAlbStickinessConfig
    Allows to specify further settings on the ForwardConfig.
    AlbIngress string
    Refers to the name of an Ingress resource in the same namespace as the SpotDeployment.
    AlbRootService string
    References the service in the ingress to the controller should add the action to.
    ServicePort int
    Refers to the port that the Ingress action should route traffic to.
    AlbAnnotationPrefix string
    Has to match the configured annotation prefix on the alb ingress controller.
    StickinessConfig RolloutSpecTrafficAlbStickinessConfig
    Allows to specify further settings on the ForwardConfig.
    albIngress String
    Refers to the name of an Ingress resource in the same namespace as the SpotDeployment.
    albRootService String
    References the service in the ingress to the controller should add the action to.
    servicePort Integer
    Refers to the port that the Ingress action should route traffic to.
    albAnnotationPrefix String
    Has to match the configured annotation prefix on the alb ingress controller.
    stickinessConfig RolloutSpecTrafficAlbStickinessConfig
    Allows to specify further settings on the ForwardConfig.
    albIngress string
    Refers to the name of an Ingress resource in the same namespace as the SpotDeployment.
    albRootService string
    References the service in the ingress to the controller should add the action to.
    servicePort number
    Refers to the port that the Ingress action should route traffic to.
    albAnnotationPrefix string
    Has to match the configured annotation prefix on the alb ingress controller.
    stickinessConfig RolloutSpecTrafficAlbStickinessConfig
    Allows to specify further settings on the ForwardConfig.
    alb_ingress str
    Refers to the name of an Ingress resource in the same namespace as the SpotDeployment.
    alb_root_service str
    References the service in the ingress to the controller should add the action to.
    service_port int
    Refers to the port that the Ingress action should route traffic to.
    alb_annotation_prefix str
    Has to match the configured annotation prefix on the alb ingress controller.
    stickiness_config RolloutSpecTrafficAlbStickinessConfig
    Allows to specify further settings on the ForwardConfig.
    albIngress String
    Refers to the name of an Ingress resource in the same namespace as the SpotDeployment.
    albRootService String
    References the service in the ingress to the controller should add the action to.
    servicePort Number
    Refers to the port that the Ingress action should route traffic to.
    albAnnotationPrefix String
    Has to match the configured annotation prefix on the alb ingress controller.
    stickinessConfig Property Map
    Allows to specify further settings on the ForwardConfig.

    RolloutSpecTrafficAlbStickinessConfig, RolloutSpecTrafficAlbStickinessConfigArgs

    DurationSeconds int
    Defines how long the load balancer should consistently route the user's request to the same target.
    Enabled bool
    Enables the load balancer to bind a user's session to a specific target.
    DurationSeconds int
    Defines how long the load balancer should consistently route the user's request to the same target.
    Enabled bool
    Enables the load balancer to bind a user's session to a specific target.
    durationSeconds Integer
    Defines how long the load balancer should consistently route the user's request to the same target.
    enabled Boolean
    Enables the load balancer to bind a user's session to a specific target.
    durationSeconds number
    Defines how long the load balancer should consistently route the user's request to the same target.
    enabled boolean
    Enables the load balancer to bind a user's session to a specific target.
    duration_seconds int
    Defines how long the load balancer should consistently route the user's request to the same target.
    enabled bool
    Enables the load balancer to bind a user's session to a specific target.
    durationSeconds Number
    Defines how long the load balancer should consistently route the user's request to the same target.
    enabled Boolean
    Enables the load balancer to bind a user's session to a specific target.

    RolloutSpecTrafficAmbassador, RolloutSpecTrafficAmbassadorArgs

    Mappings List<string>
    A list of names of the Ambassador Mappings used to route traffic to the service.
    Mappings []string
    A list of names of the Ambassador Mappings used to route traffic to the service.
    mappings List<String>
    A list of names of the Ambassador Mappings used to route traffic to the service.
    mappings string[]
    A list of names of the Ambassador Mappings used to route traffic to the service.
    mappings Sequence[str]
    A list of names of the Ambassador Mappings used to route traffic to the service.
    mappings List<String>
    A list of names of the Ambassador Mappings used to route traffic to the service.

    RolloutSpecTrafficIstio, RolloutSpecTrafficIstioArgs

    VirtualServices List<Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecTrafficIstioVirtualService>
    Defines a set of traffic routing rules to apply when a host is addressed.
    DestinationRule Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecTrafficIstioDestinationRule
    It references to an Istio DestinationRule to modify and shape traffic. DestinationRule field belongs only to the Subset Level approach.
    VirtualServices []RolloutSpecTrafficIstioVirtualService
    Defines a set of traffic routing rules to apply when a host is addressed.
    DestinationRule RolloutSpecTrafficIstioDestinationRule
    It references to an Istio DestinationRule to modify and shape traffic. DestinationRule field belongs only to the Subset Level approach.
    virtualServices List<RolloutSpecTrafficIstioVirtualService>
    Defines a set of traffic routing rules to apply when a host is addressed.
    destinationRule RolloutSpecTrafficIstioDestinationRule
    It references to an Istio DestinationRule to modify and shape traffic. DestinationRule field belongs only to the Subset Level approach.
    virtualServices RolloutSpecTrafficIstioVirtualService[]
    Defines a set of traffic routing rules to apply when a host is addressed.
    destinationRule RolloutSpecTrafficIstioDestinationRule
    It references to an Istio DestinationRule to modify and shape traffic. DestinationRule field belongs only to the Subset Level approach.
    virtual_services Sequence[RolloutSpecTrafficIstioVirtualService]
    Defines a set of traffic routing rules to apply when a host is addressed.
    destination_rule RolloutSpecTrafficIstioDestinationRule
    It references to an Istio DestinationRule to modify and shape traffic. DestinationRule field belongs only to the Subset Level approach.
    virtualServices List<Property Map>
    Defines a set of traffic routing rules to apply when a host is addressed.
    destinationRule Property Map
    It references to an Istio DestinationRule to modify and shape traffic. DestinationRule field belongs only to the Subset Level approach.

    RolloutSpecTrafficIstioDestinationRule, RolloutSpecTrafficIstioDestinationRuleArgs

    CanarySubsetName string
    The subset name to modify labels with the canary version.
    DestinationRuleName string
    Holds the name of the DestinationRule.
    StableSubsetName string
    The subset name to modify labels with the stable version.
    CanarySubsetName string
    The subset name to modify labels with the canary version.
    DestinationRuleName string
    Holds the name of the DestinationRule.
    StableSubsetName string
    The subset name to modify labels with the stable version.
    canarySubsetName String
    The subset name to modify labels with the canary version.
    destinationRuleName String
    Holds the name of the DestinationRule.
    stableSubsetName String
    The subset name to modify labels with the stable version.
    canarySubsetName string
    The subset name to modify labels with the canary version.
    destinationRuleName string
    Holds the name of the DestinationRule.
    stableSubsetName string
    The subset name to modify labels with the stable version.
    canary_subset_name str
    The subset name to modify labels with the canary version.
    destination_rule_name str
    Holds the name of the DestinationRule.
    stable_subset_name str
    The subset name to modify labels with the stable version.
    canarySubsetName String
    The subset name to modify labels with the canary version.
    destinationRuleName String
    Holds the name of the DestinationRule.
    stableSubsetName String
    The subset name to modify labels with the stable version.

    RolloutSpecTrafficIstioVirtualService, RolloutSpecTrafficIstioVirtualServiceArgs

    VirtualServiceName string
    Holds the name of the VirtualService.
    TlsRoutes List<Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecTrafficIstioVirtualServiceTlsRoute>
    A list of HTTPS routes within VirtualService.
    VirtualServiceRoutes List<string>
    A list of HTTP routes within VirtualService.
    VirtualServiceName string
    Holds the name of the VirtualService.
    TlsRoutes []RolloutSpecTrafficIstioVirtualServiceTlsRoute
    A list of HTTPS routes within VirtualService.
    VirtualServiceRoutes []string
    A list of HTTP routes within VirtualService.
    virtualServiceName String
    Holds the name of the VirtualService.
    tlsRoutes List<RolloutSpecTrafficIstioVirtualServiceTlsRoute>
    A list of HTTPS routes within VirtualService.
    virtualServiceRoutes List<String>
    A list of HTTP routes within VirtualService.
    virtualServiceName string
    Holds the name of the VirtualService.
    tlsRoutes RolloutSpecTrafficIstioVirtualServiceTlsRoute[]
    A list of HTTPS routes within VirtualService.
    virtualServiceRoutes string[]
    A list of HTTP routes within VirtualService.
    virtual_service_name str
    Holds the name of the VirtualService.
    tls_routes Sequence[RolloutSpecTrafficIstioVirtualServiceTlsRoute]
    A list of HTTPS routes within VirtualService.
    virtual_service_routes Sequence[str]
    A list of HTTP routes within VirtualService.
    virtualServiceName String
    Holds the name of the VirtualService.
    tlsRoutes List<Property Map>
    A list of HTTPS routes within VirtualService.
    virtualServiceRoutes List<String>
    A list of HTTP routes within VirtualService.

    RolloutSpecTrafficIstioVirtualServiceTlsRoute, RolloutSpecTrafficIstioVirtualServiceTlsRouteArgs

    Port int
    The port of the TLS Route desired to be matched in the given Istio VirtualService.
    SniHosts List<string>
    A list of all the SNI Hosts of the TLS Route desired to be matched in the given Istio VirtualService.
    Port int
    The port of the TLS Route desired to be matched in the given Istio VirtualService.
    SniHosts []string
    A list of all the SNI Hosts of the TLS Route desired to be matched in the given Istio VirtualService.
    port Integer
    The port of the TLS Route desired to be matched in the given Istio VirtualService.
    sniHosts List<String>
    A list of all the SNI Hosts of the TLS Route desired to be matched in the given Istio VirtualService.
    port number
    The port of the TLS Route desired to be matched in the given Istio VirtualService.
    sniHosts string[]
    A list of all the SNI Hosts of the TLS Route desired to be matched in the given Istio VirtualService.
    port int
    The port of the TLS Route desired to be matched in the given Istio VirtualService.
    sni_hosts Sequence[str]
    A list of all the SNI Hosts of the TLS Route desired to be matched in the given Istio VirtualService.
    port Number
    The port of the TLS Route desired to be matched in the given Istio VirtualService.
    sniHosts List<String>
    A list of all the SNI Hosts of the TLS Route desired to be matched in the given Istio VirtualService.

    RolloutSpecTrafficNginx, RolloutSpecTrafficNginxArgs

    StableIngress string
    Refers to the name of an Ingress resource in the same namespace as the SpotDeployment.
    AdditionalIngressAnnotation Pulumi.SpotInst.Oceancd.Inputs.RolloutSpecTrafficNginxAdditionalIngressAnnotation
    Provides additional features to add to the canary ingress (such as routing by header, cookie, etc). You can add these Kubernetes annotations to specific Ingress objects to customize their behavior. Above are found examples of accepted k8s keys.For the full list of supported keys, you may reach the following documentation - https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#canary.
    NginxAnnotationPrefix string
    Has to match the configured annotation prefix on the Nginx ingress controller.
    StableIngress string
    Refers to the name of an Ingress resource in the same namespace as the SpotDeployment.
    AdditionalIngressAnnotation RolloutSpecTrafficNginxAdditionalIngressAnnotation
    Provides additional features to add to the canary ingress (such as routing by header, cookie, etc). You can add these Kubernetes annotations to specific Ingress objects to customize their behavior. Above are found examples of accepted k8s keys.For the full list of supported keys, you may reach the following documentation - https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#canary.
    NginxAnnotationPrefix string
    Has to match the configured annotation prefix on the Nginx ingress controller.
    stableIngress String
    Refers to the name of an Ingress resource in the same namespace as the SpotDeployment.
    additionalIngressAnnotation RolloutSpecTrafficNginxAdditionalIngressAnnotation
    Provides additional features to add to the canary ingress (such as routing by header, cookie, etc). You can add these Kubernetes annotations to specific Ingress objects to customize their behavior. Above are found examples of accepted k8s keys.For the full list of supported keys, you may reach the following documentation - https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#canary.
    nginxAnnotationPrefix String
    Has to match the configured annotation prefix on the Nginx ingress controller.
    stableIngress string
    Refers to the name of an Ingress resource in the same namespace as the SpotDeployment.
    additionalIngressAnnotation RolloutSpecTrafficNginxAdditionalIngressAnnotation
    Provides additional features to add to the canary ingress (such as routing by header, cookie, etc). You can add these Kubernetes annotations to specific Ingress objects to customize their behavior. Above are found examples of accepted k8s keys.For the full list of supported keys, you may reach the following documentation - https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#canary.
    nginxAnnotationPrefix string
    Has to match the configured annotation prefix on the Nginx ingress controller.
    stable_ingress str
    Refers to the name of an Ingress resource in the same namespace as the SpotDeployment.
    additional_ingress_annotation RolloutSpecTrafficNginxAdditionalIngressAnnotation
    Provides additional features to add to the canary ingress (such as routing by header, cookie, etc). You can add these Kubernetes annotations to specific Ingress objects to customize their behavior. Above are found examples of accepted k8s keys.For the full list of supported keys, you may reach the following documentation - https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#canary.
    nginx_annotation_prefix str
    Has to match the configured annotation prefix on the Nginx ingress controller.
    stableIngress String
    Refers to the name of an Ingress resource in the same namespace as the SpotDeployment.
    additionalIngressAnnotation Property Map
    Provides additional features to add to the canary ingress (such as routing by header, cookie, etc). You can add these Kubernetes annotations to specific Ingress objects to customize their behavior. Above are found examples of accepted k8s keys.For the full list of supported keys, you may reach the following documentation - https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#canary.
    nginxAnnotationPrefix String
    Has to match the configured annotation prefix on the Nginx ingress controller.

    RolloutSpecTrafficNginxAdditionalIngressAnnotation, RolloutSpecTrafficNginxAdditionalIngressAnnotationArgs

    CanaryByHeader string
    Allows customizing the header value instead of using hardcoded values.
    Key1 string
    Any of supported annotations.
    CanaryByHeader string
    Allows customizing the header value instead of using hardcoded values.
    Key1 string
    Any of supported annotations.
    canaryByHeader String
    Allows customizing the header value instead of using hardcoded values.
    key1 String
    Any of supported annotations.
    canaryByHeader string
    Allows customizing the header value instead of using hardcoded values.
    key1 string
    Any of supported annotations.
    canary_by_header str
    Allows customizing the header value instead of using hardcoded values.
    key1 str
    Any of supported annotations.
    canaryByHeader String
    Allows customizing the header value instead of using hardcoded values.
    key1 String
    Any of supported annotations.

    RolloutSpecTrafficPingPong, RolloutSpecTrafficPingPongArgs

    PingService string
    Holds the name of the ping service.
    PongService string
    Holds the name of the pong service.
    PingService string
    Holds the name of the ping service.
    PongService string
    Holds the name of the pong service.
    pingService String
    Holds the name of the ping service.
    pongService String
    Holds the name of the pong service.
    pingService string
    Holds the name of the ping service.
    pongService string
    Holds the name of the pong service.
    ping_service str
    Holds the name of the ping service.
    pong_service str
    Holds the name of the pong service.
    pingService String
    Holds the name of the ping service.
    pongService String
    Holds the name of the pong service.

    RolloutSpecTrafficSmi, RolloutSpecTrafficSmiArgs

    SmiRootService string
    Holds the name of service that clients use to communicate.
    TrafficSplitName string
    Holds the name of the TrafficSplit.
    SmiRootService string
    Holds the name of service that clients use to communicate.
    TrafficSplitName string
    Holds the name of the TrafficSplit.
    smiRootService String
    Holds the name of service that clients use to communicate.
    trafficSplitName String
    Holds the name of the TrafficSplit.
    smiRootService string
    Holds the name of service that clients use to communicate.
    trafficSplitName string
    Holds the name of the TrafficSplit.
    smi_root_service str
    Holds the name of service that clients use to communicate.
    traffic_split_name str
    Holds the name of the TrafficSplit.
    smiRootService String
    Holds the name of service that clients use to communicate.
    trafficSplitName String
    Holds the name of the TrafficSplit.

    Package Details

    Repository
    Spotinst pulumi/pulumi-spotinst
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the spotinst Terraform Provider.
    spotinst logo
    Spotinst v3.100.0 published on Wednesday, Nov 20, 2024 by Pulumi