kong

package
v4.5.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 16, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

A Pulumi package for creating and managing Kong resources.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Certificate

type Certificate struct {
	pulumi.CustomResourceState

	// should be the public key of your certificate it is mapped to the `Cert` parameter on the Kong API.
	Certificate pulumi.StringOutput `pulumi:"certificate"`
	// should be the private key of your certificate it is mapped to the `Key` parameter on the Kong API.
	PrivateKey pulumi.StringPtrOutput `pulumi:"privateKey"`
	// A list of strings associated with the Certificate for grouping and filtering
	Snis pulumi.StringArrayOutput `pulumi:"snis"`
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
}

## # Certificate

For more information on creating certificates in Kong [see their documentation](https://docs.konghq.com/gateway-oss/2.5.x/admin-api/#certificate-object)

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := kong.NewCertificate(ctx, "certificate", &kong.CertificateArgs{
			Certificate: pulumi.String("public key --- 123 ----"),
			PrivateKey:  pulumi.String("private key --- 456 ----"),
			Snis: pulumi.StringArray{
				pulumi.String("foo.com"),
				pulumi.String("bar.com"),
			},
			Tags: pulumi.StringArray{
				pulumi.String("myTag"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

To import a certificate:

```sh $ pulumi import kong:index/certificate:Certificate <certifcate_identifier> <certificate_id> ```

func GetCertificate

func GetCertificate(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CertificateState, opts ...pulumi.ResourceOption) (*Certificate, error)

GetCertificate gets an existing Certificate resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewCertificate

func NewCertificate(ctx *pulumi.Context,
	name string, args *CertificateArgs, opts ...pulumi.ResourceOption) (*Certificate, error)

NewCertificate registers a new resource with the given unique name, arguments, and options.

func (*Certificate) ElementType

func (*Certificate) ElementType() reflect.Type

func (*Certificate) ToCertificateOutput

func (i *Certificate) ToCertificateOutput() CertificateOutput

func (*Certificate) ToCertificateOutputWithContext

func (i *Certificate) ToCertificateOutputWithContext(ctx context.Context) CertificateOutput

type CertificateArgs

type CertificateArgs struct {
	// should be the public key of your certificate it is mapped to the `Cert` parameter on the Kong API.
	Certificate pulumi.StringInput
	// should be the private key of your certificate it is mapped to the `Key` parameter on the Kong API.
	PrivateKey pulumi.StringPtrInput
	// A list of strings associated with the Certificate for grouping and filtering
	Snis pulumi.StringArrayInput
	Tags pulumi.StringArrayInput
}

The set of arguments for constructing a Certificate resource.

func (CertificateArgs) ElementType

func (CertificateArgs) ElementType() reflect.Type

type CertificateArray

type CertificateArray []CertificateInput

func (CertificateArray) ElementType

func (CertificateArray) ElementType() reflect.Type

func (CertificateArray) ToCertificateArrayOutput

func (i CertificateArray) ToCertificateArrayOutput() CertificateArrayOutput

func (CertificateArray) ToCertificateArrayOutputWithContext

func (i CertificateArray) ToCertificateArrayOutputWithContext(ctx context.Context) CertificateArrayOutput

type CertificateArrayInput

type CertificateArrayInput interface {
	pulumi.Input

	ToCertificateArrayOutput() CertificateArrayOutput
	ToCertificateArrayOutputWithContext(context.Context) CertificateArrayOutput
}

CertificateArrayInput is an input type that accepts CertificateArray and CertificateArrayOutput values. You can construct a concrete instance of `CertificateArrayInput` via:

CertificateArray{ CertificateArgs{...} }

type CertificateArrayOutput

type CertificateArrayOutput struct{ *pulumi.OutputState }

func (CertificateArrayOutput) ElementType

func (CertificateArrayOutput) ElementType() reflect.Type

func (CertificateArrayOutput) Index

func (CertificateArrayOutput) ToCertificateArrayOutput

func (o CertificateArrayOutput) ToCertificateArrayOutput() CertificateArrayOutput

func (CertificateArrayOutput) ToCertificateArrayOutputWithContext

func (o CertificateArrayOutput) ToCertificateArrayOutputWithContext(ctx context.Context) CertificateArrayOutput

type CertificateInput

type CertificateInput interface {
	pulumi.Input

	ToCertificateOutput() CertificateOutput
	ToCertificateOutputWithContext(ctx context.Context) CertificateOutput
}

type CertificateMap

type CertificateMap map[string]CertificateInput

func (CertificateMap) ElementType

func (CertificateMap) ElementType() reflect.Type

func (CertificateMap) ToCertificateMapOutput

func (i CertificateMap) ToCertificateMapOutput() CertificateMapOutput

func (CertificateMap) ToCertificateMapOutputWithContext

func (i CertificateMap) ToCertificateMapOutputWithContext(ctx context.Context) CertificateMapOutput

type CertificateMapInput

type CertificateMapInput interface {
	pulumi.Input

	ToCertificateMapOutput() CertificateMapOutput
	ToCertificateMapOutputWithContext(context.Context) CertificateMapOutput
}

CertificateMapInput is an input type that accepts CertificateMap and CertificateMapOutput values. You can construct a concrete instance of `CertificateMapInput` via:

CertificateMap{ "key": CertificateArgs{...} }

type CertificateMapOutput

type CertificateMapOutput struct{ *pulumi.OutputState }

func (CertificateMapOutput) ElementType

func (CertificateMapOutput) ElementType() reflect.Type

func (CertificateMapOutput) MapIndex

func (CertificateMapOutput) ToCertificateMapOutput

func (o CertificateMapOutput) ToCertificateMapOutput() CertificateMapOutput

func (CertificateMapOutput) ToCertificateMapOutputWithContext

func (o CertificateMapOutput) ToCertificateMapOutputWithContext(ctx context.Context) CertificateMapOutput

type CertificateOutput

type CertificateOutput struct{ *pulumi.OutputState }

func (CertificateOutput) Certificate added in v4.5.1

func (o CertificateOutput) Certificate() pulumi.StringOutput

should be the public key of your certificate it is mapped to the `Cert` parameter on the Kong API.

func (CertificateOutput) ElementType

func (CertificateOutput) ElementType() reflect.Type

func (CertificateOutput) PrivateKey added in v4.5.1

func (o CertificateOutput) PrivateKey() pulumi.StringPtrOutput

should be the private key of your certificate it is mapped to the `Key` parameter on the Kong API.

func (CertificateOutput) Snis added in v4.5.1

A list of strings associated with the Certificate for grouping and filtering

func (CertificateOutput) Tags added in v4.5.1

func (CertificateOutput) ToCertificateOutput

func (o CertificateOutput) ToCertificateOutput() CertificateOutput

func (CertificateOutput) ToCertificateOutputWithContext

func (o CertificateOutput) ToCertificateOutputWithContext(ctx context.Context) CertificateOutput

type CertificateState

type CertificateState struct {
	// should be the public key of your certificate it is mapped to the `Cert` parameter on the Kong API.
	Certificate pulumi.StringPtrInput
	// should be the private key of your certificate it is mapped to the `Key` parameter on the Kong API.
	PrivateKey pulumi.StringPtrInput
	// A list of strings associated with the Certificate for grouping and filtering
	Snis pulumi.StringArrayInput
	Tags pulumi.StringArrayInput
}

func (CertificateState) ElementType

func (CertificateState) ElementType() reflect.Type

type Consumer

type Consumer struct {
	pulumi.CustomResourceState

	// A custom id for the consumer, you must set either the username or custom_id
	CustomId pulumi.StringPtrOutput `pulumi:"customId"`
	// A list of strings associated with the Consumer for grouping and filtering
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
	// The username to use, you must set either the username or custom_id
	Username pulumi.StringPtrOutput `pulumi:"username"`
}

## # Consumer

The consumer resource maps directly onto the json for creating a Consumer in Kong. For more information on the parameters [see the Kong Consumer create documentation](https://docs.konghq.com/gateway-oss/2.5.x/admin-api/#consumer-object).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := kong.NewConsumer(ctx, "consumer", &kong.ConsumerArgs{
			Username: pulumi.String("User1"),
			CustomId: pulumi.String("123"),
			Tags: pulumi.StringArray{
				pulumi.String("mySuperTag"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

To import a consumer:

```sh $ pulumi import kong:index/consumer:Consumer <consumer_identifier> <consumer_id> ```

func GetConsumer

func GetConsumer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConsumerState, opts ...pulumi.ResourceOption) (*Consumer, error)

GetConsumer gets an existing Consumer resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewConsumer

func NewConsumer(ctx *pulumi.Context,
	name string, args *ConsumerArgs, opts ...pulumi.ResourceOption) (*Consumer, error)

NewConsumer registers a new resource with the given unique name, arguments, and options.

func (*Consumer) ElementType

func (*Consumer) ElementType() reflect.Type

func (*Consumer) ToConsumerOutput

func (i *Consumer) ToConsumerOutput() ConsumerOutput

func (*Consumer) ToConsumerOutputWithContext

func (i *Consumer) ToConsumerOutputWithContext(ctx context.Context) ConsumerOutput

type ConsumerAcl

type ConsumerAcl struct {
	pulumi.CustomResourceState

	// the id of the consumer to be configured
	ConsumerId pulumi.StringOutput `pulumi:"consumerId"`
	// the acl group
	Group pulumi.StringOutput `pulumi:"group"`
	// A list of strings associated with the consumer acl for grouping and filtering
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
}

## # ConsumerAcl

Consumer ACL is a resource that allows you to configure the acl plugin for a consumer.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		myConsumer, err := kong.NewConsumer(ctx, "my_consumer", &kong.ConsumerArgs{
			Username: pulumi.String("User1"),
			CustomId: pulumi.String("123"),
		})
		if err != nil {
			return err
		}
		_, err = kong.NewPlugin(ctx, "acl_plugin", &kong.PluginArgs{
			Name:       pulumi.String("acl"),
			ConfigJson: pulumi.String("	{\n		\"allow\": [\"group1\", \"group2\"]\n	}\n"),
		})
		if err != nil {
			return err
		}
		_, err = kong.NewConsumerAcl(ctx, "consumer_acl", &kong.ConsumerAclArgs{
			ConsumerId: myConsumer.ID(),
			Group:      pulumi.String("group2"),
			Tags: pulumi.StringArray{
				pulumi.String("myTag"),
				pulumi.String("otherTag"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetConsumerAcl

func GetConsumerAcl(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConsumerAclState, opts ...pulumi.ResourceOption) (*ConsumerAcl, error)

GetConsumerAcl gets an existing ConsumerAcl resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewConsumerAcl

func NewConsumerAcl(ctx *pulumi.Context,
	name string, args *ConsumerAclArgs, opts ...pulumi.ResourceOption) (*ConsumerAcl, error)

NewConsumerAcl registers a new resource with the given unique name, arguments, and options.

func (*ConsumerAcl) ElementType

func (*ConsumerAcl) ElementType() reflect.Type

func (*ConsumerAcl) ToConsumerAclOutput

func (i *ConsumerAcl) ToConsumerAclOutput() ConsumerAclOutput

func (*ConsumerAcl) ToConsumerAclOutputWithContext

func (i *ConsumerAcl) ToConsumerAclOutputWithContext(ctx context.Context) ConsumerAclOutput

type ConsumerAclArgs

type ConsumerAclArgs struct {
	// the id of the consumer to be configured
	ConsumerId pulumi.StringInput
	// the acl group
	Group pulumi.StringInput
	// A list of strings associated with the consumer acl for grouping and filtering
	Tags pulumi.StringArrayInput
}

The set of arguments for constructing a ConsumerAcl resource.

func (ConsumerAclArgs) ElementType

func (ConsumerAclArgs) ElementType() reflect.Type

type ConsumerAclArray

type ConsumerAclArray []ConsumerAclInput

func (ConsumerAclArray) ElementType

func (ConsumerAclArray) ElementType() reflect.Type

func (ConsumerAclArray) ToConsumerAclArrayOutput

func (i ConsumerAclArray) ToConsumerAclArrayOutput() ConsumerAclArrayOutput

func (ConsumerAclArray) ToConsumerAclArrayOutputWithContext

func (i ConsumerAclArray) ToConsumerAclArrayOutputWithContext(ctx context.Context) ConsumerAclArrayOutput

type ConsumerAclArrayInput

type ConsumerAclArrayInput interface {
	pulumi.Input

	ToConsumerAclArrayOutput() ConsumerAclArrayOutput
	ToConsumerAclArrayOutputWithContext(context.Context) ConsumerAclArrayOutput
}

ConsumerAclArrayInput is an input type that accepts ConsumerAclArray and ConsumerAclArrayOutput values. You can construct a concrete instance of `ConsumerAclArrayInput` via:

ConsumerAclArray{ ConsumerAclArgs{...} }

type ConsumerAclArrayOutput

type ConsumerAclArrayOutput struct{ *pulumi.OutputState }

func (ConsumerAclArrayOutput) ElementType

func (ConsumerAclArrayOutput) ElementType() reflect.Type

func (ConsumerAclArrayOutput) Index

func (ConsumerAclArrayOutput) ToConsumerAclArrayOutput

func (o ConsumerAclArrayOutput) ToConsumerAclArrayOutput() ConsumerAclArrayOutput

func (ConsumerAclArrayOutput) ToConsumerAclArrayOutputWithContext

func (o ConsumerAclArrayOutput) ToConsumerAclArrayOutputWithContext(ctx context.Context) ConsumerAclArrayOutput

type ConsumerAclInput

type ConsumerAclInput interface {
	pulumi.Input

	ToConsumerAclOutput() ConsumerAclOutput
	ToConsumerAclOutputWithContext(ctx context.Context) ConsumerAclOutput
}

type ConsumerAclMap

type ConsumerAclMap map[string]ConsumerAclInput

func (ConsumerAclMap) ElementType

func (ConsumerAclMap) ElementType() reflect.Type

func (ConsumerAclMap) ToConsumerAclMapOutput

func (i ConsumerAclMap) ToConsumerAclMapOutput() ConsumerAclMapOutput

func (ConsumerAclMap) ToConsumerAclMapOutputWithContext

func (i ConsumerAclMap) ToConsumerAclMapOutputWithContext(ctx context.Context) ConsumerAclMapOutput

type ConsumerAclMapInput

type ConsumerAclMapInput interface {
	pulumi.Input

	ToConsumerAclMapOutput() ConsumerAclMapOutput
	ToConsumerAclMapOutputWithContext(context.Context) ConsumerAclMapOutput
}

ConsumerAclMapInput is an input type that accepts ConsumerAclMap and ConsumerAclMapOutput values. You can construct a concrete instance of `ConsumerAclMapInput` via:

ConsumerAclMap{ "key": ConsumerAclArgs{...} }

type ConsumerAclMapOutput

type ConsumerAclMapOutput struct{ *pulumi.OutputState }

func (ConsumerAclMapOutput) ElementType

func (ConsumerAclMapOutput) ElementType() reflect.Type

func (ConsumerAclMapOutput) MapIndex

func (ConsumerAclMapOutput) ToConsumerAclMapOutput

func (o ConsumerAclMapOutput) ToConsumerAclMapOutput() ConsumerAclMapOutput

func (ConsumerAclMapOutput) ToConsumerAclMapOutputWithContext

func (o ConsumerAclMapOutput) ToConsumerAclMapOutputWithContext(ctx context.Context) ConsumerAclMapOutput

type ConsumerAclOutput

type ConsumerAclOutput struct{ *pulumi.OutputState }

func (ConsumerAclOutput) ConsumerId added in v4.5.1

func (o ConsumerAclOutput) ConsumerId() pulumi.StringOutput

the id of the consumer to be configured

func (ConsumerAclOutput) ElementType

func (ConsumerAclOutput) ElementType() reflect.Type

func (ConsumerAclOutput) Group added in v4.5.1

the acl group

func (ConsumerAclOutput) Tags added in v4.5.1

A list of strings associated with the consumer acl for grouping and filtering

func (ConsumerAclOutput) ToConsumerAclOutput

func (o ConsumerAclOutput) ToConsumerAclOutput() ConsumerAclOutput

func (ConsumerAclOutput) ToConsumerAclOutputWithContext

func (o ConsumerAclOutput) ToConsumerAclOutputWithContext(ctx context.Context) ConsumerAclOutput

type ConsumerAclState

type ConsumerAclState struct {
	// the id of the consumer to be configured
	ConsumerId pulumi.StringPtrInput
	// the acl group
	Group pulumi.StringPtrInput
	// A list of strings associated with the consumer acl for grouping and filtering
	Tags pulumi.StringArrayInput
}

func (ConsumerAclState) ElementType

func (ConsumerAclState) ElementType() reflect.Type

type ConsumerArgs

type ConsumerArgs struct {
	// A custom id for the consumer, you must set either the username or custom_id
	CustomId pulumi.StringPtrInput
	// A list of strings associated with the Consumer for grouping and filtering
	Tags pulumi.StringArrayInput
	// The username to use, you must set either the username or custom_id
	Username pulumi.StringPtrInput
}

The set of arguments for constructing a Consumer resource.

func (ConsumerArgs) ElementType

func (ConsumerArgs) ElementType() reflect.Type

type ConsumerArray

type ConsumerArray []ConsumerInput

func (ConsumerArray) ElementType

func (ConsumerArray) ElementType() reflect.Type

func (ConsumerArray) ToConsumerArrayOutput

func (i ConsumerArray) ToConsumerArrayOutput() ConsumerArrayOutput

func (ConsumerArray) ToConsumerArrayOutputWithContext

func (i ConsumerArray) ToConsumerArrayOutputWithContext(ctx context.Context) ConsumerArrayOutput

type ConsumerArrayInput

type ConsumerArrayInput interface {
	pulumi.Input

	ToConsumerArrayOutput() ConsumerArrayOutput
	ToConsumerArrayOutputWithContext(context.Context) ConsumerArrayOutput
}

ConsumerArrayInput is an input type that accepts ConsumerArray and ConsumerArrayOutput values. You can construct a concrete instance of `ConsumerArrayInput` via:

ConsumerArray{ ConsumerArgs{...} }

type ConsumerArrayOutput

type ConsumerArrayOutput struct{ *pulumi.OutputState }

func (ConsumerArrayOutput) ElementType

func (ConsumerArrayOutput) ElementType() reflect.Type

func (ConsumerArrayOutput) Index

func (ConsumerArrayOutput) ToConsumerArrayOutput

func (o ConsumerArrayOutput) ToConsumerArrayOutput() ConsumerArrayOutput

func (ConsumerArrayOutput) ToConsumerArrayOutputWithContext

func (o ConsumerArrayOutput) ToConsumerArrayOutputWithContext(ctx context.Context) ConsumerArrayOutput

type ConsumerBasicAuth

type ConsumerBasicAuth struct {
	pulumi.CustomResourceState

	// the id of the consumer to be configured with basic auth
	ConsumerId pulumi.StringOutput `pulumi:"consumerId"`
	// password to be used for basic auth
	Password pulumi.StringOutput `pulumi:"password"`
	// A list of strings associated with the consumer basic auth for grouping and filtering
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
	// username to be used for basic auth
	Username pulumi.StringOutput `pulumi:"username"`
}

## # ConsumerBasicAuth

Consumer basic auth is a resource that allows you to configure the basic auth plugin for a consumer.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		myConsumer, err := kong.NewConsumer(ctx, "my_consumer", &kong.ConsumerArgs{
			Username: pulumi.String("User1"),
			CustomId: pulumi.String("123"),
		})
		if err != nil {
			return err
		}
		_, err = kong.NewPlugin(ctx, "basic_auth_plugin", &kong.PluginArgs{
			Name: pulumi.String("basic-auth"),
		})
		if err != nil {
			return err
		}
		_, err = kong.NewConsumerBasicAuth(ctx, "consumer_basic_auth", &kong.ConsumerBasicAuthArgs{
			ConsumerId: myConsumer.ID(),
			Username:   pulumi.String("foo_updated"),
			Password:   pulumi.String("bar_updated"),
			Tags: pulumi.StringArray{
				pulumi.String("myTag"),
				pulumi.String("anotherTag"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetConsumerBasicAuth

func GetConsumerBasicAuth(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConsumerBasicAuthState, opts ...pulumi.ResourceOption) (*ConsumerBasicAuth, error)

GetConsumerBasicAuth gets an existing ConsumerBasicAuth resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewConsumerBasicAuth

func NewConsumerBasicAuth(ctx *pulumi.Context,
	name string, args *ConsumerBasicAuthArgs, opts ...pulumi.ResourceOption) (*ConsumerBasicAuth, error)

NewConsumerBasicAuth registers a new resource with the given unique name, arguments, and options.

func (*ConsumerBasicAuth) ElementType

func (*ConsumerBasicAuth) ElementType() reflect.Type

func (*ConsumerBasicAuth) ToConsumerBasicAuthOutput

func (i *ConsumerBasicAuth) ToConsumerBasicAuthOutput() ConsumerBasicAuthOutput

func (*ConsumerBasicAuth) ToConsumerBasicAuthOutputWithContext

func (i *ConsumerBasicAuth) ToConsumerBasicAuthOutputWithContext(ctx context.Context) ConsumerBasicAuthOutput

type ConsumerBasicAuthArgs

type ConsumerBasicAuthArgs struct {
	// the id of the consumer to be configured with basic auth
	ConsumerId pulumi.StringInput
	// password to be used for basic auth
	Password pulumi.StringInput
	// A list of strings associated with the consumer basic auth for grouping and filtering
	Tags pulumi.StringArrayInput
	// username to be used for basic auth
	Username pulumi.StringInput
}

The set of arguments for constructing a ConsumerBasicAuth resource.

func (ConsumerBasicAuthArgs) ElementType

func (ConsumerBasicAuthArgs) ElementType() reflect.Type

type ConsumerBasicAuthArray

type ConsumerBasicAuthArray []ConsumerBasicAuthInput

func (ConsumerBasicAuthArray) ElementType

func (ConsumerBasicAuthArray) ElementType() reflect.Type

func (ConsumerBasicAuthArray) ToConsumerBasicAuthArrayOutput

func (i ConsumerBasicAuthArray) ToConsumerBasicAuthArrayOutput() ConsumerBasicAuthArrayOutput

func (ConsumerBasicAuthArray) ToConsumerBasicAuthArrayOutputWithContext

func (i ConsumerBasicAuthArray) ToConsumerBasicAuthArrayOutputWithContext(ctx context.Context) ConsumerBasicAuthArrayOutput

type ConsumerBasicAuthArrayInput

type ConsumerBasicAuthArrayInput interface {
	pulumi.Input

	ToConsumerBasicAuthArrayOutput() ConsumerBasicAuthArrayOutput
	ToConsumerBasicAuthArrayOutputWithContext(context.Context) ConsumerBasicAuthArrayOutput
}

ConsumerBasicAuthArrayInput is an input type that accepts ConsumerBasicAuthArray and ConsumerBasicAuthArrayOutput values. You can construct a concrete instance of `ConsumerBasicAuthArrayInput` via:

ConsumerBasicAuthArray{ ConsumerBasicAuthArgs{...} }

type ConsumerBasicAuthArrayOutput

type ConsumerBasicAuthArrayOutput struct{ *pulumi.OutputState }

func (ConsumerBasicAuthArrayOutput) ElementType

func (ConsumerBasicAuthArrayOutput) Index

func (ConsumerBasicAuthArrayOutput) ToConsumerBasicAuthArrayOutput

func (o ConsumerBasicAuthArrayOutput) ToConsumerBasicAuthArrayOutput() ConsumerBasicAuthArrayOutput

func (ConsumerBasicAuthArrayOutput) ToConsumerBasicAuthArrayOutputWithContext

func (o ConsumerBasicAuthArrayOutput) ToConsumerBasicAuthArrayOutputWithContext(ctx context.Context) ConsumerBasicAuthArrayOutput

type ConsumerBasicAuthInput

type ConsumerBasicAuthInput interface {
	pulumi.Input

	ToConsumerBasicAuthOutput() ConsumerBasicAuthOutput
	ToConsumerBasicAuthOutputWithContext(ctx context.Context) ConsumerBasicAuthOutput
}

type ConsumerBasicAuthMap

type ConsumerBasicAuthMap map[string]ConsumerBasicAuthInput

func (ConsumerBasicAuthMap) ElementType

func (ConsumerBasicAuthMap) ElementType() reflect.Type

func (ConsumerBasicAuthMap) ToConsumerBasicAuthMapOutput

func (i ConsumerBasicAuthMap) ToConsumerBasicAuthMapOutput() ConsumerBasicAuthMapOutput

func (ConsumerBasicAuthMap) ToConsumerBasicAuthMapOutputWithContext

func (i ConsumerBasicAuthMap) ToConsumerBasicAuthMapOutputWithContext(ctx context.Context) ConsumerBasicAuthMapOutput

type ConsumerBasicAuthMapInput

type ConsumerBasicAuthMapInput interface {
	pulumi.Input

	ToConsumerBasicAuthMapOutput() ConsumerBasicAuthMapOutput
	ToConsumerBasicAuthMapOutputWithContext(context.Context) ConsumerBasicAuthMapOutput
}

ConsumerBasicAuthMapInput is an input type that accepts ConsumerBasicAuthMap and ConsumerBasicAuthMapOutput values. You can construct a concrete instance of `ConsumerBasicAuthMapInput` via:

ConsumerBasicAuthMap{ "key": ConsumerBasicAuthArgs{...} }

type ConsumerBasicAuthMapOutput

type ConsumerBasicAuthMapOutput struct{ *pulumi.OutputState }

func (ConsumerBasicAuthMapOutput) ElementType

func (ConsumerBasicAuthMapOutput) ElementType() reflect.Type

func (ConsumerBasicAuthMapOutput) MapIndex

func (ConsumerBasicAuthMapOutput) ToConsumerBasicAuthMapOutput

func (o ConsumerBasicAuthMapOutput) ToConsumerBasicAuthMapOutput() ConsumerBasicAuthMapOutput

func (ConsumerBasicAuthMapOutput) ToConsumerBasicAuthMapOutputWithContext

func (o ConsumerBasicAuthMapOutput) ToConsumerBasicAuthMapOutputWithContext(ctx context.Context) ConsumerBasicAuthMapOutput

type ConsumerBasicAuthOutput

type ConsumerBasicAuthOutput struct{ *pulumi.OutputState }

func (ConsumerBasicAuthOutput) ConsumerId added in v4.5.1

the id of the consumer to be configured with basic auth

func (ConsumerBasicAuthOutput) ElementType

func (ConsumerBasicAuthOutput) ElementType() reflect.Type

func (ConsumerBasicAuthOutput) Password added in v4.5.1

password to be used for basic auth

func (ConsumerBasicAuthOutput) Tags added in v4.5.1

A list of strings associated with the consumer basic auth for grouping and filtering

func (ConsumerBasicAuthOutput) ToConsumerBasicAuthOutput

func (o ConsumerBasicAuthOutput) ToConsumerBasicAuthOutput() ConsumerBasicAuthOutput

func (ConsumerBasicAuthOutput) ToConsumerBasicAuthOutputWithContext

func (o ConsumerBasicAuthOutput) ToConsumerBasicAuthOutputWithContext(ctx context.Context) ConsumerBasicAuthOutput

func (ConsumerBasicAuthOutput) Username added in v4.5.1

username to be used for basic auth

type ConsumerBasicAuthState

type ConsumerBasicAuthState struct {
	// the id of the consumer to be configured with basic auth
	ConsumerId pulumi.StringPtrInput
	// password to be used for basic auth
	Password pulumi.StringPtrInput
	// A list of strings associated with the consumer basic auth for grouping and filtering
	Tags pulumi.StringArrayInput
	// username to be used for basic auth
	Username pulumi.StringPtrInput
}

func (ConsumerBasicAuthState) ElementType

func (ConsumerBasicAuthState) ElementType() reflect.Type

type ConsumerInput

type ConsumerInput interface {
	pulumi.Input

	ToConsumerOutput() ConsumerOutput
	ToConsumerOutputWithContext(ctx context.Context) ConsumerOutput
}

type ConsumerJwtAuth added in v4.0.1

type ConsumerJwtAuth struct {
	pulumi.CustomResourceState

	// The algorithm used to verify the token’s signature. Can be HS256, HS384, HS512, RS256, or ES256, Default is `HS256`
	Algorithm pulumi.StringPtrOutput `pulumi:"algorithm"`
	// the id of the consumer to be configured with jwt auth
	ConsumerId pulumi.StringOutput `pulumi:"consumerId"`
	// A unique string identifying the credential. If left out, it will be auto-generated.
	Key pulumi.StringPtrOutput `pulumi:"key"`
	// If algorithm is `RS256` or `ES256`, the public key (in PEM format) to use to verify the token’s signature
	RsaPublicKey pulumi.StringOutput `pulumi:"rsaPublicKey"`
	// If algorithm is `HS256` or `ES256`, the secret used to sign JWTs for this credential. If left out, will be auto-generated
	Secret pulumi.StringPtrOutput `pulumi:"secret"`
	// A list of strings associated with the consumer JWT auth for grouping and filtering
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
}

## # ConsumerJwtAuth

Consumer jwt auth is a resource that allows you to configure the jwt auth plugin for a consumer.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		myConsumer, err := kong.NewConsumer(ctx, "my_consumer", &kong.ConsumerArgs{
			Username: pulumi.String("User1"),
			CustomId: pulumi.String("123"),
		})
		if err != nil {
			return err
		}
		_, err = kong.NewPlugin(ctx, "jwt_plugin", &kong.PluginArgs{
			Name:       pulumi.String("jwt"),
			ConfigJson: pulumi.String("	{\n		\"claims_to_verify\": [\"exp\"]\n	}\n"),
		})
		if err != nil {
			return err
		}
		_, err = kong.NewConsumerJwtAuth(ctx, "consumer_jwt_config", &kong.ConsumerJwtAuthArgs{
			ConsumerId:   myConsumer.ID(),
			Algorithm:    pulumi.String("HS256"),
			Key:          pulumi.String("my_key"),
			RsaPublicKey: pulumi.String("foo"),
			Secret:       pulumi.String("my_secret"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetConsumerJwtAuth added in v4.0.1

func GetConsumerJwtAuth(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConsumerJwtAuthState, opts ...pulumi.ResourceOption) (*ConsumerJwtAuth, error)

GetConsumerJwtAuth gets an existing ConsumerJwtAuth resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewConsumerJwtAuth added in v4.0.1

func NewConsumerJwtAuth(ctx *pulumi.Context,
	name string, args *ConsumerJwtAuthArgs, opts ...pulumi.ResourceOption) (*ConsumerJwtAuth, error)

NewConsumerJwtAuth registers a new resource with the given unique name, arguments, and options.

func (*ConsumerJwtAuth) ElementType added in v4.0.1

func (*ConsumerJwtAuth) ElementType() reflect.Type

func (*ConsumerJwtAuth) ToConsumerJwtAuthOutput added in v4.0.1

func (i *ConsumerJwtAuth) ToConsumerJwtAuthOutput() ConsumerJwtAuthOutput

func (*ConsumerJwtAuth) ToConsumerJwtAuthOutputWithContext added in v4.0.1

func (i *ConsumerJwtAuth) ToConsumerJwtAuthOutputWithContext(ctx context.Context) ConsumerJwtAuthOutput

type ConsumerJwtAuthArgs added in v4.0.1

type ConsumerJwtAuthArgs struct {
	// The algorithm used to verify the token’s signature. Can be HS256, HS384, HS512, RS256, or ES256, Default is `HS256`
	Algorithm pulumi.StringPtrInput
	// the id of the consumer to be configured with jwt auth
	ConsumerId pulumi.StringInput
	// A unique string identifying the credential. If left out, it will be auto-generated.
	Key pulumi.StringPtrInput
	// If algorithm is `RS256` or `ES256`, the public key (in PEM format) to use to verify the token’s signature
	RsaPublicKey pulumi.StringInput
	// If algorithm is `HS256` or `ES256`, the secret used to sign JWTs for this credential. If left out, will be auto-generated
	Secret pulumi.StringPtrInput
	// A list of strings associated with the consumer JWT auth for grouping and filtering
	Tags pulumi.StringArrayInput
}

The set of arguments for constructing a ConsumerJwtAuth resource.

func (ConsumerJwtAuthArgs) ElementType added in v4.0.1

func (ConsumerJwtAuthArgs) ElementType() reflect.Type

type ConsumerJwtAuthArray added in v4.0.1

type ConsumerJwtAuthArray []ConsumerJwtAuthInput

func (ConsumerJwtAuthArray) ElementType added in v4.0.1

func (ConsumerJwtAuthArray) ElementType() reflect.Type

func (ConsumerJwtAuthArray) ToConsumerJwtAuthArrayOutput added in v4.0.1

func (i ConsumerJwtAuthArray) ToConsumerJwtAuthArrayOutput() ConsumerJwtAuthArrayOutput

func (ConsumerJwtAuthArray) ToConsumerJwtAuthArrayOutputWithContext added in v4.0.1

func (i ConsumerJwtAuthArray) ToConsumerJwtAuthArrayOutputWithContext(ctx context.Context) ConsumerJwtAuthArrayOutput

type ConsumerJwtAuthArrayInput added in v4.0.1

type ConsumerJwtAuthArrayInput interface {
	pulumi.Input

	ToConsumerJwtAuthArrayOutput() ConsumerJwtAuthArrayOutput
	ToConsumerJwtAuthArrayOutputWithContext(context.Context) ConsumerJwtAuthArrayOutput
}

ConsumerJwtAuthArrayInput is an input type that accepts ConsumerJwtAuthArray and ConsumerJwtAuthArrayOutput values. You can construct a concrete instance of `ConsumerJwtAuthArrayInput` via:

ConsumerJwtAuthArray{ ConsumerJwtAuthArgs{...} }

type ConsumerJwtAuthArrayOutput added in v4.0.1

type ConsumerJwtAuthArrayOutput struct{ *pulumi.OutputState }

func (ConsumerJwtAuthArrayOutput) ElementType added in v4.0.1

func (ConsumerJwtAuthArrayOutput) ElementType() reflect.Type

func (ConsumerJwtAuthArrayOutput) Index added in v4.0.1

func (ConsumerJwtAuthArrayOutput) ToConsumerJwtAuthArrayOutput added in v4.0.1

func (o ConsumerJwtAuthArrayOutput) ToConsumerJwtAuthArrayOutput() ConsumerJwtAuthArrayOutput

func (ConsumerJwtAuthArrayOutput) ToConsumerJwtAuthArrayOutputWithContext added in v4.0.1

func (o ConsumerJwtAuthArrayOutput) ToConsumerJwtAuthArrayOutputWithContext(ctx context.Context) ConsumerJwtAuthArrayOutput

type ConsumerJwtAuthInput added in v4.0.1

type ConsumerJwtAuthInput interface {
	pulumi.Input

	ToConsumerJwtAuthOutput() ConsumerJwtAuthOutput
	ToConsumerJwtAuthOutputWithContext(ctx context.Context) ConsumerJwtAuthOutput
}

type ConsumerJwtAuthMap added in v4.0.1

type ConsumerJwtAuthMap map[string]ConsumerJwtAuthInput

func (ConsumerJwtAuthMap) ElementType added in v4.0.1

func (ConsumerJwtAuthMap) ElementType() reflect.Type

func (ConsumerJwtAuthMap) ToConsumerJwtAuthMapOutput added in v4.0.1

func (i ConsumerJwtAuthMap) ToConsumerJwtAuthMapOutput() ConsumerJwtAuthMapOutput

func (ConsumerJwtAuthMap) ToConsumerJwtAuthMapOutputWithContext added in v4.0.1

func (i ConsumerJwtAuthMap) ToConsumerJwtAuthMapOutputWithContext(ctx context.Context) ConsumerJwtAuthMapOutput

type ConsumerJwtAuthMapInput added in v4.0.1

type ConsumerJwtAuthMapInput interface {
	pulumi.Input

	ToConsumerJwtAuthMapOutput() ConsumerJwtAuthMapOutput
	ToConsumerJwtAuthMapOutputWithContext(context.Context) ConsumerJwtAuthMapOutput
}

ConsumerJwtAuthMapInput is an input type that accepts ConsumerJwtAuthMap and ConsumerJwtAuthMapOutput values. You can construct a concrete instance of `ConsumerJwtAuthMapInput` via:

ConsumerJwtAuthMap{ "key": ConsumerJwtAuthArgs{...} }

type ConsumerJwtAuthMapOutput added in v4.0.1

type ConsumerJwtAuthMapOutput struct{ *pulumi.OutputState }

func (ConsumerJwtAuthMapOutput) ElementType added in v4.0.1

func (ConsumerJwtAuthMapOutput) ElementType() reflect.Type

func (ConsumerJwtAuthMapOutput) MapIndex added in v4.0.1

func (ConsumerJwtAuthMapOutput) ToConsumerJwtAuthMapOutput added in v4.0.1

func (o ConsumerJwtAuthMapOutput) ToConsumerJwtAuthMapOutput() ConsumerJwtAuthMapOutput

func (ConsumerJwtAuthMapOutput) ToConsumerJwtAuthMapOutputWithContext added in v4.0.1

func (o ConsumerJwtAuthMapOutput) ToConsumerJwtAuthMapOutputWithContext(ctx context.Context) ConsumerJwtAuthMapOutput

type ConsumerJwtAuthOutput added in v4.0.1

type ConsumerJwtAuthOutput struct{ *pulumi.OutputState }

func (ConsumerJwtAuthOutput) Algorithm added in v4.5.1

The algorithm used to verify the token’s signature. Can be HS256, HS384, HS512, RS256, or ES256, Default is `HS256`

func (ConsumerJwtAuthOutput) ConsumerId added in v4.5.1

func (o ConsumerJwtAuthOutput) ConsumerId() pulumi.StringOutput

the id of the consumer to be configured with jwt auth

func (ConsumerJwtAuthOutput) ElementType added in v4.0.1

func (ConsumerJwtAuthOutput) ElementType() reflect.Type

func (ConsumerJwtAuthOutput) Key added in v4.5.1

A unique string identifying the credential. If left out, it will be auto-generated.

func (ConsumerJwtAuthOutput) RsaPublicKey added in v4.5.1

func (o ConsumerJwtAuthOutput) RsaPublicKey() pulumi.StringOutput

If algorithm is `RS256` or `ES256`, the public key (in PEM format) to use to verify the token’s signature

func (ConsumerJwtAuthOutput) Secret added in v4.5.1

If algorithm is `HS256` or `ES256`, the secret used to sign JWTs for this credential. If left out, will be auto-generated

func (ConsumerJwtAuthOutput) Tags added in v4.5.1

A list of strings associated with the consumer JWT auth for grouping and filtering

func (ConsumerJwtAuthOutput) ToConsumerJwtAuthOutput added in v4.0.1

func (o ConsumerJwtAuthOutput) ToConsumerJwtAuthOutput() ConsumerJwtAuthOutput

func (ConsumerJwtAuthOutput) ToConsumerJwtAuthOutputWithContext added in v4.0.1

func (o ConsumerJwtAuthOutput) ToConsumerJwtAuthOutputWithContext(ctx context.Context) ConsumerJwtAuthOutput

type ConsumerJwtAuthState added in v4.0.1

type ConsumerJwtAuthState struct {
	// The algorithm used to verify the token’s signature. Can be HS256, HS384, HS512, RS256, or ES256, Default is `HS256`
	Algorithm pulumi.StringPtrInput
	// the id of the consumer to be configured with jwt auth
	ConsumerId pulumi.StringPtrInput
	// A unique string identifying the credential. If left out, it will be auto-generated.
	Key pulumi.StringPtrInput
	// If algorithm is `RS256` or `ES256`, the public key (in PEM format) to use to verify the token’s signature
	RsaPublicKey pulumi.StringPtrInput
	// If algorithm is `HS256` or `ES256`, the secret used to sign JWTs for this credential. If left out, will be auto-generated
	Secret pulumi.StringPtrInput
	// A list of strings associated with the consumer JWT auth for grouping and filtering
	Tags pulumi.StringArrayInput
}

func (ConsumerJwtAuthState) ElementType added in v4.0.1

func (ConsumerJwtAuthState) ElementType() reflect.Type

type ConsumerKeyAuth added in v4.2.0

type ConsumerKeyAuth struct {
	pulumi.CustomResourceState

	// the id of the consumer to associate the credentials to
	ConsumerId pulumi.StringOutput `pulumi:"consumerId"`
	// Unique key to authenticate the client; if omitted the plugin will generate one
	Key pulumi.StringOutput `pulumi:"key"`
	// A list of strings associated with the consumer key auth for grouping and filtering
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
}

## # ConsumerKeyAuth

Resource that allows you to configure the [Key Authentication](https://docs.konghq.com/hub/kong-inc/key-auth/) plugin for a consumer.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		myConsumer, err := kong.NewConsumer(ctx, "my_consumer", &kong.ConsumerArgs{
			Username: pulumi.String("User1"),
			CustomId: pulumi.String("123"),
		})
		if err != nil {
			return err
		}
		_, err = kong.NewPlugin(ctx, "key_auth_plugin", &kong.PluginArgs{
			Name: pulumi.String("key-auth"),
		})
		if err != nil {
			return err
		}
		_, err = kong.NewConsumerKeyAuth(ctx, "consumer_key_auth", &kong.ConsumerKeyAuthArgs{
			ConsumerId: myConsumer.ID(),
			Key:        pulumi.String("secret"),
			Tags: pulumi.StringArray{
				pulumi.String("myTag"),
				pulumi.String("anotherTag"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetConsumerKeyAuth added in v4.2.0

func GetConsumerKeyAuth(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConsumerKeyAuthState, opts ...pulumi.ResourceOption) (*ConsumerKeyAuth, error)

GetConsumerKeyAuth gets an existing ConsumerKeyAuth resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewConsumerKeyAuth added in v4.2.0

func NewConsumerKeyAuth(ctx *pulumi.Context,
	name string, args *ConsumerKeyAuthArgs, opts ...pulumi.ResourceOption) (*ConsumerKeyAuth, error)

NewConsumerKeyAuth registers a new resource with the given unique name, arguments, and options.

func (*ConsumerKeyAuth) ElementType added in v4.2.0

func (*ConsumerKeyAuth) ElementType() reflect.Type

func (*ConsumerKeyAuth) ToConsumerKeyAuthOutput added in v4.2.0

func (i *ConsumerKeyAuth) ToConsumerKeyAuthOutput() ConsumerKeyAuthOutput

func (*ConsumerKeyAuth) ToConsumerKeyAuthOutputWithContext added in v4.2.0

func (i *ConsumerKeyAuth) ToConsumerKeyAuthOutputWithContext(ctx context.Context) ConsumerKeyAuthOutput

type ConsumerKeyAuthArgs added in v4.2.0

type ConsumerKeyAuthArgs struct {
	// the id of the consumer to associate the credentials to
	ConsumerId pulumi.StringInput
	// Unique key to authenticate the client; if omitted the plugin will generate one
	Key pulumi.StringPtrInput
	// A list of strings associated with the consumer key auth for grouping and filtering
	Tags pulumi.StringArrayInput
}

The set of arguments for constructing a ConsumerKeyAuth resource.

func (ConsumerKeyAuthArgs) ElementType added in v4.2.0

func (ConsumerKeyAuthArgs) ElementType() reflect.Type

type ConsumerKeyAuthArray added in v4.2.0

type ConsumerKeyAuthArray []ConsumerKeyAuthInput

func (ConsumerKeyAuthArray) ElementType added in v4.2.0

func (ConsumerKeyAuthArray) ElementType() reflect.Type

func (ConsumerKeyAuthArray) ToConsumerKeyAuthArrayOutput added in v4.2.0

func (i ConsumerKeyAuthArray) ToConsumerKeyAuthArrayOutput() ConsumerKeyAuthArrayOutput

func (ConsumerKeyAuthArray) ToConsumerKeyAuthArrayOutputWithContext added in v4.2.0

func (i ConsumerKeyAuthArray) ToConsumerKeyAuthArrayOutputWithContext(ctx context.Context) ConsumerKeyAuthArrayOutput

type ConsumerKeyAuthArrayInput added in v4.2.0

type ConsumerKeyAuthArrayInput interface {
	pulumi.Input

	ToConsumerKeyAuthArrayOutput() ConsumerKeyAuthArrayOutput
	ToConsumerKeyAuthArrayOutputWithContext(context.Context) ConsumerKeyAuthArrayOutput
}

ConsumerKeyAuthArrayInput is an input type that accepts ConsumerKeyAuthArray and ConsumerKeyAuthArrayOutput values. You can construct a concrete instance of `ConsumerKeyAuthArrayInput` via:

ConsumerKeyAuthArray{ ConsumerKeyAuthArgs{...} }

type ConsumerKeyAuthArrayOutput added in v4.2.0

type ConsumerKeyAuthArrayOutput struct{ *pulumi.OutputState }

func (ConsumerKeyAuthArrayOutput) ElementType added in v4.2.0

func (ConsumerKeyAuthArrayOutput) ElementType() reflect.Type

func (ConsumerKeyAuthArrayOutput) Index added in v4.2.0

func (ConsumerKeyAuthArrayOutput) ToConsumerKeyAuthArrayOutput added in v4.2.0

func (o ConsumerKeyAuthArrayOutput) ToConsumerKeyAuthArrayOutput() ConsumerKeyAuthArrayOutput

func (ConsumerKeyAuthArrayOutput) ToConsumerKeyAuthArrayOutputWithContext added in v4.2.0

func (o ConsumerKeyAuthArrayOutput) ToConsumerKeyAuthArrayOutputWithContext(ctx context.Context) ConsumerKeyAuthArrayOutput

type ConsumerKeyAuthInput added in v4.2.0

type ConsumerKeyAuthInput interface {
	pulumi.Input

	ToConsumerKeyAuthOutput() ConsumerKeyAuthOutput
	ToConsumerKeyAuthOutputWithContext(ctx context.Context) ConsumerKeyAuthOutput
}

type ConsumerKeyAuthMap added in v4.2.0

type ConsumerKeyAuthMap map[string]ConsumerKeyAuthInput

func (ConsumerKeyAuthMap) ElementType added in v4.2.0

func (ConsumerKeyAuthMap) ElementType() reflect.Type

func (ConsumerKeyAuthMap) ToConsumerKeyAuthMapOutput added in v4.2.0

func (i ConsumerKeyAuthMap) ToConsumerKeyAuthMapOutput() ConsumerKeyAuthMapOutput

func (ConsumerKeyAuthMap) ToConsumerKeyAuthMapOutputWithContext added in v4.2.0

func (i ConsumerKeyAuthMap) ToConsumerKeyAuthMapOutputWithContext(ctx context.Context) ConsumerKeyAuthMapOutput

type ConsumerKeyAuthMapInput added in v4.2.0

type ConsumerKeyAuthMapInput interface {
	pulumi.Input

	ToConsumerKeyAuthMapOutput() ConsumerKeyAuthMapOutput
	ToConsumerKeyAuthMapOutputWithContext(context.Context) ConsumerKeyAuthMapOutput
}

ConsumerKeyAuthMapInput is an input type that accepts ConsumerKeyAuthMap and ConsumerKeyAuthMapOutput values. You can construct a concrete instance of `ConsumerKeyAuthMapInput` via:

ConsumerKeyAuthMap{ "key": ConsumerKeyAuthArgs{...} }

type ConsumerKeyAuthMapOutput added in v4.2.0

type ConsumerKeyAuthMapOutput struct{ *pulumi.OutputState }

func (ConsumerKeyAuthMapOutput) ElementType added in v4.2.0

func (ConsumerKeyAuthMapOutput) ElementType() reflect.Type

func (ConsumerKeyAuthMapOutput) MapIndex added in v4.2.0

func (ConsumerKeyAuthMapOutput) ToConsumerKeyAuthMapOutput added in v4.2.0

func (o ConsumerKeyAuthMapOutput) ToConsumerKeyAuthMapOutput() ConsumerKeyAuthMapOutput

func (ConsumerKeyAuthMapOutput) ToConsumerKeyAuthMapOutputWithContext added in v4.2.0

func (o ConsumerKeyAuthMapOutput) ToConsumerKeyAuthMapOutputWithContext(ctx context.Context) ConsumerKeyAuthMapOutput

type ConsumerKeyAuthOutput added in v4.2.0

type ConsumerKeyAuthOutput struct{ *pulumi.OutputState }

func (ConsumerKeyAuthOutput) ConsumerId added in v4.5.1

func (o ConsumerKeyAuthOutput) ConsumerId() pulumi.StringOutput

the id of the consumer to associate the credentials to

func (ConsumerKeyAuthOutput) ElementType added in v4.2.0

func (ConsumerKeyAuthOutput) ElementType() reflect.Type

func (ConsumerKeyAuthOutput) Key added in v4.5.1

Unique key to authenticate the client; if omitted the plugin will generate one

func (ConsumerKeyAuthOutput) Tags added in v4.5.1

A list of strings associated with the consumer key auth for grouping and filtering

func (ConsumerKeyAuthOutput) ToConsumerKeyAuthOutput added in v4.2.0

func (o ConsumerKeyAuthOutput) ToConsumerKeyAuthOutput() ConsumerKeyAuthOutput

func (ConsumerKeyAuthOutput) ToConsumerKeyAuthOutputWithContext added in v4.2.0

func (o ConsumerKeyAuthOutput) ToConsumerKeyAuthOutputWithContext(ctx context.Context) ConsumerKeyAuthOutput

type ConsumerKeyAuthState added in v4.2.0

type ConsumerKeyAuthState struct {
	// the id of the consumer to associate the credentials to
	ConsumerId pulumi.StringPtrInput
	// Unique key to authenticate the client; if omitted the plugin will generate one
	Key pulumi.StringPtrInput
	// A list of strings associated with the consumer key auth for grouping and filtering
	Tags pulumi.StringArrayInput
}

func (ConsumerKeyAuthState) ElementType added in v4.2.0

func (ConsumerKeyAuthState) ElementType() reflect.Type

type ConsumerMap

type ConsumerMap map[string]ConsumerInput

func (ConsumerMap) ElementType

func (ConsumerMap) ElementType() reflect.Type

func (ConsumerMap) ToConsumerMapOutput

func (i ConsumerMap) ToConsumerMapOutput() ConsumerMapOutput

func (ConsumerMap) ToConsumerMapOutputWithContext

func (i ConsumerMap) ToConsumerMapOutputWithContext(ctx context.Context) ConsumerMapOutput

type ConsumerMapInput

type ConsumerMapInput interface {
	pulumi.Input

	ToConsumerMapOutput() ConsumerMapOutput
	ToConsumerMapOutputWithContext(context.Context) ConsumerMapOutput
}

ConsumerMapInput is an input type that accepts ConsumerMap and ConsumerMapOutput values. You can construct a concrete instance of `ConsumerMapInput` via:

ConsumerMap{ "key": ConsumerArgs{...} }

type ConsumerMapOutput

type ConsumerMapOutput struct{ *pulumi.OutputState }

func (ConsumerMapOutput) ElementType

func (ConsumerMapOutput) ElementType() reflect.Type

func (ConsumerMapOutput) MapIndex

func (ConsumerMapOutput) ToConsumerMapOutput

func (o ConsumerMapOutput) ToConsumerMapOutput() ConsumerMapOutput

func (ConsumerMapOutput) ToConsumerMapOutputWithContext

func (o ConsumerMapOutput) ToConsumerMapOutputWithContext(ctx context.Context) ConsumerMapOutput

type ConsumerOauth2 added in v4.5.0

type ConsumerOauth2 struct {
	pulumi.CustomResourceState

	// Unique oauth2 client id. If not set, the oauth2 plugin will generate one
	ClientId pulumi.StringPtrOutput `pulumi:"clientId"`
	// Unique oauth2 client secret. If not set, the oauth2 plugin will generate one
	ClientSecret pulumi.StringPtrOutput `pulumi:"clientSecret"`
	// The id of the consumer to be configured with oauth2.
	ConsumerId pulumi.StringOutput `pulumi:"consumerId"`
	// A boolean flag that indicates whether the clientSecret field will be stored in hashed form. If enabled on existing plugin instances, client secrets are hashed on the fly upon first usage. Default: `false`.
	HashSecret pulumi.BoolPtrOutput `pulumi:"hashSecret"`
	// The name associated with the credential.
	Name pulumi.StringOutput `pulumi:"name"`
	// An array with one or more URLs in your app where users will be sent after authorization ([RFC 6742 Section 3.1.2](https://tools.ietf.org/html/rfc6749#section-3.1.2)).
	RedirectUris pulumi.StringArrayOutput `pulumi:"redirectUris"`
	// A list of strings associated with the consumer for grouping and filtering.
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
}

## # ConsumerOauth2

Resource that allows you to configure the OAuth2 plugin credentials for a consumer.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		myConsumer, err := kong.NewConsumer(ctx, "my_consumer", &kong.ConsumerArgs{
			Username: pulumi.String("User1"),
			CustomId: pulumi.String("123"),
		})
		if err != nil {
			return err
		}
		_, err = kong.NewPlugin(ctx, "oauth2_plugin", &kong.PluginArgs{
			Name: pulumi.String("oauth2"),
			ConfigJson: pulumi.String(`	{
		"global_credentials": true,
		"enable_password_grant": true,
		"token_expiration": 180,
		"refresh_token_ttl": 180,
		"provision_key": "testprovisionkey"
	}

`),

		})
		if err != nil {
			return err
		}
		_, err = kong.NewConsumerOauth2(ctx, "consumer_oauth2", &kong.ConsumerOauth2Args{
			Name:         pulumi.String("test_application"),
			ConsumerId:   myConsumer.ID(),
			ClientId:     pulumi.String("client_id"),
			ClientSecret: pulumi.String("client_secret"),
			RedirectUris: pulumi.StringArray{
				pulumi.String("https://asdf.com/callback"),
				pulumi.String("https://test.cl/callback"),
			},
			Tags: pulumi.StringArray{
				pulumi.String("myTag"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetConsumerOauth2 added in v4.5.0

func GetConsumerOauth2(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConsumerOauth2State, opts ...pulumi.ResourceOption) (*ConsumerOauth2, error)

GetConsumerOauth2 gets an existing ConsumerOauth2 resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewConsumerOauth2 added in v4.5.0

func NewConsumerOauth2(ctx *pulumi.Context,
	name string, args *ConsumerOauth2Args, opts ...pulumi.ResourceOption) (*ConsumerOauth2, error)

NewConsumerOauth2 registers a new resource with the given unique name, arguments, and options.

func (*ConsumerOauth2) ElementType added in v4.5.0

func (*ConsumerOauth2) ElementType() reflect.Type

func (*ConsumerOauth2) ToConsumerOauth2Output added in v4.5.0

func (i *ConsumerOauth2) ToConsumerOauth2Output() ConsumerOauth2Output

func (*ConsumerOauth2) ToConsumerOauth2OutputWithContext added in v4.5.0

func (i *ConsumerOauth2) ToConsumerOauth2OutputWithContext(ctx context.Context) ConsumerOauth2Output

type ConsumerOauth2Args added in v4.5.0

type ConsumerOauth2Args struct {
	// Unique oauth2 client id. If not set, the oauth2 plugin will generate one
	ClientId pulumi.StringPtrInput
	// Unique oauth2 client secret. If not set, the oauth2 plugin will generate one
	ClientSecret pulumi.StringPtrInput
	// The id of the consumer to be configured with oauth2.
	ConsumerId pulumi.StringInput
	// A boolean flag that indicates whether the clientSecret field will be stored in hashed form. If enabled on existing plugin instances, client secrets are hashed on the fly upon first usage. Default: `false`.
	HashSecret pulumi.BoolPtrInput
	// The name associated with the credential.
	Name pulumi.StringPtrInput
	// An array with one or more URLs in your app where users will be sent after authorization ([RFC 6742 Section 3.1.2](https://tools.ietf.org/html/rfc6749#section-3.1.2)).
	RedirectUris pulumi.StringArrayInput
	// A list of strings associated with the consumer for grouping and filtering.
	Tags pulumi.StringArrayInput
}

The set of arguments for constructing a ConsumerOauth2 resource.

func (ConsumerOauth2Args) ElementType added in v4.5.0

func (ConsumerOauth2Args) ElementType() reflect.Type

type ConsumerOauth2Array added in v4.5.0

type ConsumerOauth2Array []ConsumerOauth2Input

func (ConsumerOauth2Array) ElementType added in v4.5.0

func (ConsumerOauth2Array) ElementType() reflect.Type

func (ConsumerOauth2Array) ToConsumerOauth2ArrayOutput added in v4.5.0

func (i ConsumerOauth2Array) ToConsumerOauth2ArrayOutput() ConsumerOauth2ArrayOutput

func (ConsumerOauth2Array) ToConsumerOauth2ArrayOutputWithContext added in v4.5.0

func (i ConsumerOauth2Array) ToConsumerOauth2ArrayOutputWithContext(ctx context.Context) ConsumerOauth2ArrayOutput

type ConsumerOauth2ArrayInput added in v4.5.0

type ConsumerOauth2ArrayInput interface {
	pulumi.Input

	ToConsumerOauth2ArrayOutput() ConsumerOauth2ArrayOutput
	ToConsumerOauth2ArrayOutputWithContext(context.Context) ConsumerOauth2ArrayOutput
}

ConsumerOauth2ArrayInput is an input type that accepts ConsumerOauth2Array and ConsumerOauth2ArrayOutput values. You can construct a concrete instance of `ConsumerOauth2ArrayInput` via:

ConsumerOauth2Array{ ConsumerOauth2Args{...} }

type ConsumerOauth2ArrayOutput added in v4.5.0

type ConsumerOauth2ArrayOutput struct{ *pulumi.OutputState }

func (ConsumerOauth2ArrayOutput) ElementType added in v4.5.0

func (ConsumerOauth2ArrayOutput) ElementType() reflect.Type

func (ConsumerOauth2ArrayOutput) Index added in v4.5.0

func (ConsumerOauth2ArrayOutput) ToConsumerOauth2ArrayOutput added in v4.5.0

func (o ConsumerOauth2ArrayOutput) ToConsumerOauth2ArrayOutput() ConsumerOauth2ArrayOutput

func (ConsumerOauth2ArrayOutput) ToConsumerOauth2ArrayOutputWithContext added in v4.5.0

func (o ConsumerOauth2ArrayOutput) ToConsumerOauth2ArrayOutputWithContext(ctx context.Context) ConsumerOauth2ArrayOutput

type ConsumerOauth2Input added in v4.5.0

type ConsumerOauth2Input interface {
	pulumi.Input

	ToConsumerOauth2Output() ConsumerOauth2Output
	ToConsumerOauth2OutputWithContext(ctx context.Context) ConsumerOauth2Output
}

type ConsumerOauth2Map added in v4.5.0

type ConsumerOauth2Map map[string]ConsumerOauth2Input

func (ConsumerOauth2Map) ElementType added in v4.5.0

func (ConsumerOauth2Map) ElementType() reflect.Type

func (ConsumerOauth2Map) ToConsumerOauth2MapOutput added in v4.5.0

func (i ConsumerOauth2Map) ToConsumerOauth2MapOutput() ConsumerOauth2MapOutput

func (ConsumerOauth2Map) ToConsumerOauth2MapOutputWithContext added in v4.5.0

func (i ConsumerOauth2Map) ToConsumerOauth2MapOutputWithContext(ctx context.Context) ConsumerOauth2MapOutput

type ConsumerOauth2MapInput added in v4.5.0

type ConsumerOauth2MapInput interface {
	pulumi.Input

	ToConsumerOauth2MapOutput() ConsumerOauth2MapOutput
	ToConsumerOauth2MapOutputWithContext(context.Context) ConsumerOauth2MapOutput
}

ConsumerOauth2MapInput is an input type that accepts ConsumerOauth2Map and ConsumerOauth2MapOutput values. You can construct a concrete instance of `ConsumerOauth2MapInput` via:

ConsumerOauth2Map{ "key": ConsumerOauth2Args{...} }

type ConsumerOauth2MapOutput added in v4.5.0

type ConsumerOauth2MapOutput struct{ *pulumi.OutputState }

func (ConsumerOauth2MapOutput) ElementType added in v4.5.0

func (ConsumerOauth2MapOutput) ElementType() reflect.Type

func (ConsumerOauth2MapOutput) MapIndex added in v4.5.0

func (ConsumerOauth2MapOutput) ToConsumerOauth2MapOutput added in v4.5.0

func (o ConsumerOauth2MapOutput) ToConsumerOauth2MapOutput() ConsumerOauth2MapOutput

func (ConsumerOauth2MapOutput) ToConsumerOauth2MapOutputWithContext added in v4.5.0

func (o ConsumerOauth2MapOutput) ToConsumerOauth2MapOutputWithContext(ctx context.Context) ConsumerOauth2MapOutput

type ConsumerOauth2Output added in v4.5.0

type ConsumerOauth2Output struct{ *pulumi.OutputState }

func (ConsumerOauth2Output) ClientId added in v4.5.1

Unique oauth2 client id. If not set, the oauth2 plugin will generate one

func (ConsumerOauth2Output) ClientSecret added in v4.5.1

func (o ConsumerOauth2Output) ClientSecret() pulumi.StringPtrOutput

Unique oauth2 client secret. If not set, the oauth2 plugin will generate one

func (ConsumerOauth2Output) ConsumerId added in v4.5.1

func (o ConsumerOauth2Output) ConsumerId() pulumi.StringOutput

The id of the consumer to be configured with oauth2.

func (ConsumerOauth2Output) ElementType added in v4.5.0

func (ConsumerOauth2Output) ElementType() reflect.Type

func (ConsumerOauth2Output) HashSecret added in v4.5.1

func (o ConsumerOauth2Output) HashSecret() pulumi.BoolPtrOutput

A boolean flag that indicates whether the clientSecret field will be stored in hashed form. If enabled on existing plugin instances, client secrets are hashed on the fly upon first usage. Default: `false`.

func (ConsumerOauth2Output) Name added in v4.5.1

The name associated with the credential.

func (ConsumerOauth2Output) RedirectUris added in v4.5.1

An array with one or more URLs in your app where users will be sent after authorization ([RFC 6742 Section 3.1.2](https://tools.ietf.org/html/rfc6749#section-3.1.2)).

func (ConsumerOauth2Output) Tags added in v4.5.1

A list of strings associated with the consumer for grouping and filtering.

func (ConsumerOauth2Output) ToConsumerOauth2Output added in v4.5.0

func (o ConsumerOauth2Output) ToConsumerOauth2Output() ConsumerOauth2Output

func (ConsumerOauth2Output) ToConsumerOauth2OutputWithContext added in v4.5.0

func (o ConsumerOauth2Output) ToConsumerOauth2OutputWithContext(ctx context.Context) ConsumerOauth2Output

type ConsumerOauth2State added in v4.5.0

type ConsumerOauth2State struct {
	// Unique oauth2 client id. If not set, the oauth2 plugin will generate one
	ClientId pulumi.StringPtrInput
	// Unique oauth2 client secret. If not set, the oauth2 plugin will generate one
	ClientSecret pulumi.StringPtrInput
	// The id of the consumer to be configured with oauth2.
	ConsumerId pulumi.StringPtrInput
	// A boolean flag that indicates whether the clientSecret field will be stored in hashed form. If enabled on existing plugin instances, client secrets are hashed on the fly upon first usage. Default: `false`.
	HashSecret pulumi.BoolPtrInput
	// The name associated with the credential.
	Name pulumi.StringPtrInput
	// An array with one or more URLs in your app where users will be sent after authorization ([RFC 6742 Section 3.1.2](https://tools.ietf.org/html/rfc6749#section-3.1.2)).
	RedirectUris pulumi.StringArrayInput
	// A list of strings associated with the consumer for grouping and filtering.
	Tags pulumi.StringArrayInput
}

func (ConsumerOauth2State) ElementType added in v4.5.0

func (ConsumerOauth2State) ElementType() reflect.Type

type ConsumerOutput

type ConsumerOutput struct{ *pulumi.OutputState }

func (ConsumerOutput) CustomId added in v4.5.1

func (o ConsumerOutput) CustomId() pulumi.StringPtrOutput

A custom id for the consumer, you must set either the username or custom_id

func (ConsumerOutput) ElementType

func (ConsumerOutput) ElementType() reflect.Type

func (ConsumerOutput) Tags added in v4.5.1

A list of strings associated with the Consumer for grouping and filtering

func (ConsumerOutput) ToConsumerOutput

func (o ConsumerOutput) ToConsumerOutput() ConsumerOutput

func (ConsumerOutput) ToConsumerOutputWithContext

func (o ConsumerOutput) ToConsumerOutputWithContext(ctx context.Context) ConsumerOutput

func (ConsumerOutput) Username added in v4.5.1

func (o ConsumerOutput) Username() pulumi.StringPtrOutput

The username to use, you must set either the username or custom_id

type ConsumerState

type ConsumerState struct {
	// A custom id for the consumer, you must set either the username or custom_id
	CustomId pulumi.StringPtrInput
	// A list of strings associated with the Consumer for grouping and filtering
	Tags pulumi.StringArrayInput
	// The username to use, you must set either the username or custom_id
	Username pulumi.StringPtrInput
}

func (ConsumerState) ElementType

func (ConsumerState) ElementType() reflect.Type

type Plugin

type Plugin struct {
	pulumi.CustomResourceState

	ComputedConfig pulumi.StringOutput `pulumi:"computedConfig"`
	// this is the configuration json for how you want to configure the plugin.  The json is passed straight through to kong as is.  You can get the json config from the Kong documentation
	// page of the plugin you are configuring
	ConfigJson pulumi.StringPtrOutput `pulumi:"configJson"`
	// the consumer id you want to configure the plugin for
	ConsumerId pulumi.StringPtrOutput `pulumi:"consumerId"`
	// whether the plugin is enabled or not, use if you want to keep the plugin installed but disable it
	Enabled pulumi.BoolPtrOutput `pulumi:"enabled"`
	Name    pulumi.StringOutput  `pulumi:"name"`
	// the route id that you want to configure the plugin for
	RouteId pulumi.StringPtrOutput `pulumi:"routeId"`
	// the service id that you want to configure the plugin for
	ServiceId   pulumi.StringPtrOutput `pulumi:"serviceId"`
	StrictMatch pulumi.BoolPtrOutput   `pulumi:"strictMatch"`
	// A list of strings associated with the Plugin for grouping and filtering
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
}

## # Plugin

The plugin resource maps directly onto the json for the API endpoint in Kong. For more information on the parameters [see the Kong Api create documentation](https://docs.konghq.com/gateway-oss/2.5.x/admin-api/#plugin-object). The `configJson` is passed through to the plugin to configure it as is.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := kong.NewPlugin(ctx, "rate_limit", &kong.PluginArgs{
			Name:       pulumi.String("rate-limiting"),
			ConfigJson: pulumi.String("	{\n		\"second\": 5,\n		\"hour\" : 1000\n	}\n"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` To apply a plugin to a consumer use the `consumerId` property, for example:

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		pluginConsumer, err := kong.NewConsumer(ctx, "plugin_consumer", &kong.ConsumerArgs{
			Username: pulumi.String("PluginUser"),
			CustomId: pulumi.String("567"),
		})
		if err != nil {
			return err
		}
		_, err = kong.NewPlugin(ctx, "rate_limit", &kong.PluginArgs{
			Name:       pulumi.String("rate-limiting"),
			ConsumerId: pluginConsumer.ID(),
			ConfigJson: pulumi.String("	{\n		\"second\": 5,\n		\"hour\" : 1000\n	}\n"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

To apply a plugin to a service use the `serviceId` property, for example:

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		service, err := kong.NewService(ctx, "service", &kong.ServiceArgs{
			Name:     pulumi.String("test"),
			Protocol: pulumi.String("http"),
			Host:     pulumi.String("test.org"),
		})
		if err != nil {
			return err
		}
		_, err = kong.NewPlugin(ctx, "rate_limit", &kong.PluginArgs{
			Name:       pulumi.String("rate-limiting"),
			ServiceId:  service.ID(),
			ConfigJson: pulumi.String("	{\n		\"second\": 10,\n		\"hour\" : 2000\n	}\n"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

To apply a plugin to a route use the `routeId` property, for example:

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		service, err := kong.NewService(ctx, "service", &kong.ServiceArgs{
			Name:     pulumi.String("test"),
			Protocol: pulumi.String("http"),
			Host:     pulumi.String("test.org"),
		})
		if err != nil {
			return err
		}
		_, err = kong.NewPlugin(ctx, "rate_limit", &kong.PluginArgs{
			Name:       pulumi.String("rate-limiting"),
			Enabled:    pulumi.Bool(true),
			ServiceId:  service.ID(),
			ConfigJson: pulumi.String("	{\n		\"second\": 11,\n		\"hour\" : 4000\n	}\n"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

To import a plugin:

```sh $ pulumi import kong:index/plugin:Plugin <plugin_identifier> <plugin_id> ```

func GetPlugin

func GetPlugin(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PluginState, opts ...pulumi.ResourceOption) (*Plugin, error)

GetPlugin gets an existing Plugin resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewPlugin

func NewPlugin(ctx *pulumi.Context,
	name string, args *PluginArgs, opts ...pulumi.ResourceOption) (*Plugin, error)

NewPlugin registers a new resource with the given unique name, arguments, and options.

func (*Plugin) ElementType

func (*Plugin) ElementType() reflect.Type

func (*Plugin) ToPluginOutput

func (i *Plugin) ToPluginOutput() PluginOutput

func (*Plugin) ToPluginOutputWithContext

func (i *Plugin) ToPluginOutputWithContext(ctx context.Context) PluginOutput

type PluginArgs

type PluginArgs struct {
	// this is the configuration json for how you want to configure the plugin.  The json is passed straight through to kong as is.  You can get the json config from the Kong documentation
	// page of the plugin you are configuring
	ConfigJson pulumi.StringPtrInput
	// the consumer id you want to configure the plugin for
	ConsumerId pulumi.StringPtrInput
	// whether the plugin is enabled or not, use if you want to keep the plugin installed but disable it
	Enabled pulumi.BoolPtrInput
	Name    pulumi.StringPtrInput
	// the route id that you want to configure the plugin for
	RouteId pulumi.StringPtrInput
	// the service id that you want to configure the plugin for
	ServiceId   pulumi.StringPtrInput
	StrictMatch pulumi.BoolPtrInput
	// A list of strings associated with the Plugin for grouping and filtering
	Tags pulumi.StringArrayInput
}

The set of arguments for constructing a Plugin resource.

func (PluginArgs) ElementType

func (PluginArgs) ElementType() reflect.Type

type PluginArray

type PluginArray []PluginInput

func (PluginArray) ElementType

func (PluginArray) ElementType() reflect.Type

func (PluginArray) ToPluginArrayOutput

func (i PluginArray) ToPluginArrayOutput() PluginArrayOutput

func (PluginArray) ToPluginArrayOutputWithContext

func (i PluginArray) ToPluginArrayOutputWithContext(ctx context.Context) PluginArrayOutput

type PluginArrayInput

type PluginArrayInput interface {
	pulumi.Input

	ToPluginArrayOutput() PluginArrayOutput
	ToPluginArrayOutputWithContext(context.Context) PluginArrayOutput
}

PluginArrayInput is an input type that accepts PluginArray and PluginArrayOutput values. You can construct a concrete instance of `PluginArrayInput` via:

PluginArray{ PluginArgs{...} }

type PluginArrayOutput

type PluginArrayOutput struct{ *pulumi.OutputState }

func (PluginArrayOutput) ElementType

func (PluginArrayOutput) ElementType() reflect.Type

func (PluginArrayOutput) Index

func (PluginArrayOutput) ToPluginArrayOutput

func (o PluginArrayOutput) ToPluginArrayOutput() PluginArrayOutput

func (PluginArrayOutput) ToPluginArrayOutputWithContext

func (o PluginArrayOutput) ToPluginArrayOutputWithContext(ctx context.Context) PluginArrayOutput

type PluginInput

type PluginInput interface {
	pulumi.Input

	ToPluginOutput() PluginOutput
	ToPluginOutputWithContext(ctx context.Context) PluginOutput
}

type PluginMap

type PluginMap map[string]PluginInput

func (PluginMap) ElementType

func (PluginMap) ElementType() reflect.Type

func (PluginMap) ToPluginMapOutput

func (i PluginMap) ToPluginMapOutput() PluginMapOutput

func (PluginMap) ToPluginMapOutputWithContext

func (i PluginMap) ToPluginMapOutputWithContext(ctx context.Context) PluginMapOutput

type PluginMapInput

type PluginMapInput interface {
	pulumi.Input

	ToPluginMapOutput() PluginMapOutput
	ToPluginMapOutputWithContext(context.Context) PluginMapOutput
}

PluginMapInput is an input type that accepts PluginMap and PluginMapOutput values. You can construct a concrete instance of `PluginMapInput` via:

PluginMap{ "key": PluginArgs{...} }

type PluginMapOutput

type PluginMapOutput struct{ *pulumi.OutputState }

func (PluginMapOutput) ElementType

func (PluginMapOutput) ElementType() reflect.Type

func (PluginMapOutput) MapIndex

func (PluginMapOutput) ToPluginMapOutput

func (o PluginMapOutput) ToPluginMapOutput() PluginMapOutput

func (PluginMapOutput) ToPluginMapOutputWithContext

func (o PluginMapOutput) ToPluginMapOutputWithContext(ctx context.Context) PluginMapOutput

type PluginOutput

type PluginOutput struct{ *pulumi.OutputState }

func (PluginOutput) ComputedConfig added in v4.5.1

func (o PluginOutput) ComputedConfig() pulumi.StringOutput

func (PluginOutput) ConfigJson added in v4.5.1

func (o PluginOutput) ConfigJson() pulumi.StringPtrOutput

this is the configuration json for how you want to configure the plugin. The json is passed straight through to kong as is. You can get the json config from the Kong documentation page of the plugin you are configuring

func (PluginOutput) ConsumerId added in v4.5.1

func (o PluginOutput) ConsumerId() pulumi.StringPtrOutput

the consumer id you want to configure the plugin for

func (PluginOutput) ElementType

func (PluginOutput) ElementType() reflect.Type

func (PluginOutput) Enabled added in v4.5.1

func (o PluginOutput) Enabled() pulumi.BoolPtrOutput

whether the plugin is enabled or not, use if you want to keep the plugin installed but disable it

func (PluginOutput) Name added in v4.5.1

func (o PluginOutput) Name() pulumi.StringOutput

func (PluginOutput) RouteId added in v4.5.1

func (o PluginOutput) RouteId() pulumi.StringPtrOutput

the route id that you want to configure the plugin for

func (PluginOutput) ServiceId added in v4.5.1

func (o PluginOutput) ServiceId() pulumi.StringPtrOutput

the service id that you want to configure the plugin for

func (PluginOutput) StrictMatch added in v4.5.1

func (o PluginOutput) StrictMatch() pulumi.BoolPtrOutput

func (PluginOutput) Tags added in v4.5.1

A list of strings associated with the Plugin for grouping and filtering

func (PluginOutput) ToPluginOutput

func (o PluginOutput) ToPluginOutput() PluginOutput

func (PluginOutput) ToPluginOutputWithContext

func (o PluginOutput) ToPluginOutputWithContext(ctx context.Context) PluginOutput

type PluginState

type PluginState struct {
	ComputedConfig pulumi.StringPtrInput
	// this is the configuration json for how you want to configure the plugin.  The json is passed straight through to kong as is.  You can get the json config from the Kong documentation
	// page of the plugin you are configuring
	ConfigJson pulumi.StringPtrInput
	// the consumer id you want to configure the plugin for
	ConsumerId pulumi.StringPtrInput
	// whether the plugin is enabled or not, use if you want to keep the plugin installed but disable it
	Enabled pulumi.BoolPtrInput
	Name    pulumi.StringPtrInput
	// the route id that you want to configure the plugin for
	RouteId pulumi.StringPtrInput
	// the service id that you want to configure the plugin for
	ServiceId   pulumi.StringPtrInput
	StrictMatch pulumi.BoolPtrInput
	// A list of strings associated with the Plugin for grouping and filtering
	Tags pulumi.StringArrayInput
}

func (PluginState) ElementType

func (PluginState) ElementType() reflect.Type

type Provider

type Provider struct {
	pulumi.ProviderResourceState

	// An basic auth password for kong admin
	KongAdminPassword pulumi.StringPtrOutput `pulumi:"kongAdminPassword"`
	// API key for the kong api (Enterprise Edition)
	KongAdminToken pulumi.StringPtrOutput `pulumi:"kongAdminToken"`
	// The address of the kong admin url e.g. http://localhost:8001
	KongAdminUri pulumi.StringOutput `pulumi:"kongAdminUri"`
	// An basic auth user for kong admin
	KongAdminUsername pulumi.StringPtrOutput `pulumi:"kongAdminUsername"`
	// API key for the kong api (if you have locked it down)
	KongApiKey pulumi.StringPtrOutput `pulumi:"kongApiKey"`
	// Workspace context (Enterprise Edition)
	KongWorkspace pulumi.StringPtrOutput `pulumi:"kongWorkspace"`
}

The provider type for the kong package. By default, resources use package-wide configuration settings, however an explicit `Provider` instance may be created and passed during resource construction to achieve fine-grained programmatic control over provider settings. See the [documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.

func NewProvider

func NewProvider(ctx *pulumi.Context,
	name string, args *ProviderArgs, opts ...pulumi.ResourceOption) (*Provider, error)

NewProvider registers a new resource with the given unique name, arguments, and options.

func (*Provider) ElementType

func (*Provider) ElementType() reflect.Type

func (*Provider) ToProviderOutput

func (i *Provider) ToProviderOutput() ProviderOutput

func (*Provider) ToProviderOutputWithContext

func (i *Provider) ToProviderOutputWithContext(ctx context.Context) ProviderOutput

type ProviderArgs

type ProviderArgs struct {
	// An basic auth password for kong admin
	KongAdminPassword pulumi.StringPtrInput
	// API key for the kong api (Enterprise Edition)
	KongAdminToken pulumi.StringPtrInput
	// The address of the kong admin url e.g. http://localhost:8001
	KongAdminUri pulumi.StringInput
	// An basic auth user for kong admin
	KongAdminUsername pulumi.StringPtrInput
	// API key for the kong api (if you have locked it down)
	KongApiKey pulumi.StringPtrInput
	// Workspace context (Enterprise Edition)
	KongWorkspace pulumi.StringPtrInput
	// Should plugins `configJson` field strictly match plugin configuration
	StrictPluginsMatch pulumi.BoolPtrInput
	// Whether to skip tls verify for https kong api endpoint using self signed or untrusted certs
	TlsSkipVerify pulumi.BoolPtrInput
}

The set of arguments for constructing a Provider resource.

func (ProviderArgs) ElementType

func (ProviderArgs) ElementType() reflect.Type

type ProviderInput

type ProviderInput interface {
	pulumi.Input

	ToProviderOutput() ProviderOutput
	ToProviderOutputWithContext(ctx context.Context) ProviderOutput
}

type ProviderOutput

type ProviderOutput struct{ *pulumi.OutputState }

func (ProviderOutput) ElementType

func (ProviderOutput) ElementType() reflect.Type

func (ProviderOutput) KongAdminPassword added in v4.5.1

func (o ProviderOutput) KongAdminPassword() pulumi.StringPtrOutput

An basic auth password for kong admin

func (ProviderOutput) KongAdminToken added in v4.5.1

func (o ProviderOutput) KongAdminToken() pulumi.StringPtrOutput

API key for the kong api (Enterprise Edition)

func (ProviderOutput) KongAdminUri added in v4.5.1

func (o ProviderOutput) KongAdminUri() pulumi.StringOutput

The address of the kong admin url e.g. http://localhost:8001

func (ProviderOutput) KongAdminUsername added in v4.5.1

func (o ProviderOutput) KongAdminUsername() pulumi.StringPtrOutput

An basic auth user for kong admin

func (ProviderOutput) KongApiKey added in v4.5.1

func (o ProviderOutput) KongApiKey() pulumi.StringPtrOutput

API key for the kong api (if you have locked it down)

func (ProviderOutput) KongWorkspace added in v4.5.1

func (o ProviderOutput) KongWorkspace() pulumi.StringPtrOutput

Workspace context (Enterprise Edition)

func (ProviderOutput) ToProviderOutput

func (o ProviderOutput) ToProviderOutput() ProviderOutput

func (ProviderOutput) ToProviderOutputWithContext

func (o ProviderOutput) ToProviderOutputWithContext(ctx context.Context) ProviderOutput

type Route

type Route struct {
	pulumi.CustomResourceState

	// A list of destination `ip` and `port`
	Destinations RouteDestinationArrayOutput `pulumi:"destinations"`
	// One or more blocks of `name` to set name of header and `values` which is a list of `string` for the header values to match on.  See above example of how to set.  These headers will cause this Route to match if present in the request. The Host header cannot be used with this attribute: hosts should be specified using the hosts attribute.
	Headers RouteHeaderArrayOutput `pulumi:"headers"`
	// A list of domain names that match this Route
	Hosts pulumi.StringArrayOutput `pulumi:"hosts"`
	// The status code Kong responds with when all properties of a Route match except the protocol i.e. if the protocol of the request is HTTP instead of HTTPS. Location header is injected by Kong if the field is set to `301`, `302`, `307` or `308`. Accepted values are: `426`, `301`, `302`, `307`, `308`. Default: `426`.
	HttpsRedirectStatusCode pulumi.IntPtrOutput `pulumi:"httpsRedirectStatusCode"`
	// A list of HTTP methods that match this Route
	Methods pulumi.StringArrayOutput `pulumi:"methods"`
	// The name of the route
	Name pulumi.StringOutput `pulumi:"name"`
	// Controls how the Service path, Route path and requested path are combined when sending a request to the upstream.
	PathHandling pulumi.StringPtrOutput `pulumi:"pathHandling"`
	// A list of paths that match this Route
	Paths pulumi.StringArrayOutput `pulumi:"paths"`
	// When matching a Route via one of the hosts domain names, use the request Host header in the upstream request headers. If set to false, the upstream Host header will be that of the Service’s host.
	PreserveHost pulumi.BoolPtrOutput `pulumi:"preserveHost"`
	// The list of protocols to use
	Protocols pulumi.StringArrayOutput `pulumi:"protocols"`
	// A number used to choose which route resolves a given request when several routes match it using regexes simultaneously.
	RegexPriority pulumi.IntPtrOutput `pulumi:"regexPriority"`
	// Whether to enable request body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that receive data with chunked transfer encoding. Default: true.
	RequestBuffering pulumi.BoolPtrOutput `pulumi:"requestBuffering"`
	// Whether to enable response body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that send data with chunked transfer encoding. Default: true.
	ResponseBuffering pulumi.BoolPtrOutput `pulumi:"responseBuffering"`
	// Service ID to map to
	ServiceId pulumi.StringOutput `pulumi:"serviceId"`
	// A list of SNIs that match this Route when using stream routing.
	Snis pulumi.StringArrayOutput `pulumi:"snis"`
	// A list of source `ip` and `port`
	Sources RouteSourceArrayOutput `pulumi:"sources"`
	// When matching a Route via one of the paths, strip the matching prefix from the upstream request URL. Default: true.
	StripPath pulumi.BoolPtrOutput `pulumi:"stripPath"`
	// A list of strings associated with the Route for grouping and filtering.
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
}

## # Route

The route resource maps directly onto the json for the route endpoint in Kong. For more information on the parameters [see the Kong Route create documentation](https://docs.konghq.com/gateway-oss/2.5.x/admin-api/#route-object).

To create a tcp/tls route you set `sources` and `destinations` by repeating the corresponding element (`source` or `destination`) for each source or destination you want.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := kong.NewRoute(ctx, "route", &kong.RouteArgs{
			Name: pulumi.String("MyRoute"),
			Protocols: pulumi.StringArray{
				pulumi.String("http"),
				pulumi.String("https"),
			},
			Methods: pulumi.StringArray{
				pulumi.String("GET"),
				pulumi.String("POST"),
			},
			Hosts: pulumi.StringArray{
				pulumi.String("example2.com"),
			},
			Paths: pulumi.StringArray{
				pulumi.String("/test"),
			},
			StripPath:     pulumi.Bool(false),
			PreserveHost:  pulumi.Bool(true),
			RegexPriority: pulumi.Int(1),
			ServiceId:     pulumi.Any(service.Id),
			Headers: kong.RouteHeaderArray{
				&kong.RouteHeaderArgs{
					Name: pulumi.String("x-test-1"),
					Values: pulumi.StringArray{
						pulumi.String("a"),
						pulumi.String("b"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

To create a tcp/tls route you set `sources` and `destinations` by repeating the corresponding element (`source` or `destination`) for each source or destination you want, for example:

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := kong.NewRoute(ctx, "route", &kong.RouteArgs{
			Protocols: pulumi.StringArray{
				pulumi.String("tcp"),
			},
			StripPath:    pulumi.Bool(true),
			PreserveHost: pulumi.Bool(false),
			Sources: kong.RouteSourceArray{
				&kong.RouteSourceArgs{
					Ip:   pulumi.String("192.168.1.1"),
					Port: pulumi.Int(80),
				},
				&kong.RouteSourceArgs{
					Ip: pulumi.String("192.168.1.2"),
				},
			},
			Destinations: kong.RouteDestinationArray{
				&kong.RouteDestinationArgs{
					Ip:   pulumi.String("172.10.1.1"),
					Port: pulumi.Int(81),
				},
			},
			Snis: pulumi.StringArray{
				pulumi.String("foo.com"),
			},
			ServiceId: pulumi.Any(service.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

To import a route:

```sh $ pulumi import kong:index/route:Route <route_identifier> <route_id> ```

func GetRoute

func GetRoute(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteState, opts ...pulumi.ResourceOption) (*Route, error)

GetRoute gets an existing Route resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRoute

func NewRoute(ctx *pulumi.Context,
	name string, args *RouteArgs, opts ...pulumi.ResourceOption) (*Route, error)

NewRoute registers a new resource with the given unique name, arguments, and options.

func (*Route) ElementType

func (*Route) ElementType() reflect.Type

func (*Route) ToRouteOutput

func (i *Route) ToRouteOutput() RouteOutput

func (*Route) ToRouteOutputWithContext

func (i *Route) ToRouteOutputWithContext(ctx context.Context) RouteOutput

type RouteArgs

type RouteArgs struct {
	// A list of destination `ip` and `port`
	Destinations RouteDestinationArrayInput
	// One or more blocks of `name` to set name of header and `values` which is a list of `string` for the header values to match on.  See above example of how to set.  These headers will cause this Route to match if present in the request. The Host header cannot be used with this attribute: hosts should be specified using the hosts attribute.
	Headers RouteHeaderArrayInput
	// A list of domain names that match this Route
	Hosts pulumi.StringArrayInput
	// The status code Kong responds with when all properties of a Route match except the protocol i.e. if the protocol of the request is HTTP instead of HTTPS. Location header is injected by Kong if the field is set to `301`, `302`, `307` or `308`. Accepted values are: `426`, `301`, `302`, `307`, `308`. Default: `426`.
	HttpsRedirectStatusCode pulumi.IntPtrInput
	// A list of HTTP methods that match this Route
	Methods pulumi.StringArrayInput
	// The name of the route
	Name pulumi.StringPtrInput
	// Controls how the Service path, Route path and requested path are combined when sending a request to the upstream.
	PathHandling pulumi.StringPtrInput
	// A list of paths that match this Route
	Paths pulumi.StringArrayInput
	// When matching a Route via one of the hosts domain names, use the request Host header in the upstream request headers. If set to false, the upstream Host header will be that of the Service’s host.
	PreserveHost pulumi.BoolPtrInput
	// The list of protocols to use
	Protocols pulumi.StringArrayInput
	// A number used to choose which route resolves a given request when several routes match it using regexes simultaneously.
	RegexPriority pulumi.IntPtrInput
	// Whether to enable request body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that receive data with chunked transfer encoding. Default: true.
	RequestBuffering pulumi.BoolPtrInput
	// Whether to enable response body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that send data with chunked transfer encoding. Default: true.
	ResponseBuffering pulumi.BoolPtrInput
	// Service ID to map to
	ServiceId pulumi.StringInput
	// A list of SNIs that match this Route when using stream routing.
	Snis pulumi.StringArrayInput
	// A list of source `ip` and `port`
	Sources RouteSourceArrayInput
	// When matching a Route via one of the paths, strip the matching prefix from the upstream request URL. Default: true.
	StripPath pulumi.BoolPtrInput
	// A list of strings associated with the Route for grouping and filtering.
	Tags pulumi.StringArrayInput
}

The set of arguments for constructing a Route resource.

func (RouteArgs) ElementType

func (RouteArgs) ElementType() reflect.Type

type RouteArray

type RouteArray []RouteInput

func (RouteArray) ElementType

func (RouteArray) ElementType() reflect.Type

func (RouteArray) ToRouteArrayOutput

func (i RouteArray) ToRouteArrayOutput() RouteArrayOutput

func (RouteArray) ToRouteArrayOutputWithContext

func (i RouteArray) ToRouteArrayOutputWithContext(ctx context.Context) RouteArrayOutput

type RouteArrayInput

type RouteArrayInput interface {
	pulumi.Input

	ToRouteArrayOutput() RouteArrayOutput
	ToRouteArrayOutputWithContext(context.Context) RouteArrayOutput
}

RouteArrayInput is an input type that accepts RouteArray and RouteArrayOutput values. You can construct a concrete instance of `RouteArrayInput` via:

RouteArray{ RouteArgs{...} }

type RouteArrayOutput

type RouteArrayOutput struct{ *pulumi.OutputState }

func (RouteArrayOutput) ElementType

func (RouteArrayOutput) ElementType() reflect.Type

func (RouteArrayOutput) Index

func (RouteArrayOutput) ToRouteArrayOutput

func (o RouteArrayOutput) ToRouteArrayOutput() RouteArrayOutput

func (RouteArrayOutput) ToRouteArrayOutputWithContext

func (o RouteArrayOutput) ToRouteArrayOutputWithContext(ctx context.Context) RouteArrayOutput

type RouteDestination

type RouteDestination struct {
	Ip   *string `pulumi:"ip"`
	Port *int    `pulumi:"port"`
}

type RouteDestinationArgs

type RouteDestinationArgs struct {
	Ip   pulumi.StringPtrInput `pulumi:"ip"`
	Port pulumi.IntPtrInput    `pulumi:"port"`
}

func (RouteDestinationArgs) ElementType

func (RouteDestinationArgs) ElementType() reflect.Type

func (RouteDestinationArgs) ToRouteDestinationOutput

func (i RouteDestinationArgs) ToRouteDestinationOutput() RouteDestinationOutput

func (RouteDestinationArgs) ToRouteDestinationOutputWithContext

func (i RouteDestinationArgs) ToRouteDestinationOutputWithContext(ctx context.Context) RouteDestinationOutput

type RouteDestinationArray

type RouteDestinationArray []RouteDestinationInput

func (RouteDestinationArray) ElementType

func (RouteDestinationArray) ElementType() reflect.Type

func (RouteDestinationArray) ToRouteDestinationArrayOutput

func (i RouteDestinationArray) ToRouteDestinationArrayOutput() RouteDestinationArrayOutput

func (RouteDestinationArray) ToRouteDestinationArrayOutputWithContext

func (i RouteDestinationArray) ToRouteDestinationArrayOutputWithContext(ctx context.Context) RouteDestinationArrayOutput

type RouteDestinationArrayInput

type RouteDestinationArrayInput interface {
	pulumi.Input

	ToRouteDestinationArrayOutput() RouteDestinationArrayOutput
	ToRouteDestinationArrayOutputWithContext(context.Context) RouteDestinationArrayOutput
}

RouteDestinationArrayInput is an input type that accepts RouteDestinationArray and RouteDestinationArrayOutput values. You can construct a concrete instance of `RouteDestinationArrayInput` via:

RouteDestinationArray{ RouteDestinationArgs{...} }

type RouteDestinationArrayOutput

type RouteDestinationArrayOutput struct{ *pulumi.OutputState }

func (RouteDestinationArrayOutput) ElementType

func (RouteDestinationArrayOutput) Index

func (RouteDestinationArrayOutput) ToRouteDestinationArrayOutput

func (o RouteDestinationArrayOutput) ToRouteDestinationArrayOutput() RouteDestinationArrayOutput

func (RouteDestinationArrayOutput) ToRouteDestinationArrayOutputWithContext

func (o RouteDestinationArrayOutput) ToRouteDestinationArrayOutputWithContext(ctx context.Context) RouteDestinationArrayOutput

type RouteDestinationInput

type RouteDestinationInput interface {
	pulumi.Input

	ToRouteDestinationOutput() RouteDestinationOutput
	ToRouteDestinationOutputWithContext(context.Context) RouteDestinationOutput
}

RouteDestinationInput is an input type that accepts RouteDestinationArgs and RouteDestinationOutput values. You can construct a concrete instance of `RouteDestinationInput` via:

RouteDestinationArgs{...}

type RouteDestinationOutput

type RouteDestinationOutput struct{ *pulumi.OutputState }

func (RouteDestinationOutput) ElementType

func (RouteDestinationOutput) ElementType() reflect.Type

func (RouteDestinationOutput) Ip

func (RouteDestinationOutput) Port

func (RouteDestinationOutput) ToRouteDestinationOutput

func (o RouteDestinationOutput) ToRouteDestinationOutput() RouteDestinationOutput

func (RouteDestinationOutput) ToRouteDestinationOutputWithContext

func (o RouteDestinationOutput) ToRouteDestinationOutputWithContext(ctx context.Context) RouteDestinationOutput

type RouteHeader added in v4.0.1

type RouteHeader struct {
	// The name of the route
	Name   string   `pulumi:"name"`
	Values []string `pulumi:"values"`
}

type RouteHeaderArgs added in v4.0.1

type RouteHeaderArgs struct {
	// The name of the route
	Name   pulumi.StringInput      `pulumi:"name"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (RouteHeaderArgs) ElementType added in v4.0.1

func (RouteHeaderArgs) ElementType() reflect.Type

func (RouteHeaderArgs) ToRouteHeaderOutput added in v4.0.1

func (i RouteHeaderArgs) ToRouteHeaderOutput() RouteHeaderOutput

func (RouteHeaderArgs) ToRouteHeaderOutputWithContext added in v4.0.1

func (i RouteHeaderArgs) ToRouteHeaderOutputWithContext(ctx context.Context) RouteHeaderOutput

type RouteHeaderArray added in v4.0.1

type RouteHeaderArray []RouteHeaderInput

func (RouteHeaderArray) ElementType added in v4.0.1

func (RouteHeaderArray) ElementType() reflect.Type

func (RouteHeaderArray) ToRouteHeaderArrayOutput added in v4.0.1

func (i RouteHeaderArray) ToRouteHeaderArrayOutput() RouteHeaderArrayOutput

func (RouteHeaderArray) ToRouteHeaderArrayOutputWithContext added in v4.0.1

func (i RouteHeaderArray) ToRouteHeaderArrayOutputWithContext(ctx context.Context) RouteHeaderArrayOutput

type RouteHeaderArrayInput added in v4.0.1

type RouteHeaderArrayInput interface {
	pulumi.Input

	ToRouteHeaderArrayOutput() RouteHeaderArrayOutput
	ToRouteHeaderArrayOutputWithContext(context.Context) RouteHeaderArrayOutput
}

RouteHeaderArrayInput is an input type that accepts RouteHeaderArray and RouteHeaderArrayOutput values. You can construct a concrete instance of `RouteHeaderArrayInput` via:

RouteHeaderArray{ RouteHeaderArgs{...} }

type RouteHeaderArrayOutput added in v4.0.1

type RouteHeaderArrayOutput struct{ *pulumi.OutputState }

func (RouteHeaderArrayOutput) ElementType added in v4.0.1

func (RouteHeaderArrayOutput) ElementType() reflect.Type

func (RouteHeaderArrayOutput) Index added in v4.0.1

func (RouteHeaderArrayOutput) ToRouteHeaderArrayOutput added in v4.0.1

func (o RouteHeaderArrayOutput) ToRouteHeaderArrayOutput() RouteHeaderArrayOutput

func (RouteHeaderArrayOutput) ToRouteHeaderArrayOutputWithContext added in v4.0.1

func (o RouteHeaderArrayOutput) ToRouteHeaderArrayOutputWithContext(ctx context.Context) RouteHeaderArrayOutput

type RouteHeaderInput added in v4.0.1

type RouteHeaderInput interface {
	pulumi.Input

	ToRouteHeaderOutput() RouteHeaderOutput
	ToRouteHeaderOutputWithContext(context.Context) RouteHeaderOutput
}

RouteHeaderInput is an input type that accepts RouteHeaderArgs and RouteHeaderOutput values. You can construct a concrete instance of `RouteHeaderInput` via:

RouteHeaderArgs{...}

type RouteHeaderOutput added in v4.0.1

type RouteHeaderOutput struct{ *pulumi.OutputState }

func (RouteHeaderOutput) ElementType added in v4.0.1

func (RouteHeaderOutput) ElementType() reflect.Type

func (RouteHeaderOutput) Name added in v4.0.1

The name of the route

func (RouteHeaderOutput) ToRouteHeaderOutput added in v4.0.1

func (o RouteHeaderOutput) ToRouteHeaderOutput() RouteHeaderOutput

func (RouteHeaderOutput) ToRouteHeaderOutputWithContext added in v4.0.1

func (o RouteHeaderOutput) ToRouteHeaderOutputWithContext(ctx context.Context) RouteHeaderOutput

func (RouteHeaderOutput) Values added in v4.0.1

type RouteInput

type RouteInput interface {
	pulumi.Input

	ToRouteOutput() RouteOutput
	ToRouteOutputWithContext(ctx context.Context) RouteOutput
}

type RouteMap

type RouteMap map[string]RouteInput

func (RouteMap) ElementType

func (RouteMap) ElementType() reflect.Type

func (RouteMap) ToRouteMapOutput

func (i RouteMap) ToRouteMapOutput() RouteMapOutput

func (RouteMap) ToRouteMapOutputWithContext

func (i RouteMap) ToRouteMapOutputWithContext(ctx context.Context) RouteMapOutput

type RouteMapInput

type RouteMapInput interface {
	pulumi.Input

	ToRouteMapOutput() RouteMapOutput
	ToRouteMapOutputWithContext(context.Context) RouteMapOutput
}

RouteMapInput is an input type that accepts RouteMap and RouteMapOutput values. You can construct a concrete instance of `RouteMapInput` via:

RouteMap{ "key": RouteArgs{...} }

type RouteMapOutput

type RouteMapOutput struct{ *pulumi.OutputState }

func (RouteMapOutput) ElementType

func (RouteMapOutput) ElementType() reflect.Type

func (RouteMapOutput) MapIndex

func (RouteMapOutput) ToRouteMapOutput

func (o RouteMapOutput) ToRouteMapOutput() RouteMapOutput

func (RouteMapOutput) ToRouteMapOutputWithContext

func (o RouteMapOutput) ToRouteMapOutputWithContext(ctx context.Context) RouteMapOutput

type RouteOutput

type RouteOutput struct{ *pulumi.OutputState }

func (RouteOutput) Destinations added in v4.5.1

func (o RouteOutput) Destinations() RouteDestinationArrayOutput

A list of destination `ip` and `port`

func (RouteOutput) ElementType

func (RouteOutput) ElementType() reflect.Type

func (RouteOutput) Headers added in v4.5.1

func (o RouteOutput) Headers() RouteHeaderArrayOutput

One or more blocks of `name` to set name of header and `values` which is a list of `string` for the header values to match on. See above example of how to set. These headers will cause this Route to match if present in the request. The Host header cannot be used with this attribute: hosts should be specified using the hosts attribute.

func (RouteOutput) Hosts added in v4.5.1

A list of domain names that match this Route

func (RouteOutput) HttpsRedirectStatusCode added in v4.5.1

func (o RouteOutput) HttpsRedirectStatusCode() pulumi.IntPtrOutput

The status code Kong responds with when all properties of a Route match except the protocol i.e. if the protocol of the request is HTTP instead of HTTPS. Location header is injected by Kong if the field is set to `301`, `302`, `307` or `308`. Accepted values are: `426`, `301`, `302`, `307`, `308`. Default: `426`.

func (RouteOutput) Methods added in v4.5.1

func (o RouteOutput) Methods() pulumi.StringArrayOutput

A list of HTTP methods that match this Route

func (RouteOutput) Name added in v4.5.1

func (o RouteOutput) Name() pulumi.StringOutput

The name of the route

func (RouteOutput) PathHandling added in v4.5.1

func (o RouteOutput) PathHandling() pulumi.StringPtrOutput

Controls how the Service path, Route path and requested path are combined when sending a request to the upstream.

func (RouteOutput) Paths added in v4.5.1

A list of paths that match this Route

func (RouteOutput) PreserveHost added in v4.5.1

func (o RouteOutput) PreserveHost() pulumi.BoolPtrOutput

When matching a Route via one of the hosts domain names, use the request Host header in the upstream request headers. If set to false, the upstream Host header will be that of the Service’s host.

func (RouteOutput) Protocols added in v4.5.1

func (o RouteOutput) Protocols() pulumi.StringArrayOutput

The list of protocols to use

func (RouteOutput) RegexPriority added in v4.5.1

func (o RouteOutput) RegexPriority() pulumi.IntPtrOutput

A number used to choose which route resolves a given request when several routes match it using regexes simultaneously.

func (RouteOutput) RequestBuffering added in v4.5.1

func (o RouteOutput) RequestBuffering() pulumi.BoolPtrOutput

Whether to enable request body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that receive data with chunked transfer encoding. Default: true.

func (RouteOutput) ResponseBuffering added in v4.5.1

func (o RouteOutput) ResponseBuffering() pulumi.BoolPtrOutput

Whether to enable response body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that send data with chunked transfer encoding. Default: true.

func (RouteOutput) ServiceId added in v4.5.1

func (o RouteOutput) ServiceId() pulumi.StringOutput

Service ID to map to

func (RouteOutput) Snis added in v4.5.1

A list of SNIs that match this Route when using stream routing.

func (RouteOutput) Sources added in v4.5.1

func (o RouteOutput) Sources() RouteSourceArrayOutput

A list of source `ip` and `port`

func (RouteOutput) StripPath added in v4.5.1

func (o RouteOutput) StripPath() pulumi.BoolPtrOutput

When matching a Route via one of the paths, strip the matching prefix from the upstream request URL. Default: true.

func (RouteOutput) Tags added in v4.5.1

A list of strings associated with the Route for grouping and filtering.

func (RouteOutput) ToRouteOutput

func (o RouteOutput) ToRouteOutput() RouteOutput

func (RouteOutput) ToRouteOutputWithContext

func (o RouteOutput) ToRouteOutputWithContext(ctx context.Context) RouteOutput

type RouteSource

type RouteSource struct {
	Ip   *string `pulumi:"ip"`
	Port *int    `pulumi:"port"`
}

type RouteSourceArgs

type RouteSourceArgs struct {
	Ip   pulumi.StringPtrInput `pulumi:"ip"`
	Port pulumi.IntPtrInput    `pulumi:"port"`
}

func (RouteSourceArgs) ElementType

func (RouteSourceArgs) ElementType() reflect.Type

func (RouteSourceArgs) ToRouteSourceOutput

func (i RouteSourceArgs) ToRouteSourceOutput() RouteSourceOutput

func (RouteSourceArgs) ToRouteSourceOutputWithContext

func (i RouteSourceArgs) ToRouteSourceOutputWithContext(ctx context.Context) RouteSourceOutput

type RouteSourceArray

type RouteSourceArray []RouteSourceInput

func (RouteSourceArray) ElementType

func (RouteSourceArray) ElementType() reflect.Type

func (RouteSourceArray) ToRouteSourceArrayOutput

func (i RouteSourceArray) ToRouteSourceArrayOutput() RouteSourceArrayOutput

func (RouteSourceArray) ToRouteSourceArrayOutputWithContext

func (i RouteSourceArray) ToRouteSourceArrayOutputWithContext(ctx context.Context) RouteSourceArrayOutput

type RouteSourceArrayInput

type RouteSourceArrayInput interface {
	pulumi.Input

	ToRouteSourceArrayOutput() RouteSourceArrayOutput
	ToRouteSourceArrayOutputWithContext(context.Context) RouteSourceArrayOutput
}

RouteSourceArrayInput is an input type that accepts RouteSourceArray and RouteSourceArrayOutput values. You can construct a concrete instance of `RouteSourceArrayInput` via:

RouteSourceArray{ RouteSourceArgs{...} }

type RouteSourceArrayOutput

type RouteSourceArrayOutput struct{ *pulumi.OutputState }

func (RouteSourceArrayOutput) ElementType

func (RouteSourceArrayOutput) ElementType() reflect.Type

func (RouteSourceArrayOutput) Index

func (RouteSourceArrayOutput) ToRouteSourceArrayOutput

func (o RouteSourceArrayOutput) ToRouteSourceArrayOutput() RouteSourceArrayOutput

func (RouteSourceArrayOutput) ToRouteSourceArrayOutputWithContext

func (o RouteSourceArrayOutput) ToRouteSourceArrayOutputWithContext(ctx context.Context) RouteSourceArrayOutput

type RouteSourceInput

type RouteSourceInput interface {
	pulumi.Input

	ToRouteSourceOutput() RouteSourceOutput
	ToRouteSourceOutputWithContext(context.Context) RouteSourceOutput
}

RouteSourceInput is an input type that accepts RouteSourceArgs and RouteSourceOutput values. You can construct a concrete instance of `RouteSourceInput` via:

RouteSourceArgs{...}

type RouteSourceOutput

type RouteSourceOutput struct{ *pulumi.OutputState }

func (RouteSourceOutput) ElementType

func (RouteSourceOutput) ElementType() reflect.Type

func (RouteSourceOutput) Ip

func (RouteSourceOutput) Port

func (RouteSourceOutput) ToRouteSourceOutput

func (o RouteSourceOutput) ToRouteSourceOutput() RouteSourceOutput

func (RouteSourceOutput) ToRouteSourceOutputWithContext

func (o RouteSourceOutput) ToRouteSourceOutputWithContext(ctx context.Context) RouteSourceOutput

type RouteState

type RouteState struct {
	// A list of destination `ip` and `port`
	Destinations RouteDestinationArrayInput
	// One or more blocks of `name` to set name of header and `values` which is a list of `string` for the header values to match on.  See above example of how to set.  These headers will cause this Route to match if present in the request. The Host header cannot be used with this attribute: hosts should be specified using the hosts attribute.
	Headers RouteHeaderArrayInput
	// A list of domain names that match this Route
	Hosts pulumi.StringArrayInput
	// The status code Kong responds with when all properties of a Route match except the protocol i.e. if the protocol of the request is HTTP instead of HTTPS. Location header is injected by Kong if the field is set to `301`, `302`, `307` or `308`. Accepted values are: `426`, `301`, `302`, `307`, `308`. Default: `426`.
	HttpsRedirectStatusCode pulumi.IntPtrInput
	// A list of HTTP methods that match this Route
	Methods pulumi.StringArrayInput
	// The name of the route
	Name pulumi.StringPtrInput
	// Controls how the Service path, Route path and requested path are combined when sending a request to the upstream.
	PathHandling pulumi.StringPtrInput
	// A list of paths that match this Route
	Paths pulumi.StringArrayInput
	// When matching a Route via one of the hosts domain names, use the request Host header in the upstream request headers. If set to false, the upstream Host header will be that of the Service’s host.
	PreserveHost pulumi.BoolPtrInput
	// The list of protocols to use
	Protocols pulumi.StringArrayInput
	// A number used to choose which route resolves a given request when several routes match it using regexes simultaneously.
	RegexPriority pulumi.IntPtrInput
	// Whether to enable request body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that receive data with chunked transfer encoding. Default: true.
	RequestBuffering pulumi.BoolPtrInput
	// Whether to enable response body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that send data with chunked transfer encoding. Default: true.
	ResponseBuffering pulumi.BoolPtrInput
	// Service ID to map to
	ServiceId pulumi.StringPtrInput
	// A list of SNIs that match this Route when using stream routing.
	Snis pulumi.StringArrayInput
	// A list of source `ip` and `port`
	Sources RouteSourceArrayInput
	// When matching a Route via one of the paths, strip the matching prefix from the upstream request URL. Default: true.
	StripPath pulumi.BoolPtrInput
	// A list of strings associated with the Route for grouping and filtering.
	Tags pulumi.StringArrayInput
}

func (RouteState) ElementType

func (RouteState) ElementType() reflect.Type

type Service

type Service struct {
	pulumi.CustomResourceState

	// A of CA Certificate IDs (created from the certificate resource). that are used to build the trust store while verifying upstream server’s TLS certificate.
	CaCertificateIds pulumi.StringArrayOutput `pulumi:"caCertificateIds"`
	// ID of Certificate to be used as client certificate while TLS handshaking to the upstream server. Use ID from `Certificate` resource
	ClientCertificateId pulumi.StringPtrOutput `pulumi:"clientCertificateId"`
	// Connection timeout. Default(ms): 60000
	ConnectTimeout pulumi.IntPtrOutput `pulumi:"connectTimeout"`
	// Host to map to
	Host pulumi.StringPtrOutput `pulumi:"host"`
	// Service name
	Name pulumi.StringOutput `pulumi:"name"`
	// Path to map to
	Path pulumi.StringPtrOutput `pulumi:"path"`
	// Port to map to. Default: 80
	Port pulumi.IntPtrOutput `pulumi:"port"`
	// Protocol to use
	Protocol pulumi.StringOutput `pulumi:"protocol"`
	// Read timeout. Default(ms): 60000
	ReadTimeout pulumi.IntPtrOutput `pulumi:"readTimeout"`
	// Number of retries. Default: 5
	Retries pulumi.IntPtrOutput `pulumi:"retries"`
	// A list of strings associated with the Service for grouping and filtering.
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
	// Whether to enable verification of upstream server TLS certificate. If not set then the nginx default is respected.
	TlsVerify pulumi.BoolPtrOutput `pulumi:"tlsVerify"`
	// Maximum depth of chain while verifying Upstream server’s TLS certificate.
	TlsVerifyDepth pulumi.IntPtrOutput `pulumi:"tlsVerifyDepth"`
	// Write timout. Default(ms): 60000
	WriteTimeout pulumi.IntPtrOutput `pulumi:"writeTimeout"`
}

## # Service

The service resource maps directly onto the json for the service endpoint in Kong. For more information on the parameters [see the Kong Service create documentation](https://docs.konghq.com/gateway-oss/2.5.x/admin-api/#service-object).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := kong.NewService(ctx, "service", &kong.ServiceArgs{
			Name:           pulumi.String("test"),
			Protocol:       pulumi.String("http"),
			Host:           pulumi.String("test.org"),
			Port:           pulumi.Int(8080),
			Path:           pulumi.String("/mypath"),
			Retries:        pulumi.Int(5),
			ConnectTimeout: pulumi.Int(1000),
			WriteTimeout:   pulumi.Int(2000),
			ReadTimeout:    pulumi.Int(3000),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

To use a client certificate and ca certificates combine with certificate resource (note protocol must be `https`):

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		certificate, err := kong.NewCertificate(ctx, "certificate", &kong.CertificateArgs{
			Certificate: pulumi.String("    -----BEGIN CERTIFICATE-----\n    ......\n    -----END CERTIFICATE-----\n"),
			PrivateKey:  pulumi.String("    -----BEGIN PRIVATE KEY-----\n    .....\n    -----END PRIVATE KEY-----\n"),
			Snis: pulumi.StringArray{
				pulumi.String("foo.com"),
			},
		})
		if err != nil {
			return err
		}
		ca, err := kong.NewCertificate(ctx, "ca", &kong.CertificateArgs{
			Certificate: pulumi.String("    -----BEGIN CERTIFICATE-----\n    ......\n    -----END CERTIFICATE-----\n"),
			PrivateKey:  pulumi.String("    -----BEGIN PRIVATE KEY-----\n    .....\n    -----END PRIVATE KEY-----\n"),
			Snis: pulumi.StringArray{
				pulumi.String("ca.com"),
			},
		})
		if err != nil {
			return err
		}
		_, err = kong.NewService(ctx, "service", &kong.ServiceArgs{
			Name:                pulumi.String("test"),
			Protocol:            pulumi.String("https"),
			Host:                pulumi.String("test.org"),
			TlsVerify:           pulumi.Bool(true),
			TlsVerifyDepth:      pulumi.Int(2),
			ClientCertificateId: certificate.ID(),
			CaCertificateIds: pulumi.StringArray{
				ca.ID(),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

To import a service:

```sh $ pulumi import kong:index/service:Service <service_identifier> <service_id> ```

func GetService

func GetService(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ServiceState, opts ...pulumi.ResourceOption) (*Service, error)

GetService gets an existing Service resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewService

func NewService(ctx *pulumi.Context,
	name string, args *ServiceArgs, opts ...pulumi.ResourceOption) (*Service, error)

NewService registers a new resource with the given unique name, arguments, and options.

func (*Service) ElementType

func (*Service) ElementType() reflect.Type

func (*Service) ToServiceOutput

func (i *Service) ToServiceOutput() ServiceOutput

func (*Service) ToServiceOutputWithContext

func (i *Service) ToServiceOutputWithContext(ctx context.Context) ServiceOutput

type ServiceArgs

type ServiceArgs struct {
	// A of CA Certificate IDs (created from the certificate resource). that are used to build the trust store while verifying upstream server’s TLS certificate.
	CaCertificateIds pulumi.StringArrayInput
	// ID of Certificate to be used as client certificate while TLS handshaking to the upstream server. Use ID from `Certificate` resource
	ClientCertificateId pulumi.StringPtrInput
	// Connection timeout. Default(ms): 60000
	ConnectTimeout pulumi.IntPtrInput
	// Host to map to
	Host pulumi.StringPtrInput
	// Service name
	Name pulumi.StringPtrInput
	// Path to map to
	Path pulumi.StringPtrInput
	// Port to map to. Default: 80
	Port pulumi.IntPtrInput
	// Protocol to use
	Protocol pulumi.StringInput
	// Read timeout. Default(ms): 60000
	ReadTimeout pulumi.IntPtrInput
	// Number of retries. Default: 5
	Retries pulumi.IntPtrInput
	// A list of strings associated with the Service for grouping and filtering.
	Tags pulumi.StringArrayInput
	// Whether to enable verification of upstream server TLS certificate. If not set then the nginx default is respected.
	TlsVerify pulumi.BoolPtrInput
	// Maximum depth of chain while verifying Upstream server’s TLS certificate.
	TlsVerifyDepth pulumi.IntPtrInput
	// Write timout. Default(ms): 60000
	WriteTimeout pulumi.IntPtrInput
}

The set of arguments for constructing a Service resource.

func (ServiceArgs) ElementType

func (ServiceArgs) ElementType() reflect.Type

type ServiceArray

type ServiceArray []ServiceInput

func (ServiceArray) ElementType

func (ServiceArray) ElementType() reflect.Type

func (ServiceArray) ToServiceArrayOutput

func (i ServiceArray) ToServiceArrayOutput() ServiceArrayOutput

func (ServiceArray) ToServiceArrayOutputWithContext

func (i ServiceArray) ToServiceArrayOutputWithContext(ctx context.Context) ServiceArrayOutput

type ServiceArrayInput

type ServiceArrayInput interface {
	pulumi.Input

	ToServiceArrayOutput() ServiceArrayOutput
	ToServiceArrayOutputWithContext(context.Context) ServiceArrayOutput
}

ServiceArrayInput is an input type that accepts ServiceArray and ServiceArrayOutput values. You can construct a concrete instance of `ServiceArrayInput` via:

ServiceArray{ ServiceArgs{...} }

type ServiceArrayOutput

type ServiceArrayOutput struct{ *pulumi.OutputState }

func (ServiceArrayOutput) ElementType

func (ServiceArrayOutput) ElementType() reflect.Type

func (ServiceArrayOutput) Index

func (ServiceArrayOutput) ToServiceArrayOutput

func (o ServiceArrayOutput) ToServiceArrayOutput() ServiceArrayOutput

func (ServiceArrayOutput) ToServiceArrayOutputWithContext

func (o ServiceArrayOutput) ToServiceArrayOutputWithContext(ctx context.Context) ServiceArrayOutput

type ServiceInput

type ServiceInput interface {
	pulumi.Input

	ToServiceOutput() ServiceOutput
	ToServiceOutputWithContext(ctx context.Context) ServiceOutput
}

type ServiceMap

type ServiceMap map[string]ServiceInput

func (ServiceMap) ElementType

func (ServiceMap) ElementType() reflect.Type

func (ServiceMap) ToServiceMapOutput

func (i ServiceMap) ToServiceMapOutput() ServiceMapOutput

func (ServiceMap) ToServiceMapOutputWithContext

func (i ServiceMap) ToServiceMapOutputWithContext(ctx context.Context) ServiceMapOutput

type ServiceMapInput

type ServiceMapInput interface {
	pulumi.Input

	ToServiceMapOutput() ServiceMapOutput
	ToServiceMapOutputWithContext(context.Context) ServiceMapOutput
}

ServiceMapInput is an input type that accepts ServiceMap and ServiceMapOutput values. You can construct a concrete instance of `ServiceMapInput` via:

ServiceMap{ "key": ServiceArgs{...} }

type ServiceMapOutput

type ServiceMapOutput struct{ *pulumi.OutputState }

func (ServiceMapOutput) ElementType

func (ServiceMapOutput) ElementType() reflect.Type

func (ServiceMapOutput) MapIndex

func (ServiceMapOutput) ToServiceMapOutput

func (o ServiceMapOutput) ToServiceMapOutput() ServiceMapOutput

func (ServiceMapOutput) ToServiceMapOutputWithContext

func (o ServiceMapOutput) ToServiceMapOutputWithContext(ctx context.Context) ServiceMapOutput

type ServiceOutput

type ServiceOutput struct{ *pulumi.OutputState }

func (ServiceOutput) CaCertificateIds added in v4.5.1

func (o ServiceOutput) CaCertificateIds() pulumi.StringArrayOutput

A of CA Certificate IDs (created from the certificate resource). that are used to build the trust store while verifying upstream server’s TLS certificate.

func (ServiceOutput) ClientCertificateId added in v4.5.1

func (o ServiceOutput) ClientCertificateId() pulumi.StringPtrOutput

ID of Certificate to be used as client certificate while TLS handshaking to the upstream server. Use ID from `Certificate` resource

func (ServiceOutput) ConnectTimeout added in v4.5.1

func (o ServiceOutput) ConnectTimeout() pulumi.IntPtrOutput

Connection timeout. Default(ms): 60000

func (ServiceOutput) ElementType

func (ServiceOutput) ElementType() reflect.Type

func (ServiceOutput) Host added in v4.5.1

Host to map to

func (ServiceOutput) Name added in v4.5.1

Service name

func (ServiceOutput) Path added in v4.5.1

Path to map to

func (ServiceOutput) Port added in v4.5.1

Port to map to. Default: 80

func (ServiceOutput) Protocol added in v4.5.1

func (o ServiceOutput) Protocol() pulumi.StringOutput

Protocol to use

func (ServiceOutput) ReadTimeout added in v4.5.1

func (o ServiceOutput) ReadTimeout() pulumi.IntPtrOutput

Read timeout. Default(ms): 60000

func (ServiceOutput) Retries added in v4.5.1

func (o ServiceOutput) Retries() pulumi.IntPtrOutput

Number of retries. Default: 5

func (ServiceOutput) Tags added in v4.5.1

A list of strings associated with the Service for grouping and filtering.

func (ServiceOutput) TlsVerify added in v4.5.1

func (o ServiceOutput) TlsVerify() pulumi.BoolPtrOutput

Whether to enable verification of upstream server TLS certificate. If not set then the nginx default is respected.

func (ServiceOutput) TlsVerifyDepth added in v4.5.1

func (o ServiceOutput) TlsVerifyDepth() pulumi.IntPtrOutput

Maximum depth of chain while verifying Upstream server’s TLS certificate.

func (ServiceOutput) ToServiceOutput

func (o ServiceOutput) ToServiceOutput() ServiceOutput

func (ServiceOutput) ToServiceOutputWithContext

func (o ServiceOutput) ToServiceOutputWithContext(ctx context.Context) ServiceOutput

func (ServiceOutput) WriteTimeout added in v4.5.1

func (o ServiceOutput) WriteTimeout() pulumi.IntPtrOutput

Write timout. Default(ms): 60000

type ServiceState

type ServiceState struct {
	// A of CA Certificate IDs (created from the certificate resource). that are used to build the trust store while verifying upstream server’s TLS certificate.
	CaCertificateIds pulumi.StringArrayInput
	// ID of Certificate to be used as client certificate while TLS handshaking to the upstream server. Use ID from `Certificate` resource
	ClientCertificateId pulumi.StringPtrInput
	// Connection timeout. Default(ms): 60000
	ConnectTimeout pulumi.IntPtrInput
	// Host to map to
	Host pulumi.StringPtrInput
	// Service name
	Name pulumi.StringPtrInput
	// Path to map to
	Path pulumi.StringPtrInput
	// Port to map to. Default: 80
	Port pulumi.IntPtrInput
	// Protocol to use
	Protocol pulumi.StringPtrInput
	// Read timeout. Default(ms): 60000
	ReadTimeout pulumi.IntPtrInput
	// Number of retries. Default: 5
	Retries pulumi.IntPtrInput
	// A list of strings associated with the Service for grouping and filtering.
	Tags pulumi.StringArrayInput
	// Whether to enable verification of upstream server TLS certificate. If not set then the nginx default is respected.
	TlsVerify pulumi.BoolPtrInput
	// Maximum depth of chain while verifying Upstream server’s TLS certificate.
	TlsVerifyDepth pulumi.IntPtrInput
	// Write timout. Default(ms): 60000
	WriteTimeout pulumi.IntPtrInput
}

func (ServiceState) ElementType

func (ServiceState) ElementType() reflect.Type

type Target

type Target struct {
	pulumi.CustomResourceState

	// A list set of strings associated with the Plugin for grouping and filtering
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
	// is the target address (IP or hostname) and port. If omitted the port defaults to 8000.
	Target pulumi.StringOutput `pulumi:"target"`
	// is the id of the upstream to apply this target to.
	UpstreamId pulumi.StringOutput `pulumi:"upstreamId"`
	// is the weight this target gets within the upstream load balancer (0-1000, defaults to 100).
	Weight pulumi.IntOutput `pulumi:"weight"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := kong.NewTarget(ctx, "target", &kong.TargetArgs{
			Target:     pulumi.String("sample_target:80"),
			Weight:     pulumi.Int(10),
			UpstreamId: pulumi.Any(upstream.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

To import a target use a combination of the upstream id and the target id as follows:

```sh $ pulumi import kong:index/target:Target <target_identifier> <upstream_id>/<target_id> ```

func GetTarget

func GetTarget(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TargetState, opts ...pulumi.ResourceOption) (*Target, error)

GetTarget gets an existing Target resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTarget

func NewTarget(ctx *pulumi.Context,
	name string, args *TargetArgs, opts ...pulumi.ResourceOption) (*Target, error)

NewTarget registers a new resource with the given unique name, arguments, and options.

func (*Target) ElementType

func (*Target) ElementType() reflect.Type

func (*Target) ToTargetOutput

func (i *Target) ToTargetOutput() TargetOutput

func (*Target) ToTargetOutputWithContext

func (i *Target) ToTargetOutputWithContext(ctx context.Context) TargetOutput

type TargetArgs

type TargetArgs struct {
	// A list set of strings associated with the Plugin for grouping and filtering
	Tags pulumi.StringArrayInput
	// is the target address (IP or hostname) and port. If omitted the port defaults to 8000.
	Target pulumi.StringInput
	// is the id of the upstream to apply this target to.
	UpstreamId pulumi.StringInput
	// is the weight this target gets within the upstream load balancer (0-1000, defaults to 100).
	Weight pulumi.IntInput
}

The set of arguments for constructing a Target resource.

func (TargetArgs) ElementType

func (TargetArgs) ElementType() reflect.Type

type TargetArray

type TargetArray []TargetInput

func (TargetArray) ElementType

func (TargetArray) ElementType() reflect.Type

func (TargetArray) ToTargetArrayOutput

func (i TargetArray) ToTargetArrayOutput() TargetArrayOutput

func (TargetArray) ToTargetArrayOutputWithContext

func (i TargetArray) ToTargetArrayOutputWithContext(ctx context.Context) TargetArrayOutput

type TargetArrayInput

type TargetArrayInput interface {
	pulumi.Input

	ToTargetArrayOutput() TargetArrayOutput
	ToTargetArrayOutputWithContext(context.Context) TargetArrayOutput
}

TargetArrayInput is an input type that accepts TargetArray and TargetArrayOutput values. You can construct a concrete instance of `TargetArrayInput` via:

TargetArray{ TargetArgs{...} }

type TargetArrayOutput

type TargetArrayOutput struct{ *pulumi.OutputState }

func (TargetArrayOutput) ElementType

func (TargetArrayOutput) ElementType() reflect.Type

func (TargetArrayOutput) Index

func (TargetArrayOutput) ToTargetArrayOutput

func (o TargetArrayOutput) ToTargetArrayOutput() TargetArrayOutput

func (TargetArrayOutput) ToTargetArrayOutputWithContext

func (o TargetArrayOutput) ToTargetArrayOutputWithContext(ctx context.Context) TargetArrayOutput

type TargetInput

type TargetInput interface {
	pulumi.Input

	ToTargetOutput() TargetOutput
	ToTargetOutputWithContext(ctx context.Context) TargetOutput
}

type TargetMap

type TargetMap map[string]TargetInput

func (TargetMap) ElementType

func (TargetMap) ElementType() reflect.Type

func (TargetMap) ToTargetMapOutput

func (i TargetMap) ToTargetMapOutput() TargetMapOutput

func (TargetMap) ToTargetMapOutputWithContext

func (i TargetMap) ToTargetMapOutputWithContext(ctx context.Context) TargetMapOutput

type TargetMapInput

type TargetMapInput interface {
	pulumi.Input

	ToTargetMapOutput() TargetMapOutput
	ToTargetMapOutputWithContext(context.Context) TargetMapOutput
}

TargetMapInput is an input type that accepts TargetMap and TargetMapOutput values. You can construct a concrete instance of `TargetMapInput` via:

TargetMap{ "key": TargetArgs{...} }

type TargetMapOutput

type TargetMapOutput struct{ *pulumi.OutputState }

func (TargetMapOutput) ElementType

func (TargetMapOutput) ElementType() reflect.Type

func (TargetMapOutput) MapIndex

func (TargetMapOutput) ToTargetMapOutput

func (o TargetMapOutput) ToTargetMapOutput() TargetMapOutput

func (TargetMapOutput) ToTargetMapOutputWithContext

func (o TargetMapOutput) ToTargetMapOutputWithContext(ctx context.Context) TargetMapOutput

type TargetOutput

type TargetOutput struct{ *pulumi.OutputState }

func (TargetOutput) ElementType

func (TargetOutput) ElementType() reflect.Type

func (TargetOutput) Tags added in v4.5.1

A list set of strings associated with the Plugin for grouping and filtering

func (TargetOutput) Target added in v4.5.1

func (o TargetOutput) Target() pulumi.StringOutput

is the target address (IP or hostname) and port. If omitted the port defaults to 8000.

func (TargetOutput) ToTargetOutput

func (o TargetOutput) ToTargetOutput() TargetOutput

func (TargetOutput) ToTargetOutputWithContext

func (o TargetOutput) ToTargetOutputWithContext(ctx context.Context) TargetOutput

func (TargetOutput) UpstreamId added in v4.5.1

func (o TargetOutput) UpstreamId() pulumi.StringOutput

is the id of the upstream to apply this target to.

func (TargetOutput) Weight added in v4.5.1

func (o TargetOutput) Weight() pulumi.IntOutput

is the weight this target gets within the upstream load balancer (0-1000, defaults to 100).

type TargetState

type TargetState struct {
	// A list set of strings associated with the Plugin for grouping and filtering
	Tags pulumi.StringArrayInput
	// is the target address (IP or hostname) and port. If omitted the port defaults to 8000.
	Target pulumi.StringPtrInput
	// is the id of the upstream to apply this target to.
	UpstreamId pulumi.StringPtrInput
	// is the weight this target gets within the upstream load balancer (0-1000, defaults to 100).
	Weight pulumi.IntPtrInput
}

func (TargetState) ElementType

func (TargetState) ElementType() reflect.Type

type Upstream

type Upstream struct {
	pulumi.CustomResourceState

	// The ID of the client certificate to use (from certificate resource) while TLS handshaking to the upstream server.
	ClientCertificateId pulumi.StringPtrOutput `pulumi:"clientCertificateId"`
	// is a hashing input type if the primary `hashOn` does not return a hash (eg. header is missing, or no consumer identified). One of: `none`, `consumer`, `ip`, `header`, or `cookie`. Not available if `hashOn` is set to `cookie`. Defaults to `none`.
	HashFallback pulumi.StringPtrOutput `pulumi:"hashFallback"`
	// is a header name to take the value from as hash input. Only required when `hashFallback` is set to `header`. Default `nil`.
	HashFallbackHeader pulumi.StringPtrOutput `pulumi:"hashFallbackHeader"`
	// is a hashing input type: ` none  `(resulting in a weighted*round*robin scheme with no hashing), `consumer`, `ip`, `header`, or `cookie`. Defaults to `none`.
	HashOn pulumi.StringPtrOutput `pulumi:"hashOn"`
	// is a cookie name to take the value from as hash input. Only required when `hashOn` or `hashFallback` is set to `cookie`. If the specified cookie is not in the request, Kong will generate a value and set the cookie in the response. Default `nil`.
	HashOnCookie pulumi.StringPtrOutput `pulumi:"hashOnCookie"`
	// is a cookie path to set in the response headers. Only required when `hashOn` or `hashFallback` is set to `cookie`. Defaults to `/`.
	// * `healthchecks.active.type` - (Optional) is a active health check type. HTTP or HTTPS, or just attempt a TCP connection. Possible values are `tcp`, `http` or `https`. Defaults to `http`.
	// * `healthchecks.active.timeout` - (Optional) is a socket timeout for active health checks (in seconds). Defaults to `1`.
	// * `healthchecks.active.concurrency` - (Optional) is a number of targets to check concurrently in active health checks. Defaults to `10`.
	// * `healthchecks.active.http_path` - (Optional) is a path to use in GET HTTP request to run as a probe on active health checks. Defaults to `/`.
	// * `healthchecks.active.https_verify_certificate` - (Optional) check the validity of the SSL certificate of the remote host when performing active health checks using HTTPS. Defaults to `true`.
	// * `healthchecks.active.https_sni` - (Optional) is the hostname to use as an SNI (Server Name Identification) when performing active health checks using HTTPS. This is particularly useful when Targets are configured using IPs, so that the target host’s certificate can be verified with the proper SNI. Default `nil`.
	// * `healthchecks.active.healthy.interval` - (Optional) is an interval between active health checks for healthy targets (in seconds). A value of zero indicates that active probes for healthy targets should not be performed. Defaults to `0`.
	// * `healthchecks.active.healthy.successes` - (Optional) is a number of successes in active probes (as defined by `healthchecks.active.healthy.http_statuses`) to consider a target healthy. Defaults to `0`.
	// * `healthchecks.active.healthy.http_statuses` - (Optional) is an array of HTTP statuses to consider a success, indicating healthiness, when returned by a probe in active health checks. Defaults to `[200, 302]`.
	// * `healthchecks.active.unhealthy.interval` - (Optional) is an interval between active health checks for unhealthy targets (in seconds). A value of zero indicates that active probes for unhealthy targets should not be performed. Defaults to `0`.
	// * `healthchecks.active.unhealthy.tcp_failures` - (Optional) is a number of TCP failures in active probes to consider a target unhealthy. Defaults to `0`.
	// * `healthchecks.active.unhealthy.http_failures` - (Optional) is a number of HTTP failures in active probes (as defined by `healthchecks.active.unhealthy.http_statuses`) to consider a target unhealthy. Defaults to `0`.
	// * `healthchecks.active.unhealthy.timeouts` - (Optional) is a number of timeouts in active probes to consider a target unhealthy. Defaults to `0`.
	// * `healthchecks.active.unhealthy.http_statuses` - (Optional) is an array of HTTP statuses to consider a failure, indicating unhealthiness, when returned by a probe in active health checks. Defaults to `[429, 404, 500, 501, 502, 503, 504, 505]`.
	// * `healthchecks.passive.type` - (Optional) is a passive health check type. Interpreting HTTP/HTTPS statuses, or just check for TCP connection success. Possible values are `tcp`, `http` or `https` (in passive checks, `http` and `https` options are equivalent.). Defaults to `http`.
	// * `healthchecks.passive.healthy.successes` - (Optional) is a Number of successes in proxied traffic (as defined by `healthchecks.passive.healthy.http_statuses`) to consider a target healthy, as observed by passive health checks. Defaults to `0`.
	// * `healthchecks.passive.healthy.http_statuses` - (Optional) is an array of HTTP statuses which represent healthiness when produced by proxied traffic, as observed by passive health checks. Defaults to `[200, 201, 202, 203, 204, 205, 206, 207, 208, 226, 300, 301, 302, 303, 304, 305, 306, 307, 308]`.
	// * `healthchecks.passive.unhealthy.tcp_failures` - (Optional) is a number of TCP failures in proxied traffic to consider a target unhealthy, as observed by passive health checks. Defaults to `0`.
	// * `healthchecks.passive.unhealthy.http_failures` - (Optional) is a number of HTTP failures in proxied traffic (as defined by `healthchecks.passive.unhealthy.http_statuses`) to consider a target unhealthy, as observed by passive health checks. Defaults to `0`.
	// * `healthchecks.passive.unhealthy.timeouts` - (Optional) is a number of timeouts in proxied traffic to consider a target unhealthy, as observed by passive health checks. Defaults to `0`.
	// * `healthchecks.passive.unhealthy.http_statuses` - (Optional) is an array of HTTP statuses which represent unhealthiness when produced by proxied traffic, as observed by passive health checks. Defaults to `[429, 500, 503]`.
	HashOnCookiePath pulumi.StringPtrOutput `pulumi:"hashOnCookiePath"`
	// is a header name to take the value from as hash input. Only required when `hashOn` is set to `header`. Default `nil`.
	HashOnHeader pulumi.StringPtrOutput     `pulumi:"hashOnHeader"`
	Healthchecks UpstreamHealthchecksOutput `pulumi:"healthchecks"`
	// The hostname to be used as Host header when proxying requests through Kong.
	HostHeader pulumi.StringPtrOutput `pulumi:"hostHeader"`
	// is a hostname, which must be equal to the host of a Service.
	Name pulumi.StringOutput `pulumi:"name"`
	// is the number of slots in the load balancer algorithm (10*65536, defaults to 10000).
	Slots pulumi.IntPtrOutput `pulumi:"slots"`
	// A list of strings associated with the Upstream for grouping and filtering.
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-kong/sdk/v4/go/kong"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		certificate, err := kong.NewCertificate(ctx, "certificate", &kong.CertificateArgs{
			Certificate: pulumi.String("    -----BEGIN CERTIFICATE-----\n    ......\n    -----END CERTIFICATE-----\n"),
			PrivateKey:  pulumi.String("    -----BEGIN PRIVATE KEY-----\n    .....\n    -----END PRIVATE KEY-----\n"),
			Snis: pulumi.StringArray{
				pulumi.String("foo.com"),
			},
		})
		if err != nil {
			return err
		}
		_, err = kong.NewUpstream(ctx, "upstream", &kong.UpstreamArgs{
			Name:               pulumi.String("sample_upstream"),
			Slots:              pulumi.Int(10),
			HashOn:             pulumi.String("header"),
			HashFallback:       pulumi.String("cookie"),
			HashOnHeader:       pulumi.String("HeaderName"),
			HashFallbackHeader: pulumi.String("FallbackHeaderName"),
			HashOnCookie:       pulumi.String("CookieName"),
			HashOnCookiePath:   pulumi.String("/path"),
			HostHeader:         pulumi.String("x-host"),
			Tags: pulumi.StringArray{
				pulumi.String("a"),
				pulumi.String("b"),
			},
			ClientCertificateId: certificate.ID(),
			Healthchecks: &kong.UpstreamHealthchecksArgs{
				Active: &kong.UpstreamHealthchecksActiveArgs{
					Type:                   pulumi.String("https"),
					HttpPath:               pulumi.String("/status"),
					Timeout:                pulumi.Int(10),
					Concurrency:            pulumi.Int(20),
					HttpsVerifyCertificate: pulumi.Bool(false),
					HttpsSni:               pulumi.String("some.domain.com"),
					Healthy: &kong.UpstreamHealthchecksActiveHealthyArgs{
						Successes: pulumi.Int(1),
						Interval:  pulumi.Int(5),
						HttpStatuses: pulumi.IntArray{
							pulumi.Int(200),
							pulumi.Int(201),
						},
					},
					Unhealthy: &kong.UpstreamHealthchecksActiveUnhealthyArgs{
						Timeouts:     pulumi.Int(7),
						Interval:     pulumi.Int(3),
						TcpFailures:  pulumi.Int(1),
						HttpFailures: pulumi.Int(2),
						HttpStatuses: pulumi.IntArray{
							pulumi.Int(500),
							pulumi.Int(501),
						},
					},
				},
				Passive: &kong.UpstreamHealthchecksPassiveArgs{
					Type: pulumi.String("https"),
					Healthy: &kong.UpstreamHealthchecksPassiveHealthyArgs{
						Successes: pulumi.Int(1),
						HttpStatuses: pulumi.IntArray{
							pulumi.Int(200),
							pulumi.Int(201),
							pulumi.Int(202),
						},
					},
					Unhealthy: &kong.UpstreamHealthchecksPassiveUnhealthyArgs{
						Timeouts:     pulumi.Int(3),
						TcpFailures:  pulumi.Int(5),
						HttpFailures: pulumi.Int(6),
						HttpStatuses: pulumi.IntArray{
							pulumi.Int(500),
							pulumi.Int(501),
							pulumi.Int(502),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

To import an upstream:

```sh $ pulumi import kong:index/upstream:Upstream <upstream_identifier> <upstream_id> ```

func GetUpstream

func GetUpstream(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *UpstreamState, opts ...pulumi.ResourceOption) (*Upstream, error)

GetUpstream gets an existing Upstream resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewUpstream

func NewUpstream(ctx *pulumi.Context,
	name string, args *UpstreamArgs, opts ...pulumi.ResourceOption) (*Upstream, error)

NewUpstream registers a new resource with the given unique name, arguments, and options.

func (*Upstream) ElementType

func (*Upstream) ElementType() reflect.Type

func (*Upstream) ToUpstreamOutput

func (i *Upstream) ToUpstreamOutput() UpstreamOutput

func (*Upstream) ToUpstreamOutputWithContext

func (i *Upstream) ToUpstreamOutputWithContext(ctx context.Context) UpstreamOutput

type UpstreamArgs

type UpstreamArgs struct {
	// The ID of the client certificate to use (from certificate resource) while TLS handshaking to the upstream server.
	ClientCertificateId pulumi.StringPtrInput
	// is a hashing input type if the primary `hashOn` does not return a hash (eg. header is missing, or no consumer identified). One of: `none`, `consumer`, `ip`, `header`, or `cookie`. Not available if `hashOn` is set to `cookie`. Defaults to `none`.
	HashFallback pulumi.StringPtrInput
	// is a header name to take the value from as hash input. Only required when `hashFallback` is set to `header`. Default `nil`.
	HashFallbackHeader pulumi.StringPtrInput
	// is a hashing input type: ` none  `(resulting in a weighted*round*robin scheme with no hashing), `consumer`, `ip`, `header`, or `cookie`. Defaults to `none`.
	HashOn pulumi.StringPtrInput
	// is a cookie name to take the value from as hash input. Only required when `hashOn` or `hashFallback` is set to `cookie`. If the specified cookie is not in the request, Kong will generate a value and set the cookie in the response. Default `nil`.
	HashOnCookie pulumi.StringPtrInput
	// is a cookie path to set in the response headers. Only required when `hashOn` or `hashFallback` is set to `cookie`. Defaults to `/`.
	// * `healthchecks.active.type` - (Optional) is a active health check type. HTTP or HTTPS, or just attempt a TCP connection. Possible values are `tcp`, `http` or `https`. Defaults to `http`.
	// * `healthchecks.active.timeout` - (Optional) is a socket timeout for active health checks (in seconds). Defaults to `1`.
	// * `healthchecks.active.concurrency` - (Optional) is a number of targets to check concurrently in active health checks. Defaults to `10`.
	// * `healthchecks.active.http_path` - (Optional) is a path to use in GET HTTP request to run as a probe on active health checks. Defaults to `/`.
	// * `healthchecks.active.https_verify_certificate` - (Optional) check the validity of the SSL certificate of the remote host when performing active health checks using HTTPS. Defaults to `true`.
	// * `healthchecks.active.https_sni` - (Optional) is the hostname to use as an SNI (Server Name Identification) when performing active health checks using HTTPS. This is particularly useful when Targets are configured using IPs, so that the target host’s certificate can be verified with the proper SNI. Default `nil`.
	// * `healthchecks.active.healthy.interval` - (Optional) is an interval between active health checks for healthy targets (in seconds). A value of zero indicates that active probes for healthy targets should not be performed. Defaults to `0`.
	// * `healthchecks.active.healthy.successes` - (Optional) is a number of successes in active probes (as defined by `healthchecks.active.healthy.http_statuses`) to consider a target healthy. Defaults to `0`.
	// * `healthchecks.active.healthy.http_statuses` - (Optional) is an array of HTTP statuses to consider a success, indicating healthiness, when returned by a probe in active health checks. Defaults to `[200, 302]`.
	// * `healthchecks.active.unhealthy.interval` - (Optional) is an interval between active health checks for unhealthy targets (in seconds). A value of zero indicates that active probes for unhealthy targets should not be performed. Defaults to `0`.
	// * `healthchecks.active.unhealthy.tcp_failures` - (Optional) is a number of TCP failures in active probes to consider a target unhealthy. Defaults to `0`.
	// * `healthchecks.active.unhealthy.http_failures` - (Optional) is a number of HTTP failures in active probes (as defined by `healthchecks.active.unhealthy.http_statuses`) to consider a target unhealthy. Defaults to `0`.
	// * `healthchecks.active.unhealthy.timeouts` - (Optional) is a number of timeouts in active probes to consider a target unhealthy. Defaults to `0`.
	// * `healthchecks.active.unhealthy.http_statuses` - (Optional) is an array of HTTP statuses to consider a failure, indicating unhealthiness, when returned by a probe in active health checks. Defaults to `[429, 404, 500, 501, 502, 503, 504, 505]`.
	// * `healthchecks.passive.type` - (Optional) is a passive health check type. Interpreting HTTP/HTTPS statuses, or just check for TCP connection success. Possible values are `tcp`, `http` or `https` (in passive checks, `http` and `https` options are equivalent.). Defaults to `http`.
	// * `healthchecks.passive.healthy.successes` - (Optional) is a Number of successes in proxied traffic (as defined by `healthchecks.passive.healthy.http_statuses`) to consider a target healthy, as observed by passive health checks. Defaults to `0`.
	// * `healthchecks.passive.healthy.http_statuses` - (Optional) is an array of HTTP statuses which represent healthiness when produced by proxied traffic, as observed by passive health checks. Defaults to `[200, 201, 202, 203, 204, 205, 206, 207, 208, 226, 300, 301, 302, 303, 304, 305, 306, 307, 308]`.
	// * `healthchecks.passive.unhealthy.tcp_failures` - (Optional) is a number of TCP failures in proxied traffic to consider a target unhealthy, as observed by passive health checks. Defaults to `0`.
	// * `healthchecks.passive.unhealthy.http_failures` - (Optional) is a number of HTTP failures in proxied traffic (as defined by `healthchecks.passive.unhealthy.http_statuses`) to consider a target unhealthy, as observed by passive health checks. Defaults to `0`.
	// * `healthchecks.passive.unhealthy.timeouts` - (Optional) is a number of timeouts in proxied traffic to consider a target unhealthy, as observed by passive health checks. Defaults to `0`.
	// * `healthchecks.passive.unhealthy.http_statuses` - (Optional) is an array of HTTP statuses which represent unhealthiness when produced by proxied traffic, as observed by passive health checks. Defaults to `[429, 500, 503]`.
	HashOnCookiePath pulumi.StringPtrInput
	// is a header name to take the value from as hash input. Only required when `hashOn` is set to `header`. Default `nil`.
	HashOnHeader pulumi.StringPtrInput
	Healthchecks UpstreamHealthchecksPtrInput
	// The hostname to be used as Host header when proxying requests through Kong.
	HostHeader pulumi.StringPtrInput
	// is a hostname, which must be equal to the host of a Service.
	Name pulumi.StringPtrInput
	// is the number of slots in the load balancer algorithm (10*65536, defaults to 10000).
	Slots pulumi.IntPtrInput
	// A list of strings associated with the Upstream for grouping and filtering.
	Tags pulumi.StringArrayInput
}

The set of arguments for constructing a Upstream resource.

func (UpstreamArgs) ElementType

func (UpstreamArgs) ElementType() reflect.Type

type UpstreamArray

type UpstreamArray []UpstreamInput

func (UpstreamArray) ElementType

func (UpstreamArray) ElementType() reflect.Type

func (UpstreamArray) ToUpstreamArrayOutput

func (i UpstreamArray) ToUpstreamArrayOutput() UpstreamArrayOutput

func (UpstreamArray) ToUpstreamArrayOutputWithContext

func (i UpstreamArray) ToUpstreamArrayOutputWithContext(ctx context.Context) UpstreamArrayOutput

type UpstreamArrayInput

type UpstreamArrayInput interface {
	pulumi.Input

	ToUpstreamArrayOutput() UpstreamArrayOutput
	ToUpstreamArrayOutputWithContext(context.Context) UpstreamArrayOutput
}

UpstreamArrayInput is an input type that accepts UpstreamArray and UpstreamArrayOutput values. You can construct a concrete instance of `UpstreamArrayInput` via:

UpstreamArray{ UpstreamArgs{...} }

type UpstreamArrayOutput

type UpstreamArrayOutput struct{ *pulumi.OutputState }

func (UpstreamArrayOutput) ElementType

func (UpstreamArrayOutput) ElementType() reflect.Type

func (UpstreamArrayOutput) Index

func (UpstreamArrayOutput) ToUpstreamArrayOutput

func (o UpstreamArrayOutput) ToUpstreamArrayOutput() UpstreamArrayOutput

func (UpstreamArrayOutput) ToUpstreamArrayOutputWithContext

func (o UpstreamArrayOutput) ToUpstreamArrayOutputWithContext(ctx context.Context) UpstreamArrayOutput

type UpstreamHealthchecks

type UpstreamHealthchecks struct {
	Active  *UpstreamHealthchecksActive  `pulumi:"active"`
	Passive *UpstreamHealthchecksPassive `pulumi:"passive"`
}

type UpstreamHealthchecksActive

type UpstreamHealthchecksActive struct {
	Concurrency            *int                                 `pulumi:"concurrency"`
	Healthy                *UpstreamHealthchecksActiveHealthy   `pulumi:"healthy"`
	HttpPath               *string                              `pulumi:"httpPath"`
	HttpsSni               *string                              `pulumi:"httpsSni"`
	HttpsVerifyCertificate *bool                                `pulumi:"httpsVerifyCertificate"`
	Timeout                *int                                 `pulumi:"timeout"`
	Type                   *string                              `pulumi:"type"`
	Unhealthy              *UpstreamHealthchecksActiveUnhealthy `pulumi:"unhealthy"`
}

type UpstreamHealthchecksActiveArgs

type UpstreamHealthchecksActiveArgs struct {
	Concurrency            pulumi.IntPtrInput                          `pulumi:"concurrency"`
	Healthy                UpstreamHealthchecksActiveHealthyPtrInput   `pulumi:"healthy"`
	HttpPath               pulumi.StringPtrInput                       `pulumi:"httpPath"`
	HttpsSni               pulumi.StringPtrInput                       `pulumi:"httpsSni"`
	HttpsVerifyCertificate pulumi.BoolPtrInput                         `pulumi:"httpsVerifyCertificate"`
	Timeout                pulumi.IntPtrInput                          `pulumi:"timeout"`
	Type                   pulumi.StringPtrInput                       `pulumi:"type"`
	Unhealthy              UpstreamHealthchecksActiveUnhealthyPtrInput `pulumi:"unhealthy"`
}

func (UpstreamHealthchecksActiveArgs) ElementType

func (UpstreamHealthchecksActiveArgs) ToUpstreamHealthchecksActiveOutput

func (i UpstreamHealthchecksActiveArgs) ToUpstreamHealthchecksActiveOutput() UpstreamHealthchecksActiveOutput

func (UpstreamHealthchecksActiveArgs) ToUpstreamHealthchecksActiveOutputWithContext

func (i UpstreamHealthchecksActiveArgs) ToUpstreamHealthchecksActiveOutputWithContext(ctx context.Context) UpstreamHealthchecksActiveOutput

func (UpstreamHealthchecksActiveArgs) ToUpstreamHealthchecksActivePtrOutput

func (i UpstreamHealthchecksActiveArgs) ToUpstreamHealthchecksActivePtrOutput() UpstreamHealthchecksActivePtrOutput

func (UpstreamHealthchecksActiveArgs) ToUpstreamHealthchecksActivePtrOutputWithContext

func (i UpstreamHealthchecksActiveArgs) ToUpstreamHealthchecksActivePtrOutputWithContext(ctx context.Context) UpstreamHealthchecksActivePtrOutput

type UpstreamHealthchecksActiveHealthy

type UpstreamHealthchecksActiveHealthy struct {
	HttpStatuses []int `pulumi:"httpStatuses"`
	Interval     *int  `pulumi:"interval"`
	Successes    *int  `pulumi:"successes"`
}

type UpstreamHealthchecksActiveHealthyArgs

type UpstreamHealthchecksActiveHealthyArgs struct {
	HttpStatuses pulumi.IntArrayInput `pulumi:"httpStatuses"`
	Interval     pulumi.IntPtrInput   `pulumi:"interval"`
	Successes    pulumi.IntPtrInput   `pulumi:"successes"`
}

func (UpstreamHealthchecksActiveHealthyArgs) ElementType

func (UpstreamHealthchecksActiveHealthyArgs) ToUpstreamHealthchecksActiveHealthyOutput

func (i UpstreamHealthchecksActiveHealthyArgs) ToUpstreamHealthchecksActiveHealthyOutput() UpstreamHealthchecksActiveHealthyOutput

func (UpstreamHealthchecksActiveHealthyArgs) ToUpstreamHealthchecksActiveHealthyOutputWithContext

func (i UpstreamHealthchecksActiveHealthyArgs) ToUpstreamHealthchecksActiveHealthyOutputWithContext(ctx context.Context) UpstreamHealthchecksActiveHealthyOutput

func (UpstreamHealthchecksActiveHealthyArgs) ToUpstreamHealthchecksActiveHealthyPtrOutput

func (i UpstreamHealthchecksActiveHealthyArgs) ToUpstreamHealthchecksActiveHealthyPtrOutput() UpstreamHealthchecksActiveHealthyPtrOutput

func (UpstreamHealthchecksActiveHealthyArgs) ToUpstreamHealthchecksActiveHealthyPtrOutputWithContext

func (i UpstreamHealthchecksActiveHealthyArgs) ToUpstreamHealthchecksActiveHealthyPtrOutputWithContext(ctx context.Context) UpstreamHealthchecksActiveHealthyPtrOutput

type UpstreamHealthchecksActiveHealthyInput

type UpstreamHealthchecksActiveHealthyInput interface {
	pulumi.Input

	ToUpstreamHealthchecksActiveHealthyOutput() UpstreamHealthchecksActiveHealthyOutput
	ToUpstreamHealthchecksActiveHealthyOutputWithContext(context.Context) UpstreamHealthchecksActiveHealthyOutput
}

UpstreamHealthchecksActiveHealthyInput is an input type that accepts UpstreamHealthchecksActiveHealthyArgs and UpstreamHealthchecksActiveHealthyOutput values. You can construct a concrete instance of `UpstreamHealthchecksActiveHealthyInput` via:

UpstreamHealthchecksActiveHealthyArgs{...}

type UpstreamHealthchecksActiveHealthyOutput

type UpstreamHealthchecksActiveHealthyOutput struct{ *pulumi.OutputState }

func (UpstreamHealthchecksActiveHealthyOutput) ElementType

func (UpstreamHealthchecksActiveHealthyOutput) HttpStatuses

func (UpstreamHealthchecksActiveHealthyOutput) Interval

func (UpstreamHealthchecksActiveHealthyOutput) Successes

func (UpstreamHealthchecksActiveHealthyOutput) ToUpstreamHealthchecksActiveHealthyOutput

func (o UpstreamHealthchecksActiveHealthyOutput) ToUpstreamHealthchecksActiveHealthyOutput() UpstreamHealthchecksActiveHealthyOutput

func (UpstreamHealthchecksActiveHealthyOutput) ToUpstreamHealthchecksActiveHealthyOutputWithContext

func (o UpstreamHealthchecksActiveHealthyOutput) ToUpstreamHealthchecksActiveHealthyOutputWithContext(ctx context.Context) UpstreamHealthchecksActiveHealthyOutput

func (UpstreamHealthchecksActiveHealthyOutput) ToUpstreamHealthchecksActiveHealthyPtrOutput

func (o UpstreamHealthchecksActiveHealthyOutput) ToUpstreamHealthchecksActiveHealthyPtrOutput() UpstreamHealthchecksActiveHealthyPtrOutput

func (UpstreamHealthchecksActiveHealthyOutput) ToUpstreamHealthchecksActiveHealthyPtrOutputWithContext

func (o UpstreamHealthchecksActiveHealthyOutput) ToUpstreamHealthchecksActiveHealthyPtrOutputWithContext(ctx context.Context) UpstreamHealthchecksActiveHealthyPtrOutput

type UpstreamHealthchecksActiveHealthyPtrInput

type UpstreamHealthchecksActiveHealthyPtrInput interface {
	pulumi.Input

	ToUpstreamHealthchecksActiveHealthyPtrOutput() UpstreamHealthchecksActiveHealthyPtrOutput
	ToUpstreamHealthchecksActiveHealthyPtrOutputWithContext(context.Context) UpstreamHealthchecksActiveHealthyPtrOutput
}

UpstreamHealthchecksActiveHealthyPtrInput is an input type that accepts UpstreamHealthchecksActiveHealthyArgs, UpstreamHealthchecksActiveHealthyPtr and UpstreamHealthchecksActiveHealthyPtrOutput values. You can construct a concrete instance of `UpstreamHealthchecksActiveHealthyPtrInput` via:

        UpstreamHealthchecksActiveHealthyArgs{...}

or:

        nil

type UpstreamHealthchecksActiveHealthyPtrOutput

type UpstreamHealthchecksActiveHealthyPtrOutput struct{ *pulumi.OutputState }

func (UpstreamHealthchecksActiveHealthyPtrOutput) Elem

func (UpstreamHealthchecksActiveHealthyPtrOutput) ElementType

func (UpstreamHealthchecksActiveHealthyPtrOutput) HttpStatuses

func (UpstreamHealthchecksActiveHealthyPtrOutput) Interval

func (UpstreamHealthchecksActiveHealthyPtrOutput) Successes

func (UpstreamHealthchecksActiveHealthyPtrOutput) ToUpstreamHealthchecksActiveHealthyPtrOutput

func (o UpstreamHealthchecksActiveHealthyPtrOutput) ToUpstreamHealthchecksActiveHealthyPtrOutput() UpstreamHealthchecksActiveHealthyPtrOutput

func (UpstreamHealthchecksActiveHealthyPtrOutput) ToUpstreamHealthchecksActiveHealthyPtrOutputWithContext

func (o UpstreamHealthchecksActiveHealthyPtrOutput) ToUpstreamHealthchecksActiveHealthyPtrOutputWithContext(ctx context.Context) UpstreamHealthchecksActiveHealthyPtrOutput

type UpstreamHealthchecksActiveInput

type UpstreamHealthchecksActiveInput interface {
	pulumi.Input

	ToUpstreamHealthchecksActiveOutput() UpstreamHealthchecksActiveOutput
	ToUpstreamHealthchecksActiveOutputWithContext(context.Context) UpstreamHealthchecksActiveOutput
}

UpstreamHealthchecksActiveInput is an input type that accepts UpstreamHealthchecksActiveArgs and UpstreamHealthchecksActiveOutput values. You can construct a concrete instance of `UpstreamHealthchecksActiveInput` via:

UpstreamHealthchecksActiveArgs{...}

type UpstreamHealthchecksActiveOutput

type UpstreamHealthchecksActiveOutput struct{ *pulumi.OutputState }

func (UpstreamHealthchecksActiveOutput) Concurrency

func (UpstreamHealthchecksActiveOutput) ElementType

func (UpstreamHealthchecksActiveOutput) Healthy

func (UpstreamHealthchecksActiveOutput) HttpPath

func (UpstreamHealthchecksActiveOutput) HttpsSni

func (UpstreamHealthchecksActiveOutput) HttpsVerifyCertificate

func (o UpstreamHealthchecksActiveOutput) HttpsVerifyCertificate() pulumi.BoolPtrOutput

func (UpstreamHealthchecksActiveOutput) Timeout

func (UpstreamHealthchecksActiveOutput) ToUpstreamHealthchecksActiveOutput

func (o UpstreamHealthchecksActiveOutput) ToUpstreamHealthchecksActiveOutput() UpstreamHealthchecksActiveOutput

func (UpstreamHealthchecksActiveOutput) ToUpstreamHealthchecksActiveOutputWithContext

func (o UpstreamHealthchecksActiveOutput) ToUpstreamHealthchecksActiveOutputWithContext(ctx context.Context) UpstreamHealthchecksActiveOutput

func (UpstreamHealthchecksActiveOutput) ToUpstreamHealthchecksActivePtrOutput

func (o UpstreamHealthchecksActiveOutput) ToUpstreamHealthchecksActivePtrOutput() UpstreamHealthchecksActivePtrOutput

func (UpstreamHealthchecksActiveOutput) ToUpstreamHealthchecksActivePtrOutputWithContext

func (o UpstreamHealthchecksActiveOutput) ToUpstreamHealthchecksActivePtrOutputWithContext(ctx context.Context) UpstreamHealthchecksActivePtrOutput

func (UpstreamHealthchecksActiveOutput) Type

func (UpstreamHealthchecksActiveOutput) Unhealthy

type UpstreamHealthchecksActivePtrInput

type UpstreamHealthchecksActivePtrInput interface {
	pulumi.Input

	ToUpstreamHealthchecksActivePtrOutput() UpstreamHealthchecksActivePtrOutput
	ToUpstreamHealthchecksActivePtrOutputWithContext(context.Context) UpstreamHealthchecksActivePtrOutput
}

UpstreamHealthchecksActivePtrInput is an input type that accepts UpstreamHealthchecksActiveArgs, UpstreamHealthchecksActivePtr and UpstreamHealthchecksActivePtrOutput values. You can construct a concrete instance of `UpstreamHealthchecksActivePtrInput` via:

        UpstreamHealthchecksActiveArgs{...}

or:

        nil

type UpstreamHealthchecksActivePtrOutput

type UpstreamHealthchecksActivePtrOutput struct{ *pulumi.OutputState }

func (UpstreamHealthchecksActivePtrOutput) Concurrency

func (UpstreamHealthchecksActivePtrOutput) Elem

func (UpstreamHealthchecksActivePtrOutput) ElementType

func (UpstreamHealthchecksActivePtrOutput) Healthy

func (UpstreamHealthchecksActivePtrOutput) HttpPath

func (UpstreamHealthchecksActivePtrOutput) HttpsSni

func (UpstreamHealthchecksActivePtrOutput) HttpsVerifyCertificate

func (o UpstreamHealthchecksActivePtrOutput) HttpsVerifyCertificate() pulumi.BoolPtrOutput

func (UpstreamHealthchecksActivePtrOutput) Timeout

func (UpstreamHealthchecksActivePtrOutput) ToUpstreamHealthchecksActivePtrOutput

func (o UpstreamHealthchecksActivePtrOutput) ToUpstreamHealthchecksActivePtrOutput() UpstreamHealthchecksActivePtrOutput

func (UpstreamHealthchecksActivePtrOutput) ToUpstreamHealthchecksActivePtrOutputWithContext

func (o UpstreamHealthchecksActivePtrOutput) ToUpstreamHealthchecksActivePtrOutputWithContext(ctx context.Context) UpstreamHealthchecksActivePtrOutput

func (UpstreamHealthchecksActivePtrOutput) Type

func (UpstreamHealthchecksActivePtrOutput) Unhealthy

type UpstreamHealthchecksActiveUnhealthy

type UpstreamHealthchecksActiveUnhealthy struct {
	HttpFailures *int  `pulumi:"httpFailures"`
	HttpStatuses []int `pulumi:"httpStatuses"`
	Interval     *int  `pulumi:"interval"`
	TcpFailures  *int  `pulumi:"tcpFailures"`
	Timeouts     *int  `pulumi:"timeouts"`
}

type UpstreamHealthchecksActiveUnhealthyArgs

type UpstreamHealthchecksActiveUnhealthyArgs struct {
	HttpFailures pulumi.IntPtrInput   `pulumi:"httpFailures"`
	HttpStatuses pulumi.IntArrayInput `pulumi:"httpStatuses"`
	Interval     pulumi.IntPtrInput   `pulumi:"interval"`
	TcpFailures  pulumi.IntPtrInput   `pulumi:"tcpFailures"`
	Timeouts     pulumi.IntPtrInput   `pulumi:"timeouts"`
}

func (UpstreamHealthchecksActiveUnhealthyArgs) ElementType

func (UpstreamHealthchecksActiveUnhealthyArgs) ToUpstreamHealthchecksActiveUnhealthyOutput

func (i UpstreamHealthchecksActiveUnhealthyArgs) ToUpstreamHealthchecksActiveUnhealthyOutput() UpstreamHealthchecksActiveUnhealthyOutput

func (UpstreamHealthchecksActiveUnhealthyArgs) ToUpstreamHealthchecksActiveUnhealthyOutputWithContext

func (i UpstreamHealthchecksActiveUnhealthyArgs) ToUpstreamHealthchecksActiveUnhealthyOutputWithContext(ctx context.Context) UpstreamHealthchecksActiveUnhealthyOutput

func (UpstreamHealthchecksActiveUnhealthyArgs) ToUpstreamHealthchecksActiveUnhealthyPtrOutput

func (i UpstreamHealthchecksActiveUnhealthyArgs) ToUpstreamHealthchecksActiveUnhealthyPtrOutput() UpstreamHealthchecksActiveUnhealthyPtrOutput

func (UpstreamHealthchecksActiveUnhealthyArgs) ToUpstreamHealthchecksActiveUnhealthyPtrOutputWithContext

func (i UpstreamHealthchecksActiveUnhealthyArgs) ToUpstreamHealthchecksActiveUnhealthyPtrOutputWithContext(ctx context.Context) UpstreamHealthchecksActiveUnhealthyPtrOutput

type UpstreamHealthchecksActiveUnhealthyInput

type UpstreamHealthchecksActiveUnhealthyInput interface {
	pulumi.Input

	ToUpstreamHealthchecksActiveUnhealthyOutput() UpstreamHealthchecksActiveUnhealthyOutput
	ToUpstreamHealthchecksActiveUnhealthyOutputWithContext(context.Context) UpstreamHealthchecksActiveUnhealthyOutput
}

UpstreamHealthchecksActiveUnhealthyInput is an input type that accepts UpstreamHealthchecksActiveUnhealthyArgs and UpstreamHealthchecksActiveUnhealthyOutput values. You can construct a concrete instance of `UpstreamHealthchecksActiveUnhealthyInput` via:

UpstreamHealthchecksActiveUnhealthyArgs{...}

type UpstreamHealthchecksActiveUnhealthyOutput

type UpstreamHealthchecksActiveUnhealthyOutput struct{ *pulumi.OutputState }

func (UpstreamHealthchecksActiveUnhealthyOutput) ElementType

func (UpstreamHealthchecksActiveUnhealthyOutput) HttpFailures

func (UpstreamHealthchecksActiveUnhealthyOutput) HttpStatuses

func (UpstreamHealthchecksActiveUnhealthyOutput) Interval

func (UpstreamHealthchecksActiveUnhealthyOutput) TcpFailures

func (UpstreamHealthchecksActiveUnhealthyOutput) Timeouts

func (UpstreamHealthchecksActiveUnhealthyOutput) ToUpstreamHealthchecksActiveUnhealthyOutput

func (o UpstreamHealthchecksActiveUnhealthyOutput) ToUpstreamHealthchecksActiveUnhealthyOutput() UpstreamHealthchecksActiveUnhealthyOutput

func (UpstreamHealthchecksActiveUnhealthyOutput) ToUpstreamHealthchecksActiveUnhealthyOutputWithContext

func (o UpstreamHealthchecksActiveUnhealthyOutput) ToUpstreamHealthchecksActiveUnhealthyOutputWithContext(ctx context.Context) UpstreamHealthchecksActiveUnhealthyOutput

func (UpstreamHealthchecksActiveUnhealthyOutput) ToUpstreamHealthchecksActiveUnhealthyPtrOutput

func (o UpstreamHealthchecksActiveUnhealthyOutput) ToUpstreamHealthchecksActiveUnhealthyPtrOutput() UpstreamHealthchecksActiveUnhealthyPtrOutput

func (UpstreamHealthchecksActiveUnhealthyOutput) ToUpstreamHealthchecksActiveUnhealthyPtrOutputWithContext

func (o UpstreamHealthchecksActiveUnhealthyOutput) ToUpstreamHealthchecksActiveUnhealthyPtrOutputWithContext(ctx context.Context) UpstreamHealthchecksActiveUnhealthyPtrOutput

type UpstreamHealthchecksActiveUnhealthyPtrInput

type UpstreamHealthchecksActiveUnhealthyPtrInput interface {
	pulumi.Input

	ToUpstreamHealthchecksActiveUnhealthyPtrOutput() UpstreamHealthchecksActiveUnhealthyPtrOutput
	ToUpstreamHealthchecksActiveUnhealthyPtrOutputWithContext(context.Context) UpstreamHealthchecksActiveUnhealthyPtrOutput
}

UpstreamHealthchecksActiveUnhealthyPtrInput is an input type that accepts UpstreamHealthchecksActiveUnhealthyArgs, UpstreamHealthchecksActiveUnhealthyPtr and UpstreamHealthchecksActiveUnhealthyPtrOutput values. You can construct a concrete instance of `UpstreamHealthchecksActiveUnhealthyPtrInput` via:

        UpstreamHealthchecksActiveUnhealthyArgs{...}

or:

        nil

type UpstreamHealthchecksActiveUnhealthyPtrOutput

type UpstreamHealthchecksActiveUnhealthyPtrOutput struct{ *pulumi.OutputState }

func (UpstreamHealthchecksActiveUnhealthyPtrOutput) Elem

func (UpstreamHealthchecksActiveUnhealthyPtrOutput) ElementType

func (UpstreamHealthchecksActiveUnhealthyPtrOutput) HttpFailures

func (UpstreamHealthchecksActiveUnhealthyPtrOutput) HttpStatuses

func (UpstreamHealthchecksActiveUnhealthyPtrOutput) Interval

func (UpstreamHealthchecksActiveUnhealthyPtrOutput) TcpFailures

func (UpstreamHealthchecksActiveUnhealthyPtrOutput) Timeouts

func (UpstreamHealthchecksActiveUnhealthyPtrOutput) ToUpstreamHealthchecksActiveUnhealthyPtrOutput

func (o UpstreamHealthchecksActiveUnhealthyPtrOutput) ToUpstreamHealthchecksActiveUnhealthyPtrOutput() UpstreamHealthchecksActiveUnhealthyPtrOutput

func (UpstreamHealthchecksActiveUnhealthyPtrOutput) ToUpstreamHealthchecksActiveUnhealthyPtrOutputWithContext

func (o UpstreamHealthchecksActiveUnhealthyPtrOutput) ToUpstreamHealthchecksActiveUnhealthyPtrOutputWithContext(ctx context.Context) UpstreamHealthchecksActiveUnhealthyPtrOutput

type UpstreamHealthchecksArgs

type UpstreamHealthchecksArgs struct {
	Active  UpstreamHealthchecksActivePtrInput  `pulumi:"active"`
	Passive UpstreamHealthchecksPassivePtrInput `pulumi:"passive"`
}

func (UpstreamHealthchecksArgs) ElementType

func (UpstreamHealthchecksArgs) ElementType() reflect.Type

func (UpstreamHealthchecksArgs) ToUpstreamHealthchecksOutput

func (i UpstreamHealthchecksArgs) ToUpstreamHealthchecksOutput() UpstreamHealthchecksOutput

func (UpstreamHealthchecksArgs) ToUpstreamHealthchecksOutputWithContext

func (i UpstreamHealthchecksArgs) ToUpstreamHealthchecksOutputWithContext(ctx context.Context) UpstreamHealthchecksOutput

func (UpstreamHealthchecksArgs) ToUpstreamHealthchecksPtrOutput

func (i UpstreamHealthchecksArgs) ToUpstreamHealthchecksPtrOutput() UpstreamHealthchecksPtrOutput

func (UpstreamHealthchecksArgs) ToUpstreamHealthchecksPtrOutputWithContext

func (i UpstreamHealthchecksArgs) ToUpstreamHealthchecksPtrOutputWithContext(ctx context.Context) UpstreamHealthchecksPtrOutput

type UpstreamHealthchecksInput

type UpstreamHealthchecksInput interface {
	pulumi.Input

	ToUpstreamHealthchecksOutput() UpstreamHealthchecksOutput
	ToUpstreamHealthchecksOutputWithContext(context.Context) UpstreamHealthchecksOutput
}

UpstreamHealthchecksInput is an input type that accepts UpstreamHealthchecksArgs and UpstreamHealthchecksOutput values. You can construct a concrete instance of `UpstreamHealthchecksInput` via:

UpstreamHealthchecksArgs{...}

type UpstreamHealthchecksOutput

type UpstreamHealthchecksOutput struct{ *pulumi.OutputState }

func (UpstreamHealthchecksOutput) Active

func (UpstreamHealthchecksOutput) ElementType

func (UpstreamHealthchecksOutput) ElementType() reflect.Type

func (UpstreamHealthchecksOutput) Passive

func (UpstreamHealthchecksOutput) ToUpstreamHealthchecksOutput

func (o UpstreamHealthchecksOutput) ToUpstreamHealthchecksOutput() UpstreamHealthchecksOutput

func (UpstreamHealthchecksOutput) ToUpstreamHealthchecksOutputWithContext

func (o UpstreamHealthchecksOutput) ToUpstreamHealthchecksOutputWithContext(ctx context.Context) UpstreamHealthchecksOutput

func (UpstreamHealthchecksOutput) ToUpstreamHealthchecksPtrOutput

func (o UpstreamHealthchecksOutput) ToUpstreamHealthchecksPtrOutput() UpstreamHealthchecksPtrOutput

func (UpstreamHealthchecksOutput) ToUpstreamHealthchecksPtrOutputWithContext

func (o UpstreamHealthchecksOutput) ToUpstreamHealthchecksPtrOutputWithContext(ctx context.Context) UpstreamHealthchecksPtrOutput

type UpstreamHealthchecksPassive

type UpstreamHealthchecksPassive struct {
	Healthy   *UpstreamHealthchecksPassiveHealthy   `pulumi:"healthy"`
	Type      *string                               `pulumi:"type"`
	Unhealthy *UpstreamHealthchecksPassiveUnhealthy `pulumi:"unhealthy"`
}

type UpstreamHealthchecksPassiveArgs

type UpstreamHealthchecksPassiveArgs struct {
	Healthy   UpstreamHealthchecksPassiveHealthyPtrInput   `pulumi:"healthy"`
	Type      pulumi.StringPtrInput                        `pulumi:"type"`
	Unhealthy UpstreamHealthchecksPassiveUnhealthyPtrInput `pulumi:"unhealthy"`
}

func (UpstreamHealthchecksPassiveArgs) ElementType

func (UpstreamHealthchecksPassiveArgs) ToUpstreamHealthchecksPassiveOutput

func (i UpstreamHealthchecksPassiveArgs) ToUpstreamHealthchecksPassiveOutput() UpstreamHealthchecksPassiveOutput

func (UpstreamHealthchecksPassiveArgs) ToUpstreamHealthchecksPassiveOutputWithContext

func (i UpstreamHealthchecksPassiveArgs) ToUpstreamHealthchecksPassiveOutputWithContext(ctx context.Context) UpstreamHealthchecksPassiveOutput

func (UpstreamHealthchecksPassiveArgs) ToUpstreamHealthchecksPassivePtrOutput

func (i UpstreamHealthchecksPassiveArgs) ToUpstreamHealthchecksPassivePtrOutput() UpstreamHealthchecksPassivePtrOutput

func (UpstreamHealthchecksPassiveArgs) ToUpstreamHealthchecksPassivePtrOutputWithContext

func (i UpstreamHealthchecksPassiveArgs) ToUpstreamHealthchecksPassivePtrOutputWithContext(ctx context.Context) UpstreamHealthchecksPassivePtrOutput

type UpstreamHealthchecksPassiveHealthy

type UpstreamHealthchecksPassiveHealthy struct {
	HttpStatuses []int `pulumi:"httpStatuses"`
	Successes    *int  `pulumi:"successes"`
}

type UpstreamHealthchecksPassiveHealthyArgs

type UpstreamHealthchecksPassiveHealthyArgs struct {
	HttpStatuses pulumi.IntArrayInput `pulumi:"httpStatuses"`
	Successes    pulumi.IntPtrInput   `pulumi:"successes"`
}

func (UpstreamHealthchecksPassiveHealthyArgs) ElementType

func (UpstreamHealthchecksPassiveHealthyArgs) ToUpstreamHealthchecksPassiveHealthyOutput

func (i UpstreamHealthchecksPassiveHealthyArgs) ToUpstreamHealthchecksPassiveHealthyOutput() UpstreamHealthchecksPassiveHealthyOutput

func (UpstreamHealthchecksPassiveHealthyArgs) ToUpstreamHealthchecksPassiveHealthyOutputWithContext

func (i UpstreamHealthchecksPassiveHealthyArgs) ToUpstreamHealthchecksPassiveHealthyOutputWithContext(ctx context.Context) UpstreamHealthchecksPassiveHealthyOutput

func (UpstreamHealthchecksPassiveHealthyArgs) ToUpstreamHealthchecksPassiveHealthyPtrOutput

func (i UpstreamHealthchecksPassiveHealthyArgs) ToUpstreamHealthchecksPassiveHealthyPtrOutput() UpstreamHealthchecksPassiveHealthyPtrOutput

func (UpstreamHealthchecksPassiveHealthyArgs) ToUpstreamHealthchecksPassiveHealthyPtrOutputWithContext

func (i UpstreamHealthchecksPassiveHealthyArgs) ToUpstreamHealthchecksPassiveHealthyPtrOutputWithContext(ctx context.Context) UpstreamHealthchecksPassiveHealthyPtrOutput

type UpstreamHealthchecksPassiveHealthyInput

type UpstreamHealthchecksPassiveHealthyInput interface {
	pulumi.Input

	ToUpstreamHealthchecksPassiveHealthyOutput() UpstreamHealthchecksPassiveHealthyOutput
	ToUpstreamHealthchecksPassiveHealthyOutputWithContext(context.Context) UpstreamHealthchecksPassiveHealthyOutput
}

UpstreamHealthchecksPassiveHealthyInput is an input type that accepts UpstreamHealthchecksPassiveHealthyArgs and UpstreamHealthchecksPassiveHealthyOutput values. You can construct a concrete instance of `UpstreamHealthchecksPassiveHealthyInput` via:

UpstreamHealthchecksPassiveHealthyArgs{...}

type UpstreamHealthchecksPassiveHealthyOutput

type UpstreamHealthchecksPassiveHealthyOutput struct{ *pulumi.OutputState }

func (UpstreamHealthchecksPassiveHealthyOutput) ElementType

func (UpstreamHealthchecksPassiveHealthyOutput) HttpStatuses

func (UpstreamHealthchecksPassiveHealthyOutput) Successes

func (UpstreamHealthchecksPassiveHealthyOutput) ToUpstreamHealthchecksPassiveHealthyOutput

func (o UpstreamHealthchecksPassiveHealthyOutput) ToUpstreamHealthchecksPassiveHealthyOutput() UpstreamHealthchecksPassiveHealthyOutput

func (UpstreamHealthchecksPassiveHealthyOutput) ToUpstreamHealthchecksPassiveHealthyOutputWithContext

func (o UpstreamHealthchecksPassiveHealthyOutput) ToUpstreamHealthchecksPassiveHealthyOutputWithContext(ctx context.Context) UpstreamHealthchecksPassiveHealthyOutput

func (UpstreamHealthchecksPassiveHealthyOutput) ToUpstreamHealthchecksPassiveHealthyPtrOutput

func (o UpstreamHealthchecksPassiveHealthyOutput) ToUpstreamHealthchecksPassiveHealthyPtrOutput() UpstreamHealthchecksPassiveHealthyPtrOutput

func (UpstreamHealthchecksPassiveHealthyOutput) ToUpstreamHealthchecksPassiveHealthyPtrOutputWithContext

func (o UpstreamHealthchecksPassiveHealthyOutput) ToUpstreamHealthchecksPassiveHealthyPtrOutputWithContext(ctx context.Context) UpstreamHealthchecksPassiveHealthyPtrOutput

type UpstreamHealthchecksPassiveHealthyPtrInput

type UpstreamHealthchecksPassiveHealthyPtrInput interface {
	pulumi.Input

	ToUpstreamHealthchecksPassiveHealthyPtrOutput() UpstreamHealthchecksPassiveHealthyPtrOutput
	ToUpstreamHealthchecksPassiveHealthyPtrOutputWithContext(context.Context) UpstreamHealthchecksPassiveHealthyPtrOutput
}

UpstreamHealthchecksPassiveHealthyPtrInput is an input type that accepts UpstreamHealthchecksPassiveHealthyArgs, UpstreamHealthchecksPassiveHealthyPtr and UpstreamHealthchecksPassiveHealthyPtrOutput values. You can construct a concrete instance of `UpstreamHealthchecksPassiveHealthyPtrInput` via:

        UpstreamHealthchecksPassiveHealthyArgs{...}

or:

        nil

type UpstreamHealthchecksPassiveHealthyPtrOutput

type UpstreamHealthchecksPassiveHealthyPtrOutput struct{ *pulumi.OutputState }

func (UpstreamHealthchecksPassiveHealthyPtrOutput) Elem

func (UpstreamHealthchecksPassiveHealthyPtrOutput) ElementType

func (UpstreamHealthchecksPassiveHealthyPtrOutput) HttpStatuses

func (UpstreamHealthchecksPassiveHealthyPtrOutput) Successes

func (UpstreamHealthchecksPassiveHealthyPtrOutput) ToUpstreamHealthchecksPassiveHealthyPtrOutput

func (o UpstreamHealthchecksPassiveHealthyPtrOutput) ToUpstreamHealthchecksPassiveHealthyPtrOutput() UpstreamHealthchecksPassiveHealthyPtrOutput

func (UpstreamHealthchecksPassiveHealthyPtrOutput) ToUpstreamHealthchecksPassiveHealthyPtrOutputWithContext

func (o UpstreamHealthchecksPassiveHealthyPtrOutput) ToUpstreamHealthchecksPassiveHealthyPtrOutputWithContext(ctx context.Context) UpstreamHealthchecksPassiveHealthyPtrOutput

type UpstreamHealthchecksPassiveInput

type UpstreamHealthchecksPassiveInput interface {
	pulumi.Input

	ToUpstreamHealthchecksPassiveOutput() UpstreamHealthchecksPassiveOutput
	ToUpstreamHealthchecksPassiveOutputWithContext(context.Context) UpstreamHealthchecksPassiveOutput
}

UpstreamHealthchecksPassiveInput is an input type that accepts UpstreamHealthchecksPassiveArgs and UpstreamHealthchecksPassiveOutput values. You can construct a concrete instance of `UpstreamHealthchecksPassiveInput` via:

UpstreamHealthchecksPassiveArgs{...}

type UpstreamHealthchecksPassiveOutput

type UpstreamHealthchecksPassiveOutput struct{ *pulumi.OutputState }

func (UpstreamHealthchecksPassiveOutput) ElementType

func (UpstreamHealthchecksPassiveOutput) Healthy

func (UpstreamHealthchecksPassiveOutput) ToUpstreamHealthchecksPassiveOutput

func (o UpstreamHealthchecksPassiveOutput) ToUpstreamHealthchecksPassiveOutput() UpstreamHealthchecksPassiveOutput

func (UpstreamHealthchecksPassiveOutput) ToUpstreamHealthchecksPassiveOutputWithContext

func (o UpstreamHealthchecksPassiveOutput) ToUpstreamHealthchecksPassiveOutputWithContext(ctx context.Context) UpstreamHealthchecksPassiveOutput

func (UpstreamHealthchecksPassiveOutput) ToUpstreamHealthchecksPassivePtrOutput

func (o UpstreamHealthchecksPassiveOutput) ToUpstreamHealthchecksPassivePtrOutput() UpstreamHealthchecksPassivePtrOutput

func (UpstreamHealthchecksPassiveOutput) ToUpstreamHealthchecksPassivePtrOutputWithContext

func (o UpstreamHealthchecksPassiveOutput) ToUpstreamHealthchecksPassivePtrOutputWithContext(ctx context.Context) UpstreamHealthchecksPassivePtrOutput

func (UpstreamHealthchecksPassiveOutput) Type

func (UpstreamHealthchecksPassiveOutput) Unhealthy

type UpstreamHealthchecksPassivePtrInput

type UpstreamHealthchecksPassivePtrInput interface {
	pulumi.Input

	ToUpstreamHealthchecksPassivePtrOutput() UpstreamHealthchecksPassivePtrOutput
	ToUpstreamHealthchecksPassivePtrOutputWithContext(context.Context) UpstreamHealthchecksPassivePtrOutput
}

UpstreamHealthchecksPassivePtrInput is an input type that accepts UpstreamHealthchecksPassiveArgs, UpstreamHealthchecksPassivePtr and UpstreamHealthchecksPassivePtrOutput values. You can construct a concrete instance of `UpstreamHealthchecksPassivePtrInput` via:

        UpstreamHealthchecksPassiveArgs{...}

or:

        nil

type UpstreamHealthchecksPassivePtrOutput

type UpstreamHealthchecksPassivePtrOutput struct{ *pulumi.OutputState }

func (UpstreamHealthchecksPassivePtrOutput) Elem

func (UpstreamHealthchecksPassivePtrOutput) ElementType

func (UpstreamHealthchecksPassivePtrOutput) Healthy

func (UpstreamHealthchecksPassivePtrOutput) ToUpstreamHealthchecksPassivePtrOutput

func (o UpstreamHealthchecksPassivePtrOutput) ToUpstreamHealthchecksPassivePtrOutput() UpstreamHealthchecksPassivePtrOutput

func (UpstreamHealthchecksPassivePtrOutput) ToUpstreamHealthchecksPassivePtrOutputWithContext

func (o UpstreamHealthchecksPassivePtrOutput) ToUpstreamHealthchecksPassivePtrOutputWithContext(ctx context.Context) UpstreamHealthchecksPassivePtrOutput

func (UpstreamHealthchecksPassivePtrOutput) Type

func (UpstreamHealthchecksPassivePtrOutput) Unhealthy

type UpstreamHealthchecksPassiveUnhealthy

type UpstreamHealthchecksPassiveUnhealthy struct {
	HttpFailures *int  `pulumi:"httpFailures"`
	HttpStatuses []int `pulumi:"httpStatuses"`
	TcpFailures  *int  `pulumi:"tcpFailures"`
	Timeouts     *int  `pulumi:"timeouts"`
}

type UpstreamHealthchecksPassiveUnhealthyArgs

type UpstreamHealthchecksPassiveUnhealthyArgs struct {
	HttpFailures pulumi.IntPtrInput   `pulumi:"httpFailures"`
	HttpStatuses pulumi.IntArrayInput `pulumi:"httpStatuses"`
	TcpFailures  pulumi.IntPtrInput   `pulumi:"tcpFailures"`
	Timeouts     pulumi.IntPtrInput   `pulumi:"timeouts"`
}

func (UpstreamHealthchecksPassiveUnhealthyArgs) ElementType

func (UpstreamHealthchecksPassiveUnhealthyArgs) ToUpstreamHealthchecksPassiveUnhealthyOutput

func (i UpstreamHealthchecksPassiveUnhealthyArgs) ToUpstreamHealthchecksPassiveUnhealthyOutput() UpstreamHealthchecksPassiveUnhealthyOutput

func (UpstreamHealthchecksPassiveUnhealthyArgs) ToUpstreamHealthchecksPassiveUnhealthyOutputWithContext

func (i UpstreamHealthchecksPassiveUnhealthyArgs) ToUpstreamHealthchecksPassiveUnhealthyOutputWithContext(ctx context.Context) UpstreamHealthchecksPassiveUnhealthyOutput

func (UpstreamHealthchecksPassiveUnhealthyArgs) ToUpstreamHealthchecksPassiveUnhealthyPtrOutput

func (i UpstreamHealthchecksPassiveUnhealthyArgs) ToUpstreamHealthchecksPassiveUnhealthyPtrOutput() UpstreamHealthchecksPassiveUnhealthyPtrOutput

func (UpstreamHealthchecksPassiveUnhealthyArgs) ToUpstreamHealthchecksPassiveUnhealthyPtrOutputWithContext

func (i UpstreamHealthchecksPassiveUnhealthyArgs) ToUpstreamHealthchecksPassiveUnhealthyPtrOutputWithContext(ctx context.Context) UpstreamHealthchecksPassiveUnhealthyPtrOutput

type UpstreamHealthchecksPassiveUnhealthyInput

type UpstreamHealthchecksPassiveUnhealthyInput interface {
	pulumi.Input

	ToUpstreamHealthchecksPassiveUnhealthyOutput() UpstreamHealthchecksPassiveUnhealthyOutput
	ToUpstreamHealthchecksPassiveUnhealthyOutputWithContext(context.Context) UpstreamHealthchecksPassiveUnhealthyOutput
}

UpstreamHealthchecksPassiveUnhealthyInput is an input type that accepts UpstreamHealthchecksPassiveUnhealthyArgs and UpstreamHealthchecksPassiveUnhealthyOutput values. You can construct a concrete instance of `UpstreamHealthchecksPassiveUnhealthyInput` via:

UpstreamHealthchecksPassiveUnhealthyArgs{...}

type UpstreamHealthchecksPassiveUnhealthyOutput

type UpstreamHealthchecksPassiveUnhealthyOutput struct{ *pulumi.OutputState }

func (UpstreamHealthchecksPassiveUnhealthyOutput) ElementType

func (UpstreamHealthchecksPassiveUnhealthyOutput) HttpFailures

func (UpstreamHealthchecksPassiveUnhealthyOutput) HttpStatuses

func (UpstreamHealthchecksPassiveUnhealthyOutput) TcpFailures

func (UpstreamHealthchecksPassiveUnhealthyOutput) Timeouts

func (UpstreamHealthchecksPassiveUnhealthyOutput) ToUpstreamHealthchecksPassiveUnhealthyOutput

func (o UpstreamHealthchecksPassiveUnhealthyOutput) ToUpstreamHealthchecksPassiveUnhealthyOutput() UpstreamHealthchecksPassiveUnhealthyOutput

func (UpstreamHealthchecksPassiveUnhealthyOutput) ToUpstreamHealthchecksPassiveUnhealthyOutputWithContext

func (o UpstreamHealthchecksPassiveUnhealthyOutput) ToUpstreamHealthchecksPassiveUnhealthyOutputWithContext(ctx context.Context) UpstreamHealthchecksPassiveUnhealthyOutput

func (UpstreamHealthchecksPassiveUnhealthyOutput) ToUpstreamHealthchecksPassiveUnhealthyPtrOutput

func (o UpstreamHealthchecksPassiveUnhealthyOutput) ToUpstreamHealthchecksPassiveUnhealthyPtrOutput() UpstreamHealthchecksPassiveUnhealthyPtrOutput

func (UpstreamHealthchecksPassiveUnhealthyOutput) ToUpstreamHealthchecksPassiveUnhealthyPtrOutputWithContext

func (o UpstreamHealthchecksPassiveUnhealthyOutput) ToUpstreamHealthchecksPassiveUnhealthyPtrOutputWithContext(ctx context.Context) UpstreamHealthchecksPassiveUnhealthyPtrOutput

type UpstreamHealthchecksPassiveUnhealthyPtrInput

type UpstreamHealthchecksPassiveUnhealthyPtrInput interface {
	pulumi.Input

	ToUpstreamHealthchecksPassiveUnhealthyPtrOutput() UpstreamHealthchecksPassiveUnhealthyPtrOutput
	ToUpstreamHealthchecksPassiveUnhealthyPtrOutputWithContext(context.Context) UpstreamHealthchecksPassiveUnhealthyPtrOutput
}

UpstreamHealthchecksPassiveUnhealthyPtrInput is an input type that accepts UpstreamHealthchecksPassiveUnhealthyArgs, UpstreamHealthchecksPassiveUnhealthyPtr and UpstreamHealthchecksPassiveUnhealthyPtrOutput values. You can construct a concrete instance of `UpstreamHealthchecksPassiveUnhealthyPtrInput` via:

        UpstreamHealthchecksPassiveUnhealthyArgs{...}

or:

        nil

type UpstreamHealthchecksPassiveUnhealthyPtrOutput

type UpstreamHealthchecksPassiveUnhealthyPtrOutput struct{ *pulumi.OutputState }

func (UpstreamHealthchecksPassiveUnhealthyPtrOutput) Elem

func (UpstreamHealthchecksPassiveUnhealthyPtrOutput) ElementType

func (UpstreamHealthchecksPassiveUnhealthyPtrOutput) HttpFailures

func (UpstreamHealthchecksPassiveUnhealthyPtrOutput) HttpStatuses

func (UpstreamHealthchecksPassiveUnhealthyPtrOutput) TcpFailures

func (UpstreamHealthchecksPassiveUnhealthyPtrOutput) Timeouts

func (UpstreamHealthchecksPassiveUnhealthyPtrOutput) ToUpstreamHealthchecksPassiveUnhealthyPtrOutput

func (o UpstreamHealthchecksPassiveUnhealthyPtrOutput) ToUpstreamHealthchecksPassiveUnhealthyPtrOutput() UpstreamHealthchecksPassiveUnhealthyPtrOutput

func (UpstreamHealthchecksPassiveUnhealthyPtrOutput) ToUpstreamHealthchecksPassiveUnhealthyPtrOutputWithContext

func (o UpstreamHealthchecksPassiveUnhealthyPtrOutput) ToUpstreamHealthchecksPassiveUnhealthyPtrOutputWithContext(ctx context.Context) UpstreamHealthchecksPassiveUnhealthyPtrOutput

type UpstreamHealthchecksPtrInput

type UpstreamHealthchecksPtrInput interface {
	pulumi.Input

	ToUpstreamHealthchecksPtrOutput() UpstreamHealthchecksPtrOutput
	ToUpstreamHealthchecksPtrOutputWithContext(context.Context) UpstreamHealthchecksPtrOutput
}

UpstreamHealthchecksPtrInput is an input type that accepts UpstreamHealthchecksArgs, UpstreamHealthchecksPtr and UpstreamHealthchecksPtrOutput values. You can construct a concrete instance of `UpstreamHealthchecksPtrInput` via:

        UpstreamHealthchecksArgs{...}

or:

        nil

type UpstreamHealthchecksPtrOutput

type UpstreamHealthchecksPtrOutput struct{ *pulumi.OutputState }

func (UpstreamHealthchecksPtrOutput) Active

func (UpstreamHealthchecksPtrOutput) Elem

func (UpstreamHealthchecksPtrOutput) ElementType

func (UpstreamHealthchecksPtrOutput) Passive

func (UpstreamHealthchecksPtrOutput) ToUpstreamHealthchecksPtrOutput

func (o UpstreamHealthchecksPtrOutput) ToUpstreamHealthchecksPtrOutput() UpstreamHealthchecksPtrOutput

func (UpstreamHealthchecksPtrOutput) ToUpstreamHealthchecksPtrOutputWithContext

func (o UpstreamHealthchecksPtrOutput) ToUpstreamHealthchecksPtrOutputWithContext(ctx context.Context) UpstreamHealthchecksPtrOutput

type UpstreamInput

type UpstreamInput interface {
	pulumi.Input

	ToUpstreamOutput() UpstreamOutput
	ToUpstreamOutputWithContext(ctx context.Context) UpstreamOutput
}

type UpstreamMap

type UpstreamMap map[string]UpstreamInput

func (UpstreamMap) ElementType

func (UpstreamMap) ElementType() reflect.Type

func (UpstreamMap) ToUpstreamMapOutput

func (i UpstreamMap) ToUpstreamMapOutput() UpstreamMapOutput

func (UpstreamMap) ToUpstreamMapOutputWithContext

func (i UpstreamMap) ToUpstreamMapOutputWithContext(ctx context.Context) UpstreamMapOutput

type UpstreamMapInput

type UpstreamMapInput interface {
	pulumi.Input

	ToUpstreamMapOutput() UpstreamMapOutput
	ToUpstreamMapOutputWithContext(context.Context) UpstreamMapOutput
}

UpstreamMapInput is an input type that accepts UpstreamMap and UpstreamMapOutput values. You can construct a concrete instance of `UpstreamMapInput` via:

UpstreamMap{ "key": UpstreamArgs{...} }

type UpstreamMapOutput

type UpstreamMapOutput struct{ *pulumi.OutputState }

func (UpstreamMapOutput) ElementType

func (UpstreamMapOutput) ElementType() reflect.Type

func (UpstreamMapOutput) MapIndex

func (UpstreamMapOutput) ToUpstreamMapOutput

func (o UpstreamMapOutput) ToUpstreamMapOutput() UpstreamMapOutput

func (UpstreamMapOutput) ToUpstreamMapOutputWithContext

func (o UpstreamMapOutput) ToUpstreamMapOutputWithContext(ctx context.Context) UpstreamMapOutput

type UpstreamOutput

type UpstreamOutput struct{ *pulumi.OutputState }

func (UpstreamOutput) ClientCertificateId added in v4.5.1

func (o UpstreamOutput) ClientCertificateId() pulumi.StringPtrOutput

The ID of the client certificate to use (from certificate resource) while TLS handshaking to the upstream server.

func (UpstreamOutput) ElementType

func (UpstreamOutput) ElementType() reflect.Type

func (UpstreamOutput) HashFallback added in v4.5.1

func (o UpstreamOutput) HashFallback() pulumi.StringPtrOutput

is a hashing input type if the primary `hashOn` does not return a hash (eg. header is missing, or no consumer identified). One of: `none`, `consumer`, `ip`, `header`, or `cookie`. Not available if `hashOn` is set to `cookie`. Defaults to `none`.

func (UpstreamOutput) HashFallbackHeader added in v4.5.1

func (o UpstreamOutput) HashFallbackHeader() pulumi.StringPtrOutput

is a header name to take the value from as hash input. Only required when `hashFallback` is set to `header`. Default `nil`.

func (UpstreamOutput) HashOn added in v4.5.1

is a hashing input type: ` none `(resulting in a weighted*round*robin scheme with no hashing), `consumer`, `ip`, `header`, or `cookie`. Defaults to `none`.

func (UpstreamOutput) HashOnCookie added in v4.5.1

func (o UpstreamOutput) HashOnCookie() pulumi.StringPtrOutput

is a cookie name to take the value from as hash input. Only required when `hashOn` or `hashFallback` is set to `cookie`. If the specified cookie is not in the request, Kong will generate a value and set the cookie in the response. Default `nil`.

func (UpstreamOutput) HashOnCookiePath added in v4.5.1

func (o UpstreamOutput) HashOnCookiePath() pulumi.StringPtrOutput

is a cookie path to set in the response headers. Only required when `hashOn` or `hashFallback` is set to `cookie`. Defaults to `/`. * `healthchecks.active.type` - (Optional) is a active health check type. HTTP or HTTPS, or just attempt a TCP connection. Possible values are `tcp`, `http` or `https`. Defaults to `http`. * `healthchecks.active.timeout` - (Optional) is a socket timeout for active health checks (in seconds). Defaults to `1`. * `healthchecks.active.concurrency` - (Optional) is a number of targets to check concurrently in active health checks. Defaults to `10`. * `healthchecks.active.http_path` - (Optional) is a path to use in GET HTTP request to run as a probe on active health checks. Defaults to `/`. * `healthchecks.active.https_verify_certificate` - (Optional) check the validity of the SSL certificate of the remote host when performing active health checks using HTTPS. Defaults to `true`. * `healthchecks.active.https_sni` - (Optional) is the hostname to use as an SNI (Server Name Identification) when performing active health checks using HTTPS. This is particularly useful when Targets are configured using IPs, so that the target host’s certificate can be verified with the proper SNI. Default `nil`. * `healthchecks.active.healthy.interval` - (Optional) is an interval between active health checks for healthy targets (in seconds). A value of zero indicates that active probes for healthy targets should not be performed. Defaults to `0`. * `healthchecks.active.healthy.successes` - (Optional) is a number of successes in active probes (as defined by `healthchecks.active.healthy.http_statuses`) to consider a target healthy. Defaults to `0`. * `healthchecks.active.healthy.http_statuses` - (Optional) is an array of HTTP statuses to consider a success, indicating healthiness, when returned by a probe in active health checks. Defaults to `[200, 302]`. * `healthchecks.active.unhealthy.interval` - (Optional) is an interval between active health checks for unhealthy targets (in seconds). A value of zero indicates that active probes for unhealthy targets should not be performed. Defaults to `0`. * `healthchecks.active.unhealthy.tcp_failures` - (Optional) is a number of TCP failures in active probes to consider a target unhealthy. Defaults to `0`. * `healthchecks.active.unhealthy.http_failures` - (Optional) is a number of HTTP failures in active probes (as defined by `healthchecks.active.unhealthy.http_statuses`) to consider a target unhealthy. Defaults to `0`. * `healthchecks.active.unhealthy.timeouts` - (Optional) is a number of timeouts in active probes to consider a target unhealthy. Defaults to `0`. * `healthchecks.active.unhealthy.http_statuses` - (Optional) is an array of HTTP statuses to consider a failure, indicating unhealthiness, when returned by a probe in active health checks. Defaults to `[429, 404, 500, 501, 502, 503, 504, 505]`. * `healthchecks.passive.type` - (Optional) is a passive health check type. Interpreting HTTP/HTTPS statuses, or just check for TCP connection success. Possible values are `tcp`, `http` or `https` (in passive checks, `http` and `https` options are equivalent.). Defaults to `http`. * `healthchecks.passive.healthy.successes` - (Optional) is a Number of successes in proxied traffic (as defined by `healthchecks.passive.healthy.http_statuses`) to consider a target healthy, as observed by passive health checks. Defaults to `0`. * `healthchecks.passive.healthy.http_statuses` - (Optional) is an array of HTTP statuses which represent healthiness when produced by proxied traffic, as observed by passive health checks. Defaults to `[200, 201, 202, 203, 204, 205, 206, 207, 208, 226, 300, 301, 302, 303, 304, 305, 306, 307, 308]`. * `healthchecks.passive.unhealthy.tcp_failures` - (Optional) is a number of TCP failures in proxied traffic to consider a target unhealthy, as observed by passive health checks. Defaults to `0`. * `healthchecks.passive.unhealthy.http_failures` - (Optional) is a number of HTTP failures in proxied traffic (as defined by `healthchecks.passive.unhealthy.http_statuses`) to consider a target unhealthy, as observed by passive health checks. Defaults to `0`. * `healthchecks.passive.unhealthy.timeouts` - (Optional) is a number of timeouts in proxied traffic to consider a target unhealthy, as observed by passive health checks. Defaults to `0`. * `healthchecks.passive.unhealthy.http_statuses` - (Optional) is an array of HTTP statuses which represent unhealthiness when produced by proxied traffic, as observed by passive health checks. Defaults to `[429, 500, 503]`.

func (UpstreamOutput) HashOnHeader added in v4.5.1

func (o UpstreamOutput) HashOnHeader() pulumi.StringPtrOutput

is a header name to take the value from as hash input. Only required when `hashOn` is set to `header`. Default `nil`.

func (UpstreamOutput) Healthchecks added in v4.5.1

func (o UpstreamOutput) Healthchecks() UpstreamHealthchecksOutput

func (UpstreamOutput) HostHeader added in v4.5.1

func (o UpstreamOutput) HostHeader() pulumi.StringPtrOutput

The hostname to be used as Host header when proxying requests through Kong.

func (UpstreamOutput) Name added in v4.5.1

is a hostname, which must be equal to the host of a Service.

func (UpstreamOutput) Slots added in v4.5.1

is the number of slots in the load balancer algorithm (10*65536, defaults to 10000).

func (UpstreamOutput) Tags added in v4.5.1

A list of strings associated with the Upstream for grouping and filtering.

func (UpstreamOutput) ToUpstreamOutput

func (o UpstreamOutput) ToUpstreamOutput() UpstreamOutput

func (UpstreamOutput) ToUpstreamOutputWithContext

func (o UpstreamOutput) ToUpstreamOutputWithContext(ctx context.Context) UpstreamOutput

type UpstreamState

type UpstreamState struct {
	// The ID of the client certificate to use (from certificate resource) while TLS handshaking to the upstream server.
	ClientCertificateId pulumi.StringPtrInput
	// is a hashing input type if the primary `hashOn` does not return a hash (eg. header is missing, or no consumer identified). One of: `none`, `consumer`, `ip`, `header`, or `cookie`. Not available if `hashOn` is set to `cookie`. Defaults to `none`.
	HashFallback pulumi.StringPtrInput
	// is a header name to take the value from as hash input. Only required when `hashFallback` is set to `header`. Default `nil`.
	HashFallbackHeader pulumi.StringPtrInput
	// is a hashing input type: ` none  `(resulting in a weighted*round*robin scheme with no hashing), `consumer`, `ip`, `header`, or `cookie`. Defaults to `none`.
	HashOn pulumi.StringPtrInput
	// is a cookie name to take the value from as hash input. Only required when `hashOn` or `hashFallback` is set to `cookie`. If the specified cookie is not in the request, Kong will generate a value and set the cookie in the response. Default `nil`.
	HashOnCookie pulumi.StringPtrInput
	// is a cookie path to set in the response headers. Only required when `hashOn` or `hashFallback` is set to `cookie`. Defaults to `/`.
	// * `healthchecks.active.type` - (Optional) is a active health check type. HTTP or HTTPS, or just attempt a TCP connection. Possible values are `tcp`, `http` or `https`. Defaults to `http`.
	// * `healthchecks.active.timeout` - (Optional) is a socket timeout for active health checks (in seconds). Defaults to `1`.
	// * `healthchecks.active.concurrency` - (Optional) is a number of targets to check concurrently in active health checks. Defaults to `10`.
	// * `healthchecks.active.http_path` - (Optional) is a path to use in GET HTTP request to run as a probe on active health checks. Defaults to `/`.
	// * `healthchecks.active.https_verify_certificate` - (Optional) check the validity of the SSL certificate of the remote host when performing active health checks using HTTPS. Defaults to `true`.
	// * `healthchecks.active.https_sni` - (Optional) is the hostname to use as an SNI (Server Name Identification) when performing active health checks using HTTPS. This is particularly useful when Targets are configured using IPs, so that the target host’s certificate can be verified with the proper SNI. Default `nil`.
	// * `healthchecks.active.healthy.interval` - (Optional) is an interval between active health checks for healthy targets (in seconds). A value of zero indicates that active probes for healthy targets should not be performed. Defaults to `0`.
	// * `healthchecks.active.healthy.successes` - (Optional) is a number of successes in active probes (as defined by `healthchecks.active.healthy.http_statuses`) to consider a target healthy. Defaults to `0`.
	// * `healthchecks.active.healthy.http_statuses` - (Optional) is an array of HTTP statuses to consider a success, indicating healthiness, when returned by a probe in active health checks. Defaults to `[200, 302]`.
	// * `healthchecks.active.unhealthy.interval` - (Optional) is an interval between active health checks for unhealthy targets (in seconds). A value of zero indicates that active probes for unhealthy targets should not be performed. Defaults to `0`.
	// * `healthchecks.active.unhealthy.tcp_failures` - (Optional) is a number of TCP failures in active probes to consider a target unhealthy. Defaults to `0`.
	// * `healthchecks.active.unhealthy.http_failures` - (Optional) is a number of HTTP failures in active probes (as defined by `healthchecks.active.unhealthy.http_statuses`) to consider a target unhealthy. Defaults to `0`.
	// * `healthchecks.active.unhealthy.timeouts` - (Optional) is a number of timeouts in active probes to consider a target unhealthy. Defaults to `0`.
	// * `healthchecks.active.unhealthy.http_statuses` - (Optional) is an array of HTTP statuses to consider a failure, indicating unhealthiness, when returned by a probe in active health checks. Defaults to `[429, 404, 500, 501, 502, 503, 504, 505]`.
	// * `healthchecks.passive.type` - (Optional) is a passive health check type. Interpreting HTTP/HTTPS statuses, or just check for TCP connection success. Possible values are `tcp`, `http` or `https` (in passive checks, `http` and `https` options are equivalent.). Defaults to `http`.
	// * `healthchecks.passive.healthy.successes` - (Optional) is a Number of successes in proxied traffic (as defined by `healthchecks.passive.healthy.http_statuses`) to consider a target healthy, as observed by passive health checks. Defaults to `0`.
	// * `healthchecks.passive.healthy.http_statuses` - (Optional) is an array of HTTP statuses which represent healthiness when produced by proxied traffic, as observed by passive health checks. Defaults to `[200, 201, 202, 203, 204, 205, 206, 207, 208, 226, 300, 301, 302, 303, 304, 305, 306, 307, 308]`.
	// * `healthchecks.passive.unhealthy.tcp_failures` - (Optional) is a number of TCP failures in proxied traffic to consider a target unhealthy, as observed by passive health checks. Defaults to `0`.
	// * `healthchecks.passive.unhealthy.http_failures` - (Optional) is a number of HTTP failures in proxied traffic (as defined by `healthchecks.passive.unhealthy.http_statuses`) to consider a target unhealthy, as observed by passive health checks. Defaults to `0`.
	// * `healthchecks.passive.unhealthy.timeouts` - (Optional) is a number of timeouts in proxied traffic to consider a target unhealthy, as observed by passive health checks. Defaults to `0`.
	// * `healthchecks.passive.unhealthy.http_statuses` - (Optional) is an array of HTTP statuses which represent unhealthiness when produced by proxied traffic, as observed by passive health checks. Defaults to `[429, 500, 503]`.
	HashOnCookiePath pulumi.StringPtrInput
	// is a header name to take the value from as hash input. Only required when `hashOn` is set to `header`. Default `nil`.
	HashOnHeader pulumi.StringPtrInput
	Healthchecks UpstreamHealthchecksPtrInput
	// The hostname to be used as Host header when proxying requests through Kong.
	HostHeader pulumi.StringPtrInput
	// is a hostname, which must be equal to the host of a Service.
	Name pulumi.StringPtrInput
	// is the number of slots in the load balancer algorithm (10*65536, defaults to 10000).
	Slots pulumi.IntPtrInput
	// A list of strings associated with the Upstream for grouping and filtering.
	Tags pulumi.StringArrayInput
}

func (UpstreamState) ElementType

func (UpstreamState) ElementType() reflect.Type

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL