1. Packages
  2. Oracle Cloud Infrastructure
  3. API Docs
  4. ServiceMesh
  5. IngressGateway
Oracle Cloud Infrastructure v2.32.0 published on Thursday, Apr 24, 2025 by Pulumi

oci.ServiceMesh.IngressGateway

Explore with Pulumi AI

This resource provides the Ingress Gateway resource in Oracle Cloud Infrastructure Service Mesh service.

Creates a new IngressGateway.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as oci from "@pulumi/oci";

const testIngressGateway = new oci.servicemesh.IngressGateway("test_ingress_gateway", {
    compartmentId: compartmentId,
    hosts: [{
        listeners: [{
            port: ingressGatewayHostsListenersPort,
            protocol: ingressGatewayHostsListenersProtocol,
            tls: {
                mode: ingressGatewayHostsListenersTlsMode,
                clientValidation: {
                    subjectAlternateNames: ingressGatewayHostsListenersTlsClientValidationSubjectAlternateNames,
                    trustedCaBundle: {
                        type: ingressGatewayHostsListenersTlsClientValidationTrustedCaBundleType,
                        caBundleId: testCaBundle.id,
                        secretName: testSecret.name,
                    },
                },
                serverCertificate: {
                    type: ingressGatewayHostsListenersTlsServerCertificateType,
                    certificateId: testCertificate.id,
                    secretName: testSecret.name,
                },
            },
        }],
        name: ingressGatewayHostsName,
        hostnames: ingressGatewayHostsHostnames,
    }],
    meshId: testMesh.id,
    name: ingressGatewayName,
    accessLogging: {
        isEnabled: ingressGatewayAccessLoggingIsEnabled,
    },
    definedTags: {
        "foo-namespace.bar-key": "value",
    },
    description: ingressGatewayDescription,
    freeformTags: {
        "bar-key": "value",
    },
    mtls: {
        maximumValidity: ingressGatewayMtlsMaximumValidity,
    },
});
Copy
import pulumi
import pulumi_oci as oci

test_ingress_gateway = oci.service_mesh.IngressGateway("test_ingress_gateway",
    compartment_id=compartment_id,
    hosts=[{
        "listeners": [{
            "port": ingress_gateway_hosts_listeners_port,
            "protocol": ingress_gateway_hosts_listeners_protocol,
            "tls": {
                "mode": ingress_gateway_hosts_listeners_tls_mode,
                "client_validation": {
                    "subject_alternate_names": ingress_gateway_hosts_listeners_tls_client_validation_subject_alternate_names,
                    "trusted_ca_bundle": {
                        "type": ingress_gateway_hosts_listeners_tls_client_validation_trusted_ca_bundle_type,
                        "ca_bundle_id": test_ca_bundle["id"],
                        "secret_name": test_secret["name"],
                    },
                },
                "server_certificate": {
                    "type": ingress_gateway_hosts_listeners_tls_server_certificate_type,
                    "certificate_id": test_certificate["id"],
                    "secret_name": test_secret["name"],
                },
            },
        }],
        "name": ingress_gateway_hosts_name,
        "hostnames": ingress_gateway_hosts_hostnames,
    }],
    mesh_id=test_mesh["id"],
    name=ingress_gateway_name,
    access_logging={
        "is_enabled": ingress_gateway_access_logging_is_enabled,
    },
    defined_tags={
        "foo-namespace.bar-key": "value",
    },
    description=ingress_gateway_description,
    freeform_tags={
        "bar-key": "value",
    },
    mtls={
        "maximum_validity": ingress_gateway_mtls_maximum_validity,
    })
Copy
package main

import (
	"github.com/pulumi/pulumi-oci/sdk/v2/go/oci/servicemesh"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := servicemesh.NewIngressGateway(ctx, "test_ingress_gateway", &servicemesh.IngressGatewayArgs{
			CompartmentId: pulumi.Any(compartmentId),
			Hosts: servicemesh.IngressGatewayHostArray{
				&servicemesh.IngressGatewayHostArgs{
					Listeners: servicemesh.IngressGatewayHostListenerArray{
						&servicemesh.IngressGatewayHostListenerArgs{
							Port:     pulumi.Any(ingressGatewayHostsListenersPort),
							Protocol: pulumi.Any(ingressGatewayHostsListenersProtocol),
							Tls: &servicemesh.IngressGatewayHostListenerTlsArgs{
								Mode: pulumi.Any(ingressGatewayHostsListenersTlsMode),
								ClientValidation: &servicemesh.IngressGatewayHostListenerTlsClientValidationArgs{
									SubjectAlternateNames: pulumi.Any(ingressGatewayHostsListenersTlsClientValidationSubjectAlternateNames),
									TrustedCaBundle: &servicemesh.IngressGatewayHostListenerTlsClientValidationTrustedCaBundleArgs{
										Type:       pulumi.Any(ingressGatewayHostsListenersTlsClientValidationTrustedCaBundleType),
										CaBundleId: pulumi.Any(testCaBundle.Id),
										SecretName: pulumi.Any(testSecret.Name),
									},
								},
								ServerCertificate: &servicemesh.IngressGatewayHostListenerTlsServerCertificateArgs{
									Type:          pulumi.Any(ingressGatewayHostsListenersTlsServerCertificateType),
									CertificateId: pulumi.Any(testCertificate.Id),
									SecretName:    pulumi.Any(testSecret.Name),
								},
							},
						},
					},
					Name:      pulumi.Any(ingressGatewayHostsName),
					Hostnames: pulumi.Any(ingressGatewayHostsHostnames),
				},
			},
			MeshId: pulumi.Any(testMesh.Id),
			Name:   pulumi.Any(ingressGatewayName),
			AccessLogging: &servicemesh.IngressGatewayAccessLoggingArgs{
				IsEnabled: pulumi.Any(ingressGatewayAccessLoggingIsEnabled),
			},
			DefinedTags: pulumi.StringMap{
				"foo-namespace.bar-key": pulumi.String("value"),
			},
			Description: pulumi.Any(ingressGatewayDescription),
			FreeformTags: pulumi.StringMap{
				"bar-key": pulumi.String("value"),
			},
			Mtls: &servicemesh.IngressGatewayMtlsArgs{
				MaximumValidity: pulumi.Any(ingressGatewayMtlsMaximumValidity),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Oci = Pulumi.Oci;

return await Deployment.RunAsync(() => 
{
    var testIngressGateway = new Oci.ServiceMesh.IngressGateway("test_ingress_gateway", new()
    {
        CompartmentId = compartmentId,
        Hosts = new[]
        {
            new Oci.ServiceMesh.Inputs.IngressGatewayHostArgs
            {
                Listeners = new[]
                {
                    new Oci.ServiceMesh.Inputs.IngressGatewayHostListenerArgs
                    {
                        Port = ingressGatewayHostsListenersPort,
                        Protocol = ingressGatewayHostsListenersProtocol,
                        Tls = new Oci.ServiceMesh.Inputs.IngressGatewayHostListenerTlsArgs
                        {
                            Mode = ingressGatewayHostsListenersTlsMode,
                            ClientValidation = new Oci.ServiceMesh.Inputs.IngressGatewayHostListenerTlsClientValidationArgs
                            {
                                SubjectAlternateNames = ingressGatewayHostsListenersTlsClientValidationSubjectAlternateNames,
                                TrustedCaBundle = new Oci.ServiceMesh.Inputs.IngressGatewayHostListenerTlsClientValidationTrustedCaBundleArgs
                                {
                                    Type = ingressGatewayHostsListenersTlsClientValidationTrustedCaBundleType,
                                    CaBundleId = testCaBundle.Id,
                                    SecretName = testSecret.Name,
                                },
                            },
                            ServerCertificate = new Oci.ServiceMesh.Inputs.IngressGatewayHostListenerTlsServerCertificateArgs
                            {
                                Type = ingressGatewayHostsListenersTlsServerCertificateType,
                                CertificateId = testCertificate.Id,
                                SecretName = testSecret.Name,
                            },
                        },
                    },
                },
                Name = ingressGatewayHostsName,
                Hostnames = ingressGatewayHostsHostnames,
            },
        },
        MeshId = testMesh.Id,
        Name = ingressGatewayName,
        AccessLogging = new Oci.ServiceMesh.Inputs.IngressGatewayAccessLoggingArgs
        {
            IsEnabled = ingressGatewayAccessLoggingIsEnabled,
        },
        DefinedTags = 
        {
            { "foo-namespace.bar-key", "value" },
        },
        Description = ingressGatewayDescription,
        FreeformTags = 
        {
            { "bar-key", "value" },
        },
        Mtls = new Oci.ServiceMesh.Inputs.IngressGatewayMtlsArgs
        {
            MaximumValidity = ingressGatewayMtlsMaximumValidity,
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.oci.ServiceMesh.IngressGateway;
import com.pulumi.oci.ServiceMesh.IngressGatewayArgs;
import com.pulumi.oci.ServiceMesh.inputs.IngressGatewayHostArgs;
import com.pulumi.oci.ServiceMesh.inputs.IngressGatewayAccessLoggingArgs;
import com.pulumi.oci.ServiceMesh.inputs.IngressGatewayMtlsArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var testIngressGateway = new IngressGateway("testIngressGateway", IngressGatewayArgs.builder()
            .compartmentId(compartmentId)
            .hosts(IngressGatewayHostArgs.builder()
                .listeners(IngressGatewayHostListenerArgs.builder()
                    .port(ingressGatewayHostsListenersPort)
                    .protocol(ingressGatewayHostsListenersProtocol)
                    .tls(IngressGatewayHostListenerTlsArgs.builder()
                        .mode(ingressGatewayHostsListenersTlsMode)
                        .clientValidation(IngressGatewayHostListenerTlsClientValidationArgs.builder()
                            .subjectAlternateNames(ingressGatewayHostsListenersTlsClientValidationSubjectAlternateNames)
                            .trustedCaBundle(IngressGatewayHostListenerTlsClientValidationTrustedCaBundleArgs.builder()
                                .type(ingressGatewayHostsListenersTlsClientValidationTrustedCaBundleType)
                                .caBundleId(testCaBundle.id())
                                .secretName(testSecret.name())
                                .build())
                            .build())
                        .serverCertificate(IngressGatewayHostListenerTlsServerCertificateArgs.builder()
                            .type(ingressGatewayHostsListenersTlsServerCertificateType)
                            .certificateId(testCertificate.id())
                            .secretName(testSecret.name())
                            .build())
                        .build())
                    .build())
                .name(ingressGatewayHostsName)
                .hostnames(ingressGatewayHostsHostnames)
                .build())
            .meshId(testMesh.id())
            .name(ingressGatewayName)
            .accessLogging(IngressGatewayAccessLoggingArgs.builder()
                .isEnabled(ingressGatewayAccessLoggingIsEnabled)
                .build())
            .definedTags(Map.of("foo-namespace.bar-key", "value"))
            .description(ingressGatewayDescription)
            .freeformTags(Map.of("bar-key", "value"))
            .mtls(IngressGatewayMtlsArgs.builder()
                .maximumValidity(ingressGatewayMtlsMaximumValidity)
                .build())
            .build());

    }
}
Copy
resources:
  testIngressGateway:
    type: oci:ServiceMesh:IngressGateway
    name: test_ingress_gateway
    properties:
      compartmentId: ${compartmentId}
      hosts:
        - listeners:
            - port: ${ingressGatewayHostsListenersPort}
              protocol: ${ingressGatewayHostsListenersProtocol}
              tls:
                mode: ${ingressGatewayHostsListenersTlsMode}
                clientValidation:
                  subjectAlternateNames: ${ingressGatewayHostsListenersTlsClientValidationSubjectAlternateNames}
                  trustedCaBundle:
                    type: ${ingressGatewayHostsListenersTlsClientValidationTrustedCaBundleType}
                    caBundleId: ${testCaBundle.id}
                    secretName: ${testSecret.name}
                serverCertificate:
                  type: ${ingressGatewayHostsListenersTlsServerCertificateType}
                  certificateId: ${testCertificate.id}
                  secretName: ${testSecret.name}
          name: ${ingressGatewayHostsName}
          hostnames: ${ingressGatewayHostsHostnames}
      meshId: ${testMesh.id}
      name: ${ingressGatewayName}
      accessLogging:
        isEnabled: ${ingressGatewayAccessLoggingIsEnabled}
      definedTags:
        foo-namespace.bar-key: value
      description: ${ingressGatewayDescription}
      freeformTags:
        bar-key: value
      mtls:
        maximumValidity: ${ingressGatewayMtlsMaximumValidity}
Copy

Create IngressGateway Resource

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

Constructor syntax

new IngressGateway(name: string, args: IngressGatewayArgs, opts?: CustomResourceOptions);
@overload
def IngressGateway(resource_name: str,
                   args: IngressGatewayArgs,
                   opts: Optional[ResourceOptions] = None)

@overload
def IngressGateway(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   compartment_id: Optional[str] = None,
                   hosts: Optional[Sequence[_servicemesh.IngressGatewayHostArgs]] = None,
                   mesh_id: Optional[str] = None,
                   access_logging: Optional[_servicemesh.IngressGatewayAccessLoggingArgs] = None,
                   defined_tags: Optional[Mapping[str, str]] = None,
                   description: Optional[str] = None,
                   freeform_tags: Optional[Mapping[str, str]] = None,
                   mtls: Optional[_servicemesh.IngressGatewayMtlsArgs] = None,
                   name: Optional[str] = None)
func NewIngressGateway(ctx *Context, name string, args IngressGatewayArgs, opts ...ResourceOption) (*IngressGateway, error)
public IngressGateway(string name, IngressGatewayArgs args, CustomResourceOptions? opts = null)
public IngressGateway(String name, IngressGatewayArgs args)
public IngressGateway(String name, IngressGatewayArgs args, CustomResourceOptions options)
type: oci:ServiceMesh:IngressGateway
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. IngressGatewayArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. IngressGatewayArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. IngressGatewayArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. IngressGatewayArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. IngressGatewayArgs
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 ingressGatewayResource = new Oci.ServiceMesh.IngressGateway("ingressGatewayResource", new()
{
    CompartmentId = "string",
    Hosts = new[]
    {
        new Oci.ServiceMesh.Inputs.IngressGatewayHostArgs
        {
            Listeners = new[]
            {
                new Oci.ServiceMesh.Inputs.IngressGatewayHostListenerArgs
                {
                    Port = 0,
                    Protocol = "string",
                    Tls = new Oci.ServiceMesh.Inputs.IngressGatewayHostListenerTlsArgs
                    {
                        Mode = "string",
                        ClientValidation = new Oci.ServiceMesh.Inputs.IngressGatewayHostListenerTlsClientValidationArgs
                        {
                            SubjectAlternateNames = new[]
                            {
                                "string",
                            },
                            TrustedCaBundle = new Oci.ServiceMesh.Inputs.IngressGatewayHostListenerTlsClientValidationTrustedCaBundleArgs
                            {
                                Type = "string",
                                CaBundleId = "string",
                                SecretName = "string",
                            },
                        },
                        ServerCertificate = new Oci.ServiceMesh.Inputs.IngressGatewayHostListenerTlsServerCertificateArgs
                        {
                            Type = "string",
                            CertificateId = "string",
                            SecretName = "string",
                        },
                    },
                },
            },
            Name = "string",
            Hostnames = new[]
            {
                "string",
            },
        },
    },
    MeshId = "string",
    AccessLogging = new Oci.ServiceMesh.Inputs.IngressGatewayAccessLoggingArgs
    {
        IsEnabled = false,
    },
    DefinedTags = 
    {
        { "string", "string" },
    },
    Description = "string",
    FreeformTags = 
    {
        { "string", "string" },
    },
    Mtls = new Oci.ServiceMesh.Inputs.IngressGatewayMtlsArgs
    {
        CertificateId = "string",
        MaximumValidity = 0,
    },
    Name = "string",
});
Copy
example, err := servicemesh.NewIngressGateway(ctx, "ingressGatewayResource", &servicemesh.IngressGatewayArgs{
	CompartmentId: pulumi.String("string"),
	Hosts: servicemesh.IngressGatewayHostArray{
		&servicemesh.IngressGatewayHostArgs{
			Listeners: servicemesh.IngressGatewayHostListenerArray{
				&servicemesh.IngressGatewayHostListenerArgs{
					Port:     pulumi.Int(0),
					Protocol: pulumi.String("string"),
					Tls: &servicemesh.IngressGatewayHostListenerTlsArgs{
						Mode: pulumi.String("string"),
						ClientValidation: &servicemesh.IngressGatewayHostListenerTlsClientValidationArgs{
							SubjectAlternateNames: pulumi.StringArray{
								pulumi.String("string"),
							},
							TrustedCaBundle: &servicemesh.IngressGatewayHostListenerTlsClientValidationTrustedCaBundleArgs{
								Type:       pulumi.String("string"),
								CaBundleId: pulumi.String("string"),
								SecretName: pulumi.String("string"),
							},
						},
						ServerCertificate: &servicemesh.IngressGatewayHostListenerTlsServerCertificateArgs{
							Type:          pulumi.String("string"),
							CertificateId: pulumi.String("string"),
							SecretName:    pulumi.String("string"),
						},
					},
				},
			},
			Name: pulumi.String("string"),
			Hostnames: pulumi.StringArray{
				pulumi.String("string"),
			},
		},
	},
	MeshId: pulumi.String("string"),
	AccessLogging: &servicemesh.IngressGatewayAccessLoggingArgs{
		IsEnabled: pulumi.Bool(false),
	},
	DefinedTags: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	Description: pulumi.String("string"),
	FreeformTags: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	Mtls: &servicemesh.IngressGatewayMtlsArgs{
		CertificateId:   pulumi.String("string"),
		MaximumValidity: pulumi.Int(0),
	},
	Name: pulumi.String("string"),
})
Copy
var ingressGatewayResource = new IngressGateway("ingressGatewayResource", IngressGatewayArgs.builder()
    .compartmentId("string")
    .hosts(IngressGatewayHostArgs.builder()
        .listeners(IngressGatewayHostListenerArgs.builder()
            .port(0)
            .protocol("string")
            .tls(IngressGatewayHostListenerTlsArgs.builder()
                .mode("string")
                .clientValidation(IngressGatewayHostListenerTlsClientValidationArgs.builder()
                    .subjectAlternateNames("string")
                    .trustedCaBundle(IngressGatewayHostListenerTlsClientValidationTrustedCaBundleArgs.builder()
                        .type("string")
                        .caBundleId("string")
                        .secretName("string")
                        .build())
                    .build())
                .serverCertificate(IngressGatewayHostListenerTlsServerCertificateArgs.builder()
                    .type("string")
                    .certificateId("string")
                    .secretName("string")
                    .build())
                .build())
            .build())
        .name("string")
        .hostnames("string")
        .build())
    .meshId("string")
    .accessLogging(IngressGatewayAccessLoggingArgs.builder()
        .isEnabled(false)
        .build())
    .definedTags(Map.of("string", "string"))
    .description("string")
    .freeformTags(Map.of("string", "string"))
    .mtls(IngressGatewayMtlsArgs.builder()
        .certificateId("string")
        .maximumValidity(0)
        .build())
    .name("string")
    .build());
Copy
ingress_gateway_resource = oci.service_mesh.IngressGateway("ingressGatewayResource",
    compartment_id="string",
    hosts=[{
        "listeners": [{
            "port": 0,
            "protocol": "string",
            "tls": {
                "mode": "string",
                "client_validation": {
                    "subject_alternate_names": ["string"],
                    "trusted_ca_bundle": {
                        "type": "string",
                        "ca_bundle_id": "string",
                        "secret_name": "string",
                    },
                },
                "server_certificate": {
                    "type": "string",
                    "certificate_id": "string",
                    "secret_name": "string",
                },
            },
        }],
        "name": "string",
        "hostnames": ["string"],
    }],
    mesh_id="string",
    access_logging={
        "is_enabled": False,
    },
    defined_tags={
        "string": "string",
    },
    description="string",
    freeform_tags={
        "string": "string",
    },
    mtls={
        "certificate_id": "string",
        "maximum_validity": 0,
    },
    name="string")
Copy
const ingressGatewayResource = new oci.servicemesh.IngressGateway("ingressGatewayResource", {
    compartmentId: "string",
    hosts: [{
        listeners: [{
            port: 0,
            protocol: "string",
            tls: {
                mode: "string",
                clientValidation: {
                    subjectAlternateNames: ["string"],
                    trustedCaBundle: {
                        type: "string",
                        caBundleId: "string",
                        secretName: "string",
                    },
                },
                serverCertificate: {
                    type: "string",
                    certificateId: "string",
                    secretName: "string",
                },
            },
        }],
        name: "string",
        hostnames: ["string"],
    }],
    meshId: "string",
    accessLogging: {
        isEnabled: false,
    },
    definedTags: {
        string: "string",
    },
    description: "string",
    freeformTags: {
        string: "string",
    },
    mtls: {
        certificateId: "string",
        maximumValidity: 0,
    },
    name: "string",
});
Copy
type: oci:ServiceMesh:IngressGateway
properties:
    accessLogging:
        isEnabled: false
    compartmentId: string
    definedTags:
        string: string
    description: string
    freeformTags:
        string: string
    hosts:
        - hostnames:
            - string
          listeners:
            - port: 0
              protocol: string
              tls:
                clientValidation:
                    subjectAlternateNames:
                        - string
                    trustedCaBundle:
                        caBundleId: string
                        secretName: string
                        type: string
                mode: string
                serverCertificate:
                    certificateId: string
                    secretName: string
                    type: string
          name: string
    meshId: string
    mtls:
        certificateId: string
        maximumValidity: 0
    name: string
Copy

IngressGateway 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 IngressGateway resource accepts the following input properties:

CompartmentId This property is required. string
(Updatable) The OCID of the compartment.
Hosts This property is required. List<IngressGatewayHost>
(Updatable) An array of hostnames and their listener configuration that this gateway will bind to.
MeshId
This property is required.
Changes to this property will trigger replacement.
string
The OCID of the service mesh in which this ingress gateway is created.
AccessLogging IngressGatewayAccessLogging
(Updatable) This configuration determines if logging is enabled and where the logs will be output.
DefinedTags Dictionary<string, string>
(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: {"foo-namespace.bar-key": "value"}
Description string
(Updatable) Description of the resource. It can be changed after creation. Avoid entering confidential information. Example: This is my new resource
FreeformTags Dictionary<string, string>
(Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: {"bar-key": "value"}
Mtls IngressGatewayMtls
(Updatable) Mutual TLS settings used when sending requests to virtual services within the mesh.
Name Changes to this property will trigger replacement. string

A user-friendly name. The name has to be unique within the same service mesh and cannot be changed after creation. Avoid entering confidential information. Example: My unique resource name

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

CompartmentId This property is required. string
(Updatable) The OCID of the compartment.
Hosts This property is required. []IngressGatewayHostArgs
(Updatable) An array of hostnames and their listener configuration that this gateway will bind to.
MeshId
This property is required.
Changes to this property will trigger replacement.
string
The OCID of the service mesh in which this ingress gateway is created.
AccessLogging IngressGatewayAccessLoggingArgs
(Updatable) This configuration determines if logging is enabled and where the logs will be output.
DefinedTags map[string]string
(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: {"foo-namespace.bar-key": "value"}
Description string
(Updatable) Description of the resource. It can be changed after creation. Avoid entering confidential information. Example: This is my new resource
FreeformTags map[string]string
(Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: {"bar-key": "value"}
Mtls IngressGatewayMtlsArgs
(Updatable) Mutual TLS settings used when sending requests to virtual services within the mesh.
Name Changes to this property will trigger replacement. string

A user-friendly name. The name has to be unique within the same service mesh and cannot be changed after creation. Avoid entering confidential information. Example: My unique resource name

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

compartmentId This property is required. String
(Updatable) The OCID of the compartment.
hosts This property is required. List<IngressGatewayHost>
(Updatable) An array of hostnames and their listener configuration that this gateway will bind to.
meshId
This property is required.
Changes to this property will trigger replacement.
String
The OCID of the service mesh in which this ingress gateway is created.
accessLogging IngressGatewayAccessLogging
(Updatable) This configuration determines if logging is enabled and where the logs will be output.
definedTags Map<String,String>
(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: {"foo-namespace.bar-key": "value"}
description String
(Updatable) Description of the resource. It can be changed after creation. Avoid entering confidential information. Example: This is my new resource
freeformTags Map<String,String>
(Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: {"bar-key": "value"}
mtls IngressGatewayMtls
(Updatable) Mutual TLS settings used when sending requests to virtual services within the mesh.
name Changes to this property will trigger replacement. String

A user-friendly name. The name has to be unique within the same service mesh and cannot be changed after creation. Avoid entering confidential information. Example: My unique resource name

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

compartmentId This property is required. string
(Updatable) The OCID of the compartment.
hosts This property is required. IngressGatewayHost[]
(Updatable) An array of hostnames and their listener configuration that this gateway will bind to.
meshId
This property is required.
Changes to this property will trigger replacement.
string
The OCID of the service mesh in which this ingress gateway is created.
accessLogging IngressGatewayAccessLogging
(Updatable) This configuration determines if logging is enabled and where the logs will be output.
definedTags {[key: string]: string}
(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: {"foo-namespace.bar-key": "value"}
description string
(Updatable) Description of the resource. It can be changed after creation. Avoid entering confidential information. Example: This is my new resource
freeformTags {[key: string]: string}
(Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: {"bar-key": "value"}
mtls IngressGatewayMtls
(Updatable) Mutual TLS settings used when sending requests to virtual services within the mesh.
name Changes to this property will trigger replacement. string

A user-friendly name. The name has to be unique within the same service mesh and cannot be changed after creation. Avoid entering confidential information. Example: My unique resource name

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

compartment_id This property is required. str
(Updatable) The OCID of the compartment.
hosts This property is required. Sequence[servicemesh.IngressGatewayHostArgs]
(Updatable) An array of hostnames and their listener configuration that this gateway will bind to.
mesh_id
This property is required.
Changes to this property will trigger replacement.
str
The OCID of the service mesh in which this ingress gateway is created.
access_logging servicemesh.IngressGatewayAccessLoggingArgs
(Updatable) This configuration determines if logging is enabled and where the logs will be output.
defined_tags Mapping[str, str]
(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: {"foo-namespace.bar-key": "value"}
description str
(Updatable) Description of the resource. It can be changed after creation. Avoid entering confidential information. Example: This is my new resource
freeform_tags Mapping[str, str]
(Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: {"bar-key": "value"}
mtls servicemesh.IngressGatewayMtlsArgs
(Updatable) Mutual TLS settings used when sending requests to virtual services within the mesh.
name Changes to this property will trigger replacement. str

A user-friendly name. The name has to be unique within the same service mesh and cannot be changed after creation. Avoid entering confidential information. Example: My unique resource name

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

compartmentId This property is required. String
(Updatable) The OCID of the compartment.
hosts This property is required. List<Property Map>
(Updatable) An array of hostnames and their listener configuration that this gateway will bind to.
meshId
This property is required.
Changes to this property will trigger replacement.
String
The OCID of the service mesh in which this ingress gateway is created.
accessLogging Property Map
(Updatable) This configuration determines if logging is enabled and where the logs will be output.
definedTags Map<String>
(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: {"foo-namespace.bar-key": "value"}
description String
(Updatable) Description of the resource. It can be changed after creation. Avoid entering confidential information. Example: This is my new resource
freeformTags Map<String>
(Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: {"bar-key": "value"}
mtls Property Map
(Updatable) Mutual TLS settings used when sending requests to virtual services within the mesh.
name Changes to this property will trigger replacement. String

A user-friendly name. The name has to be unique within the same service mesh and cannot be changed after creation. Avoid entering confidential information. Example: My unique resource name

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

Outputs

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

Id string
The provider-assigned unique ID for this managed resource.
LifecycleDetails string
A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.
State string
The current state of the Resource.
SystemTags Dictionary<string, string>
Usage of system tag keys. These predefined keys are scoped to namespaces. Example: {"orcl-cloud.free-tier-retained": "true"}
TimeCreated string
The time when this resource was created in an RFC3339 formatted datetime string.
TimeUpdated string
The time when this resource was updated in an RFC3339 formatted datetime string.
Id string
The provider-assigned unique ID for this managed resource.
LifecycleDetails string
A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.
State string
The current state of the Resource.
SystemTags map[string]string
Usage of system tag keys. These predefined keys are scoped to namespaces. Example: {"orcl-cloud.free-tier-retained": "true"}
TimeCreated string
The time when this resource was created in an RFC3339 formatted datetime string.
TimeUpdated string
The time when this resource was updated in an RFC3339 formatted datetime string.
id String
The provider-assigned unique ID for this managed resource.
lifecycleDetails String
A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.
state String
The current state of the Resource.
systemTags Map<String,String>
Usage of system tag keys. These predefined keys are scoped to namespaces. Example: {"orcl-cloud.free-tier-retained": "true"}
timeCreated String
The time when this resource was created in an RFC3339 formatted datetime string.
timeUpdated String
The time when this resource was updated in an RFC3339 formatted datetime string.
id string
The provider-assigned unique ID for this managed resource.
lifecycleDetails string
A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.
state string
The current state of the Resource.
systemTags {[key: string]: string}
Usage of system tag keys. These predefined keys are scoped to namespaces. Example: {"orcl-cloud.free-tier-retained": "true"}
timeCreated string
The time when this resource was created in an RFC3339 formatted datetime string.
timeUpdated string
The time when this resource was updated in an RFC3339 formatted datetime string.
id str
The provider-assigned unique ID for this managed resource.
lifecycle_details str
A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.
state str
The current state of the Resource.
system_tags Mapping[str, str]
Usage of system tag keys. These predefined keys are scoped to namespaces. Example: {"orcl-cloud.free-tier-retained": "true"}
time_created str
The time when this resource was created in an RFC3339 formatted datetime string.
time_updated str
The time when this resource was updated in an RFC3339 formatted datetime string.
id String
The provider-assigned unique ID for this managed resource.
lifecycleDetails String
A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.
state String
The current state of the Resource.
systemTags Map<String>
Usage of system tag keys. These predefined keys are scoped to namespaces. Example: {"orcl-cloud.free-tier-retained": "true"}
timeCreated String
The time when this resource was created in an RFC3339 formatted datetime string.
timeUpdated String
The time when this resource was updated in an RFC3339 formatted datetime string.

Look up Existing IngressGateway Resource

Get an existing IngressGateway 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?: IngressGatewayState, opts?: CustomResourceOptions): IngressGateway
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        access_logging: Optional[_servicemesh.IngressGatewayAccessLoggingArgs] = None,
        compartment_id: Optional[str] = None,
        defined_tags: Optional[Mapping[str, str]] = None,
        description: Optional[str] = None,
        freeform_tags: Optional[Mapping[str, str]] = None,
        hosts: Optional[Sequence[_servicemesh.IngressGatewayHostArgs]] = None,
        lifecycle_details: Optional[str] = None,
        mesh_id: Optional[str] = None,
        mtls: Optional[_servicemesh.IngressGatewayMtlsArgs] = None,
        name: Optional[str] = None,
        state: Optional[str] = None,
        system_tags: Optional[Mapping[str, str]] = None,
        time_created: Optional[str] = None,
        time_updated: Optional[str] = None) -> IngressGateway
func GetIngressGateway(ctx *Context, name string, id IDInput, state *IngressGatewayState, opts ...ResourceOption) (*IngressGateway, error)
public static IngressGateway Get(string name, Input<string> id, IngressGatewayState? state, CustomResourceOptions? opts = null)
public static IngressGateway get(String name, Output<String> id, IngressGatewayState state, CustomResourceOptions options)
resources:  _:    type: oci:ServiceMesh:IngressGateway    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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:
AccessLogging IngressGatewayAccessLogging
(Updatable) This configuration determines if logging is enabled and where the logs will be output.
CompartmentId string
(Updatable) The OCID of the compartment.
DefinedTags Dictionary<string, string>
(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: {"foo-namespace.bar-key": "value"}
Description string
(Updatable) Description of the resource. It can be changed after creation. Avoid entering confidential information. Example: This is my new resource
FreeformTags Dictionary<string, string>
(Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: {"bar-key": "value"}
Hosts List<IngressGatewayHost>
(Updatable) An array of hostnames and their listener configuration that this gateway will bind to.
LifecycleDetails string
A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.
MeshId Changes to this property will trigger replacement. string
The OCID of the service mesh in which this ingress gateway is created.
Mtls IngressGatewayMtls
(Updatable) Mutual TLS settings used when sending requests to virtual services within the mesh.
Name Changes to this property will trigger replacement. string

A user-friendly name. The name has to be unique within the same service mesh and cannot be changed after creation. Avoid entering confidential information. Example: My unique resource name

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

State string
The current state of the Resource.
SystemTags Dictionary<string, string>
Usage of system tag keys. These predefined keys are scoped to namespaces. Example: {"orcl-cloud.free-tier-retained": "true"}
TimeCreated string
The time when this resource was created in an RFC3339 formatted datetime string.
TimeUpdated string
The time when this resource was updated in an RFC3339 formatted datetime string.
AccessLogging IngressGatewayAccessLoggingArgs
(Updatable) This configuration determines if logging is enabled and where the logs will be output.
CompartmentId string
(Updatable) The OCID of the compartment.
DefinedTags map[string]string
(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: {"foo-namespace.bar-key": "value"}
Description string
(Updatable) Description of the resource. It can be changed after creation. Avoid entering confidential information. Example: This is my new resource
FreeformTags map[string]string
(Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: {"bar-key": "value"}
Hosts []IngressGatewayHostArgs
(Updatable) An array of hostnames and their listener configuration that this gateway will bind to.
LifecycleDetails string
A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.
MeshId Changes to this property will trigger replacement. string
The OCID of the service mesh in which this ingress gateway is created.
Mtls IngressGatewayMtlsArgs
(Updatable) Mutual TLS settings used when sending requests to virtual services within the mesh.
Name Changes to this property will trigger replacement. string

A user-friendly name. The name has to be unique within the same service mesh and cannot be changed after creation. Avoid entering confidential information. Example: My unique resource name

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

State string
The current state of the Resource.
SystemTags map[string]string
Usage of system tag keys. These predefined keys are scoped to namespaces. Example: {"orcl-cloud.free-tier-retained": "true"}
TimeCreated string
The time when this resource was created in an RFC3339 formatted datetime string.
TimeUpdated string
The time when this resource was updated in an RFC3339 formatted datetime string.
accessLogging IngressGatewayAccessLogging
(Updatable) This configuration determines if logging is enabled and where the logs will be output.
compartmentId String
(Updatable) The OCID of the compartment.
definedTags Map<String,String>
(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: {"foo-namespace.bar-key": "value"}
description String
(Updatable) Description of the resource. It can be changed after creation. Avoid entering confidential information. Example: This is my new resource
freeformTags Map<String,String>
(Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: {"bar-key": "value"}
hosts List<IngressGatewayHost>
(Updatable) An array of hostnames and their listener configuration that this gateway will bind to.
lifecycleDetails String
A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.
meshId Changes to this property will trigger replacement. String
The OCID of the service mesh in which this ingress gateway is created.
mtls IngressGatewayMtls
(Updatable) Mutual TLS settings used when sending requests to virtual services within the mesh.
name Changes to this property will trigger replacement. String

A user-friendly name. The name has to be unique within the same service mesh and cannot be changed after creation. Avoid entering confidential information. Example: My unique resource name

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

state String
The current state of the Resource.
systemTags Map<String,String>
Usage of system tag keys. These predefined keys are scoped to namespaces. Example: {"orcl-cloud.free-tier-retained": "true"}
timeCreated String
The time when this resource was created in an RFC3339 formatted datetime string.
timeUpdated String
The time when this resource was updated in an RFC3339 formatted datetime string.
accessLogging IngressGatewayAccessLogging
(Updatable) This configuration determines if logging is enabled and where the logs will be output.
compartmentId string
(Updatable) The OCID of the compartment.
definedTags {[key: string]: string}
(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: {"foo-namespace.bar-key": "value"}
description string
(Updatable) Description of the resource. It can be changed after creation. Avoid entering confidential information. Example: This is my new resource
freeformTags {[key: string]: string}
(Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: {"bar-key": "value"}
hosts IngressGatewayHost[]
(Updatable) An array of hostnames and their listener configuration that this gateway will bind to.
lifecycleDetails string
A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.
meshId Changes to this property will trigger replacement. string
The OCID of the service mesh in which this ingress gateway is created.
mtls IngressGatewayMtls
(Updatable) Mutual TLS settings used when sending requests to virtual services within the mesh.
name Changes to this property will trigger replacement. string

A user-friendly name. The name has to be unique within the same service mesh and cannot be changed after creation. Avoid entering confidential information. Example: My unique resource name

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

state string
The current state of the Resource.
systemTags {[key: string]: string}
Usage of system tag keys. These predefined keys are scoped to namespaces. Example: {"orcl-cloud.free-tier-retained": "true"}
timeCreated string
The time when this resource was created in an RFC3339 formatted datetime string.
timeUpdated string
The time when this resource was updated in an RFC3339 formatted datetime string.
access_logging servicemesh.IngressGatewayAccessLoggingArgs
(Updatable) This configuration determines if logging is enabled and where the logs will be output.
compartment_id str
(Updatable) The OCID of the compartment.
defined_tags Mapping[str, str]
(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: {"foo-namespace.bar-key": "value"}
description str
(Updatable) Description of the resource. It can be changed after creation. Avoid entering confidential information. Example: This is my new resource
freeform_tags Mapping[str, str]
(Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: {"bar-key": "value"}
hosts Sequence[servicemesh.IngressGatewayHostArgs]
(Updatable) An array of hostnames and their listener configuration that this gateway will bind to.
lifecycle_details str
A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.
mesh_id Changes to this property will trigger replacement. str
The OCID of the service mesh in which this ingress gateway is created.
mtls servicemesh.IngressGatewayMtlsArgs
(Updatable) Mutual TLS settings used when sending requests to virtual services within the mesh.
name Changes to this property will trigger replacement. str

A user-friendly name. The name has to be unique within the same service mesh and cannot be changed after creation. Avoid entering confidential information. Example: My unique resource name

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

state str
The current state of the Resource.
system_tags Mapping[str, str]
Usage of system tag keys. These predefined keys are scoped to namespaces. Example: {"orcl-cloud.free-tier-retained": "true"}
time_created str
The time when this resource was created in an RFC3339 formatted datetime string.
time_updated str
The time when this resource was updated in an RFC3339 formatted datetime string.
accessLogging Property Map
(Updatable) This configuration determines if logging is enabled and where the logs will be output.
compartmentId String
(Updatable) The OCID of the compartment.
definedTags Map<String>
(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: {"foo-namespace.bar-key": "value"}
description String
(Updatable) Description of the resource. It can be changed after creation. Avoid entering confidential information. Example: This is my new resource
freeformTags Map<String>
(Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: {"bar-key": "value"}
hosts List<Property Map>
(Updatable) An array of hostnames and their listener configuration that this gateway will bind to.
lifecycleDetails String
A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.
meshId Changes to this property will trigger replacement. String
The OCID of the service mesh in which this ingress gateway is created.
mtls Property Map
(Updatable) Mutual TLS settings used when sending requests to virtual services within the mesh.
name Changes to this property will trigger replacement. String

A user-friendly name. The name has to be unique within the same service mesh and cannot be changed after creation. Avoid entering confidential information. Example: My unique resource name

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

state String
The current state of the Resource.
systemTags Map<String>
Usage of system tag keys. These predefined keys are scoped to namespaces. Example: {"orcl-cloud.free-tier-retained": "true"}
timeCreated String
The time when this resource was created in an RFC3339 formatted datetime string.
timeUpdated String
The time when this resource was updated in an RFC3339 formatted datetime string.

Supporting Types

IngressGatewayAccessLogging
, IngressGatewayAccessLoggingArgs

IsEnabled bool
(Updatable) Determines if the logging configuration is enabled.
IsEnabled bool
(Updatable) Determines if the logging configuration is enabled.
isEnabled Boolean
(Updatable) Determines if the logging configuration is enabled.
isEnabled boolean
(Updatable) Determines if the logging configuration is enabled.
is_enabled bool
(Updatable) Determines if the logging configuration is enabled.
isEnabled Boolean
(Updatable) Determines if the logging configuration is enabled.

IngressGatewayHost
, IngressGatewayHostArgs

Listeners This property is required. List<IngressGatewayHostListener>
(Updatable) The listeners for the ingress gateway.
Name This property is required. string
(Updatable) A user-friendly name for the host. The name must be unique within the same ingress gateway. This name can be used in the ingress gateway route table resource to attach a route to this host. Example: MyExampleHost
Hostnames List<string>
(Updatable) Hostnames of the host. Applicable only for HTTP and TLS_PASSTHROUGH listeners. Wildcard hostnames are supported in the prefix form. Examples of valid hostnames are "www.example.com", ".example.com", ".com".
Listeners This property is required. []IngressGatewayHostListener
(Updatable) The listeners for the ingress gateway.
Name This property is required. string
(Updatable) A user-friendly name for the host. The name must be unique within the same ingress gateway. This name can be used in the ingress gateway route table resource to attach a route to this host. Example: MyExampleHost
Hostnames []string
(Updatable) Hostnames of the host. Applicable only for HTTP and TLS_PASSTHROUGH listeners. Wildcard hostnames are supported in the prefix form. Examples of valid hostnames are "www.example.com", ".example.com", ".com".
listeners This property is required. List<IngressGatewayHostListener>
(Updatable) The listeners for the ingress gateway.
name This property is required. String
(Updatable) A user-friendly name for the host. The name must be unique within the same ingress gateway. This name can be used in the ingress gateway route table resource to attach a route to this host. Example: MyExampleHost
hostnames List<String>
(Updatable) Hostnames of the host. Applicable only for HTTP and TLS_PASSTHROUGH listeners. Wildcard hostnames are supported in the prefix form. Examples of valid hostnames are "www.example.com", ".example.com", ".com".
listeners This property is required. IngressGatewayHostListener[]
(Updatable) The listeners for the ingress gateway.
name This property is required. string
(Updatable) A user-friendly name for the host. The name must be unique within the same ingress gateway. This name can be used in the ingress gateway route table resource to attach a route to this host. Example: MyExampleHost
hostnames string[]
(Updatable) Hostnames of the host. Applicable only for HTTP and TLS_PASSTHROUGH listeners. Wildcard hostnames are supported in the prefix form. Examples of valid hostnames are "www.example.com", ".example.com", ".com".
listeners This property is required. Sequence[servicemesh.IngressGatewayHostListener]
(Updatable) The listeners for the ingress gateway.
name This property is required. str
(Updatable) A user-friendly name for the host. The name must be unique within the same ingress gateway. This name can be used in the ingress gateway route table resource to attach a route to this host. Example: MyExampleHost
hostnames Sequence[str]
(Updatable) Hostnames of the host. Applicable only for HTTP and TLS_PASSTHROUGH listeners. Wildcard hostnames are supported in the prefix form. Examples of valid hostnames are "www.example.com", ".example.com", ".com".
listeners This property is required. List<Property Map>
(Updatable) The listeners for the ingress gateway.
name This property is required. String
(Updatable) A user-friendly name for the host. The name must be unique within the same ingress gateway. This name can be used in the ingress gateway route table resource to attach a route to this host. Example: MyExampleHost
hostnames List<String>
(Updatable) Hostnames of the host. Applicable only for HTTP and TLS_PASSTHROUGH listeners. Wildcard hostnames are supported in the prefix form. Examples of valid hostnames are "www.example.com", ".example.com", ".com".

IngressGatewayHostListener
, IngressGatewayHostListenerArgs

Port This property is required. int
(Updatable) Port on which ingress gateway is listening.
Protocol This property is required. string
(Updatable) Type of protocol used.
Tls IngressGatewayHostListenerTls
(Updatable) TLS enforcement config for the ingress listener.
Port This property is required. int
(Updatable) Port on which ingress gateway is listening.
Protocol This property is required. string
(Updatable) Type of protocol used.
Tls IngressGatewayHostListenerTls
(Updatable) TLS enforcement config for the ingress listener.
port This property is required. Integer
(Updatable) Port on which ingress gateway is listening.
protocol This property is required. String
(Updatable) Type of protocol used.
tls IngressGatewayHostListenerTls
(Updatable) TLS enforcement config for the ingress listener.
port This property is required. number
(Updatable) Port on which ingress gateway is listening.
protocol This property is required. string
(Updatable) Type of protocol used.
tls IngressGatewayHostListenerTls
(Updatable) TLS enforcement config for the ingress listener.
port This property is required. int
(Updatable) Port on which ingress gateway is listening.
protocol This property is required. str
(Updatable) Type of protocol used.
tls servicemesh.IngressGatewayHostListenerTls
(Updatable) TLS enforcement config for the ingress listener.
port This property is required. Number
(Updatable) Port on which ingress gateway is listening.
protocol This property is required. String
(Updatable) Type of protocol used.
tls Property Map
(Updatable) TLS enforcement config for the ingress listener.

IngressGatewayHostListenerTls
, IngressGatewayHostListenerTlsArgs

Mode This property is required. string
(Updatable) DISABLED: Connection can only be plaintext. PERMISSIVE: Connection can be either plaintext or TLS/mTLS. If the clientValidation.trustedCaBundle property is configured for the listener, mTLS is performed and the client's certificates are validated by the gateway. TLS: Connection can only be TLS. MUTUAL_TLS: Connection can only be MTLS.
ClientValidation IngressGatewayHostListenerTlsClientValidation
(Updatable) Resource representing the TLS configuration used for validating client certificates.
ServerCertificate IngressGatewayHostListenerTlsServerCertificate
(Updatable) Resource representing the location of the TLS certificate.
Mode This property is required. string
(Updatable) DISABLED: Connection can only be plaintext. PERMISSIVE: Connection can be either plaintext or TLS/mTLS. If the clientValidation.trustedCaBundle property is configured for the listener, mTLS is performed and the client's certificates are validated by the gateway. TLS: Connection can only be TLS. MUTUAL_TLS: Connection can only be MTLS.
ClientValidation IngressGatewayHostListenerTlsClientValidation
(Updatable) Resource representing the TLS configuration used for validating client certificates.
ServerCertificate IngressGatewayHostListenerTlsServerCertificate
(Updatable) Resource representing the location of the TLS certificate.
mode This property is required. String
(Updatable) DISABLED: Connection can only be plaintext. PERMISSIVE: Connection can be either plaintext or TLS/mTLS. If the clientValidation.trustedCaBundle property is configured for the listener, mTLS is performed and the client's certificates are validated by the gateway. TLS: Connection can only be TLS. MUTUAL_TLS: Connection can only be MTLS.
clientValidation IngressGatewayHostListenerTlsClientValidation
(Updatable) Resource representing the TLS configuration used for validating client certificates.
serverCertificate IngressGatewayHostListenerTlsServerCertificate
(Updatable) Resource representing the location of the TLS certificate.
mode This property is required. string
(Updatable) DISABLED: Connection can only be plaintext. PERMISSIVE: Connection can be either plaintext or TLS/mTLS. If the clientValidation.trustedCaBundle property is configured for the listener, mTLS is performed and the client's certificates are validated by the gateway. TLS: Connection can only be TLS. MUTUAL_TLS: Connection can only be MTLS.
clientValidation IngressGatewayHostListenerTlsClientValidation
(Updatable) Resource representing the TLS configuration used for validating client certificates.
serverCertificate IngressGatewayHostListenerTlsServerCertificate
(Updatable) Resource representing the location of the TLS certificate.
mode This property is required. str
(Updatable) DISABLED: Connection can only be plaintext. PERMISSIVE: Connection can be either plaintext or TLS/mTLS. If the clientValidation.trustedCaBundle property is configured for the listener, mTLS is performed and the client's certificates are validated by the gateway. TLS: Connection can only be TLS. MUTUAL_TLS: Connection can only be MTLS.
client_validation servicemesh.IngressGatewayHostListenerTlsClientValidation
(Updatable) Resource representing the TLS configuration used for validating client certificates.
server_certificate servicemesh.IngressGatewayHostListenerTlsServerCertificate
(Updatable) Resource representing the location of the TLS certificate.
mode This property is required. String
(Updatable) DISABLED: Connection can only be plaintext. PERMISSIVE: Connection can be either plaintext or TLS/mTLS. If the clientValidation.trustedCaBundle property is configured for the listener, mTLS is performed and the client's certificates are validated by the gateway. TLS: Connection can only be TLS. MUTUAL_TLS: Connection can only be MTLS.
clientValidation Property Map
(Updatable) Resource representing the TLS configuration used for validating client certificates.
serverCertificate Property Map
(Updatable) Resource representing the location of the TLS certificate.

IngressGatewayHostListenerTlsClientValidation
, IngressGatewayHostListenerTlsClientValidationArgs

SubjectAlternateNames List<string>
(Updatable) A list of alternate names to verify the subject identity in the certificate presented by the client.
TrustedCaBundle IngressGatewayHostListenerTlsClientValidationTrustedCaBundle
(Updatable) Resource representing the CA bundle.
SubjectAlternateNames []string
(Updatable) A list of alternate names to verify the subject identity in the certificate presented by the client.
TrustedCaBundle IngressGatewayHostListenerTlsClientValidationTrustedCaBundle
(Updatable) Resource representing the CA bundle.
subjectAlternateNames List<String>
(Updatable) A list of alternate names to verify the subject identity in the certificate presented by the client.
trustedCaBundle IngressGatewayHostListenerTlsClientValidationTrustedCaBundle
(Updatable) Resource representing the CA bundle.
subjectAlternateNames string[]
(Updatable) A list of alternate names to verify the subject identity in the certificate presented by the client.
trustedCaBundle IngressGatewayHostListenerTlsClientValidationTrustedCaBundle
(Updatable) Resource representing the CA bundle.
subject_alternate_names Sequence[str]
(Updatable) A list of alternate names to verify the subject identity in the certificate presented by the client.
trusted_ca_bundle servicemesh.IngressGatewayHostListenerTlsClientValidationTrustedCaBundle
(Updatable) Resource representing the CA bundle.
subjectAlternateNames List<String>
(Updatable) A list of alternate names to verify the subject identity in the certificate presented by the client.
trustedCaBundle Property Map
(Updatable) Resource representing the CA bundle.

IngressGatewayHostListenerTlsClientValidationTrustedCaBundle
, IngressGatewayHostListenerTlsClientValidationTrustedCaBundleArgs

Type This property is required. string
(Updatable) Type of certificate.
CaBundleId string
(Updatable) The OCID of the CA Bundle resource.
SecretName string
(Updatable) Name of the secret. For Kubernetes this will be the name of an opaque Kubernetes secret with key ca.crt. For other platforms the secret must be mounted at: /etc/oci/secrets/${secretName}/ca.crt
Type This property is required. string
(Updatable) Type of certificate.
CaBundleId string
(Updatable) The OCID of the CA Bundle resource.
SecretName string
(Updatable) Name of the secret. For Kubernetes this will be the name of an opaque Kubernetes secret with key ca.crt. For other platforms the secret must be mounted at: /etc/oci/secrets/${secretName}/ca.crt
type This property is required. String
(Updatable) Type of certificate.
caBundleId String
(Updatable) The OCID of the CA Bundle resource.
secretName String
(Updatable) Name of the secret. For Kubernetes this will be the name of an opaque Kubernetes secret with key ca.crt. For other platforms the secret must be mounted at: /etc/oci/secrets/${secretName}/ca.crt
type This property is required. string
(Updatable) Type of certificate.
caBundleId string
(Updatable) The OCID of the CA Bundle resource.
secretName string
(Updatable) Name of the secret. For Kubernetes this will be the name of an opaque Kubernetes secret with key ca.crt. For other platforms the secret must be mounted at: /etc/oci/secrets/${secretName}/ca.crt
type This property is required. str
(Updatable) Type of certificate.
ca_bundle_id str
(Updatable) The OCID of the CA Bundle resource.
secret_name str
(Updatable) Name of the secret. For Kubernetes this will be the name of an opaque Kubernetes secret with key ca.crt. For other platforms the secret must be mounted at: /etc/oci/secrets/${secretName}/ca.crt
type This property is required. String
(Updatable) Type of certificate.
caBundleId String
(Updatable) The OCID of the CA Bundle resource.
secretName String
(Updatable) Name of the secret. For Kubernetes this will be the name of an opaque Kubernetes secret with key ca.crt. For other platforms the secret must be mounted at: /etc/oci/secrets/${secretName}/ca.crt

IngressGatewayHostListenerTlsServerCertificate
, IngressGatewayHostListenerTlsServerCertificateArgs

Type This property is required. string
(Updatable) Type of certificate.
CertificateId string
(Updatable) The OCID of the leaf certificate resource.
SecretName string
(Updatable) Name of the secret. For Kubernetes this is the name of the Kubernetes secret of type tls. For other platforms the secrets must be mounted at: /etc/oci/secrets/${secretName}/tls.{key,crt}
Type This property is required. string
(Updatable) Type of certificate.
CertificateId string
(Updatable) The OCID of the leaf certificate resource.
SecretName string
(Updatable) Name of the secret. For Kubernetes this is the name of the Kubernetes secret of type tls. For other platforms the secrets must be mounted at: /etc/oci/secrets/${secretName}/tls.{key,crt}
type This property is required. String
(Updatable) Type of certificate.
certificateId String
(Updatable) The OCID of the leaf certificate resource.
secretName String
(Updatable) Name of the secret. For Kubernetes this is the name of the Kubernetes secret of type tls. For other platforms the secrets must be mounted at: /etc/oci/secrets/${secretName}/tls.{key,crt}
type This property is required. string
(Updatable) Type of certificate.
certificateId string
(Updatable) The OCID of the leaf certificate resource.
secretName string
(Updatable) Name of the secret. For Kubernetes this is the name of the Kubernetes secret of type tls. For other platforms the secrets must be mounted at: /etc/oci/secrets/${secretName}/tls.{key,crt}
type This property is required. str
(Updatable) Type of certificate.
certificate_id str
(Updatable) The OCID of the leaf certificate resource.
secret_name str
(Updatable) Name of the secret. For Kubernetes this is the name of the Kubernetes secret of type tls. For other platforms the secrets must be mounted at: /etc/oci/secrets/${secretName}/tls.{key,crt}
type This property is required. String
(Updatable) Type of certificate.
certificateId String
(Updatable) The OCID of the leaf certificate resource.
secretName String
(Updatable) Name of the secret. For Kubernetes this is the name of the Kubernetes secret of type tls. For other platforms the secrets must be mounted at: /etc/oci/secrets/${secretName}/tls.{key,crt}

IngressGatewayMtls
, IngressGatewayMtlsArgs

CertificateId string
The OCID of the certificate resource that will be used for mTLS authentication with other virtual services in the mesh.
MaximumValidity int
(Updatable) The number of days the mTLS certificate is valid. This value should be less than the Maximum Validity Duration for Certificates (Days) setting on the Certificate Authority associated with this Mesh. The certificate will be automatically renewed after 2/3 of the validity period, so a certificate with a maximum validity of 45 days will be renewed every 30 days.
CertificateId string
The OCID of the certificate resource that will be used for mTLS authentication with other virtual services in the mesh.
MaximumValidity int
(Updatable) The number of days the mTLS certificate is valid. This value should be less than the Maximum Validity Duration for Certificates (Days) setting on the Certificate Authority associated with this Mesh. The certificate will be automatically renewed after 2/3 of the validity period, so a certificate with a maximum validity of 45 days will be renewed every 30 days.
certificateId String
The OCID of the certificate resource that will be used for mTLS authentication with other virtual services in the mesh.
maximumValidity Integer
(Updatable) The number of days the mTLS certificate is valid. This value should be less than the Maximum Validity Duration for Certificates (Days) setting on the Certificate Authority associated with this Mesh. The certificate will be automatically renewed after 2/3 of the validity period, so a certificate with a maximum validity of 45 days will be renewed every 30 days.
certificateId string
The OCID of the certificate resource that will be used for mTLS authentication with other virtual services in the mesh.
maximumValidity number
(Updatable) The number of days the mTLS certificate is valid. This value should be less than the Maximum Validity Duration for Certificates (Days) setting on the Certificate Authority associated with this Mesh. The certificate will be automatically renewed after 2/3 of the validity period, so a certificate with a maximum validity of 45 days will be renewed every 30 days.
certificate_id str
The OCID of the certificate resource that will be used for mTLS authentication with other virtual services in the mesh.
maximum_validity int
(Updatable) The number of days the mTLS certificate is valid. This value should be less than the Maximum Validity Duration for Certificates (Days) setting on the Certificate Authority associated with this Mesh. The certificate will be automatically renewed after 2/3 of the validity period, so a certificate with a maximum validity of 45 days will be renewed every 30 days.
certificateId String
The OCID of the certificate resource that will be used for mTLS authentication with other virtual services in the mesh.
maximumValidity Number
(Updatable) The number of days the mTLS certificate is valid. This value should be less than the Maximum Validity Duration for Certificates (Days) setting on the Certificate Authority associated with this Mesh. The certificate will be automatically renewed after 2/3 of the validity period, so a certificate with a maximum validity of 45 days will be renewed every 30 days.

Import

IngressGateways can be imported using the id, e.g.

$ pulumi import oci:ServiceMesh/ingressGateway:IngressGateway test_ingress_gateway "id"
Copy

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
oci pulumi/pulumi-oci
License
Apache-2.0
Notes
This Pulumi package is based on the oci Terraform Provider.