apigee

package
v7.20.0 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AddonsConfig

type AddonsConfig struct {
	pulumi.CustomResourceState

	// Addon configurations of the Apigee organization.
	// Structure is documented below.
	AddonsConfig AddonsConfigAddonsConfigPtrOutput `pulumi:"addonsConfig"`
	// Name of the Apigee organization.
	//
	// ***
	Org pulumi.StringOutput `pulumi:"org"`
}

Configures the add-ons for the Apigee organization. The existing add-on configuration will be fully replaced.

To get more information about AddonsConfig, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations#setaddons) * How-to Guides

## Example Usage

### Apigee Addons Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigee.NewAddonsConfig(ctx, "test_organization", &apigee.AddonsConfigArgs{
			Org: pulumi.String("test_organization"),
			AddonsConfig: &apigee.AddonsConfigAddonsConfigArgs{
				ApiSecurityConfig: &apigee.AddonsConfigAddonsConfigApiSecurityConfigArgs{
					Enabled: pulumi.Bool(true),
				},
				MonetizationConfig: &apigee.AddonsConfigAddonsConfigMonetizationConfigArgs{
					Enabled: pulumi.Bool(true),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Apigee Addons Full

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/projects"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/servicenetworking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := organizations.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		_, err = projects.NewService(ctx, "apigee", &projects.ServiceArgs{
			Project: pulumi.String(current.Project),
			Service: pulumi.String("apigee.googleapis.com"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewService(ctx, "compute", &projects.ServiceArgs{
			Project: pulumi.String(current.Project),
			Service: pulumi.String("compute.googleapis.com"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewService(ctx, "servicenetworking", &projects.ServiceArgs{
			Project: pulumi.String(current.Project),
			Service: pulumi.String("servicenetworking.googleapis.com"),
		})
		if err != nil {
			return err
		}
		apigeeNetwork, err := compute.NewNetwork(ctx, "apigee_network", &compute.NetworkArgs{
			Name:    pulumi.String("apigee-network"),
			Project: pulumi.String(current.Project),
		})
		if err != nil {
			return err
		}
		apigeeRange, err := compute.NewGlobalAddress(ctx, "apigee_range", &compute.GlobalAddressArgs{
			Name:         pulumi.String("apigee-range"),
			Purpose:      pulumi.String("VPC_PEERING"),
			AddressType:  pulumi.String("INTERNAL"),
			PrefixLength: pulumi.Int(16),
			Network:      apigeeNetwork.ID(),
			Project:      pulumi.String(current.Project),
		})
		if err != nil {
			return err
		}
		_, err = servicenetworking.NewConnection(ctx, "apigee_vpc_connection", &servicenetworking.ConnectionArgs{
			Network: apigeeNetwork.ID(),
			Service: pulumi.String("servicenetworking.googleapis.com"),
			ReservedPeeringRanges: pulumi.StringArray{
				apigeeRange.Name,
			},
		})
		if err != nil {
			return err
		}
		org, err := apigee.NewOrganization(ctx, "org", &apigee.OrganizationArgs{
			AnalyticsRegion:   pulumi.String("us-central1"),
			ProjectId:         pulumi.String(current.Project),
			AuthorizedNetwork: apigeeNetwork.ID(),
			BillingType:       pulumi.String("EVALUATION"),
		})
		if err != nil {
			return err
		}
		_, err = apigee.NewAddonsConfig(ctx, "test_organization", &apigee.AddonsConfigArgs{
			Org: org.Name,
			AddonsConfig: &apigee.AddonsConfigAddonsConfigArgs{
				IntegrationConfig: &apigee.AddonsConfigAddonsConfigIntegrationConfigArgs{
					Enabled: pulumi.Bool(true),
				},
				ApiSecurityConfig: &apigee.AddonsConfigAddonsConfigApiSecurityConfigArgs{
					Enabled: pulumi.Bool(true),
				},
				ConnectorsPlatformConfig: &apigee.AddonsConfigAddonsConfigConnectorsPlatformConfigArgs{
					Enabled: pulumi.Bool(true),
				},
				MonetizationConfig: &apigee.AddonsConfigAddonsConfigMonetizationConfigArgs{
					Enabled: pulumi.Bool(true),
				},
				AdvancedApiOpsConfig: &apigee.AddonsConfigAddonsConfigAdvancedApiOpsConfigArgs{
					Enabled: pulumi.Bool(true),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

AddonsConfig can be imported using any of these accepted formats:

* `organizations/{{name}}`

* `{{name}}`

When using the `pulumi import` command, AddonsConfig can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/addonsConfig:AddonsConfig default organizations/{{name}} ```

```sh $ pulumi import gcp:apigee/addonsConfig:AddonsConfig default {{name}} ```

func GetAddonsConfig

func GetAddonsConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AddonsConfigState, opts ...pulumi.ResourceOption) (*AddonsConfig, error)

GetAddonsConfig gets an existing AddonsConfig 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 NewAddonsConfig

func NewAddonsConfig(ctx *pulumi.Context,
	name string, args *AddonsConfigArgs, opts ...pulumi.ResourceOption) (*AddonsConfig, error)

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

func (*AddonsConfig) ElementType

func (*AddonsConfig) ElementType() reflect.Type

func (*AddonsConfig) ToAddonsConfigOutput

func (i *AddonsConfig) ToAddonsConfigOutput() AddonsConfigOutput

func (*AddonsConfig) ToAddonsConfigOutputWithContext

func (i *AddonsConfig) ToAddonsConfigOutputWithContext(ctx context.Context) AddonsConfigOutput

type AddonsConfigAddonsConfig

type AddonsConfigAddonsConfig struct {
	// Configuration for the Monetization add-on.
	// Structure is documented below.
	AdvancedApiOpsConfig *AddonsConfigAddonsConfigAdvancedApiOpsConfig `pulumi:"advancedApiOpsConfig"`
	// Configuration for the Monetization add-on.
	// Structure is documented below.
	ApiSecurityConfig *AddonsConfigAddonsConfigApiSecurityConfig `pulumi:"apiSecurityConfig"`
	// Configuration for the Monetization add-on.
	// Structure is documented below.
	ConnectorsPlatformConfig *AddonsConfigAddonsConfigConnectorsPlatformConfig `pulumi:"connectorsPlatformConfig"`
	// Configuration for the Monetization add-on.
	// Structure is documented below.
	IntegrationConfig *AddonsConfigAddonsConfigIntegrationConfig `pulumi:"integrationConfig"`
	// Configuration for the Monetization add-on.
	// Structure is documented below.
	MonetizationConfig *AddonsConfigAddonsConfigMonetizationConfig `pulumi:"monetizationConfig"`
}

type AddonsConfigAddonsConfigAdvancedApiOpsConfig

type AddonsConfigAddonsConfigAdvancedApiOpsConfig struct {
	// Flag that specifies whether the Advanced API Ops add-on is enabled.
	Enabled *bool `pulumi:"enabled"`
}

type AddonsConfigAddonsConfigAdvancedApiOpsConfigArgs

type AddonsConfigAddonsConfigAdvancedApiOpsConfigArgs struct {
	// Flag that specifies whether the Advanced API Ops add-on is enabled.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
}

func (AddonsConfigAddonsConfigAdvancedApiOpsConfigArgs) ElementType

func (AddonsConfigAddonsConfigAdvancedApiOpsConfigArgs) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigOutput

func (i AddonsConfigAddonsConfigAdvancedApiOpsConfigArgs) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigOutput() AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput

func (AddonsConfigAddonsConfigAdvancedApiOpsConfigArgs) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigOutputWithContext

func (i AddonsConfigAddonsConfigAdvancedApiOpsConfigArgs) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput

func (AddonsConfigAddonsConfigAdvancedApiOpsConfigArgs) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput

func (i AddonsConfigAddonsConfigAdvancedApiOpsConfigArgs) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput() AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput

func (AddonsConfigAddonsConfigAdvancedApiOpsConfigArgs) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutputWithContext

func (i AddonsConfigAddonsConfigAdvancedApiOpsConfigArgs) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput

type AddonsConfigAddonsConfigAdvancedApiOpsConfigInput

type AddonsConfigAddonsConfigAdvancedApiOpsConfigInput interface {
	pulumi.Input

	ToAddonsConfigAddonsConfigAdvancedApiOpsConfigOutput() AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput
	ToAddonsConfigAddonsConfigAdvancedApiOpsConfigOutputWithContext(context.Context) AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput
}

AddonsConfigAddonsConfigAdvancedApiOpsConfigInput is an input type that accepts AddonsConfigAddonsConfigAdvancedApiOpsConfigArgs and AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput values. You can construct a concrete instance of `AddonsConfigAddonsConfigAdvancedApiOpsConfigInput` via:

AddonsConfigAddonsConfigAdvancedApiOpsConfigArgs{...}

type AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput

type AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput struct{ *pulumi.OutputState }

func (AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput) ElementType

func (AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput) Enabled

Flag that specifies whether the Advanced API Ops add-on is enabled.

func (AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigOutput

func (o AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigOutput() AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput

func (AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigOutputWithContext

func (o AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput

func (AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput

func (o AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput() AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput

func (AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutputWithContext

func (o AddonsConfigAddonsConfigAdvancedApiOpsConfigOutput) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput

type AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrInput

type AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrInput interface {
	pulumi.Input

	ToAddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput() AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput
	ToAddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutputWithContext(context.Context) AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput
}

AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrInput is an input type that accepts AddonsConfigAddonsConfigAdvancedApiOpsConfigArgs, AddonsConfigAddonsConfigAdvancedApiOpsConfigPtr and AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput values. You can construct a concrete instance of `AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrInput` via:

        AddonsConfigAddonsConfigAdvancedApiOpsConfigArgs{...}

or:

        nil

type AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput

type AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput struct{ *pulumi.OutputState }

func (AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput) Elem

func (AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput) ElementType

func (AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput) Enabled

Flag that specifies whether the Advanced API Ops add-on is enabled.

func (AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput

func (AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutputWithContext

func (o AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput) ToAddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrOutput

type AddonsConfigAddonsConfigApiSecurityConfig

type AddonsConfigAddonsConfigApiSecurityConfig struct {
	// Flag that specifies whether the Advanced API Ops add-on is enabled.
	Enabled *bool `pulumi:"enabled"`
	// (Output)
	// Flag that specifies whether the Advanced API Ops add-on is enabled.
	ExpiresAt *string `pulumi:"expiresAt"`
}

type AddonsConfigAddonsConfigApiSecurityConfigArgs

type AddonsConfigAddonsConfigApiSecurityConfigArgs struct {
	// Flag that specifies whether the Advanced API Ops add-on is enabled.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
	// (Output)
	// Flag that specifies whether the Advanced API Ops add-on is enabled.
	ExpiresAt pulumi.StringPtrInput `pulumi:"expiresAt"`
}

func (AddonsConfigAddonsConfigApiSecurityConfigArgs) ElementType

func (AddonsConfigAddonsConfigApiSecurityConfigArgs) ToAddonsConfigAddonsConfigApiSecurityConfigOutput

func (i AddonsConfigAddonsConfigApiSecurityConfigArgs) ToAddonsConfigAddonsConfigApiSecurityConfigOutput() AddonsConfigAddonsConfigApiSecurityConfigOutput

func (AddonsConfigAddonsConfigApiSecurityConfigArgs) ToAddonsConfigAddonsConfigApiSecurityConfigOutputWithContext

func (i AddonsConfigAddonsConfigApiSecurityConfigArgs) ToAddonsConfigAddonsConfigApiSecurityConfigOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigApiSecurityConfigOutput

func (AddonsConfigAddonsConfigApiSecurityConfigArgs) ToAddonsConfigAddonsConfigApiSecurityConfigPtrOutput

func (i AddonsConfigAddonsConfigApiSecurityConfigArgs) ToAddonsConfigAddonsConfigApiSecurityConfigPtrOutput() AddonsConfigAddonsConfigApiSecurityConfigPtrOutput

func (AddonsConfigAddonsConfigApiSecurityConfigArgs) ToAddonsConfigAddonsConfigApiSecurityConfigPtrOutputWithContext

func (i AddonsConfigAddonsConfigApiSecurityConfigArgs) ToAddonsConfigAddonsConfigApiSecurityConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigApiSecurityConfigPtrOutput

type AddonsConfigAddonsConfigApiSecurityConfigInput

type AddonsConfigAddonsConfigApiSecurityConfigInput interface {
	pulumi.Input

	ToAddonsConfigAddonsConfigApiSecurityConfigOutput() AddonsConfigAddonsConfigApiSecurityConfigOutput
	ToAddonsConfigAddonsConfigApiSecurityConfigOutputWithContext(context.Context) AddonsConfigAddonsConfigApiSecurityConfigOutput
}

AddonsConfigAddonsConfigApiSecurityConfigInput is an input type that accepts AddonsConfigAddonsConfigApiSecurityConfigArgs and AddonsConfigAddonsConfigApiSecurityConfigOutput values. You can construct a concrete instance of `AddonsConfigAddonsConfigApiSecurityConfigInput` via:

AddonsConfigAddonsConfigApiSecurityConfigArgs{...}

type AddonsConfigAddonsConfigApiSecurityConfigOutput

type AddonsConfigAddonsConfigApiSecurityConfigOutput struct{ *pulumi.OutputState }

func (AddonsConfigAddonsConfigApiSecurityConfigOutput) ElementType

func (AddonsConfigAddonsConfigApiSecurityConfigOutput) Enabled

Flag that specifies whether the Advanced API Ops add-on is enabled.

func (AddonsConfigAddonsConfigApiSecurityConfigOutput) ExpiresAt

(Output) Flag that specifies whether the Advanced API Ops add-on is enabled.

func (AddonsConfigAddonsConfigApiSecurityConfigOutput) ToAddonsConfigAddonsConfigApiSecurityConfigOutput

func (o AddonsConfigAddonsConfigApiSecurityConfigOutput) ToAddonsConfigAddonsConfigApiSecurityConfigOutput() AddonsConfigAddonsConfigApiSecurityConfigOutput

func (AddonsConfigAddonsConfigApiSecurityConfigOutput) ToAddonsConfigAddonsConfigApiSecurityConfigOutputWithContext

func (o AddonsConfigAddonsConfigApiSecurityConfigOutput) ToAddonsConfigAddonsConfigApiSecurityConfigOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigApiSecurityConfigOutput

func (AddonsConfigAddonsConfigApiSecurityConfigOutput) ToAddonsConfigAddonsConfigApiSecurityConfigPtrOutput

func (o AddonsConfigAddonsConfigApiSecurityConfigOutput) ToAddonsConfigAddonsConfigApiSecurityConfigPtrOutput() AddonsConfigAddonsConfigApiSecurityConfigPtrOutput

func (AddonsConfigAddonsConfigApiSecurityConfigOutput) ToAddonsConfigAddonsConfigApiSecurityConfigPtrOutputWithContext

func (o AddonsConfigAddonsConfigApiSecurityConfigOutput) ToAddonsConfigAddonsConfigApiSecurityConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigApiSecurityConfigPtrOutput

type AddonsConfigAddonsConfigApiSecurityConfigPtrInput

type AddonsConfigAddonsConfigApiSecurityConfigPtrInput interface {
	pulumi.Input

	ToAddonsConfigAddonsConfigApiSecurityConfigPtrOutput() AddonsConfigAddonsConfigApiSecurityConfigPtrOutput
	ToAddonsConfigAddonsConfigApiSecurityConfigPtrOutputWithContext(context.Context) AddonsConfigAddonsConfigApiSecurityConfigPtrOutput
}

AddonsConfigAddonsConfigApiSecurityConfigPtrInput is an input type that accepts AddonsConfigAddonsConfigApiSecurityConfigArgs, AddonsConfigAddonsConfigApiSecurityConfigPtr and AddonsConfigAddonsConfigApiSecurityConfigPtrOutput values. You can construct a concrete instance of `AddonsConfigAddonsConfigApiSecurityConfigPtrInput` via:

        AddonsConfigAddonsConfigApiSecurityConfigArgs{...}

or:

        nil

type AddonsConfigAddonsConfigApiSecurityConfigPtrOutput

type AddonsConfigAddonsConfigApiSecurityConfigPtrOutput struct{ *pulumi.OutputState }

func (AddonsConfigAddonsConfigApiSecurityConfigPtrOutput) Elem

func (AddonsConfigAddonsConfigApiSecurityConfigPtrOutput) ElementType

func (AddonsConfigAddonsConfigApiSecurityConfigPtrOutput) Enabled

Flag that specifies whether the Advanced API Ops add-on is enabled.

func (AddonsConfigAddonsConfigApiSecurityConfigPtrOutput) ExpiresAt

(Output) Flag that specifies whether the Advanced API Ops add-on is enabled.

func (AddonsConfigAddonsConfigApiSecurityConfigPtrOutput) ToAddonsConfigAddonsConfigApiSecurityConfigPtrOutput

func (o AddonsConfigAddonsConfigApiSecurityConfigPtrOutput) ToAddonsConfigAddonsConfigApiSecurityConfigPtrOutput() AddonsConfigAddonsConfigApiSecurityConfigPtrOutput

func (AddonsConfigAddonsConfigApiSecurityConfigPtrOutput) ToAddonsConfigAddonsConfigApiSecurityConfigPtrOutputWithContext

func (o AddonsConfigAddonsConfigApiSecurityConfigPtrOutput) ToAddonsConfigAddonsConfigApiSecurityConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigApiSecurityConfigPtrOutput

type AddonsConfigAddonsConfigArgs

type AddonsConfigAddonsConfigArgs struct {
	// Configuration for the Monetization add-on.
	// Structure is documented below.
	AdvancedApiOpsConfig AddonsConfigAddonsConfigAdvancedApiOpsConfigPtrInput `pulumi:"advancedApiOpsConfig"`
	// Configuration for the Monetization add-on.
	// Structure is documented below.
	ApiSecurityConfig AddonsConfigAddonsConfigApiSecurityConfigPtrInput `pulumi:"apiSecurityConfig"`
	// Configuration for the Monetization add-on.
	// Structure is documented below.
	ConnectorsPlatformConfig AddonsConfigAddonsConfigConnectorsPlatformConfigPtrInput `pulumi:"connectorsPlatformConfig"`
	// Configuration for the Monetization add-on.
	// Structure is documented below.
	IntegrationConfig AddonsConfigAddonsConfigIntegrationConfigPtrInput `pulumi:"integrationConfig"`
	// Configuration for the Monetization add-on.
	// Structure is documented below.
	MonetizationConfig AddonsConfigAddonsConfigMonetizationConfigPtrInput `pulumi:"monetizationConfig"`
}

func (AddonsConfigAddonsConfigArgs) ElementType

func (AddonsConfigAddonsConfigArgs) ToAddonsConfigAddonsConfigOutput

func (i AddonsConfigAddonsConfigArgs) ToAddonsConfigAddonsConfigOutput() AddonsConfigAddonsConfigOutput

func (AddonsConfigAddonsConfigArgs) ToAddonsConfigAddonsConfigOutputWithContext

func (i AddonsConfigAddonsConfigArgs) ToAddonsConfigAddonsConfigOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigOutput

func (AddonsConfigAddonsConfigArgs) ToAddonsConfigAddonsConfigPtrOutput

func (i AddonsConfigAddonsConfigArgs) ToAddonsConfigAddonsConfigPtrOutput() AddonsConfigAddonsConfigPtrOutput

func (AddonsConfigAddonsConfigArgs) ToAddonsConfigAddonsConfigPtrOutputWithContext

func (i AddonsConfigAddonsConfigArgs) ToAddonsConfigAddonsConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigPtrOutput

type AddonsConfigAddonsConfigConnectorsPlatformConfig

type AddonsConfigAddonsConfigConnectorsPlatformConfig struct {
	// Flag that specifies whether the Advanced API Ops add-on is enabled.
	Enabled *bool `pulumi:"enabled"`
	// (Output)
	// Flag that specifies whether the Advanced API Ops add-on is enabled.
	ExpiresAt *string `pulumi:"expiresAt"`
}

type AddonsConfigAddonsConfigConnectorsPlatformConfigArgs

type AddonsConfigAddonsConfigConnectorsPlatformConfigArgs struct {
	// Flag that specifies whether the Advanced API Ops add-on is enabled.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
	// (Output)
	// Flag that specifies whether the Advanced API Ops add-on is enabled.
	ExpiresAt pulumi.StringPtrInput `pulumi:"expiresAt"`
}

func (AddonsConfigAddonsConfigConnectorsPlatformConfigArgs) ElementType

func (AddonsConfigAddonsConfigConnectorsPlatformConfigArgs) ToAddonsConfigAddonsConfigConnectorsPlatformConfigOutput

func (i AddonsConfigAddonsConfigConnectorsPlatformConfigArgs) ToAddonsConfigAddonsConfigConnectorsPlatformConfigOutput() AddonsConfigAddonsConfigConnectorsPlatformConfigOutput

func (AddonsConfigAddonsConfigConnectorsPlatformConfigArgs) ToAddonsConfigAddonsConfigConnectorsPlatformConfigOutputWithContext

func (i AddonsConfigAddonsConfigConnectorsPlatformConfigArgs) ToAddonsConfigAddonsConfigConnectorsPlatformConfigOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigConnectorsPlatformConfigOutput

func (AddonsConfigAddonsConfigConnectorsPlatformConfigArgs) ToAddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput

func (i AddonsConfigAddonsConfigConnectorsPlatformConfigArgs) ToAddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput() AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput

func (AddonsConfigAddonsConfigConnectorsPlatformConfigArgs) ToAddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutputWithContext

func (i AddonsConfigAddonsConfigConnectorsPlatformConfigArgs) ToAddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput

type AddonsConfigAddonsConfigConnectorsPlatformConfigInput

type AddonsConfigAddonsConfigConnectorsPlatformConfigInput interface {
	pulumi.Input

	ToAddonsConfigAddonsConfigConnectorsPlatformConfigOutput() AddonsConfigAddonsConfigConnectorsPlatformConfigOutput
	ToAddonsConfigAddonsConfigConnectorsPlatformConfigOutputWithContext(context.Context) AddonsConfigAddonsConfigConnectorsPlatformConfigOutput
}

AddonsConfigAddonsConfigConnectorsPlatformConfigInput is an input type that accepts AddonsConfigAddonsConfigConnectorsPlatformConfigArgs and AddonsConfigAddonsConfigConnectorsPlatformConfigOutput values. You can construct a concrete instance of `AddonsConfigAddonsConfigConnectorsPlatformConfigInput` via:

AddonsConfigAddonsConfigConnectorsPlatformConfigArgs{...}

type AddonsConfigAddonsConfigConnectorsPlatformConfigOutput

type AddonsConfigAddonsConfigConnectorsPlatformConfigOutput struct{ *pulumi.OutputState }

func (AddonsConfigAddonsConfigConnectorsPlatformConfigOutput) ElementType

func (AddonsConfigAddonsConfigConnectorsPlatformConfigOutput) Enabled

Flag that specifies whether the Advanced API Ops add-on is enabled.

func (AddonsConfigAddonsConfigConnectorsPlatformConfigOutput) ExpiresAt

(Output) Flag that specifies whether the Advanced API Ops add-on is enabled.

func (AddonsConfigAddonsConfigConnectorsPlatformConfigOutput) ToAddonsConfigAddonsConfigConnectorsPlatformConfigOutput

func (AddonsConfigAddonsConfigConnectorsPlatformConfigOutput) ToAddonsConfigAddonsConfigConnectorsPlatformConfigOutputWithContext

func (o AddonsConfigAddonsConfigConnectorsPlatformConfigOutput) ToAddonsConfigAddonsConfigConnectorsPlatformConfigOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigConnectorsPlatformConfigOutput

func (AddonsConfigAddonsConfigConnectorsPlatformConfigOutput) ToAddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput

func (o AddonsConfigAddonsConfigConnectorsPlatformConfigOutput) ToAddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput() AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput

func (AddonsConfigAddonsConfigConnectorsPlatformConfigOutput) ToAddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutputWithContext

func (o AddonsConfigAddonsConfigConnectorsPlatformConfigOutput) ToAddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput

type AddonsConfigAddonsConfigConnectorsPlatformConfigPtrInput

type AddonsConfigAddonsConfigConnectorsPlatformConfigPtrInput interface {
	pulumi.Input

	ToAddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput() AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput
	ToAddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutputWithContext(context.Context) AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput
}

AddonsConfigAddonsConfigConnectorsPlatformConfigPtrInput is an input type that accepts AddonsConfigAddonsConfigConnectorsPlatformConfigArgs, AddonsConfigAddonsConfigConnectorsPlatformConfigPtr and AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput values. You can construct a concrete instance of `AddonsConfigAddonsConfigConnectorsPlatformConfigPtrInput` via:

        AddonsConfigAddonsConfigConnectorsPlatformConfigArgs{...}

or:

        nil

type AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput

type AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput struct{ *pulumi.OutputState }

func (AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput) Elem

func (AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput) ElementType

func (AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput) Enabled

Flag that specifies whether the Advanced API Ops add-on is enabled.

func (AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput) ExpiresAt

(Output) Flag that specifies whether the Advanced API Ops add-on is enabled.

func (AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput) ToAddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput

func (AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput) ToAddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutputWithContext

func (o AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput) ToAddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigConnectorsPlatformConfigPtrOutput

type AddonsConfigAddonsConfigInput

type AddonsConfigAddonsConfigInput interface {
	pulumi.Input

	ToAddonsConfigAddonsConfigOutput() AddonsConfigAddonsConfigOutput
	ToAddonsConfigAddonsConfigOutputWithContext(context.Context) AddonsConfigAddonsConfigOutput
}

AddonsConfigAddonsConfigInput is an input type that accepts AddonsConfigAddonsConfigArgs and AddonsConfigAddonsConfigOutput values. You can construct a concrete instance of `AddonsConfigAddonsConfigInput` via:

AddonsConfigAddonsConfigArgs{...}

type AddonsConfigAddonsConfigIntegrationConfig

type AddonsConfigAddonsConfigIntegrationConfig struct {
	// Flag that specifies whether the Advanced API Ops add-on is enabled.
	Enabled *bool `pulumi:"enabled"`
}

type AddonsConfigAddonsConfigIntegrationConfigArgs

type AddonsConfigAddonsConfigIntegrationConfigArgs struct {
	// Flag that specifies whether the Advanced API Ops add-on is enabled.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
}

func (AddonsConfigAddonsConfigIntegrationConfigArgs) ElementType

func (AddonsConfigAddonsConfigIntegrationConfigArgs) ToAddonsConfigAddonsConfigIntegrationConfigOutput

func (i AddonsConfigAddonsConfigIntegrationConfigArgs) ToAddonsConfigAddonsConfigIntegrationConfigOutput() AddonsConfigAddonsConfigIntegrationConfigOutput

func (AddonsConfigAddonsConfigIntegrationConfigArgs) ToAddonsConfigAddonsConfigIntegrationConfigOutputWithContext

func (i AddonsConfigAddonsConfigIntegrationConfigArgs) ToAddonsConfigAddonsConfigIntegrationConfigOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigIntegrationConfigOutput

func (AddonsConfigAddonsConfigIntegrationConfigArgs) ToAddonsConfigAddonsConfigIntegrationConfigPtrOutput

func (i AddonsConfigAddonsConfigIntegrationConfigArgs) ToAddonsConfigAddonsConfigIntegrationConfigPtrOutput() AddonsConfigAddonsConfigIntegrationConfigPtrOutput

func (AddonsConfigAddonsConfigIntegrationConfigArgs) ToAddonsConfigAddonsConfigIntegrationConfigPtrOutputWithContext

func (i AddonsConfigAddonsConfigIntegrationConfigArgs) ToAddonsConfigAddonsConfigIntegrationConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigIntegrationConfigPtrOutput

type AddonsConfigAddonsConfigIntegrationConfigInput

type AddonsConfigAddonsConfigIntegrationConfigInput interface {
	pulumi.Input

	ToAddonsConfigAddonsConfigIntegrationConfigOutput() AddonsConfigAddonsConfigIntegrationConfigOutput
	ToAddonsConfigAddonsConfigIntegrationConfigOutputWithContext(context.Context) AddonsConfigAddonsConfigIntegrationConfigOutput
}

AddonsConfigAddonsConfigIntegrationConfigInput is an input type that accepts AddonsConfigAddonsConfigIntegrationConfigArgs and AddonsConfigAddonsConfigIntegrationConfigOutput values. You can construct a concrete instance of `AddonsConfigAddonsConfigIntegrationConfigInput` via:

AddonsConfigAddonsConfigIntegrationConfigArgs{...}

type AddonsConfigAddonsConfigIntegrationConfigOutput

type AddonsConfigAddonsConfigIntegrationConfigOutput struct{ *pulumi.OutputState }

func (AddonsConfigAddonsConfigIntegrationConfigOutput) ElementType

func (AddonsConfigAddonsConfigIntegrationConfigOutput) Enabled

Flag that specifies whether the Advanced API Ops add-on is enabled.

func (AddonsConfigAddonsConfigIntegrationConfigOutput) ToAddonsConfigAddonsConfigIntegrationConfigOutput

func (o AddonsConfigAddonsConfigIntegrationConfigOutput) ToAddonsConfigAddonsConfigIntegrationConfigOutput() AddonsConfigAddonsConfigIntegrationConfigOutput

func (AddonsConfigAddonsConfigIntegrationConfigOutput) ToAddonsConfigAddonsConfigIntegrationConfigOutputWithContext

func (o AddonsConfigAddonsConfigIntegrationConfigOutput) ToAddonsConfigAddonsConfigIntegrationConfigOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigIntegrationConfigOutput

func (AddonsConfigAddonsConfigIntegrationConfigOutput) ToAddonsConfigAddonsConfigIntegrationConfigPtrOutput

func (o AddonsConfigAddonsConfigIntegrationConfigOutput) ToAddonsConfigAddonsConfigIntegrationConfigPtrOutput() AddonsConfigAddonsConfigIntegrationConfigPtrOutput

func (AddonsConfigAddonsConfigIntegrationConfigOutput) ToAddonsConfigAddonsConfigIntegrationConfigPtrOutputWithContext

func (o AddonsConfigAddonsConfigIntegrationConfigOutput) ToAddonsConfigAddonsConfigIntegrationConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigIntegrationConfigPtrOutput

type AddonsConfigAddonsConfigIntegrationConfigPtrInput

type AddonsConfigAddonsConfigIntegrationConfigPtrInput interface {
	pulumi.Input

	ToAddonsConfigAddonsConfigIntegrationConfigPtrOutput() AddonsConfigAddonsConfigIntegrationConfigPtrOutput
	ToAddonsConfigAddonsConfigIntegrationConfigPtrOutputWithContext(context.Context) AddonsConfigAddonsConfigIntegrationConfigPtrOutput
}

AddonsConfigAddonsConfigIntegrationConfigPtrInput is an input type that accepts AddonsConfigAddonsConfigIntegrationConfigArgs, AddonsConfigAddonsConfigIntegrationConfigPtr and AddonsConfigAddonsConfigIntegrationConfigPtrOutput values. You can construct a concrete instance of `AddonsConfigAddonsConfigIntegrationConfigPtrInput` via:

        AddonsConfigAddonsConfigIntegrationConfigArgs{...}

or:

        nil

type AddonsConfigAddonsConfigIntegrationConfigPtrOutput

type AddonsConfigAddonsConfigIntegrationConfigPtrOutput struct{ *pulumi.OutputState }

func (AddonsConfigAddonsConfigIntegrationConfigPtrOutput) Elem

func (AddonsConfigAddonsConfigIntegrationConfigPtrOutput) ElementType

func (AddonsConfigAddonsConfigIntegrationConfigPtrOutput) Enabled

Flag that specifies whether the Advanced API Ops add-on is enabled.

func (AddonsConfigAddonsConfigIntegrationConfigPtrOutput) ToAddonsConfigAddonsConfigIntegrationConfigPtrOutput

func (o AddonsConfigAddonsConfigIntegrationConfigPtrOutput) ToAddonsConfigAddonsConfigIntegrationConfigPtrOutput() AddonsConfigAddonsConfigIntegrationConfigPtrOutput

func (AddonsConfigAddonsConfigIntegrationConfigPtrOutput) ToAddonsConfigAddonsConfigIntegrationConfigPtrOutputWithContext

func (o AddonsConfigAddonsConfigIntegrationConfigPtrOutput) ToAddonsConfigAddonsConfigIntegrationConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigIntegrationConfigPtrOutput

type AddonsConfigAddonsConfigMonetizationConfig

type AddonsConfigAddonsConfigMonetizationConfig struct {
	// Flag that specifies whether the Advanced API Ops add-on is enabled.
	Enabled *bool `pulumi:"enabled"`
}

type AddonsConfigAddonsConfigMonetizationConfigArgs

type AddonsConfigAddonsConfigMonetizationConfigArgs struct {
	// Flag that specifies whether the Advanced API Ops add-on is enabled.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
}

func (AddonsConfigAddonsConfigMonetizationConfigArgs) ElementType

func (AddonsConfigAddonsConfigMonetizationConfigArgs) ToAddonsConfigAddonsConfigMonetizationConfigOutput

func (i AddonsConfigAddonsConfigMonetizationConfigArgs) ToAddonsConfigAddonsConfigMonetizationConfigOutput() AddonsConfigAddonsConfigMonetizationConfigOutput

func (AddonsConfigAddonsConfigMonetizationConfigArgs) ToAddonsConfigAddonsConfigMonetizationConfigOutputWithContext

func (i AddonsConfigAddonsConfigMonetizationConfigArgs) ToAddonsConfigAddonsConfigMonetizationConfigOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigMonetizationConfigOutput

func (AddonsConfigAddonsConfigMonetizationConfigArgs) ToAddonsConfigAddonsConfigMonetizationConfigPtrOutput

func (i AddonsConfigAddonsConfigMonetizationConfigArgs) ToAddonsConfigAddonsConfigMonetizationConfigPtrOutput() AddonsConfigAddonsConfigMonetizationConfigPtrOutput

func (AddonsConfigAddonsConfigMonetizationConfigArgs) ToAddonsConfigAddonsConfigMonetizationConfigPtrOutputWithContext

func (i AddonsConfigAddonsConfigMonetizationConfigArgs) ToAddonsConfigAddonsConfigMonetizationConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigMonetizationConfigPtrOutput

type AddonsConfigAddonsConfigMonetizationConfigInput

type AddonsConfigAddonsConfigMonetizationConfigInput interface {
	pulumi.Input

	ToAddonsConfigAddonsConfigMonetizationConfigOutput() AddonsConfigAddonsConfigMonetizationConfigOutput
	ToAddonsConfigAddonsConfigMonetizationConfigOutputWithContext(context.Context) AddonsConfigAddonsConfigMonetizationConfigOutput
}

AddonsConfigAddonsConfigMonetizationConfigInput is an input type that accepts AddonsConfigAddonsConfigMonetizationConfigArgs and AddonsConfigAddonsConfigMonetizationConfigOutput values. You can construct a concrete instance of `AddonsConfigAddonsConfigMonetizationConfigInput` via:

AddonsConfigAddonsConfigMonetizationConfigArgs{...}

type AddonsConfigAddonsConfigMonetizationConfigOutput

type AddonsConfigAddonsConfigMonetizationConfigOutput struct{ *pulumi.OutputState }

func (AddonsConfigAddonsConfigMonetizationConfigOutput) ElementType

func (AddonsConfigAddonsConfigMonetizationConfigOutput) Enabled

Flag that specifies whether the Advanced API Ops add-on is enabled.

func (AddonsConfigAddonsConfigMonetizationConfigOutput) ToAddonsConfigAddonsConfigMonetizationConfigOutput

func (o AddonsConfigAddonsConfigMonetizationConfigOutput) ToAddonsConfigAddonsConfigMonetizationConfigOutput() AddonsConfigAddonsConfigMonetizationConfigOutput

func (AddonsConfigAddonsConfigMonetizationConfigOutput) ToAddonsConfigAddonsConfigMonetizationConfigOutputWithContext

func (o AddonsConfigAddonsConfigMonetizationConfigOutput) ToAddonsConfigAddonsConfigMonetizationConfigOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigMonetizationConfigOutput

func (AddonsConfigAddonsConfigMonetizationConfigOutput) ToAddonsConfigAddonsConfigMonetizationConfigPtrOutput

func (o AddonsConfigAddonsConfigMonetizationConfigOutput) ToAddonsConfigAddonsConfigMonetizationConfigPtrOutput() AddonsConfigAddonsConfigMonetizationConfigPtrOutput

func (AddonsConfigAddonsConfigMonetizationConfigOutput) ToAddonsConfigAddonsConfigMonetizationConfigPtrOutputWithContext

func (o AddonsConfigAddonsConfigMonetizationConfigOutput) ToAddonsConfigAddonsConfigMonetizationConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigMonetizationConfigPtrOutput

type AddonsConfigAddonsConfigMonetizationConfigPtrInput

type AddonsConfigAddonsConfigMonetizationConfigPtrInput interface {
	pulumi.Input

	ToAddonsConfigAddonsConfigMonetizationConfigPtrOutput() AddonsConfigAddonsConfigMonetizationConfigPtrOutput
	ToAddonsConfigAddonsConfigMonetizationConfigPtrOutputWithContext(context.Context) AddonsConfigAddonsConfigMonetizationConfigPtrOutput
}

AddonsConfigAddonsConfigMonetizationConfigPtrInput is an input type that accepts AddonsConfigAddonsConfigMonetizationConfigArgs, AddonsConfigAddonsConfigMonetizationConfigPtr and AddonsConfigAddonsConfigMonetizationConfigPtrOutput values. You can construct a concrete instance of `AddonsConfigAddonsConfigMonetizationConfigPtrInput` via:

        AddonsConfigAddonsConfigMonetizationConfigArgs{...}

or:

        nil

type AddonsConfigAddonsConfigMonetizationConfigPtrOutput

type AddonsConfigAddonsConfigMonetizationConfigPtrOutput struct{ *pulumi.OutputState }

func (AddonsConfigAddonsConfigMonetizationConfigPtrOutput) Elem

func (AddonsConfigAddonsConfigMonetizationConfigPtrOutput) ElementType

func (AddonsConfigAddonsConfigMonetizationConfigPtrOutput) Enabled

Flag that specifies whether the Advanced API Ops add-on is enabled.

func (AddonsConfigAddonsConfigMonetizationConfigPtrOutput) ToAddonsConfigAddonsConfigMonetizationConfigPtrOutput

func (o AddonsConfigAddonsConfigMonetizationConfigPtrOutput) ToAddonsConfigAddonsConfigMonetizationConfigPtrOutput() AddonsConfigAddonsConfigMonetizationConfigPtrOutput

func (AddonsConfigAddonsConfigMonetizationConfigPtrOutput) ToAddonsConfigAddonsConfigMonetizationConfigPtrOutputWithContext

func (o AddonsConfigAddonsConfigMonetizationConfigPtrOutput) ToAddonsConfigAddonsConfigMonetizationConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigMonetizationConfigPtrOutput

type AddonsConfigAddonsConfigOutput

type AddonsConfigAddonsConfigOutput struct{ *pulumi.OutputState }

func (AddonsConfigAddonsConfigOutput) AdvancedApiOpsConfig

Configuration for the Monetization add-on. Structure is documented below.

func (AddonsConfigAddonsConfigOutput) ApiSecurityConfig

Configuration for the Monetization add-on. Structure is documented below.

func (AddonsConfigAddonsConfigOutput) ConnectorsPlatformConfig

Configuration for the Monetization add-on. Structure is documented below.

func (AddonsConfigAddonsConfigOutput) ElementType

func (AddonsConfigAddonsConfigOutput) IntegrationConfig

Configuration for the Monetization add-on. Structure is documented below.

func (AddonsConfigAddonsConfigOutput) MonetizationConfig

Configuration for the Monetization add-on. Structure is documented below.

func (AddonsConfigAddonsConfigOutput) ToAddonsConfigAddonsConfigOutput

func (o AddonsConfigAddonsConfigOutput) ToAddonsConfigAddonsConfigOutput() AddonsConfigAddonsConfigOutput

func (AddonsConfigAddonsConfigOutput) ToAddonsConfigAddonsConfigOutputWithContext

func (o AddonsConfigAddonsConfigOutput) ToAddonsConfigAddonsConfigOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigOutput

func (AddonsConfigAddonsConfigOutput) ToAddonsConfigAddonsConfigPtrOutput

func (o AddonsConfigAddonsConfigOutput) ToAddonsConfigAddonsConfigPtrOutput() AddonsConfigAddonsConfigPtrOutput

func (AddonsConfigAddonsConfigOutput) ToAddonsConfigAddonsConfigPtrOutputWithContext

func (o AddonsConfigAddonsConfigOutput) ToAddonsConfigAddonsConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigPtrOutput

type AddonsConfigAddonsConfigPtrInput

type AddonsConfigAddonsConfigPtrInput interface {
	pulumi.Input

	ToAddonsConfigAddonsConfigPtrOutput() AddonsConfigAddonsConfigPtrOutput
	ToAddonsConfigAddonsConfigPtrOutputWithContext(context.Context) AddonsConfigAddonsConfigPtrOutput
}

AddonsConfigAddonsConfigPtrInput is an input type that accepts AddonsConfigAddonsConfigArgs, AddonsConfigAddonsConfigPtr and AddonsConfigAddonsConfigPtrOutput values. You can construct a concrete instance of `AddonsConfigAddonsConfigPtrInput` via:

        AddonsConfigAddonsConfigArgs{...}

or:

        nil

type AddonsConfigAddonsConfigPtrOutput

type AddonsConfigAddonsConfigPtrOutput struct{ *pulumi.OutputState }

func (AddonsConfigAddonsConfigPtrOutput) AdvancedApiOpsConfig

Configuration for the Monetization add-on. Structure is documented below.

func (AddonsConfigAddonsConfigPtrOutput) ApiSecurityConfig

Configuration for the Monetization add-on. Structure is documented below.

func (AddonsConfigAddonsConfigPtrOutput) ConnectorsPlatformConfig

Configuration for the Monetization add-on. Structure is documented below.

func (AddonsConfigAddonsConfigPtrOutput) Elem

func (AddonsConfigAddonsConfigPtrOutput) ElementType

func (AddonsConfigAddonsConfigPtrOutput) IntegrationConfig

Configuration for the Monetization add-on. Structure is documented below.

func (AddonsConfigAddonsConfigPtrOutput) MonetizationConfig

Configuration for the Monetization add-on. Structure is documented below.

func (AddonsConfigAddonsConfigPtrOutput) ToAddonsConfigAddonsConfigPtrOutput

func (o AddonsConfigAddonsConfigPtrOutput) ToAddonsConfigAddonsConfigPtrOutput() AddonsConfigAddonsConfigPtrOutput

func (AddonsConfigAddonsConfigPtrOutput) ToAddonsConfigAddonsConfigPtrOutputWithContext

func (o AddonsConfigAddonsConfigPtrOutput) ToAddonsConfigAddonsConfigPtrOutputWithContext(ctx context.Context) AddonsConfigAddonsConfigPtrOutput

type AddonsConfigArgs

type AddonsConfigArgs struct {
	// Addon configurations of the Apigee organization.
	// Structure is documented below.
	AddonsConfig AddonsConfigAddonsConfigPtrInput
	// Name of the Apigee organization.
	//
	// ***
	Org pulumi.StringInput
}

The set of arguments for constructing a AddonsConfig resource.

func (AddonsConfigArgs) ElementType

func (AddonsConfigArgs) ElementType() reflect.Type

type AddonsConfigArray

type AddonsConfigArray []AddonsConfigInput

func (AddonsConfigArray) ElementType

func (AddonsConfigArray) ElementType() reflect.Type

func (AddonsConfigArray) ToAddonsConfigArrayOutput

func (i AddonsConfigArray) ToAddonsConfigArrayOutput() AddonsConfigArrayOutput

func (AddonsConfigArray) ToAddonsConfigArrayOutputWithContext

func (i AddonsConfigArray) ToAddonsConfigArrayOutputWithContext(ctx context.Context) AddonsConfigArrayOutput

type AddonsConfigArrayInput

type AddonsConfigArrayInput interface {
	pulumi.Input

	ToAddonsConfigArrayOutput() AddonsConfigArrayOutput
	ToAddonsConfigArrayOutputWithContext(context.Context) AddonsConfigArrayOutput
}

AddonsConfigArrayInput is an input type that accepts AddonsConfigArray and AddonsConfigArrayOutput values. You can construct a concrete instance of `AddonsConfigArrayInput` via:

AddonsConfigArray{ AddonsConfigArgs{...} }

type AddonsConfigArrayOutput

type AddonsConfigArrayOutput struct{ *pulumi.OutputState }

func (AddonsConfigArrayOutput) ElementType

func (AddonsConfigArrayOutput) ElementType() reflect.Type

func (AddonsConfigArrayOutput) Index

func (AddonsConfigArrayOutput) ToAddonsConfigArrayOutput

func (o AddonsConfigArrayOutput) ToAddonsConfigArrayOutput() AddonsConfigArrayOutput

func (AddonsConfigArrayOutput) ToAddonsConfigArrayOutputWithContext

func (o AddonsConfigArrayOutput) ToAddonsConfigArrayOutputWithContext(ctx context.Context) AddonsConfigArrayOutput

type AddonsConfigInput

type AddonsConfigInput interface {
	pulumi.Input

	ToAddonsConfigOutput() AddonsConfigOutput
	ToAddonsConfigOutputWithContext(ctx context.Context) AddonsConfigOutput
}

type AddonsConfigMap

type AddonsConfigMap map[string]AddonsConfigInput

func (AddonsConfigMap) ElementType

func (AddonsConfigMap) ElementType() reflect.Type

func (AddonsConfigMap) ToAddonsConfigMapOutput

func (i AddonsConfigMap) ToAddonsConfigMapOutput() AddonsConfigMapOutput

func (AddonsConfigMap) ToAddonsConfigMapOutputWithContext

func (i AddonsConfigMap) ToAddonsConfigMapOutputWithContext(ctx context.Context) AddonsConfigMapOutput

type AddonsConfigMapInput

type AddonsConfigMapInput interface {
	pulumi.Input

	ToAddonsConfigMapOutput() AddonsConfigMapOutput
	ToAddonsConfigMapOutputWithContext(context.Context) AddonsConfigMapOutput
}

AddonsConfigMapInput is an input type that accepts AddonsConfigMap and AddonsConfigMapOutput values. You can construct a concrete instance of `AddonsConfigMapInput` via:

AddonsConfigMap{ "key": AddonsConfigArgs{...} }

type AddonsConfigMapOutput

type AddonsConfigMapOutput struct{ *pulumi.OutputState }

func (AddonsConfigMapOutput) ElementType

func (AddonsConfigMapOutput) ElementType() reflect.Type

func (AddonsConfigMapOutput) MapIndex

func (AddonsConfigMapOutput) ToAddonsConfigMapOutput

func (o AddonsConfigMapOutput) ToAddonsConfigMapOutput() AddonsConfigMapOutput

func (AddonsConfigMapOutput) ToAddonsConfigMapOutputWithContext

func (o AddonsConfigMapOutput) ToAddonsConfigMapOutputWithContext(ctx context.Context) AddonsConfigMapOutput

type AddonsConfigOutput

type AddonsConfigOutput struct{ *pulumi.OutputState }

func (AddonsConfigOutput) AddonsConfig

Addon configurations of the Apigee organization. Structure is documented below.

func (AddonsConfigOutput) ElementType

func (AddonsConfigOutput) ElementType() reflect.Type

func (AddonsConfigOutput) Org

Name of the Apigee organization.

***

func (AddonsConfigOutput) ToAddonsConfigOutput

func (o AddonsConfigOutput) ToAddonsConfigOutput() AddonsConfigOutput

func (AddonsConfigOutput) ToAddonsConfigOutputWithContext

func (o AddonsConfigOutput) ToAddonsConfigOutputWithContext(ctx context.Context) AddonsConfigOutput

type AddonsConfigState

type AddonsConfigState struct {
	// Addon configurations of the Apigee organization.
	// Structure is documented below.
	AddonsConfig AddonsConfigAddonsConfigPtrInput
	// Name of the Apigee organization.
	//
	// ***
	Org pulumi.StringPtrInput
}

func (AddonsConfigState) ElementType

func (AddonsConfigState) ElementType() reflect.Type

type EndpointAttachment

type EndpointAttachment struct {
	pulumi.CustomResourceState

	// State of the endpoint attachment connection to the service attachment.
	ConnectionState pulumi.StringOutput `pulumi:"connectionState"`
	// ID of the endpoint attachment.
	//
	// ***
	EndpointAttachmentId pulumi.StringOutput `pulumi:"endpointAttachmentId"`
	// Host that can be used in either HTTP Target Endpoint directly, or as the host in Target Server.
	Host pulumi.StringOutput `pulumi:"host"`
	// Location of the endpoint attachment.
	Location pulumi.StringOutput `pulumi:"location"`
	// Name of the Endpoint Attachment in the following format:
	// organizations/{organization}/endpointAttachments/{endpointAttachment}.
	Name pulumi.StringOutput `pulumi:"name"`
	// The Apigee Organization associated with the Apigee instance,
	// in the format `organizations/{{org_name}}`.
	OrgId pulumi.StringOutput `pulumi:"orgId"`
	// Format: projects/*/regions/*/serviceAttachments/*
	ServiceAttachment pulumi.StringOutput `pulumi:"serviceAttachment"`
}

Apigee Endpoint Attachment.

To get more information about EndpointAttachment, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.endpointAttachments/create) * How-to Guides

## Example Usage

### Apigee Endpoint Attachment Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/servicenetworking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := organizations.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		apigeeNetwork, err := compute.NewNetwork(ctx, "apigee_network", &compute.NetworkArgs{
			Name: pulumi.String("apigee-network"),
		})
		if err != nil {
			return err
		}
		apigeeRange, err := compute.NewGlobalAddress(ctx, "apigee_range", &compute.GlobalAddressArgs{
			Name:         pulumi.String("apigee-range"),
			Purpose:      pulumi.String("VPC_PEERING"),
			AddressType:  pulumi.String("INTERNAL"),
			PrefixLength: pulumi.Int(16),
			Network:      apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		_, err = servicenetworking.NewConnection(ctx, "apigee_vpc_connection", &servicenetworking.ConnectionArgs{
			Network: apigeeNetwork.ID(),
			Service: pulumi.String("servicenetworking.googleapis.com"),
			ReservedPeeringRanges: pulumi.StringArray{
				apigeeRange.Name,
			},
		})
		if err != nil {
			return err
		}
		apigeeOrg, err := apigee.NewOrganization(ctx, "apigee_org", &apigee.OrganizationArgs{
			AnalyticsRegion:   pulumi.String("us-central1"),
			ProjectId:         pulumi.String(current.Project),
			AuthorizedNetwork: apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		_, err = apigee.NewEndpointAttachment(ctx, "apigee_endpoint_attachment", &apigee.EndpointAttachmentArgs{
			OrgId:                apigeeOrg.ID(),
			EndpointAttachmentId: pulumi.String("test1"),
			Location:             pulumi.String("{google_compute_service_attachment location}"),
			ServiceAttachment:    pulumi.String("{google_compute_service_attachment id}"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

EndpointAttachment can be imported using any of these accepted formats:

* `{{org_id}}/endpointAttachments/{{endpoint_attachment_id}}`

* `{{org_id}}/{{endpoint_attachment_id}}`

When using the `pulumi import` command, EndpointAttachment can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/endpointAttachment:EndpointAttachment default {{org_id}}/endpointAttachments/{{endpoint_attachment_id}} ```

```sh $ pulumi import gcp:apigee/endpointAttachment:EndpointAttachment default {{org_id}}/{{endpoint_attachment_id}} ```

func GetEndpointAttachment

func GetEndpointAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EndpointAttachmentState, opts ...pulumi.ResourceOption) (*EndpointAttachment, error)

GetEndpointAttachment gets an existing EndpointAttachment 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 NewEndpointAttachment

func NewEndpointAttachment(ctx *pulumi.Context,
	name string, args *EndpointAttachmentArgs, opts ...pulumi.ResourceOption) (*EndpointAttachment, error)

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

func (*EndpointAttachment) ElementType

func (*EndpointAttachment) ElementType() reflect.Type

func (*EndpointAttachment) ToEndpointAttachmentOutput

func (i *EndpointAttachment) ToEndpointAttachmentOutput() EndpointAttachmentOutput

func (*EndpointAttachment) ToEndpointAttachmentOutputWithContext

func (i *EndpointAttachment) ToEndpointAttachmentOutputWithContext(ctx context.Context) EndpointAttachmentOutput

type EndpointAttachmentArgs

type EndpointAttachmentArgs struct {
	// ID of the endpoint attachment.
	//
	// ***
	EndpointAttachmentId pulumi.StringInput
	// Location of the endpoint attachment.
	Location pulumi.StringInput
	// The Apigee Organization associated with the Apigee instance,
	// in the format `organizations/{{org_name}}`.
	OrgId pulumi.StringInput
	// Format: projects/*/regions/*/serviceAttachments/*
	ServiceAttachment pulumi.StringInput
}

The set of arguments for constructing a EndpointAttachment resource.

func (EndpointAttachmentArgs) ElementType

func (EndpointAttachmentArgs) ElementType() reflect.Type

type EndpointAttachmentArray

type EndpointAttachmentArray []EndpointAttachmentInput

func (EndpointAttachmentArray) ElementType

func (EndpointAttachmentArray) ElementType() reflect.Type

func (EndpointAttachmentArray) ToEndpointAttachmentArrayOutput

func (i EndpointAttachmentArray) ToEndpointAttachmentArrayOutput() EndpointAttachmentArrayOutput

func (EndpointAttachmentArray) ToEndpointAttachmentArrayOutputWithContext

func (i EndpointAttachmentArray) ToEndpointAttachmentArrayOutputWithContext(ctx context.Context) EndpointAttachmentArrayOutput

type EndpointAttachmentArrayInput

type EndpointAttachmentArrayInput interface {
	pulumi.Input

	ToEndpointAttachmentArrayOutput() EndpointAttachmentArrayOutput
	ToEndpointAttachmentArrayOutputWithContext(context.Context) EndpointAttachmentArrayOutput
}

EndpointAttachmentArrayInput is an input type that accepts EndpointAttachmentArray and EndpointAttachmentArrayOutput values. You can construct a concrete instance of `EndpointAttachmentArrayInput` via:

EndpointAttachmentArray{ EndpointAttachmentArgs{...} }

type EndpointAttachmentArrayOutput

type EndpointAttachmentArrayOutput struct{ *pulumi.OutputState }

func (EndpointAttachmentArrayOutput) ElementType

func (EndpointAttachmentArrayOutput) Index

func (EndpointAttachmentArrayOutput) ToEndpointAttachmentArrayOutput

func (o EndpointAttachmentArrayOutput) ToEndpointAttachmentArrayOutput() EndpointAttachmentArrayOutput

func (EndpointAttachmentArrayOutput) ToEndpointAttachmentArrayOutputWithContext

func (o EndpointAttachmentArrayOutput) ToEndpointAttachmentArrayOutputWithContext(ctx context.Context) EndpointAttachmentArrayOutput

type EndpointAttachmentInput

type EndpointAttachmentInput interface {
	pulumi.Input

	ToEndpointAttachmentOutput() EndpointAttachmentOutput
	ToEndpointAttachmentOutputWithContext(ctx context.Context) EndpointAttachmentOutput
}

type EndpointAttachmentMap

type EndpointAttachmentMap map[string]EndpointAttachmentInput

func (EndpointAttachmentMap) ElementType

func (EndpointAttachmentMap) ElementType() reflect.Type

func (EndpointAttachmentMap) ToEndpointAttachmentMapOutput

func (i EndpointAttachmentMap) ToEndpointAttachmentMapOutput() EndpointAttachmentMapOutput

func (EndpointAttachmentMap) ToEndpointAttachmentMapOutputWithContext

func (i EndpointAttachmentMap) ToEndpointAttachmentMapOutputWithContext(ctx context.Context) EndpointAttachmentMapOutput

type EndpointAttachmentMapInput

type EndpointAttachmentMapInput interface {
	pulumi.Input

	ToEndpointAttachmentMapOutput() EndpointAttachmentMapOutput
	ToEndpointAttachmentMapOutputWithContext(context.Context) EndpointAttachmentMapOutput
}

EndpointAttachmentMapInput is an input type that accepts EndpointAttachmentMap and EndpointAttachmentMapOutput values. You can construct a concrete instance of `EndpointAttachmentMapInput` via:

EndpointAttachmentMap{ "key": EndpointAttachmentArgs{...} }

type EndpointAttachmentMapOutput

type EndpointAttachmentMapOutput struct{ *pulumi.OutputState }

func (EndpointAttachmentMapOutput) ElementType

func (EndpointAttachmentMapOutput) MapIndex

func (EndpointAttachmentMapOutput) ToEndpointAttachmentMapOutput

func (o EndpointAttachmentMapOutput) ToEndpointAttachmentMapOutput() EndpointAttachmentMapOutput

func (EndpointAttachmentMapOutput) ToEndpointAttachmentMapOutputWithContext

func (o EndpointAttachmentMapOutput) ToEndpointAttachmentMapOutputWithContext(ctx context.Context) EndpointAttachmentMapOutput

type EndpointAttachmentOutput

type EndpointAttachmentOutput struct{ *pulumi.OutputState }

func (EndpointAttachmentOutput) ConnectionState

func (o EndpointAttachmentOutput) ConnectionState() pulumi.StringOutput

State of the endpoint attachment connection to the service attachment.

func (EndpointAttachmentOutput) ElementType

func (EndpointAttachmentOutput) ElementType() reflect.Type

func (EndpointAttachmentOutput) EndpointAttachmentId

func (o EndpointAttachmentOutput) EndpointAttachmentId() pulumi.StringOutput

ID of the endpoint attachment.

***

func (EndpointAttachmentOutput) Host

Host that can be used in either HTTP Target Endpoint directly, or as the host in Target Server.

func (EndpointAttachmentOutput) Location

Location of the endpoint attachment.

func (EndpointAttachmentOutput) Name

Name of the Endpoint Attachment in the following format: organizations/{organization}/endpointAttachments/{endpointAttachment}.

func (EndpointAttachmentOutput) OrgId

The Apigee Organization associated with the Apigee instance, in the format `organizations/{{org_name}}`.

func (EndpointAttachmentOutput) ServiceAttachment

func (o EndpointAttachmentOutput) ServiceAttachment() pulumi.StringOutput

Format: projects/*/regions/*/serviceAttachments/*

func (EndpointAttachmentOutput) ToEndpointAttachmentOutput

func (o EndpointAttachmentOutput) ToEndpointAttachmentOutput() EndpointAttachmentOutput

func (EndpointAttachmentOutput) ToEndpointAttachmentOutputWithContext

func (o EndpointAttachmentOutput) ToEndpointAttachmentOutputWithContext(ctx context.Context) EndpointAttachmentOutput

type EndpointAttachmentState

type EndpointAttachmentState struct {
	// State of the endpoint attachment connection to the service attachment.
	ConnectionState pulumi.StringPtrInput
	// ID of the endpoint attachment.
	//
	// ***
	EndpointAttachmentId pulumi.StringPtrInput
	// Host that can be used in either HTTP Target Endpoint directly, or as the host in Target Server.
	Host pulumi.StringPtrInput
	// Location of the endpoint attachment.
	Location pulumi.StringPtrInput
	// Name of the Endpoint Attachment in the following format:
	// organizations/{organization}/endpointAttachments/{endpointAttachment}.
	Name pulumi.StringPtrInput
	// The Apigee Organization associated with the Apigee instance,
	// in the format `organizations/{{org_name}}`.
	OrgId pulumi.StringPtrInput
	// Format: projects/*/regions/*/serviceAttachments/*
	ServiceAttachment pulumi.StringPtrInput
}

func (EndpointAttachmentState) ElementType

func (EndpointAttachmentState) ElementType() reflect.Type

type EnvGroup

type EnvGroup struct {
	pulumi.CustomResourceState

	// Hostnames of the environment group.
	Hostnames pulumi.StringArrayOutput `pulumi:"hostnames"`
	// The resource ID of the environment group.
	Name pulumi.StringOutput `pulumi:"name"`
	// The Apigee Organization associated with the Apigee environment group,
	// in the format `organizations/{{org_name}}`.
	//
	// ***
	OrgId pulumi.StringOutput `pulumi:"orgId"`
}

An `Environment group` in Apigee.

To get more information about Envgroup, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.envgroups/create) * How-to Guides

## Example Usage

### Apigee Environment Group Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/servicenetworking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := organizations.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		apigeeNetwork, err := compute.NewNetwork(ctx, "apigee_network", &compute.NetworkArgs{
			Name: pulumi.String("apigee-network"),
		})
		if err != nil {
			return err
		}
		apigeeRange, err := compute.NewGlobalAddress(ctx, "apigee_range", &compute.GlobalAddressArgs{
			Name:         pulumi.String("apigee-range"),
			Purpose:      pulumi.String("VPC_PEERING"),
			AddressType:  pulumi.String("INTERNAL"),
			PrefixLength: pulumi.Int(16),
			Network:      apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		_, err = servicenetworking.NewConnection(ctx, "apigee_vpc_connection", &servicenetworking.ConnectionArgs{
			Network: apigeeNetwork.ID(),
			Service: pulumi.String("servicenetworking.googleapis.com"),
			ReservedPeeringRanges: pulumi.StringArray{
				apigeeRange.Name,
			},
		})
		if err != nil {
			return err
		}
		apigeeOrg, err := apigee.NewOrganization(ctx, "apigee_org", &apigee.OrganizationArgs{
			AnalyticsRegion:   pulumi.String("us-central1"),
			ProjectId:         pulumi.String(current.Project),
			AuthorizedNetwork: apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		_, err = apigee.NewEnvGroup(ctx, "env_grp", &apigee.EnvGroupArgs{
			Name: pulumi.String("my-envgroup"),
			Hostnames: pulumi.StringArray{
				pulumi.String("abc.foo.com"),
			},
			OrgId: apigeeOrg.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Envgroup can be imported using any of these accepted formats:

* `{{org_id}}/envgroups/{{name}}`

* `{{org_id}}/{{name}}`

When using the `pulumi import` command, Envgroup can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/envGroup:EnvGroup default {{org_id}}/envgroups/{{name}} ```

```sh $ pulumi import gcp:apigee/envGroup:EnvGroup default {{org_id}}/{{name}} ```

func GetEnvGroup

func GetEnvGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EnvGroupState, opts ...pulumi.ResourceOption) (*EnvGroup, error)

GetEnvGroup gets an existing EnvGroup 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 NewEnvGroup

func NewEnvGroup(ctx *pulumi.Context,
	name string, args *EnvGroupArgs, opts ...pulumi.ResourceOption) (*EnvGroup, error)

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

func (*EnvGroup) ElementType

func (*EnvGroup) ElementType() reflect.Type

func (*EnvGroup) ToEnvGroupOutput

func (i *EnvGroup) ToEnvGroupOutput() EnvGroupOutput

func (*EnvGroup) ToEnvGroupOutputWithContext

func (i *EnvGroup) ToEnvGroupOutputWithContext(ctx context.Context) EnvGroupOutput

type EnvGroupArgs

type EnvGroupArgs struct {
	// Hostnames of the environment group.
	Hostnames pulumi.StringArrayInput
	// The resource ID of the environment group.
	Name pulumi.StringPtrInput
	// The Apigee Organization associated with the Apigee environment group,
	// in the format `organizations/{{org_name}}`.
	//
	// ***
	OrgId pulumi.StringInput
}

The set of arguments for constructing a EnvGroup resource.

func (EnvGroupArgs) ElementType

func (EnvGroupArgs) ElementType() reflect.Type

type EnvGroupArray

type EnvGroupArray []EnvGroupInput

func (EnvGroupArray) ElementType

func (EnvGroupArray) ElementType() reflect.Type

func (EnvGroupArray) ToEnvGroupArrayOutput

func (i EnvGroupArray) ToEnvGroupArrayOutput() EnvGroupArrayOutput

func (EnvGroupArray) ToEnvGroupArrayOutputWithContext

func (i EnvGroupArray) ToEnvGroupArrayOutputWithContext(ctx context.Context) EnvGroupArrayOutput

type EnvGroupArrayInput

type EnvGroupArrayInput interface {
	pulumi.Input

	ToEnvGroupArrayOutput() EnvGroupArrayOutput
	ToEnvGroupArrayOutputWithContext(context.Context) EnvGroupArrayOutput
}

EnvGroupArrayInput is an input type that accepts EnvGroupArray and EnvGroupArrayOutput values. You can construct a concrete instance of `EnvGroupArrayInput` via:

EnvGroupArray{ EnvGroupArgs{...} }

type EnvGroupArrayOutput

type EnvGroupArrayOutput struct{ *pulumi.OutputState }

func (EnvGroupArrayOutput) ElementType

func (EnvGroupArrayOutput) ElementType() reflect.Type

func (EnvGroupArrayOutput) Index

func (EnvGroupArrayOutput) ToEnvGroupArrayOutput

func (o EnvGroupArrayOutput) ToEnvGroupArrayOutput() EnvGroupArrayOutput

func (EnvGroupArrayOutput) ToEnvGroupArrayOutputWithContext

func (o EnvGroupArrayOutput) ToEnvGroupArrayOutputWithContext(ctx context.Context) EnvGroupArrayOutput

type EnvGroupAttachment

type EnvGroupAttachment struct {
	pulumi.CustomResourceState

	// The Apigee environment group associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/envgroups/{{envgroup_name}}`.
	//
	// ***
	EnvgroupId pulumi.StringOutput `pulumi:"envgroupId"`
	// The resource ID of the environment.
	Environment pulumi.StringOutput `pulumi:"environment"`
	// The name of the newly created  attachment (output parameter).
	Name pulumi.StringOutput `pulumi:"name"`
}

An `Environment Group attachment` in Apigee.

To get more information about EnvgroupAttachment, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.envgroups.attachments/create) * How-to Guides

## Example Usage

## Import

EnvgroupAttachment can be imported using any of these accepted formats:

* `{{envgroup_id}}/attachments/{{name}}`

* `{{envgroup_id}}/{{name}}`

When using the `pulumi import` command, EnvgroupAttachment can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/envGroupAttachment:EnvGroupAttachment default {{envgroup_id}}/attachments/{{name}} ```

```sh $ pulumi import gcp:apigee/envGroupAttachment:EnvGroupAttachment default {{envgroup_id}}/{{name}} ```

func GetEnvGroupAttachment

func GetEnvGroupAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EnvGroupAttachmentState, opts ...pulumi.ResourceOption) (*EnvGroupAttachment, error)

GetEnvGroupAttachment gets an existing EnvGroupAttachment 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 NewEnvGroupAttachment

func NewEnvGroupAttachment(ctx *pulumi.Context,
	name string, args *EnvGroupAttachmentArgs, opts ...pulumi.ResourceOption) (*EnvGroupAttachment, error)

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

func (*EnvGroupAttachment) ElementType

func (*EnvGroupAttachment) ElementType() reflect.Type

func (*EnvGroupAttachment) ToEnvGroupAttachmentOutput

func (i *EnvGroupAttachment) ToEnvGroupAttachmentOutput() EnvGroupAttachmentOutput

func (*EnvGroupAttachment) ToEnvGroupAttachmentOutputWithContext

func (i *EnvGroupAttachment) ToEnvGroupAttachmentOutputWithContext(ctx context.Context) EnvGroupAttachmentOutput

type EnvGroupAttachmentArgs

type EnvGroupAttachmentArgs struct {
	// The Apigee environment group associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/envgroups/{{envgroup_name}}`.
	//
	// ***
	EnvgroupId pulumi.StringInput
	// The resource ID of the environment.
	Environment pulumi.StringInput
}

The set of arguments for constructing a EnvGroupAttachment resource.

func (EnvGroupAttachmentArgs) ElementType

func (EnvGroupAttachmentArgs) ElementType() reflect.Type

type EnvGroupAttachmentArray

type EnvGroupAttachmentArray []EnvGroupAttachmentInput

func (EnvGroupAttachmentArray) ElementType

func (EnvGroupAttachmentArray) ElementType() reflect.Type

func (EnvGroupAttachmentArray) ToEnvGroupAttachmentArrayOutput

func (i EnvGroupAttachmentArray) ToEnvGroupAttachmentArrayOutput() EnvGroupAttachmentArrayOutput

func (EnvGroupAttachmentArray) ToEnvGroupAttachmentArrayOutputWithContext

func (i EnvGroupAttachmentArray) ToEnvGroupAttachmentArrayOutputWithContext(ctx context.Context) EnvGroupAttachmentArrayOutput

type EnvGroupAttachmentArrayInput

type EnvGroupAttachmentArrayInput interface {
	pulumi.Input

	ToEnvGroupAttachmentArrayOutput() EnvGroupAttachmentArrayOutput
	ToEnvGroupAttachmentArrayOutputWithContext(context.Context) EnvGroupAttachmentArrayOutput
}

EnvGroupAttachmentArrayInput is an input type that accepts EnvGroupAttachmentArray and EnvGroupAttachmentArrayOutput values. You can construct a concrete instance of `EnvGroupAttachmentArrayInput` via:

EnvGroupAttachmentArray{ EnvGroupAttachmentArgs{...} }

type EnvGroupAttachmentArrayOutput

type EnvGroupAttachmentArrayOutput struct{ *pulumi.OutputState }

func (EnvGroupAttachmentArrayOutput) ElementType

func (EnvGroupAttachmentArrayOutput) Index

func (EnvGroupAttachmentArrayOutput) ToEnvGroupAttachmentArrayOutput

func (o EnvGroupAttachmentArrayOutput) ToEnvGroupAttachmentArrayOutput() EnvGroupAttachmentArrayOutput

func (EnvGroupAttachmentArrayOutput) ToEnvGroupAttachmentArrayOutputWithContext

func (o EnvGroupAttachmentArrayOutput) ToEnvGroupAttachmentArrayOutputWithContext(ctx context.Context) EnvGroupAttachmentArrayOutput

type EnvGroupAttachmentInput

type EnvGroupAttachmentInput interface {
	pulumi.Input

	ToEnvGroupAttachmentOutput() EnvGroupAttachmentOutput
	ToEnvGroupAttachmentOutputWithContext(ctx context.Context) EnvGroupAttachmentOutput
}

type EnvGroupAttachmentMap

type EnvGroupAttachmentMap map[string]EnvGroupAttachmentInput

func (EnvGroupAttachmentMap) ElementType

func (EnvGroupAttachmentMap) ElementType() reflect.Type

func (EnvGroupAttachmentMap) ToEnvGroupAttachmentMapOutput

func (i EnvGroupAttachmentMap) ToEnvGroupAttachmentMapOutput() EnvGroupAttachmentMapOutput

func (EnvGroupAttachmentMap) ToEnvGroupAttachmentMapOutputWithContext

func (i EnvGroupAttachmentMap) ToEnvGroupAttachmentMapOutputWithContext(ctx context.Context) EnvGroupAttachmentMapOutput

type EnvGroupAttachmentMapInput

type EnvGroupAttachmentMapInput interface {
	pulumi.Input

	ToEnvGroupAttachmentMapOutput() EnvGroupAttachmentMapOutput
	ToEnvGroupAttachmentMapOutputWithContext(context.Context) EnvGroupAttachmentMapOutput
}

EnvGroupAttachmentMapInput is an input type that accepts EnvGroupAttachmentMap and EnvGroupAttachmentMapOutput values. You can construct a concrete instance of `EnvGroupAttachmentMapInput` via:

EnvGroupAttachmentMap{ "key": EnvGroupAttachmentArgs{...} }

type EnvGroupAttachmentMapOutput

type EnvGroupAttachmentMapOutput struct{ *pulumi.OutputState }

func (EnvGroupAttachmentMapOutput) ElementType

func (EnvGroupAttachmentMapOutput) MapIndex

func (EnvGroupAttachmentMapOutput) ToEnvGroupAttachmentMapOutput

func (o EnvGroupAttachmentMapOutput) ToEnvGroupAttachmentMapOutput() EnvGroupAttachmentMapOutput

func (EnvGroupAttachmentMapOutput) ToEnvGroupAttachmentMapOutputWithContext

func (o EnvGroupAttachmentMapOutput) ToEnvGroupAttachmentMapOutputWithContext(ctx context.Context) EnvGroupAttachmentMapOutput

type EnvGroupAttachmentOutput

type EnvGroupAttachmentOutput struct{ *pulumi.OutputState }

func (EnvGroupAttachmentOutput) ElementType

func (EnvGroupAttachmentOutput) ElementType() reflect.Type

func (EnvGroupAttachmentOutput) EnvgroupId

The Apigee environment group associated with the Apigee environment, in the format `organizations/{{org_name}}/envgroups/{{envgroup_name}}`.

***

func (EnvGroupAttachmentOutput) Environment

The resource ID of the environment.

func (EnvGroupAttachmentOutput) Name

The name of the newly created attachment (output parameter).

func (EnvGroupAttachmentOutput) ToEnvGroupAttachmentOutput

func (o EnvGroupAttachmentOutput) ToEnvGroupAttachmentOutput() EnvGroupAttachmentOutput

func (EnvGroupAttachmentOutput) ToEnvGroupAttachmentOutputWithContext

func (o EnvGroupAttachmentOutput) ToEnvGroupAttachmentOutputWithContext(ctx context.Context) EnvGroupAttachmentOutput

type EnvGroupAttachmentState

type EnvGroupAttachmentState struct {
	// The Apigee environment group associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/envgroups/{{envgroup_name}}`.
	//
	// ***
	EnvgroupId pulumi.StringPtrInput
	// The resource ID of the environment.
	Environment pulumi.StringPtrInput
	// The name of the newly created  attachment (output parameter).
	Name pulumi.StringPtrInput
}

func (EnvGroupAttachmentState) ElementType

func (EnvGroupAttachmentState) ElementType() reflect.Type

type EnvGroupInput

type EnvGroupInput interface {
	pulumi.Input

	ToEnvGroupOutput() EnvGroupOutput
	ToEnvGroupOutputWithContext(ctx context.Context) EnvGroupOutput
}

type EnvGroupMap

type EnvGroupMap map[string]EnvGroupInput

func (EnvGroupMap) ElementType

func (EnvGroupMap) ElementType() reflect.Type

func (EnvGroupMap) ToEnvGroupMapOutput

func (i EnvGroupMap) ToEnvGroupMapOutput() EnvGroupMapOutput

func (EnvGroupMap) ToEnvGroupMapOutputWithContext

func (i EnvGroupMap) ToEnvGroupMapOutputWithContext(ctx context.Context) EnvGroupMapOutput

type EnvGroupMapInput

type EnvGroupMapInput interface {
	pulumi.Input

	ToEnvGroupMapOutput() EnvGroupMapOutput
	ToEnvGroupMapOutputWithContext(context.Context) EnvGroupMapOutput
}

EnvGroupMapInput is an input type that accepts EnvGroupMap and EnvGroupMapOutput values. You can construct a concrete instance of `EnvGroupMapInput` via:

EnvGroupMap{ "key": EnvGroupArgs{...} }

type EnvGroupMapOutput

type EnvGroupMapOutput struct{ *pulumi.OutputState }

func (EnvGroupMapOutput) ElementType

func (EnvGroupMapOutput) ElementType() reflect.Type

func (EnvGroupMapOutput) MapIndex

func (EnvGroupMapOutput) ToEnvGroupMapOutput

func (o EnvGroupMapOutput) ToEnvGroupMapOutput() EnvGroupMapOutput

func (EnvGroupMapOutput) ToEnvGroupMapOutputWithContext

func (o EnvGroupMapOutput) ToEnvGroupMapOutputWithContext(ctx context.Context) EnvGroupMapOutput

type EnvGroupOutput

type EnvGroupOutput struct{ *pulumi.OutputState }

func (EnvGroupOutput) ElementType

func (EnvGroupOutput) ElementType() reflect.Type

func (EnvGroupOutput) Hostnames

func (o EnvGroupOutput) Hostnames() pulumi.StringArrayOutput

Hostnames of the environment group.

func (EnvGroupOutput) Name

The resource ID of the environment group.

func (EnvGroupOutput) OrgId

The Apigee Organization associated with the Apigee environment group, in the format `organizations/{{org_name}}`.

***

func (EnvGroupOutput) ToEnvGroupOutput

func (o EnvGroupOutput) ToEnvGroupOutput() EnvGroupOutput

func (EnvGroupOutput) ToEnvGroupOutputWithContext

func (o EnvGroupOutput) ToEnvGroupOutputWithContext(ctx context.Context) EnvGroupOutput

type EnvGroupState

type EnvGroupState struct {
	// Hostnames of the environment group.
	Hostnames pulumi.StringArrayInput
	// The resource ID of the environment group.
	Name pulumi.StringPtrInput
	// The Apigee Organization associated with the Apigee environment group,
	// in the format `organizations/{{org_name}}`.
	//
	// ***
	OrgId pulumi.StringPtrInput
}

func (EnvGroupState) ElementType

func (EnvGroupState) ElementType() reflect.Type

type EnvKeystore

type EnvKeystore struct {
	pulumi.CustomResourceState

	// Aliases in this keystore.
	Aliases pulumi.StringArrayOutput `pulumi:"aliases"`
	// The Apigee environment group associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/environments/{{env_name}}`.
	//
	// ***
	EnvId pulumi.StringOutput `pulumi:"envId"`
	// The name of the newly created keystore.
	Name pulumi.StringOutput `pulumi:"name"`
}

An `Environment KeyStore` in Apigee.

To get more information about EnvKeystore, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.environments.keystores/create) * How-to Guides

## Import

EnvKeystore can be imported using any of these accepted formats:

* `{{env_id}}/keystores/{{name}}`

* `{{env_id}}/{{name}}`

When using the `pulumi import` command, EnvKeystore can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/envKeystore:EnvKeystore default {{env_id}}/keystores/{{name}} ```

```sh $ pulumi import gcp:apigee/envKeystore:EnvKeystore default {{env_id}}/{{name}} ```

func GetEnvKeystore

func GetEnvKeystore(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EnvKeystoreState, opts ...pulumi.ResourceOption) (*EnvKeystore, error)

GetEnvKeystore gets an existing EnvKeystore 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 NewEnvKeystore

func NewEnvKeystore(ctx *pulumi.Context,
	name string, args *EnvKeystoreArgs, opts ...pulumi.ResourceOption) (*EnvKeystore, error)

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

func (*EnvKeystore) ElementType

func (*EnvKeystore) ElementType() reflect.Type

func (*EnvKeystore) ToEnvKeystoreOutput

func (i *EnvKeystore) ToEnvKeystoreOutput() EnvKeystoreOutput

func (*EnvKeystore) ToEnvKeystoreOutputWithContext

func (i *EnvKeystore) ToEnvKeystoreOutputWithContext(ctx context.Context) EnvKeystoreOutput

type EnvKeystoreArgs

type EnvKeystoreArgs struct {
	// The Apigee environment group associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/environments/{{env_name}}`.
	//
	// ***
	EnvId pulumi.StringInput
	// The name of the newly created keystore.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a EnvKeystore resource.

func (EnvKeystoreArgs) ElementType

func (EnvKeystoreArgs) ElementType() reflect.Type

type EnvKeystoreArray

type EnvKeystoreArray []EnvKeystoreInput

func (EnvKeystoreArray) ElementType

func (EnvKeystoreArray) ElementType() reflect.Type

func (EnvKeystoreArray) ToEnvKeystoreArrayOutput

func (i EnvKeystoreArray) ToEnvKeystoreArrayOutput() EnvKeystoreArrayOutput

func (EnvKeystoreArray) ToEnvKeystoreArrayOutputWithContext

func (i EnvKeystoreArray) ToEnvKeystoreArrayOutputWithContext(ctx context.Context) EnvKeystoreArrayOutput

type EnvKeystoreArrayInput

type EnvKeystoreArrayInput interface {
	pulumi.Input

	ToEnvKeystoreArrayOutput() EnvKeystoreArrayOutput
	ToEnvKeystoreArrayOutputWithContext(context.Context) EnvKeystoreArrayOutput
}

EnvKeystoreArrayInput is an input type that accepts EnvKeystoreArray and EnvKeystoreArrayOutput values. You can construct a concrete instance of `EnvKeystoreArrayInput` via:

EnvKeystoreArray{ EnvKeystoreArgs{...} }

type EnvKeystoreArrayOutput

type EnvKeystoreArrayOutput struct{ *pulumi.OutputState }

func (EnvKeystoreArrayOutput) ElementType

func (EnvKeystoreArrayOutput) ElementType() reflect.Type

func (EnvKeystoreArrayOutput) Index

func (EnvKeystoreArrayOutput) ToEnvKeystoreArrayOutput

func (o EnvKeystoreArrayOutput) ToEnvKeystoreArrayOutput() EnvKeystoreArrayOutput

func (EnvKeystoreArrayOutput) ToEnvKeystoreArrayOutputWithContext

func (o EnvKeystoreArrayOutput) ToEnvKeystoreArrayOutputWithContext(ctx context.Context) EnvKeystoreArrayOutput

type EnvKeystoreInput

type EnvKeystoreInput interface {
	pulumi.Input

	ToEnvKeystoreOutput() EnvKeystoreOutput
	ToEnvKeystoreOutputWithContext(ctx context.Context) EnvKeystoreOutput
}

type EnvKeystoreMap

type EnvKeystoreMap map[string]EnvKeystoreInput

func (EnvKeystoreMap) ElementType

func (EnvKeystoreMap) ElementType() reflect.Type

func (EnvKeystoreMap) ToEnvKeystoreMapOutput

func (i EnvKeystoreMap) ToEnvKeystoreMapOutput() EnvKeystoreMapOutput

func (EnvKeystoreMap) ToEnvKeystoreMapOutputWithContext

func (i EnvKeystoreMap) ToEnvKeystoreMapOutputWithContext(ctx context.Context) EnvKeystoreMapOutput

type EnvKeystoreMapInput

type EnvKeystoreMapInput interface {
	pulumi.Input

	ToEnvKeystoreMapOutput() EnvKeystoreMapOutput
	ToEnvKeystoreMapOutputWithContext(context.Context) EnvKeystoreMapOutput
}

EnvKeystoreMapInput is an input type that accepts EnvKeystoreMap and EnvKeystoreMapOutput values. You can construct a concrete instance of `EnvKeystoreMapInput` via:

EnvKeystoreMap{ "key": EnvKeystoreArgs{...} }

type EnvKeystoreMapOutput

type EnvKeystoreMapOutput struct{ *pulumi.OutputState }

func (EnvKeystoreMapOutput) ElementType

func (EnvKeystoreMapOutput) ElementType() reflect.Type

func (EnvKeystoreMapOutput) MapIndex

func (EnvKeystoreMapOutput) ToEnvKeystoreMapOutput

func (o EnvKeystoreMapOutput) ToEnvKeystoreMapOutput() EnvKeystoreMapOutput

func (EnvKeystoreMapOutput) ToEnvKeystoreMapOutputWithContext

func (o EnvKeystoreMapOutput) ToEnvKeystoreMapOutputWithContext(ctx context.Context) EnvKeystoreMapOutput

type EnvKeystoreOutput

type EnvKeystoreOutput struct{ *pulumi.OutputState }

func (EnvKeystoreOutput) Aliases

Aliases in this keystore.

func (EnvKeystoreOutput) ElementType

func (EnvKeystoreOutput) ElementType() reflect.Type

func (EnvKeystoreOutput) EnvId

The Apigee environment group associated with the Apigee environment, in the format `organizations/{{org_name}}/environments/{{env_name}}`.

***

func (EnvKeystoreOutput) Name

The name of the newly created keystore.

func (EnvKeystoreOutput) ToEnvKeystoreOutput

func (o EnvKeystoreOutput) ToEnvKeystoreOutput() EnvKeystoreOutput

func (EnvKeystoreOutput) ToEnvKeystoreOutputWithContext

func (o EnvKeystoreOutput) ToEnvKeystoreOutputWithContext(ctx context.Context) EnvKeystoreOutput

type EnvKeystoreState

type EnvKeystoreState struct {
	// Aliases in this keystore.
	Aliases pulumi.StringArrayInput
	// The Apigee environment group associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/environments/{{env_name}}`.
	//
	// ***
	EnvId pulumi.StringPtrInput
	// The name of the newly created keystore.
	Name pulumi.StringPtrInput
}

func (EnvKeystoreState) ElementType

func (EnvKeystoreState) ElementType() reflect.Type

type EnvReferences

type EnvReferences struct {
	pulumi.CustomResourceState

	// Optional. A human-readable description of this reference.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The Apigee environment group associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/environments/{{env_name}}`.
	//
	// ***
	EnvId pulumi.StringOutput `pulumi:"envId"`
	// Required. The resource id of this reference. Values must match the regular expression [\w\s-.]+.
	Name pulumi.StringOutput `pulumi:"name"`
	// Required. The id of the resource to which this reference refers. Must be the id of a resource that exists in the parent environment and is of the given resourceType.
	Refers pulumi.StringOutput `pulumi:"refers"`
	// The type of resource referred to by this reference. Valid values are 'KeyStore' or 'TrustStore'.
	ResourceType pulumi.StringOutput `pulumi:"resourceType"`
}

An `Environment Reference` in Apigee.

To get more information about EnvReferences, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.environments.references/create) * How-to Guides

## Import

EnvReferences can be imported using any of these accepted formats:

* `{{env_id}}/references/{{name}}`

* `{{env_id}}/{{name}}`

When using the `pulumi import` command, EnvReferences can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/envReferences:EnvReferences default {{env_id}}/references/{{name}} ```

```sh $ pulumi import gcp:apigee/envReferences:EnvReferences default {{env_id}}/{{name}} ```

func GetEnvReferences

func GetEnvReferences(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EnvReferencesState, opts ...pulumi.ResourceOption) (*EnvReferences, error)

GetEnvReferences gets an existing EnvReferences 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 NewEnvReferences

func NewEnvReferences(ctx *pulumi.Context,
	name string, args *EnvReferencesArgs, opts ...pulumi.ResourceOption) (*EnvReferences, error)

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

func (*EnvReferences) ElementType

func (*EnvReferences) ElementType() reflect.Type

func (*EnvReferences) ToEnvReferencesOutput

func (i *EnvReferences) ToEnvReferencesOutput() EnvReferencesOutput

func (*EnvReferences) ToEnvReferencesOutputWithContext

func (i *EnvReferences) ToEnvReferencesOutputWithContext(ctx context.Context) EnvReferencesOutput

type EnvReferencesArgs

type EnvReferencesArgs struct {
	// Optional. A human-readable description of this reference.
	Description pulumi.StringPtrInput
	// The Apigee environment group associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/environments/{{env_name}}`.
	//
	// ***
	EnvId pulumi.StringInput
	// Required. The resource id of this reference. Values must match the regular expression [\w\s-.]+.
	Name pulumi.StringPtrInput
	// Required. The id of the resource to which this reference refers. Must be the id of a resource that exists in the parent environment and is of the given resourceType.
	Refers pulumi.StringInput
	// The type of resource referred to by this reference. Valid values are 'KeyStore' or 'TrustStore'.
	ResourceType pulumi.StringInput
}

The set of arguments for constructing a EnvReferences resource.

func (EnvReferencesArgs) ElementType

func (EnvReferencesArgs) ElementType() reflect.Type

type EnvReferencesArray

type EnvReferencesArray []EnvReferencesInput

func (EnvReferencesArray) ElementType

func (EnvReferencesArray) ElementType() reflect.Type

func (EnvReferencesArray) ToEnvReferencesArrayOutput

func (i EnvReferencesArray) ToEnvReferencesArrayOutput() EnvReferencesArrayOutput

func (EnvReferencesArray) ToEnvReferencesArrayOutputWithContext

func (i EnvReferencesArray) ToEnvReferencesArrayOutputWithContext(ctx context.Context) EnvReferencesArrayOutput

type EnvReferencesArrayInput

type EnvReferencesArrayInput interface {
	pulumi.Input

	ToEnvReferencesArrayOutput() EnvReferencesArrayOutput
	ToEnvReferencesArrayOutputWithContext(context.Context) EnvReferencesArrayOutput
}

EnvReferencesArrayInput is an input type that accepts EnvReferencesArray and EnvReferencesArrayOutput values. You can construct a concrete instance of `EnvReferencesArrayInput` via:

EnvReferencesArray{ EnvReferencesArgs{...} }

type EnvReferencesArrayOutput

type EnvReferencesArrayOutput struct{ *pulumi.OutputState }

func (EnvReferencesArrayOutput) ElementType

func (EnvReferencesArrayOutput) ElementType() reflect.Type

func (EnvReferencesArrayOutput) Index

func (EnvReferencesArrayOutput) ToEnvReferencesArrayOutput

func (o EnvReferencesArrayOutput) ToEnvReferencesArrayOutput() EnvReferencesArrayOutput

func (EnvReferencesArrayOutput) ToEnvReferencesArrayOutputWithContext

func (o EnvReferencesArrayOutput) ToEnvReferencesArrayOutputWithContext(ctx context.Context) EnvReferencesArrayOutput

type EnvReferencesInput

type EnvReferencesInput interface {
	pulumi.Input

	ToEnvReferencesOutput() EnvReferencesOutput
	ToEnvReferencesOutputWithContext(ctx context.Context) EnvReferencesOutput
}

type EnvReferencesMap

type EnvReferencesMap map[string]EnvReferencesInput

func (EnvReferencesMap) ElementType

func (EnvReferencesMap) ElementType() reflect.Type

func (EnvReferencesMap) ToEnvReferencesMapOutput

func (i EnvReferencesMap) ToEnvReferencesMapOutput() EnvReferencesMapOutput

func (EnvReferencesMap) ToEnvReferencesMapOutputWithContext

func (i EnvReferencesMap) ToEnvReferencesMapOutputWithContext(ctx context.Context) EnvReferencesMapOutput

type EnvReferencesMapInput

type EnvReferencesMapInput interface {
	pulumi.Input

	ToEnvReferencesMapOutput() EnvReferencesMapOutput
	ToEnvReferencesMapOutputWithContext(context.Context) EnvReferencesMapOutput
}

EnvReferencesMapInput is an input type that accepts EnvReferencesMap and EnvReferencesMapOutput values. You can construct a concrete instance of `EnvReferencesMapInput` via:

EnvReferencesMap{ "key": EnvReferencesArgs{...} }

type EnvReferencesMapOutput

type EnvReferencesMapOutput struct{ *pulumi.OutputState }

func (EnvReferencesMapOutput) ElementType

func (EnvReferencesMapOutput) ElementType() reflect.Type

func (EnvReferencesMapOutput) MapIndex

func (EnvReferencesMapOutput) ToEnvReferencesMapOutput

func (o EnvReferencesMapOutput) ToEnvReferencesMapOutput() EnvReferencesMapOutput

func (EnvReferencesMapOutput) ToEnvReferencesMapOutputWithContext

func (o EnvReferencesMapOutput) ToEnvReferencesMapOutputWithContext(ctx context.Context) EnvReferencesMapOutput

type EnvReferencesOutput

type EnvReferencesOutput struct{ *pulumi.OutputState }

func (EnvReferencesOutput) Description

func (o EnvReferencesOutput) Description() pulumi.StringPtrOutput

Optional. A human-readable description of this reference.

func (EnvReferencesOutput) ElementType

func (EnvReferencesOutput) ElementType() reflect.Type

func (EnvReferencesOutput) EnvId

The Apigee environment group associated with the Apigee environment, in the format `organizations/{{org_name}}/environments/{{env_name}}`.

***

func (EnvReferencesOutput) Name

Required. The resource id of this reference. Values must match the regular expression [\w\s-.]+.

func (EnvReferencesOutput) Refers

Required. The id of the resource to which this reference refers. Must be the id of a resource that exists in the parent environment and is of the given resourceType.

func (EnvReferencesOutput) ResourceType

func (o EnvReferencesOutput) ResourceType() pulumi.StringOutput

The type of resource referred to by this reference. Valid values are 'KeyStore' or 'TrustStore'.

func (EnvReferencesOutput) ToEnvReferencesOutput

func (o EnvReferencesOutput) ToEnvReferencesOutput() EnvReferencesOutput

func (EnvReferencesOutput) ToEnvReferencesOutputWithContext

func (o EnvReferencesOutput) ToEnvReferencesOutputWithContext(ctx context.Context) EnvReferencesOutput

type EnvReferencesState

type EnvReferencesState struct {
	// Optional. A human-readable description of this reference.
	Description pulumi.StringPtrInput
	// The Apigee environment group associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/environments/{{env_name}}`.
	//
	// ***
	EnvId pulumi.StringPtrInput
	// Required. The resource id of this reference. Values must match the regular expression [\w\s-.]+.
	Name pulumi.StringPtrInput
	// Required. The id of the resource to which this reference refers. Must be the id of a resource that exists in the parent environment and is of the given resourceType.
	Refers pulumi.StringPtrInput
	// The type of resource referred to by this reference. Valid values are 'KeyStore' or 'TrustStore'.
	ResourceType pulumi.StringPtrInput
}

func (EnvReferencesState) ElementType

func (EnvReferencesState) ElementType() reflect.Type

type Environment

type Environment struct {
	pulumi.CustomResourceState

	// Optional. API Proxy type supported by the environment. The type can be set when creating
	// the Environment and cannot be changed.
	// Possible values are: `API_PROXY_TYPE_UNSPECIFIED`, `PROGRAMMABLE`, `CONFIGURABLE`.
	ApiProxyType pulumi.StringOutput `pulumi:"apiProxyType"`
	// Optional. Deployment type supported by the environment. The deployment type can be
	// set when creating the environment and cannot be changed. When you enable archive
	// deployment, you will be prevented from performing a subset of actions within the
	// environment, including:
	// Managing the deployment of API proxy or shared flow revisions;
	// Creating, updating, or deleting resource files;
	// Creating, updating, or deleting target servers.
	// Possible values are: `DEPLOYMENT_TYPE_UNSPECIFIED`, `PROXY`, `ARCHIVE`.
	DeploymentType pulumi.StringOutput `pulumi:"deploymentType"`
	// Description of the environment.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Display name of the environment.
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// The resource ID of the environment.
	Name pulumi.StringOutput `pulumi:"name"`
	// NodeConfig for setting the min/max number of nodes associated with the environment.
	// Structure is documented below.
	NodeConfig EnvironmentNodeConfigOutput `pulumi:"nodeConfig"`
	// The Apigee Organization associated with the Apigee environment,
	// in the format `organizations/{{org_name}}`.
	//
	// ***
	OrgId pulumi.StringOutput `pulumi:"orgId"`
	// Types that can be selected for an Environment. Each of the types are
	// limited by capability and capacity. Refer to Apigee's public documentation
	// to understand about each of these types in details.
	// An Apigee org can support heterogeneous Environments.
	// Possible values are: `ENVIRONMENT_TYPE_UNSPECIFIED`, `BASE`, `INTERMEDIATE`, `COMPREHENSIVE`.
	Type pulumi.StringOutput `pulumi:"type"`
}

An `Environment` in Apigee.

To get more information about Environment, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.environments/create) * How-to Guides

## Example Usage

### Apigee Environment Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/servicenetworking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := organizations.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		apigeeNetwork, err := compute.NewNetwork(ctx, "apigee_network", &compute.NetworkArgs{
			Name: pulumi.String("apigee-network"),
		})
		if err != nil {
			return err
		}
		apigeeRange, err := compute.NewGlobalAddress(ctx, "apigee_range", &compute.GlobalAddressArgs{
			Name:         pulumi.String("apigee-range"),
			Purpose:      pulumi.String("VPC_PEERING"),
			AddressType:  pulumi.String("INTERNAL"),
			PrefixLength: pulumi.Int(16),
			Network:      apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		_, err = servicenetworking.NewConnection(ctx, "apigee_vpc_connection", &servicenetworking.ConnectionArgs{
			Network: apigeeNetwork.ID(),
			Service: pulumi.String("servicenetworking.googleapis.com"),
			ReservedPeeringRanges: pulumi.StringArray{
				apigeeRange.Name,
			},
		})
		if err != nil {
			return err
		}
		apigeeOrg, err := apigee.NewOrganization(ctx, "apigee_org", &apigee.OrganizationArgs{
			AnalyticsRegion:   pulumi.String("us-central1"),
			ProjectId:         pulumi.String(current.Project),
			AuthorizedNetwork: apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		_, err = apigee.NewEnvironment(ctx, "env", &apigee.EnvironmentArgs{
			Name:        pulumi.String("my-environment"),
			Description: pulumi.String("Apigee Environment"),
			DisplayName: pulumi.String("environment-1"),
			OrgId:       apigeeOrg.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Environment can be imported using any of these accepted formats:

* `{{org_id}}/environments/{{name}}`

* `{{org_id}}/{{name}}`

When using the `pulumi import` command, Environment can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/environment:Environment default {{org_id}}/environments/{{name}} ```

```sh $ pulumi import gcp:apigee/environment:Environment default {{org_id}}/{{name}} ```

func GetEnvironment

func GetEnvironment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EnvironmentState, opts ...pulumi.ResourceOption) (*Environment, error)

GetEnvironment gets an existing Environment 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 NewEnvironment

func NewEnvironment(ctx *pulumi.Context,
	name string, args *EnvironmentArgs, opts ...pulumi.ResourceOption) (*Environment, error)

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

func (*Environment) ElementType

func (*Environment) ElementType() reflect.Type

func (*Environment) ToEnvironmentOutput

func (i *Environment) ToEnvironmentOutput() EnvironmentOutput

func (*Environment) ToEnvironmentOutputWithContext

func (i *Environment) ToEnvironmentOutputWithContext(ctx context.Context) EnvironmentOutput

type EnvironmentArgs

type EnvironmentArgs struct {
	// Optional. API Proxy type supported by the environment. The type can be set when creating
	// the Environment and cannot be changed.
	// Possible values are: `API_PROXY_TYPE_UNSPECIFIED`, `PROGRAMMABLE`, `CONFIGURABLE`.
	ApiProxyType pulumi.StringPtrInput
	// Optional. Deployment type supported by the environment. The deployment type can be
	// set when creating the environment and cannot be changed. When you enable archive
	// deployment, you will be prevented from performing a subset of actions within the
	// environment, including:
	// Managing the deployment of API proxy or shared flow revisions;
	// Creating, updating, or deleting resource files;
	// Creating, updating, or deleting target servers.
	// Possible values are: `DEPLOYMENT_TYPE_UNSPECIFIED`, `PROXY`, `ARCHIVE`.
	DeploymentType pulumi.StringPtrInput
	// Description of the environment.
	Description pulumi.StringPtrInput
	// Display name of the environment.
	DisplayName pulumi.StringPtrInput
	// The resource ID of the environment.
	Name pulumi.StringPtrInput
	// NodeConfig for setting the min/max number of nodes associated with the environment.
	// Structure is documented below.
	NodeConfig EnvironmentNodeConfigPtrInput
	// The Apigee Organization associated with the Apigee environment,
	// in the format `organizations/{{org_name}}`.
	//
	// ***
	OrgId pulumi.StringInput
	// Types that can be selected for an Environment. Each of the types are
	// limited by capability and capacity. Refer to Apigee's public documentation
	// to understand about each of these types in details.
	// An Apigee org can support heterogeneous Environments.
	// Possible values are: `ENVIRONMENT_TYPE_UNSPECIFIED`, `BASE`, `INTERMEDIATE`, `COMPREHENSIVE`.
	Type pulumi.StringPtrInput
}

The set of arguments for constructing a Environment resource.

func (EnvironmentArgs) ElementType

func (EnvironmentArgs) ElementType() reflect.Type

type EnvironmentArray

type EnvironmentArray []EnvironmentInput

func (EnvironmentArray) ElementType

func (EnvironmentArray) ElementType() reflect.Type

func (EnvironmentArray) ToEnvironmentArrayOutput

func (i EnvironmentArray) ToEnvironmentArrayOutput() EnvironmentArrayOutput

func (EnvironmentArray) ToEnvironmentArrayOutputWithContext

func (i EnvironmentArray) ToEnvironmentArrayOutputWithContext(ctx context.Context) EnvironmentArrayOutput

type EnvironmentArrayInput

type EnvironmentArrayInput interface {
	pulumi.Input

	ToEnvironmentArrayOutput() EnvironmentArrayOutput
	ToEnvironmentArrayOutputWithContext(context.Context) EnvironmentArrayOutput
}

EnvironmentArrayInput is an input type that accepts EnvironmentArray and EnvironmentArrayOutput values. You can construct a concrete instance of `EnvironmentArrayInput` via:

EnvironmentArray{ EnvironmentArgs{...} }

type EnvironmentArrayOutput

type EnvironmentArrayOutput struct{ *pulumi.OutputState }

func (EnvironmentArrayOutput) ElementType

func (EnvironmentArrayOutput) ElementType() reflect.Type

func (EnvironmentArrayOutput) Index

func (EnvironmentArrayOutput) ToEnvironmentArrayOutput

func (o EnvironmentArrayOutput) ToEnvironmentArrayOutput() EnvironmentArrayOutput

func (EnvironmentArrayOutput) ToEnvironmentArrayOutputWithContext

func (o EnvironmentArrayOutput) ToEnvironmentArrayOutputWithContext(ctx context.Context) EnvironmentArrayOutput

type EnvironmentIamBinding

type EnvironmentIamBinding struct {
	pulumi.CustomResourceState

	Condition EnvironmentIamBindingConditionPtrOutput `pulumi:"condition"`
	// Used to find the parent resource to bind the IAM policy to
	EnvId pulumi.StringOutput `pulumi:"envId"`
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// Identities that will be granted the privilege in `role`.
	// Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Members pulumi.StringArrayOutput `pulumi:"members"`
	OrgId   pulumi.StringOutput      `pulumi:"orgId"`
	// The role that should be applied. Only one
	// `apigee.EnvironmentIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Apigee Environment. Each of these resources serves a different use case:

* `apigee.EnvironmentIamPolicy`: Authoritative. Sets the IAM policy for the environment and replaces any existing policy already attached. * `apigee.EnvironmentIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the environment are preserved. * `apigee.EnvironmentIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the environment are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `apigee.EnvironmentIamPolicy`: Retrieves the IAM policy for the environment

> **Note:** `apigee.EnvironmentIamPolicy` **cannot** be used in conjunction with `apigee.EnvironmentIamBinding` and `apigee.EnvironmentIamMember` or they will fight over what your policy should be.

> **Note:** `apigee.EnvironmentIamBinding` resources **can be** used in conjunction with `apigee.EnvironmentIamMember` resources **only if** they do not grant privilege to the same role.

## google\_apigee\_environment\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = apigee.NewEnvironmentIamPolicy(ctx, "policy", &apigee.EnvironmentIamPolicyArgs{
			OrgId:      pulumi.Any(apigeeEnvironment.OrgId),
			EnvId:      pulumi.Any(apigeeEnvironment.Name),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_apigee\_environment\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigee.NewEnvironmentIamBinding(ctx, "binding", &apigee.EnvironmentIamBindingArgs{
			OrgId: pulumi.Any(apigeeEnvironment.OrgId),
			EnvId: pulumi.Any(apigeeEnvironment.Name),
			Role:  pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_apigee\_environment\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigee.NewEnvironmentIamMember(ctx, "member", &apigee.EnvironmentIamMemberArgs{
			OrgId:  pulumi.Any(apigeeEnvironment.OrgId),
			EnvId:  pulumi.Any(apigeeEnvironment.Name),
			Role:   pulumi.String("roles/viewer"),
			Member: pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_apigee\_environment\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = apigee.NewEnvironmentIamPolicy(ctx, "policy", &apigee.EnvironmentIamPolicyArgs{
			OrgId:      pulumi.Any(apigeeEnvironment.OrgId),
			EnvId:      pulumi.Any(apigeeEnvironment.Name),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_apigee\_environment\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigee.NewEnvironmentIamBinding(ctx, "binding", &apigee.EnvironmentIamBindingArgs{
			OrgId: pulumi.Any(apigeeEnvironment.OrgId),
			EnvId: pulumi.Any(apigeeEnvironment.Name),
			Role:  pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_apigee\_environment\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigee.NewEnvironmentIamMember(ctx, "member", &apigee.EnvironmentIamMemberArgs{
			OrgId:  pulumi.Any(apigeeEnvironment.OrgId),
			EnvId:  pulumi.Any(apigeeEnvironment.Name),
			Role:   pulumi.String("roles/viewer"),
			Member: pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms:

* {{org_id}}/environments/{{name}}

* {{name}}

Any variables not passed in the import command will be taken from the provider configuration.

Apigee environment IAM resources can be imported using the resource identifiers, role, and member.

IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.

```sh $ pulumi import gcp:apigee/environmentIamBinding:EnvironmentIamBinding editor "{{org_id}}/environments/{{environment}} roles/viewer user:jane@example.com" ```

IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.

```sh $ pulumi import gcp:apigee/environmentIamBinding:EnvironmentIamBinding editor "{{org_id}}/environments/{{environment}} roles/viewer" ```

IAM policy imports use the identifier of the resource in question, e.g.

```sh $ pulumi import gcp:apigee/environmentIamBinding:EnvironmentIamBinding editor {{org_id}}/environments/{{environment}} ```

-> **Custom Roles**: If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetEnvironmentIamBinding

func GetEnvironmentIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EnvironmentIamBindingState, opts ...pulumi.ResourceOption) (*EnvironmentIamBinding, error)

GetEnvironmentIamBinding gets an existing EnvironmentIamBinding 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 NewEnvironmentIamBinding

func NewEnvironmentIamBinding(ctx *pulumi.Context,
	name string, args *EnvironmentIamBindingArgs, opts ...pulumi.ResourceOption) (*EnvironmentIamBinding, error)

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

func (*EnvironmentIamBinding) ElementType

func (*EnvironmentIamBinding) ElementType() reflect.Type

func (*EnvironmentIamBinding) ToEnvironmentIamBindingOutput

func (i *EnvironmentIamBinding) ToEnvironmentIamBindingOutput() EnvironmentIamBindingOutput

func (*EnvironmentIamBinding) ToEnvironmentIamBindingOutputWithContext

func (i *EnvironmentIamBinding) ToEnvironmentIamBindingOutputWithContext(ctx context.Context) EnvironmentIamBindingOutput

type EnvironmentIamBindingArgs

type EnvironmentIamBindingArgs struct {
	Condition EnvironmentIamBindingConditionPtrInput
	// Used to find the parent resource to bind the IAM policy to
	EnvId pulumi.StringInput
	// Identities that will be granted the privilege in `role`.
	// Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Members pulumi.StringArrayInput
	OrgId   pulumi.StringInput
	// The role that should be applied. Only one
	// `apigee.EnvironmentIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a EnvironmentIamBinding resource.

func (EnvironmentIamBindingArgs) ElementType

func (EnvironmentIamBindingArgs) ElementType() reflect.Type

type EnvironmentIamBindingArray

type EnvironmentIamBindingArray []EnvironmentIamBindingInput

func (EnvironmentIamBindingArray) ElementType

func (EnvironmentIamBindingArray) ElementType() reflect.Type

func (EnvironmentIamBindingArray) ToEnvironmentIamBindingArrayOutput

func (i EnvironmentIamBindingArray) ToEnvironmentIamBindingArrayOutput() EnvironmentIamBindingArrayOutput

func (EnvironmentIamBindingArray) ToEnvironmentIamBindingArrayOutputWithContext

func (i EnvironmentIamBindingArray) ToEnvironmentIamBindingArrayOutputWithContext(ctx context.Context) EnvironmentIamBindingArrayOutput

type EnvironmentIamBindingArrayInput

type EnvironmentIamBindingArrayInput interface {
	pulumi.Input

	ToEnvironmentIamBindingArrayOutput() EnvironmentIamBindingArrayOutput
	ToEnvironmentIamBindingArrayOutputWithContext(context.Context) EnvironmentIamBindingArrayOutput
}

EnvironmentIamBindingArrayInput is an input type that accepts EnvironmentIamBindingArray and EnvironmentIamBindingArrayOutput values. You can construct a concrete instance of `EnvironmentIamBindingArrayInput` via:

EnvironmentIamBindingArray{ EnvironmentIamBindingArgs{...} }

type EnvironmentIamBindingArrayOutput

type EnvironmentIamBindingArrayOutput struct{ *pulumi.OutputState }

func (EnvironmentIamBindingArrayOutput) ElementType

func (EnvironmentIamBindingArrayOutput) Index

func (EnvironmentIamBindingArrayOutput) ToEnvironmentIamBindingArrayOutput

func (o EnvironmentIamBindingArrayOutput) ToEnvironmentIamBindingArrayOutput() EnvironmentIamBindingArrayOutput

func (EnvironmentIamBindingArrayOutput) ToEnvironmentIamBindingArrayOutputWithContext

func (o EnvironmentIamBindingArrayOutput) ToEnvironmentIamBindingArrayOutputWithContext(ctx context.Context) EnvironmentIamBindingArrayOutput

type EnvironmentIamBindingCondition

type EnvironmentIamBindingCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type EnvironmentIamBindingConditionArgs

type EnvironmentIamBindingConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (EnvironmentIamBindingConditionArgs) ElementType

func (EnvironmentIamBindingConditionArgs) ToEnvironmentIamBindingConditionOutput

func (i EnvironmentIamBindingConditionArgs) ToEnvironmentIamBindingConditionOutput() EnvironmentIamBindingConditionOutput

func (EnvironmentIamBindingConditionArgs) ToEnvironmentIamBindingConditionOutputWithContext

func (i EnvironmentIamBindingConditionArgs) ToEnvironmentIamBindingConditionOutputWithContext(ctx context.Context) EnvironmentIamBindingConditionOutput

func (EnvironmentIamBindingConditionArgs) ToEnvironmentIamBindingConditionPtrOutput

func (i EnvironmentIamBindingConditionArgs) ToEnvironmentIamBindingConditionPtrOutput() EnvironmentIamBindingConditionPtrOutput

func (EnvironmentIamBindingConditionArgs) ToEnvironmentIamBindingConditionPtrOutputWithContext

func (i EnvironmentIamBindingConditionArgs) ToEnvironmentIamBindingConditionPtrOutputWithContext(ctx context.Context) EnvironmentIamBindingConditionPtrOutput

type EnvironmentIamBindingConditionInput

type EnvironmentIamBindingConditionInput interface {
	pulumi.Input

	ToEnvironmentIamBindingConditionOutput() EnvironmentIamBindingConditionOutput
	ToEnvironmentIamBindingConditionOutputWithContext(context.Context) EnvironmentIamBindingConditionOutput
}

EnvironmentIamBindingConditionInput is an input type that accepts EnvironmentIamBindingConditionArgs and EnvironmentIamBindingConditionOutput values. You can construct a concrete instance of `EnvironmentIamBindingConditionInput` via:

EnvironmentIamBindingConditionArgs{...}

type EnvironmentIamBindingConditionOutput

type EnvironmentIamBindingConditionOutput struct{ *pulumi.OutputState }

func (EnvironmentIamBindingConditionOutput) Description

func (EnvironmentIamBindingConditionOutput) ElementType

func (EnvironmentIamBindingConditionOutput) Expression

func (EnvironmentIamBindingConditionOutput) Title

func (EnvironmentIamBindingConditionOutput) ToEnvironmentIamBindingConditionOutput

func (o EnvironmentIamBindingConditionOutput) ToEnvironmentIamBindingConditionOutput() EnvironmentIamBindingConditionOutput

func (EnvironmentIamBindingConditionOutput) ToEnvironmentIamBindingConditionOutputWithContext

func (o EnvironmentIamBindingConditionOutput) ToEnvironmentIamBindingConditionOutputWithContext(ctx context.Context) EnvironmentIamBindingConditionOutput

func (EnvironmentIamBindingConditionOutput) ToEnvironmentIamBindingConditionPtrOutput

func (o EnvironmentIamBindingConditionOutput) ToEnvironmentIamBindingConditionPtrOutput() EnvironmentIamBindingConditionPtrOutput

func (EnvironmentIamBindingConditionOutput) ToEnvironmentIamBindingConditionPtrOutputWithContext

func (o EnvironmentIamBindingConditionOutput) ToEnvironmentIamBindingConditionPtrOutputWithContext(ctx context.Context) EnvironmentIamBindingConditionPtrOutput

type EnvironmentIamBindingConditionPtrInput

type EnvironmentIamBindingConditionPtrInput interface {
	pulumi.Input

	ToEnvironmentIamBindingConditionPtrOutput() EnvironmentIamBindingConditionPtrOutput
	ToEnvironmentIamBindingConditionPtrOutputWithContext(context.Context) EnvironmentIamBindingConditionPtrOutput
}

EnvironmentIamBindingConditionPtrInput is an input type that accepts EnvironmentIamBindingConditionArgs, EnvironmentIamBindingConditionPtr and EnvironmentIamBindingConditionPtrOutput values. You can construct a concrete instance of `EnvironmentIamBindingConditionPtrInput` via:

        EnvironmentIamBindingConditionArgs{...}

or:

        nil

type EnvironmentIamBindingConditionPtrOutput

type EnvironmentIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (EnvironmentIamBindingConditionPtrOutput) Description

func (EnvironmentIamBindingConditionPtrOutput) Elem

func (EnvironmentIamBindingConditionPtrOutput) ElementType

func (EnvironmentIamBindingConditionPtrOutput) Expression

func (EnvironmentIamBindingConditionPtrOutput) Title

func (EnvironmentIamBindingConditionPtrOutput) ToEnvironmentIamBindingConditionPtrOutput

func (o EnvironmentIamBindingConditionPtrOutput) ToEnvironmentIamBindingConditionPtrOutput() EnvironmentIamBindingConditionPtrOutput

func (EnvironmentIamBindingConditionPtrOutput) ToEnvironmentIamBindingConditionPtrOutputWithContext

func (o EnvironmentIamBindingConditionPtrOutput) ToEnvironmentIamBindingConditionPtrOutputWithContext(ctx context.Context) EnvironmentIamBindingConditionPtrOutput

type EnvironmentIamBindingInput

type EnvironmentIamBindingInput interface {
	pulumi.Input

	ToEnvironmentIamBindingOutput() EnvironmentIamBindingOutput
	ToEnvironmentIamBindingOutputWithContext(ctx context.Context) EnvironmentIamBindingOutput
}

type EnvironmentIamBindingMap

type EnvironmentIamBindingMap map[string]EnvironmentIamBindingInput

func (EnvironmentIamBindingMap) ElementType

func (EnvironmentIamBindingMap) ElementType() reflect.Type

func (EnvironmentIamBindingMap) ToEnvironmentIamBindingMapOutput

func (i EnvironmentIamBindingMap) ToEnvironmentIamBindingMapOutput() EnvironmentIamBindingMapOutput

func (EnvironmentIamBindingMap) ToEnvironmentIamBindingMapOutputWithContext

func (i EnvironmentIamBindingMap) ToEnvironmentIamBindingMapOutputWithContext(ctx context.Context) EnvironmentIamBindingMapOutput

type EnvironmentIamBindingMapInput

type EnvironmentIamBindingMapInput interface {
	pulumi.Input

	ToEnvironmentIamBindingMapOutput() EnvironmentIamBindingMapOutput
	ToEnvironmentIamBindingMapOutputWithContext(context.Context) EnvironmentIamBindingMapOutput
}

EnvironmentIamBindingMapInput is an input type that accepts EnvironmentIamBindingMap and EnvironmentIamBindingMapOutput values. You can construct a concrete instance of `EnvironmentIamBindingMapInput` via:

EnvironmentIamBindingMap{ "key": EnvironmentIamBindingArgs{...} }

type EnvironmentIamBindingMapOutput

type EnvironmentIamBindingMapOutput struct{ *pulumi.OutputState }

func (EnvironmentIamBindingMapOutput) ElementType

func (EnvironmentIamBindingMapOutput) MapIndex

func (EnvironmentIamBindingMapOutput) ToEnvironmentIamBindingMapOutput

func (o EnvironmentIamBindingMapOutput) ToEnvironmentIamBindingMapOutput() EnvironmentIamBindingMapOutput

func (EnvironmentIamBindingMapOutput) ToEnvironmentIamBindingMapOutputWithContext

func (o EnvironmentIamBindingMapOutput) ToEnvironmentIamBindingMapOutputWithContext(ctx context.Context) EnvironmentIamBindingMapOutput

type EnvironmentIamBindingOutput

type EnvironmentIamBindingOutput struct{ *pulumi.OutputState }

func (EnvironmentIamBindingOutput) Condition

func (EnvironmentIamBindingOutput) ElementType

func (EnvironmentIamBindingOutput) EnvId

Used to find the parent resource to bind the IAM policy to

func (EnvironmentIamBindingOutput) Etag

(Computed) The etag of the IAM policy.

func (EnvironmentIamBindingOutput) Members

Identities that will be granted the privilege in `role`. Each entry can have one of the following values: * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com. * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project" * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project" * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"

func (EnvironmentIamBindingOutput) OrgId

func (EnvironmentIamBindingOutput) Role

The role that should be applied. Only one `apigee.EnvironmentIamBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`.

func (EnvironmentIamBindingOutput) ToEnvironmentIamBindingOutput

func (o EnvironmentIamBindingOutput) ToEnvironmentIamBindingOutput() EnvironmentIamBindingOutput

func (EnvironmentIamBindingOutput) ToEnvironmentIamBindingOutputWithContext

func (o EnvironmentIamBindingOutput) ToEnvironmentIamBindingOutputWithContext(ctx context.Context) EnvironmentIamBindingOutput

type EnvironmentIamBindingState

type EnvironmentIamBindingState struct {
	Condition EnvironmentIamBindingConditionPtrInput
	// Used to find the parent resource to bind the IAM policy to
	EnvId pulumi.StringPtrInput
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// Identities that will be granted the privilege in `role`.
	// Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Members pulumi.StringArrayInput
	OrgId   pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `apigee.EnvironmentIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (EnvironmentIamBindingState) ElementType

func (EnvironmentIamBindingState) ElementType() reflect.Type

type EnvironmentIamMember

type EnvironmentIamMember struct {
	pulumi.CustomResourceState

	Condition EnvironmentIamMemberConditionPtrOutput `pulumi:"condition"`
	// Used to find the parent resource to bind the IAM policy to
	EnvId pulumi.StringOutput `pulumi:"envId"`
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// Identities that will be granted the privilege in `role`.
	// Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Member pulumi.StringOutput `pulumi:"member"`
	OrgId  pulumi.StringOutput `pulumi:"orgId"`
	// The role that should be applied. Only one
	// `apigee.EnvironmentIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Apigee Environment. Each of these resources serves a different use case:

* `apigee.EnvironmentIamPolicy`: Authoritative. Sets the IAM policy for the environment and replaces any existing policy already attached. * `apigee.EnvironmentIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the environment are preserved. * `apigee.EnvironmentIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the environment are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `apigee.EnvironmentIamPolicy`: Retrieves the IAM policy for the environment

> **Note:** `apigee.EnvironmentIamPolicy` **cannot** be used in conjunction with `apigee.EnvironmentIamBinding` and `apigee.EnvironmentIamMember` or they will fight over what your policy should be.

> **Note:** `apigee.EnvironmentIamBinding` resources **can be** used in conjunction with `apigee.EnvironmentIamMember` resources **only if** they do not grant privilege to the same role.

## google\_apigee\_environment\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = apigee.NewEnvironmentIamPolicy(ctx, "policy", &apigee.EnvironmentIamPolicyArgs{
			OrgId:      pulumi.Any(apigeeEnvironment.OrgId),
			EnvId:      pulumi.Any(apigeeEnvironment.Name),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_apigee\_environment\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigee.NewEnvironmentIamBinding(ctx, "binding", &apigee.EnvironmentIamBindingArgs{
			OrgId: pulumi.Any(apigeeEnvironment.OrgId),
			EnvId: pulumi.Any(apigeeEnvironment.Name),
			Role:  pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_apigee\_environment\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigee.NewEnvironmentIamMember(ctx, "member", &apigee.EnvironmentIamMemberArgs{
			OrgId:  pulumi.Any(apigeeEnvironment.OrgId),
			EnvId:  pulumi.Any(apigeeEnvironment.Name),
			Role:   pulumi.String("roles/viewer"),
			Member: pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_apigee\_environment\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = apigee.NewEnvironmentIamPolicy(ctx, "policy", &apigee.EnvironmentIamPolicyArgs{
			OrgId:      pulumi.Any(apigeeEnvironment.OrgId),
			EnvId:      pulumi.Any(apigeeEnvironment.Name),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_apigee\_environment\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigee.NewEnvironmentIamBinding(ctx, "binding", &apigee.EnvironmentIamBindingArgs{
			OrgId: pulumi.Any(apigeeEnvironment.OrgId),
			EnvId: pulumi.Any(apigeeEnvironment.Name),
			Role:  pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_apigee\_environment\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigee.NewEnvironmentIamMember(ctx, "member", &apigee.EnvironmentIamMemberArgs{
			OrgId:  pulumi.Any(apigeeEnvironment.OrgId),
			EnvId:  pulumi.Any(apigeeEnvironment.Name),
			Role:   pulumi.String("roles/viewer"),
			Member: pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms:

* {{org_id}}/environments/{{name}}

* {{name}}

Any variables not passed in the import command will be taken from the provider configuration.

Apigee environment IAM resources can be imported using the resource identifiers, role, and member.

IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.

```sh $ pulumi import gcp:apigee/environmentIamMember:EnvironmentIamMember editor "{{org_id}}/environments/{{environment}} roles/viewer user:jane@example.com" ```

IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.

```sh $ pulumi import gcp:apigee/environmentIamMember:EnvironmentIamMember editor "{{org_id}}/environments/{{environment}} roles/viewer" ```

IAM policy imports use the identifier of the resource in question, e.g.

```sh $ pulumi import gcp:apigee/environmentIamMember:EnvironmentIamMember editor {{org_id}}/environments/{{environment}} ```

-> **Custom Roles**: If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetEnvironmentIamMember

func GetEnvironmentIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EnvironmentIamMemberState, opts ...pulumi.ResourceOption) (*EnvironmentIamMember, error)

GetEnvironmentIamMember gets an existing EnvironmentIamMember 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 NewEnvironmentIamMember

func NewEnvironmentIamMember(ctx *pulumi.Context,
	name string, args *EnvironmentIamMemberArgs, opts ...pulumi.ResourceOption) (*EnvironmentIamMember, error)

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

func (*EnvironmentIamMember) ElementType

func (*EnvironmentIamMember) ElementType() reflect.Type

func (*EnvironmentIamMember) ToEnvironmentIamMemberOutput

func (i *EnvironmentIamMember) ToEnvironmentIamMemberOutput() EnvironmentIamMemberOutput

func (*EnvironmentIamMember) ToEnvironmentIamMemberOutputWithContext

func (i *EnvironmentIamMember) ToEnvironmentIamMemberOutputWithContext(ctx context.Context) EnvironmentIamMemberOutput

type EnvironmentIamMemberArgs

type EnvironmentIamMemberArgs struct {
	Condition EnvironmentIamMemberConditionPtrInput
	// Used to find the parent resource to bind the IAM policy to
	EnvId pulumi.StringInput
	// Identities that will be granted the privilege in `role`.
	// Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Member pulumi.StringInput
	OrgId  pulumi.StringInput
	// The role that should be applied. Only one
	// `apigee.EnvironmentIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a EnvironmentIamMember resource.

func (EnvironmentIamMemberArgs) ElementType

func (EnvironmentIamMemberArgs) ElementType() reflect.Type

type EnvironmentIamMemberArray

type EnvironmentIamMemberArray []EnvironmentIamMemberInput

func (EnvironmentIamMemberArray) ElementType

func (EnvironmentIamMemberArray) ElementType() reflect.Type

func (EnvironmentIamMemberArray) ToEnvironmentIamMemberArrayOutput

func (i EnvironmentIamMemberArray) ToEnvironmentIamMemberArrayOutput() EnvironmentIamMemberArrayOutput

func (EnvironmentIamMemberArray) ToEnvironmentIamMemberArrayOutputWithContext

func (i EnvironmentIamMemberArray) ToEnvironmentIamMemberArrayOutputWithContext(ctx context.Context) EnvironmentIamMemberArrayOutput

type EnvironmentIamMemberArrayInput

type EnvironmentIamMemberArrayInput interface {
	pulumi.Input

	ToEnvironmentIamMemberArrayOutput() EnvironmentIamMemberArrayOutput
	ToEnvironmentIamMemberArrayOutputWithContext(context.Context) EnvironmentIamMemberArrayOutput
}

EnvironmentIamMemberArrayInput is an input type that accepts EnvironmentIamMemberArray and EnvironmentIamMemberArrayOutput values. You can construct a concrete instance of `EnvironmentIamMemberArrayInput` via:

EnvironmentIamMemberArray{ EnvironmentIamMemberArgs{...} }

type EnvironmentIamMemberArrayOutput

type EnvironmentIamMemberArrayOutput struct{ *pulumi.OutputState }

func (EnvironmentIamMemberArrayOutput) ElementType

func (EnvironmentIamMemberArrayOutput) Index

func (EnvironmentIamMemberArrayOutput) ToEnvironmentIamMemberArrayOutput

func (o EnvironmentIamMemberArrayOutput) ToEnvironmentIamMemberArrayOutput() EnvironmentIamMemberArrayOutput

func (EnvironmentIamMemberArrayOutput) ToEnvironmentIamMemberArrayOutputWithContext

func (o EnvironmentIamMemberArrayOutput) ToEnvironmentIamMemberArrayOutputWithContext(ctx context.Context) EnvironmentIamMemberArrayOutput

type EnvironmentIamMemberCondition

type EnvironmentIamMemberCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type EnvironmentIamMemberConditionArgs

type EnvironmentIamMemberConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (EnvironmentIamMemberConditionArgs) ElementType

func (EnvironmentIamMemberConditionArgs) ToEnvironmentIamMemberConditionOutput

func (i EnvironmentIamMemberConditionArgs) ToEnvironmentIamMemberConditionOutput() EnvironmentIamMemberConditionOutput

func (EnvironmentIamMemberConditionArgs) ToEnvironmentIamMemberConditionOutputWithContext

func (i EnvironmentIamMemberConditionArgs) ToEnvironmentIamMemberConditionOutputWithContext(ctx context.Context) EnvironmentIamMemberConditionOutput

func (EnvironmentIamMemberConditionArgs) ToEnvironmentIamMemberConditionPtrOutput

func (i EnvironmentIamMemberConditionArgs) ToEnvironmentIamMemberConditionPtrOutput() EnvironmentIamMemberConditionPtrOutput

func (EnvironmentIamMemberConditionArgs) ToEnvironmentIamMemberConditionPtrOutputWithContext

func (i EnvironmentIamMemberConditionArgs) ToEnvironmentIamMemberConditionPtrOutputWithContext(ctx context.Context) EnvironmentIamMemberConditionPtrOutput

type EnvironmentIamMemberConditionInput

type EnvironmentIamMemberConditionInput interface {
	pulumi.Input

	ToEnvironmentIamMemberConditionOutput() EnvironmentIamMemberConditionOutput
	ToEnvironmentIamMemberConditionOutputWithContext(context.Context) EnvironmentIamMemberConditionOutput
}

EnvironmentIamMemberConditionInput is an input type that accepts EnvironmentIamMemberConditionArgs and EnvironmentIamMemberConditionOutput values. You can construct a concrete instance of `EnvironmentIamMemberConditionInput` via:

EnvironmentIamMemberConditionArgs{...}

type EnvironmentIamMemberConditionOutput

type EnvironmentIamMemberConditionOutput struct{ *pulumi.OutputState }

func (EnvironmentIamMemberConditionOutput) Description

func (EnvironmentIamMemberConditionOutput) ElementType

func (EnvironmentIamMemberConditionOutput) Expression

func (EnvironmentIamMemberConditionOutput) Title

func (EnvironmentIamMemberConditionOutput) ToEnvironmentIamMemberConditionOutput

func (o EnvironmentIamMemberConditionOutput) ToEnvironmentIamMemberConditionOutput() EnvironmentIamMemberConditionOutput

func (EnvironmentIamMemberConditionOutput) ToEnvironmentIamMemberConditionOutputWithContext

func (o EnvironmentIamMemberConditionOutput) ToEnvironmentIamMemberConditionOutputWithContext(ctx context.Context) EnvironmentIamMemberConditionOutput

func (EnvironmentIamMemberConditionOutput) ToEnvironmentIamMemberConditionPtrOutput

func (o EnvironmentIamMemberConditionOutput) ToEnvironmentIamMemberConditionPtrOutput() EnvironmentIamMemberConditionPtrOutput

func (EnvironmentIamMemberConditionOutput) ToEnvironmentIamMemberConditionPtrOutputWithContext

func (o EnvironmentIamMemberConditionOutput) ToEnvironmentIamMemberConditionPtrOutputWithContext(ctx context.Context) EnvironmentIamMemberConditionPtrOutput

type EnvironmentIamMemberConditionPtrInput

type EnvironmentIamMemberConditionPtrInput interface {
	pulumi.Input

	ToEnvironmentIamMemberConditionPtrOutput() EnvironmentIamMemberConditionPtrOutput
	ToEnvironmentIamMemberConditionPtrOutputWithContext(context.Context) EnvironmentIamMemberConditionPtrOutput
}

EnvironmentIamMemberConditionPtrInput is an input type that accepts EnvironmentIamMemberConditionArgs, EnvironmentIamMemberConditionPtr and EnvironmentIamMemberConditionPtrOutput values. You can construct a concrete instance of `EnvironmentIamMemberConditionPtrInput` via:

        EnvironmentIamMemberConditionArgs{...}

or:

        nil

type EnvironmentIamMemberConditionPtrOutput

type EnvironmentIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (EnvironmentIamMemberConditionPtrOutput) Description

func (EnvironmentIamMemberConditionPtrOutput) Elem

func (EnvironmentIamMemberConditionPtrOutput) ElementType

func (EnvironmentIamMemberConditionPtrOutput) Expression

func (EnvironmentIamMemberConditionPtrOutput) Title

func (EnvironmentIamMemberConditionPtrOutput) ToEnvironmentIamMemberConditionPtrOutput

func (o EnvironmentIamMemberConditionPtrOutput) ToEnvironmentIamMemberConditionPtrOutput() EnvironmentIamMemberConditionPtrOutput

func (EnvironmentIamMemberConditionPtrOutput) ToEnvironmentIamMemberConditionPtrOutputWithContext

func (o EnvironmentIamMemberConditionPtrOutput) ToEnvironmentIamMemberConditionPtrOutputWithContext(ctx context.Context) EnvironmentIamMemberConditionPtrOutput

type EnvironmentIamMemberInput

type EnvironmentIamMemberInput interface {
	pulumi.Input

	ToEnvironmentIamMemberOutput() EnvironmentIamMemberOutput
	ToEnvironmentIamMemberOutputWithContext(ctx context.Context) EnvironmentIamMemberOutput
}

type EnvironmentIamMemberMap

type EnvironmentIamMemberMap map[string]EnvironmentIamMemberInput

func (EnvironmentIamMemberMap) ElementType

func (EnvironmentIamMemberMap) ElementType() reflect.Type

func (EnvironmentIamMemberMap) ToEnvironmentIamMemberMapOutput

func (i EnvironmentIamMemberMap) ToEnvironmentIamMemberMapOutput() EnvironmentIamMemberMapOutput

func (EnvironmentIamMemberMap) ToEnvironmentIamMemberMapOutputWithContext

func (i EnvironmentIamMemberMap) ToEnvironmentIamMemberMapOutputWithContext(ctx context.Context) EnvironmentIamMemberMapOutput

type EnvironmentIamMemberMapInput

type EnvironmentIamMemberMapInput interface {
	pulumi.Input

	ToEnvironmentIamMemberMapOutput() EnvironmentIamMemberMapOutput
	ToEnvironmentIamMemberMapOutputWithContext(context.Context) EnvironmentIamMemberMapOutput
}

EnvironmentIamMemberMapInput is an input type that accepts EnvironmentIamMemberMap and EnvironmentIamMemberMapOutput values. You can construct a concrete instance of `EnvironmentIamMemberMapInput` via:

EnvironmentIamMemberMap{ "key": EnvironmentIamMemberArgs{...} }

type EnvironmentIamMemberMapOutput

type EnvironmentIamMemberMapOutput struct{ *pulumi.OutputState }

func (EnvironmentIamMemberMapOutput) ElementType

func (EnvironmentIamMemberMapOutput) MapIndex

func (EnvironmentIamMemberMapOutput) ToEnvironmentIamMemberMapOutput

func (o EnvironmentIamMemberMapOutput) ToEnvironmentIamMemberMapOutput() EnvironmentIamMemberMapOutput

func (EnvironmentIamMemberMapOutput) ToEnvironmentIamMemberMapOutputWithContext

func (o EnvironmentIamMemberMapOutput) ToEnvironmentIamMemberMapOutputWithContext(ctx context.Context) EnvironmentIamMemberMapOutput

type EnvironmentIamMemberOutput

type EnvironmentIamMemberOutput struct{ *pulumi.OutputState }

func (EnvironmentIamMemberOutput) Condition

func (EnvironmentIamMemberOutput) ElementType

func (EnvironmentIamMemberOutput) ElementType() reflect.Type

func (EnvironmentIamMemberOutput) EnvId

Used to find the parent resource to bind the IAM policy to

func (EnvironmentIamMemberOutput) Etag

(Computed) The etag of the IAM policy.

func (EnvironmentIamMemberOutput) Member

Identities that will be granted the privilege in `role`. Each entry can have one of the following values: * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com. * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project" * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project" * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"

func (EnvironmentIamMemberOutput) OrgId

func (EnvironmentIamMemberOutput) Role

The role that should be applied. Only one `apigee.EnvironmentIamBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`.

func (EnvironmentIamMemberOutput) ToEnvironmentIamMemberOutput

func (o EnvironmentIamMemberOutput) ToEnvironmentIamMemberOutput() EnvironmentIamMemberOutput

func (EnvironmentIamMemberOutput) ToEnvironmentIamMemberOutputWithContext

func (o EnvironmentIamMemberOutput) ToEnvironmentIamMemberOutputWithContext(ctx context.Context) EnvironmentIamMemberOutput

type EnvironmentIamMemberState

type EnvironmentIamMemberState struct {
	Condition EnvironmentIamMemberConditionPtrInput
	// Used to find the parent resource to bind the IAM policy to
	EnvId pulumi.StringPtrInput
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// Identities that will be granted the privilege in `role`.
	// Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Member pulumi.StringPtrInput
	OrgId  pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `apigee.EnvironmentIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (EnvironmentIamMemberState) ElementType

func (EnvironmentIamMemberState) ElementType() reflect.Type

type EnvironmentIamPolicy

type EnvironmentIamPolicy struct {
	pulumi.CustomResourceState

	// Used to find the parent resource to bind the IAM policy to
	EnvId pulumi.StringOutput `pulumi:"envId"`
	// (Computed) The etag of the IAM policy.
	Etag  pulumi.StringOutput `pulumi:"etag"`
	OrgId pulumi.StringOutput `pulumi:"orgId"`
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringOutput `pulumi:"policyData"`
}

Three different resources help you manage your IAM policy for Apigee Environment. Each of these resources serves a different use case:

* `apigee.EnvironmentIamPolicy`: Authoritative. Sets the IAM policy for the environment and replaces any existing policy already attached. * `apigee.EnvironmentIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the environment are preserved. * `apigee.EnvironmentIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the environment are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `apigee.EnvironmentIamPolicy`: Retrieves the IAM policy for the environment

> **Note:** `apigee.EnvironmentIamPolicy` **cannot** be used in conjunction with `apigee.EnvironmentIamBinding` and `apigee.EnvironmentIamMember` or they will fight over what your policy should be.

> **Note:** `apigee.EnvironmentIamBinding` resources **can be** used in conjunction with `apigee.EnvironmentIamMember` resources **only if** they do not grant privilege to the same role.

## google\_apigee\_environment\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = apigee.NewEnvironmentIamPolicy(ctx, "policy", &apigee.EnvironmentIamPolicyArgs{
			OrgId:      pulumi.Any(apigeeEnvironment.OrgId),
			EnvId:      pulumi.Any(apigeeEnvironment.Name),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_apigee\_environment\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigee.NewEnvironmentIamBinding(ctx, "binding", &apigee.EnvironmentIamBindingArgs{
			OrgId: pulumi.Any(apigeeEnvironment.OrgId),
			EnvId: pulumi.Any(apigeeEnvironment.Name),
			Role:  pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_apigee\_environment\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigee.NewEnvironmentIamMember(ctx, "member", &apigee.EnvironmentIamMemberArgs{
			OrgId:  pulumi.Any(apigeeEnvironment.OrgId),
			EnvId:  pulumi.Any(apigeeEnvironment.Name),
			Role:   pulumi.String("roles/viewer"),
			Member: pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_apigee\_environment\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = apigee.NewEnvironmentIamPolicy(ctx, "policy", &apigee.EnvironmentIamPolicyArgs{
			OrgId:      pulumi.Any(apigeeEnvironment.OrgId),
			EnvId:      pulumi.Any(apigeeEnvironment.Name),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_apigee\_environment\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigee.NewEnvironmentIamBinding(ctx, "binding", &apigee.EnvironmentIamBindingArgs{
			OrgId: pulumi.Any(apigeeEnvironment.OrgId),
			EnvId: pulumi.Any(apigeeEnvironment.Name),
			Role:  pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_apigee\_environment\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigee.NewEnvironmentIamMember(ctx, "member", &apigee.EnvironmentIamMemberArgs{
			OrgId:  pulumi.Any(apigeeEnvironment.OrgId),
			EnvId:  pulumi.Any(apigeeEnvironment.Name),
			Role:   pulumi.String("roles/viewer"),
			Member: pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms:

* {{org_id}}/environments/{{name}}

* {{name}}

Any variables not passed in the import command will be taken from the provider configuration.

Apigee environment IAM resources can be imported using the resource identifiers, role, and member.

IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.

```sh $ pulumi import gcp:apigee/environmentIamPolicy:EnvironmentIamPolicy editor "{{org_id}}/environments/{{environment}} roles/viewer user:jane@example.com" ```

IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.

```sh $ pulumi import gcp:apigee/environmentIamPolicy:EnvironmentIamPolicy editor "{{org_id}}/environments/{{environment}} roles/viewer" ```

IAM policy imports use the identifier of the resource in question, e.g.

```sh $ pulumi import gcp:apigee/environmentIamPolicy:EnvironmentIamPolicy editor {{org_id}}/environments/{{environment}} ```

-> **Custom Roles**: If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetEnvironmentIamPolicy

func GetEnvironmentIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EnvironmentIamPolicyState, opts ...pulumi.ResourceOption) (*EnvironmentIamPolicy, error)

GetEnvironmentIamPolicy gets an existing EnvironmentIamPolicy 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 NewEnvironmentIamPolicy

func NewEnvironmentIamPolicy(ctx *pulumi.Context,
	name string, args *EnvironmentIamPolicyArgs, opts ...pulumi.ResourceOption) (*EnvironmentIamPolicy, error)

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

func (*EnvironmentIamPolicy) ElementType

func (*EnvironmentIamPolicy) ElementType() reflect.Type

func (*EnvironmentIamPolicy) ToEnvironmentIamPolicyOutput

func (i *EnvironmentIamPolicy) ToEnvironmentIamPolicyOutput() EnvironmentIamPolicyOutput

func (*EnvironmentIamPolicy) ToEnvironmentIamPolicyOutputWithContext

func (i *EnvironmentIamPolicy) ToEnvironmentIamPolicyOutputWithContext(ctx context.Context) EnvironmentIamPolicyOutput

type EnvironmentIamPolicyArgs

type EnvironmentIamPolicyArgs struct {
	// Used to find the parent resource to bind the IAM policy to
	EnvId pulumi.StringInput
	OrgId pulumi.StringInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringInput
}

The set of arguments for constructing a EnvironmentIamPolicy resource.

func (EnvironmentIamPolicyArgs) ElementType

func (EnvironmentIamPolicyArgs) ElementType() reflect.Type

type EnvironmentIamPolicyArray

type EnvironmentIamPolicyArray []EnvironmentIamPolicyInput

func (EnvironmentIamPolicyArray) ElementType

func (EnvironmentIamPolicyArray) ElementType() reflect.Type

func (EnvironmentIamPolicyArray) ToEnvironmentIamPolicyArrayOutput

func (i EnvironmentIamPolicyArray) ToEnvironmentIamPolicyArrayOutput() EnvironmentIamPolicyArrayOutput

func (EnvironmentIamPolicyArray) ToEnvironmentIamPolicyArrayOutputWithContext

func (i EnvironmentIamPolicyArray) ToEnvironmentIamPolicyArrayOutputWithContext(ctx context.Context) EnvironmentIamPolicyArrayOutput

type EnvironmentIamPolicyArrayInput

type EnvironmentIamPolicyArrayInput interface {
	pulumi.Input

	ToEnvironmentIamPolicyArrayOutput() EnvironmentIamPolicyArrayOutput
	ToEnvironmentIamPolicyArrayOutputWithContext(context.Context) EnvironmentIamPolicyArrayOutput
}

EnvironmentIamPolicyArrayInput is an input type that accepts EnvironmentIamPolicyArray and EnvironmentIamPolicyArrayOutput values. You can construct a concrete instance of `EnvironmentIamPolicyArrayInput` via:

EnvironmentIamPolicyArray{ EnvironmentIamPolicyArgs{...} }

type EnvironmentIamPolicyArrayOutput

type EnvironmentIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (EnvironmentIamPolicyArrayOutput) ElementType

func (EnvironmentIamPolicyArrayOutput) Index

func (EnvironmentIamPolicyArrayOutput) ToEnvironmentIamPolicyArrayOutput

func (o EnvironmentIamPolicyArrayOutput) ToEnvironmentIamPolicyArrayOutput() EnvironmentIamPolicyArrayOutput

func (EnvironmentIamPolicyArrayOutput) ToEnvironmentIamPolicyArrayOutputWithContext

func (o EnvironmentIamPolicyArrayOutput) ToEnvironmentIamPolicyArrayOutputWithContext(ctx context.Context) EnvironmentIamPolicyArrayOutput

type EnvironmentIamPolicyInput

type EnvironmentIamPolicyInput interface {
	pulumi.Input

	ToEnvironmentIamPolicyOutput() EnvironmentIamPolicyOutput
	ToEnvironmentIamPolicyOutputWithContext(ctx context.Context) EnvironmentIamPolicyOutput
}

type EnvironmentIamPolicyMap

type EnvironmentIamPolicyMap map[string]EnvironmentIamPolicyInput

func (EnvironmentIamPolicyMap) ElementType

func (EnvironmentIamPolicyMap) ElementType() reflect.Type

func (EnvironmentIamPolicyMap) ToEnvironmentIamPolicyMapOutput

func (i EnvironmentIamPolicyMap) ToEnvironmentIamPolicyMapOutput() EnvironmentIamPolicyMapOutput

func (EnvironmentIamPolicyMap) ToEnvironmentIamPolicyMapOutputWithContext

func (i EnvironmentIamPolicyMap) ToEnvironmentIamPolicyMapOutputWithContext(ctx context.Context) EnvironmentIamPolicyMapOutput

type EnvironmentIamPolicyMapInput

type EnvironmentIamPolicyMapInput interface {
	pulumi.Input

	ToEnvironmentIamPolicyMapOutput() EnvironmentIamPolicyMapOutput
	ToEnvironmentIamPolicyMapOutputWithContext(context.Context) EnvironmentIamPolicyMapOutput
}

EnvironmentIamPolicyMapInput is an input type that accepts EnvironmentIamPolicyMap and EnvironmentIamPolicyMapOutput values. You can construct a concrete instance of `EnvironmentIamPolicyMapInput` via:

EnvironmentIamPolicyMap{ "key": EnvironmentIamPolicyArgs{...} }

type EnvironmentIamPolicyMapOutput

type EnvironmentIamPolicyMapOutput struct{ *pulumi.OutputState }

func (EnvironmentIamPolicyMapOutput) ElementType

func (EnvironmentIamPolicyMapOutput) MapIndex

func (EnvironmentIamPolicyMapOutput) ToEnvironmentIamPolicyMapOutput

func (o EnvironmentIamPolicyMapOutput) ToEnvironmentIamPolicyMapOutput() EnvironmentIamPolicyMapOutput

func (EnvironmentIamPolicyMapOutput) ToEnvironmentIamPolicyMapOutputWithContext

func (o EnvironmentIamPolicyMapOutput) ToEnvironmentIamPolicyMapOutputWithContext(ctx context.Context) EnvironmentIamPolicyMapOutput

type EnvironmentIamPolicyOutput

type EnvironmentIamPolicyOutput struct{ *pulumi.OutputState }

func (EnvironmentIamPolicyOutput) ElementType

func (EnvironmentIamPolicyOutput) ElementType() reflect.Type

func (EnvironmentIamPolicyOutput) EnvId

Used to find the parent resource to bind the IAM policy to

func (EnvironmentIamPolicyOutput) Etag

(Computed) The etag of the IAM policy.

func (EnvironmentIamPolicyOutput) OrgId

func (EnvironmentIamPolicyOutput) PolicyData

The policy data generated by a `organizations.getIAMPolicy` data source.

func (EnvironmentIamPolicyOutput) ToEnvironmentIamPolicyOutput

func (o EnvironmentIamPolicyOutput) ToEnvironmentIamPolicyOutput() EnvironmentIamPolicyOutput

func (EnvironmentIamPolicyOutput) ToEnvironmentIamPolicyOutputWithContext

func (o EnvironmentIamPolicyOutput) ToEnvironmentIamPolicyOutputWithContext(ctx context.Context) EnvironmentIamPolicyOutput

type EnvironmentIamPolicyState

type EnvironmentIamPolicyState struct {
	// Used to find the parent resource to bind the IAM policy to
	EnvId pulumi.StringPtrInput
	// (Computed) The etag of the IAM policy.
	Etag  pulumi.StringPtrInput
	OrgId pulumi.StringPtrInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringPtrInput
}

func (EnvironmentIamPolicyState) ElementType

func (EnvironmentIamPolicyState) ElementType() reflect.Type

type EnvironmentInput

type EnvironmentInput interface {
	pulumi.Input

	ToEnvironmentOutput() EnvironmentOutput
	ToEnvironmentOutputWithContext(ctx context.Context) EnvironmentOutput
}

type EnvironmentMap

type EnvironmentMap map[string]EnvironmentInput

func (EnvironmentMap) ElementType

func (EnvironmentMap) ElementType() reflect.Type

func (EnvironmentMap) ToEnvironmentMapOutput

func (i EnvironmentMap) ToEnvironmentMapOutput() EnvironmentMapOutput

func (EnvironmentMap) ToEnvironmentMapOutputWithContext

func (i EnvironmentMap) ToEnvironmentMapOutputWithContext(ctx context.Context) EnvironmentMapOutput

type EnvironmentMapInput

type EnvironmentMapInput interface {
	pulumi.Input

	ToEnvironmentMapOutput() EnvironmentMapOutput
	ToEnvironmentMapOutputWithContext(context.Context) EnvironmentMapOutput
}

EnvironmentMapInput is an input type that accepts EnvironmentMap and EnvironmentMapOutput values. You can construct a concrete instance of `EnvironmentMapInput` via:

EnvironmentMap{ "key": EnvironmentArgs{...} }

type EnvironmentMapOutput

type EnvironmentMapOutput struct{ *pulumi.OutputState }

func (EnvironmentMapOutput) ElementType

func (EnvironmentMapOutput) ElementType() reflect.Type

func (EnvironmentMapOutput) MapIndex

func (EnvironmentMapOutput) ToEnvironmentMapOutput

func (o EnvironmentMapOutput) ToEnvironmentMapOutput() EnvironmentMapOutput

func (EnvironmentMapOutput) ToEnvironmentMapOutputWithContext

func (o EnvironmentMapOutput) ToEnvironmentMapOutputWithContext(ctx context.Context) EnvironmentMapOutput

type EnvironmentNodeConfig

type EnvironmentNodeConfig struct {
	// (Output)
	// The current total number of gateway nodes that each environment currently has across
	// all instances.
	CurrentAggregateNodeCount *string `pulumi:"currentAggregateNodeCount"`
	// The maximum total number of gateway nodes that the is reserved for all instances that
	// has the specified environment. If not specified, the default is determined by the
	// recommended maximum number of nodes for that gateway.
	MaxNodeCount *string `pulumi:"maxNodeCount"`
	// The minimum total number of gateway nodes that the is reserved for all instances that
	// has the specified environment. If not specified, the default is determined by the
	// recommended minimum number of nodes for that gateway.
	MinNodeCount *string `pulumi:"minNodeCount"`
}

type EnvironmentNodeConfigArgs

type EnvironmentNodeConfigArgs struct {
	// (Output)
	// The current total number of gateway nodes that each environment currently has across
	// all instances.
	CurrentAggregateNodeCount pulumi.StringPtrInput `pulumi:"currentAggregateNodeCount"`
	// The maximum total number of gateway nodes that the is reserved for all instances that
	// has the specified environment. If not specified, the default is determined by the
	// recommended maximum number of nodes for that gateway.
	MaxNodeCount pulumi.StringPtrInput `pulumi:"maxNodeCount"`
	// The minimum total number of gateway nodes that the is reserved for all instances that
	// has the specified environment. If not specified, the default is determined by the
	// recommended minimum number of nodes for that gateway.
	MinNodeCount pulumi.StringPtrInput `pulumi:"minNodeCount"`
}

func (EnvironmentNodeConfigArgs) ElementType

func (EnvironmentNodeConfigArgs) ElementType() reflect.Type

func (EnvironmentNodeConfigArgs) ToEnvironmentNodeConfigOutput

func (i EnvironmentNodeConfigArgs) ToEnvironmentNodeConfigOutput() EnvironmentNodeConfigOutput

func (EnvironmentNodeConfigArgs) ToEnvironmentNodeConfigOutputWithContext

func (i EnvironmentNodeConfigArgs) ToEnvironmentNodeConfigOutputWithContext(ctx context.Context) EnvironmentNodeConfigOutput

func (EnvironmentNodeConfigArgs) ToEnvironmentNodeConfigPtrOutput

func (i EnvironmentNodeConfigArgs) ToEnvironmentNodeConfigPtrOutput() EnvironmentNodeConfigPtrOutput

func (EnvironmentNodeConfigArgs) ToEnvironmentNodeConfigPtrOutputWithContext

func (i EnvironmentNodeConfigArgs) ToEnvironmentNodeConfigPtrOutputWithContext(ctx context.Context) EnvironmentNodeConfigPtrOutput

type EnvironmentNodeConfigInput

type EnvironmentNodeConfigInput interface {
	pulumi.Input

	ToEnvironmentNodeConfigOutput() EnvironmentNodeConfigOutput
	ToEnvironmentNodeConfigOutputWithContext(context.Context) EnvironmentNodeConfigOutput
}

EnvironmentNodeConfigInput is an input type that accepts EnvironmentNodeConfigArgs and EnvironmentNodeConfigOutput values. You can construct a concrete instance of `EnvironmentNodeConfigInput` via:

EnvironmentNodeConfigArgs{...}

type EnvironmentNodeConfigOutput

type EnvironmentNodeConfigOutput struct{ *pulumi.OutputState }

func (EnvironmentNodeConfigOutput) CurrentAggregateNodeCount

func (o EnvironmentNodeConfigOutput) CurrentAggregateNodeCount() pulumi.StringPtrOutput

(Output) The current total number of gateway nodes that each environment currently has across all instances.

func (EnvironmentNodeConfigOutput) ElementType

func (EnvironmentNodeConfigOutput) MaxNodeCount

The maximum total number of gateway nodes that the is reserved for all instances that has the specified environment. If not specified, the default is determined by the recommended maximum number of nodes for that gateway.

func (EnvironmentNodeConfigOutput) MinNodeCount

The minimum total number of gateway nodes that the is reserved for all instances that has the specified environment. If not specified, the default is determined by the recommended minimum number of nodes for that gateway.

func (EnvironmentNodeConfigOutput) ToEnvironmentNodeConfigOutput

func (o EnvironmentNodeConfigOutput) ToEnvironmentNodeConfigOutput() EnvironmentNodeConfigOutput

func (EnvironmentNodeConfigOutput) ToEnvironmentNodeConfigOutputWithContext

func (o EnvironmentNodeConfigOutput) ToEnvironmentNodeConfigOutputWithContext(ctx context.Context) EnvironmentNodeConfigOutput

func (EnvironmentNodeConfigOutput) ToEnvironmentNodeConfigPtrOutput

func (o EnvironmentNodeConfigOutput) ToEnvironmentNodeConfigPtrOutput() EnvironmentNodeConfigPtrOutput

func (EnvironmentNodeConfigOutput) ToEnvironmentNodeConfigPtrOutputWithContext

func (o EnvironmentNodeConfigOutput) ToEnvironmentNodeConfigPtrOutputWithContext(ctx context.Context) EnvironmentNodeConfigPtrOutput

type EnvironmentNodeConfigPtrInput

type EnvironmentNodeConfigPtrInput interface {
	pulumi.Input

	ToEnvironmentNodeConfigPtrOutput() EnvironmentNodeConfigPtrOutput
	ToEnvironmentNodeConfigPtrOutputWithContext(context.Context) EnvironmentNodeConfigPtrOutput
}

EnvironmentNodeConfigPtrInput is an input type that accepts EnvironmentNodeConfigArgs, EnvironmentNodeConfigPtr and EnvironmentNodeConfigPtrOutput values. You can construct a concrete instance of `EnvironmentNodeConfigPtrInput` via:

        EnvironmentNodeConfigArgs{...}

or:

        nil

type EnvironmentNodeConfigPtrOutput

type EnvironmentNodeConfigPtrOutput struct{ *pulumi.OutputState }

func (EnvironmentNodeConfigPtrOutput) CurrentAggregateNodeCount

func (o EnvironmentNodeConfigPtrOutput) CurrentAggregateNodeCount() pulumi.StringPtrOutput

(Output) The current total number of gateway nodes that each environment currently has across all instances.

func (EnvironmentNodeConfigPtrOutput) Elem

func (EnvironmentNodeConfigPtrOutput) ElementType

func (EnvironmentNodeConfigPtrOutput) MaxNodeCount

The maximum total number of gateway nodes that the is reserved for all instances that has the specified environment. If not specified, the default is determined by the recommended maximum number of nodes for that gateway.

func (EnvironmentNodeConfigPtrOutput) MinNodeCount

The minimum total number of gateway nodes that the is reserved for all instances that has the specified environment. If not specified, the default is determined by the recommended minimum number of nodes for that gateway.

func (EnvironmentNodeConfigPtrOutput) ToEnvironmentNodeConfigPtrOutput

func (o EnvironmentNodeConfigPtrOutput) ToEnvironmentNodeConfigPtrOutput() EnvironmentNodeConfigPtrOutput

func (EnvironmentNodeConfigPtrOutput) ToEnvironmentNodeConfigPtrOutputWithContext

func (o EnvironmentNodeConfigPtrOutput) ToEnvironmentNodeConfigPtrOutputWithContext(ctx context.Context) EnvironmentNodeConfigPtrOutput

type EnvironmentOutput

type EnvironmentOutput struct{ *pulumi.OutputState }

func (EnvironmentOutput) ApiProxyType

func (o EnvironmentOutput) ApiProxyType() pulumi.StringOutput

Optional. API Proxy type supported by the environment. The type can be set when creating the Environment and cannot be changed. Possible values are: `API_PROXY_TYPE_UNSPECIFIED`, `PROGRAMMABLE`, `CONFIGURABLE`.

func (EnvironmentOutput) DeploymentType

func (o EnvironmentOutput) DeploymentType() pulumi.StringOutput

Optional. Deployment type supported by the environment. The deployment type can be set when creating the environment and cannot be changed. When you enable archive deployment, you will be prevented from performing a subset of actions within the environment, including: Managing the deployment of API proxy or shared flow revisions; Creating, updating, or deleting resource files; Creating, updating, or deleting target servers. Possible values are: `DEPLOYMENT_TYPE_UNSPECIFIED`, `PROXY`, `ARCHIVE`.

func (EnvironmentOutput) Description

func (o EnvironmentOutput) Description() pulumi.StringPtrOutput

Description of the environment.

func (EnvironmentOutput) DisplayName

func (o EnvironmentOutput) DisplayName() pulumi.StringPtrOutput

Display name of the environment.

func (EnvironmentOutput) ElementType

func (EnvironmentOutput) ElementType() reflect.Type

func (EnvironmentOutput) Name

The resource ID of the environment.

func (EnvironmentOutput) NodeConfig

NodeConfig for setting the min/max number of nodes associated with the environment. Structure is documented below.

func (EnvironmentOutput) OrgId

The Apigee Organization associated with the Apigee environment, in the format `organizations/{{org_name}}`.

***

func (EnvironmentOutput) ToEnvironmentOutput

func (o EnvironmentOutput) ToEnvironmentOutput() EnvironmentOutput

func (EnvironmentOutput) ToEnvironmentOutputWithContext

func (o EnvironmentOutput) ToEnvironmentOutputWithContext(ctx context.Context) EnvironmentOutput

func (EnvironmentOutput) Type added in v7.1.0

Types that can be selected for an Environment. Each of the types are limited by capability and capacity. Refer to Apigee's public documentation to understand about each of these types in details. An Apigee org can support heterogeneous Environments. Possible values are: `ENVIRONMENT_TYPE_UNSPECIFIED`, `BASE`, `INTERMEDIATE`, `COMPREHENSIVE`.

type EnvironmentState

type EnvironmentState struct {
	// Optional. API Proxy type supported by the environment. The type can be set when creating
	// the Environment and cannot be changed.
	// Possible values are: `API_PROXY_TYPE_UNSPECIFIED`, `PROGRAMMABLE`, `CONFIGURABLE`.
	ApiProxyType pulumi.StringPtrInput
	// Optional. Deployment type supported by the environment. The deployment type can be
	// set when creating the environment and cannot be changed. When you enable archive
	// deployment, you will be prevented from performing a subset of actions within the
	// environment, including:
	// Managing the deployment of API proxy or shared flow revisions;
	// Creating, updating, or deleting resource files;
	// Creating, updating, or deleting target servers.
	// Possible values are: `DEPLOYMENT_TYPE_UNSPECIFIED`, `PROXY`, `ARCHIVE`.
	DeploymentType pulumi.StringPtrInput
	// Description of the environment.
	Description pulumi.StringPtrInput
	// Display name of the environment.
	DisplayName pulumi.StringPtrInput
	// The resource ID of the environment.
	Name pulumi.StringPtrInput
	// NodeConfig for setting the min/max number of nodes associated with the environment.
	// Structure is documented below.
	NodeConfig EnvironmentNodeConfigPtrInput
	// The Apigee Organization associated with the Apigee environment,
	// in the format `organizations/{{org_name}}`.
	//
	// ***
	OrgId pulumi.StringPtrInput
	// Types that can be selected for an Environment. Each of the types are
	// limited by capability and capacity. Refer to Apigee's public documentation
	// to understand about each of these types in details.
	// An Apigee org can support heterogeneous Environments.
	// Possible values are: `ENVIRONMENT_TYPE_UNSPECIFIED`, `BASE`, `INTERMEDIATE`, `COMPREHENSIVE`.
	Type pulumi.StringPtrInput
}

func (EnvironmentState) ElementType

func (EnvironmentState) ElementType() reflect.Type

type Flowhook

type Flowhook struct {
	pulumi.CustomResourceState

	// Flag that specifies whether execution should continue if the flow hook throws an exception. Set to true to continue execution. Set to false to stop execution if the flow hook throws an exception. Defaults to true.
	ContinueOnError pulumi.BoolPtrOutput `pulumi:"continueOnError"`
	// Description of the flow hook.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The resource ID of the environment.
	Environment pulumi.StringOutput `pulumi:"environment"`
	// Where in the API call flow the flow hook is invoked. Must be one of PreProxyFlowHook, PostProxyFlowHook, PreTargetFlowHook, or PostTargetFlowHook.
	FlowHookPoint pulumi.StringOutput `pulumi:"flowHookPoint"`
	// The Apigee Organization associated with the environment
	OrgId pulumi.StringOutput `pulumi:"orgId"`
	// Id of the Sharedflow attaching to a flowhook point.
	Sharedflow pulumi.StringOutput `pulumi:"sharedflow"`
}

Represents a sharedflow attachment to a flowhook point.

To get more information about Flowhook, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.environments.flowhooks#FlowHook) * How-to Guides

## Import

Flowhook can be imported using any of these accepted formats:

* `organizations/{{org_id}}/environments/{{environment}}/flowhooks/{{flow_hook_point}}`

* `{{org_id}}/{{environment}}/{{flow_hook_point}}`

When using the `pulumi import` command, Flowhook can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/flowhook:Flowhook default organizations/{{org_id}}/environments/{{environment}}/flowhooks/{{flow_hook_point}} ```

```sh $ pulumi import gcp:apigee/flowhook:Flowhook default {{org_id}}/{{environment}}/{{flow_hook_point}} ```

func GetFlowhook

func GetFlowhook(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FlowhookState, opts ...pulumi.ResourceOption) (*Flowhook, error)

GetFlowhook gets an existing Flowhook 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 NewFlowhook

func NewFlowhook(ctx *pulumi.Context,
	name string, args *FlowhookArgs, opts ...pulumi.ResourceOption) (*Flowhook, error)

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

func (*Flowhook) ElementType

func (*Flowhook) ElementType() reflect.Type

func (*Flowhook) ToFlowhookOutput

func (i *Flowhook) ToFlowhookOutput() FlowhookOutput

func (*Flowhook) ToFlowhookOutputWithContext

func (i *Flowhook) ToFlowhookOutputWithContext(ctx context.Context) FlowhookOutput

type FlowhookArgs

type FlowhookArgs struct {
	// Flag that specifies whether execution should continue if the flow hook throws an exception. Set to true to continue execution. Set to false to stop execution if the flow hook throws an exception. Defaults to true.
	ContinueOnError pulumi.BoolPtrInput
	// Description of the flow hook.
	Description pulumi.StringPtrInput
	// The resource ID of the environment.
	Environment pulumi.StringInput
	// Where in the API call flow the flow hook is invoked. Must be one of PreProxyFlowHook, PostProxyFlowHook, PreTargetFlowHook, or PostTargetFlowHook.
	FlowHookPoint pulumi.StringInput
	// The Apigee Organization associated with the environment
	OrgId pulumi.StringInput
	// Id of the Sharedflow attaching to a flowhook point.
	Sharedflow pulumi.StringInput
}

The set of arguments for constructing a Flowhook resource.

func (FlowhookArgs) ElementType

func (FlowhookArgs) ElementType() reflect.Type

type FlowhookArray

type FlowhookArray []FlowhookInput

func (FlowhookArray) ElementType

func (FlowhookArray) ElementType() reflect.Type

func (FlowhookArray) ToFlowhookArrayOutput

func (i FlowhookArray) ToFlowhookArrayOutput() FlowhookArrayOutput

func (FlowhookArray) ToFlowhookArrayOutputWithContext

func (i FlowhookArray) ToFlowhookArrayOutputWithContext(ctx context.Context) FlowhookArrayOutput

type FlowhookArrayInput

type FlowhookArrayInput interface {
	pulumi.Input

	ToFlowhookArrayOutput() FlowhookArrayOutput
	ToFlowhookArrayOutputWithContext(context.Context) FlowhookArrayOutput
}

FlowhookArrayInput is an input type that accepts FlowhookArray and FlowhookArrayOutput values. You can construct a concrete instance of `FlowhookArrayInput` via:

FlowhookArray{ FlowhookArgs{...} }

type FlowhookArrayOutput

type FlowhookArrayOutput struct{ *pulumi.OutputState }

func (FlowhookArrayOutput) ElementType

func (FlowhookArrayOutput) ElementType() reflect.Type

func (FlowhookArrayOutput) Index

func (FlowhookArrayOutput) ToFlowhookArrayOutput

func (o FlowhookArrayOutput) ToFlowhookArrayOutput() FlowhookArrayOutput

func (FlowhookArrayOutput) ToFlowhookArrayOutputWithContext

func (o FlowhookArrayOutput) ToFlowhookArrayOutputWithContext(ctx context.Context) FlowhookArrayOutput

type FlowhookInput

type FlowhookInput interface {
	pulumi.Input

	ToFlowhookOutput() FlowhookOutput
	ToFlowhookOutputWithContext(ctx context.Context) FlowhookOutput
}

type FlowhookMap

type FlowhookMap map[string]FlowhookInput

func (FlowhookMap) ElementType

func (FlowhookMap) ElementType() reflect.Type

func (FlowhookMap) ToFlowhookMapOutput

func (i FlowhookMap) ToFlowhookMapOutput() FlowhookMapOutput

func (FlowhookMap) ToFlowhookMapOutputWithContext

func (i FlowhookMap) ToFlowhookMapOutputWithContext(ctx context.Context) FlowhookMapOutput

type FlowhookMapInput

type FlowhookMapInput interface {
	pulumi.Input

	ToFlowhookMapOutput() FlowhookMapOutput
	ToFlowhookMapOutputWithContext(context.Context) FlowhookMapOutput
}

FlowhookMapInput is an input type that accepts FlowhookMap and FlowhookMapOutput values. You can construct a concrete instance of `FlowhookMapInput` via:

FlowhookMap{ "key": FlowhookArgs{...} }

type FlowhookMapOutput

type FlowhookMapOutput struct{ *pulumi.OutputState }

func (FlowhookMapOutput) ElementType

func (FlowhookMapOutput) ElementType() reflect.Type

func (FlowhookMapOutput) MapIndex

func (FlowhookMapOutput) ToFlowhookMapOutput

func (o FlowhookMapOutput) ToFlowhookMapOutput() FlowhookMapOutput

func (FlowhookMapOutput) ToFlowhookMapOutputWithContext

func (o FlowhookMapOutput) ToFlowhookMapOutputWithContext(ctx context.Context) FlowhookMapOutput

type FlowhookOutput

type FlowhookOutput struct{ *pulumi.OutputState }

func (FlowhookOutput) ContinueOnError

func (o FlowhookOutput) ContinueOnError() pulumi.BoolPtrOutput

Flag that specifies whether execution should continue if the flow hook throws an exception. Set to true to continue execution. Set to false to stop execution if the flow hook throws an exception. Defaults to true.

func (FlowhookOutput) Description

func (o FlowhookOutput) Description() pulumi.StringPtrOutput

Description of the flow hook.

func (FlowhookOutput) ElementType

func (FlowhookOutput) ElementType() reflect.Type

func (FlowhookOutput) Environment

func (o FlowhookOutput) Environment() pulumi.StringOutput

The resource ID of the environment.

func (FlowhookOutput) FlowHookPoint

func (o FlowhookOutput) FlowHookPoint() pulumi.StringOutput

Where in the API call flow the flow hook is invoked. Must be one of PreProxyFlowHook, PostProxyFlowHook, PreTargetFlowHook, or PostTargetFlowHook.

func (FlowhookOutput) OrgId

The Apigee Organization associated with the environment

func (FlowhookOutput) Sharedflow

func (o FlowhookOutput) Sharedflow() pulumi.StringOutput

Id of the Sharedflow attaching to a flowhook point.

func (FlowhookOutput) ToFlowhookOutput

func (o FlowhookOutput) ToFlowhookOutput() FlowhookOutput

func (FlowhookOutput) ToFlowhookOutputWithContext

func (o FlowhookOutput) ToFlowhookOutputWithContext(ctx context.Context) FlowhookOutput

type FlowhookState

type FlowhookState struct {
	// Flag that specifies whether execution should continue if the flow hook throws an exception. Set to true to continue execution. Set to false to stop execution if the flow hook throws an exception. Defaults to true.
	ContinueOnError pulumi.BoolPtrInput
	// Description of the flow hook.
	Description pulumi.StringPtrInput
	// The resource ID of the environment.
	Environment pulumi.StringPtrInput
	// Where in the API call flow the flow hook is invoked. Must be one of PreProxyFlowHook, PostProxyFlowHook, PreTargetFlowHook, or PostTargetFlowHook.
	FlowHookPoint pulumi.StringPtrInput
	// The Apigee Organization associated with the environment
	OrgId pulumi.StringPtrInput
	// Id of the Sharedflow attaching to a flowhook point.
	Sharedflow pulumi.StringPtrInput
}

func (FlowhookState) ElementType

func (FlowhookState) ElementType() reflect.Type

type Instance

type Instance struct {
	pulumi.CustomResourceState

	// Optional. Customer accept list represents the list of projects (id/number) on customer
	// side that can privately connect to the service attachment. It is an optional field
	// which the customers can provide during the instance creation. By default, the customer
	// project associated with the Apigee organization will be included to the list.
	ConsumerAcceptLists pulumi.StringArrayOutput `pulumi:"consumerAcceptLists"`
	// Description of the instance.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Customer Managed Encryption Key (CMEK) used for disk and volume encryption. Required for Apigee paid subscriptions only.
	// Use the following format: `projects/([^/]+)/locations/([^/]+)/keyRings/([^/]+)/cryptoKeys/([^/]+)`
	DiskEncryptionKeyName pulumi.StringPtrOutput `pulumi:"diskEncryptionKeyName"`
	// Display name of the instance.
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// Output only. Hostname or IP address of the exposed Apigee endpoint used by clients to connect to the service.
	Host pulumi.StringOutput `pulumi:"host"`
	// IP range represents the customer-provided CIDR block of length 22 that will be used for
	// the Apigee instance creation. This optional range, if provided, should be freely
	// available as part of larger named range the customer has allocated to the Service
	// Networking peering. If this is not provided, Apigee will automatically request for any
	// available /22 CIDR block from Service Networking. The customer should use this CIDR block
	// for configuring their firewall needs to allow traffic from Apigee.
	// Input format: "a.b.c.d/22"
	IpRange pulumi.StringPtrOutput `pulumi:"ipRange"`
	// Required. Compute Engine location where the instance resides.
	Location pulumi.StringOutput `pulumi:"location"`
	// Resource ID of the instance.
	Name pulumi.StringOutput `pulumi:"name"`
	// The Apigee Organization associated with the Apigee instance,
	// in the format `organizations/{{org_name}}`.
	//
	// ***
	OrgId pulumi.StringOutput `pulumi:"orgId"`
	// The size of the CIDR block range that will be reserved by the instance. For valid values,
	// see [CidrRange](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.instances#CidrRange) on the documentation.
	PeeringCidrRange pulumi.StringOutput `pulumi:"peeringCidrRange"`
	// Output only. Port number of the exposed Apigee endpoint.
	Port pulumi.StringOutput `pulumi:"port"`
	// Output only. Resource name of the service attachment created for the instance in
	// the format: projects/*/regions/*/serviceAttachments/* Apigee customers can privately
	// forward traffic to this service attachment using the PSC endpoints.
	ServiceAttachment pulumi.StringOutput `pulumi:"serviceAttachment"`
}

An `Instance` is the runtime dataplane in Apigee.

To get more information about Instance, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.instances/create) * How-to Guides

## Example Usage

### Apigee Instance Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/servicenetworking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := organizations.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		apigeeNetwork, err := compute.NewNetwork(ctx, "apigee_network", &compute.NetworkArgs{
			Name: pulumi.String("apigee-network"),
		})
		if err != nil {
			return err
		}
		apigeeRange, err := compute.NewGlobalAddress(ctx, "apigee_range", &compute.GlobalAddressArgs{
			Name:         pulumi.String("apigee-range"),
			Purpose:      pulumi.String("VPC_PEERING"),
			AddressType:  pulumi.String("INTERNAL"),
			PrefixLength: pulumi.Int(16),
			Network:      apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		_, err = servicenetworking.NewConnection(ctx, "apigee_vpc_connection", &servicenetworking.ConnectionArgs{
			Network: apigeeNetwork.ID(),
			Service: pulumi.String("servicenetworking.googleapis.com"),
			ReservedPeeringRanges: pulumi.StringArray{
				apigeeRange.Name,
			},
		})
		if err != nil {
			return err
		}
		apigeeOrg, err := apigee.NewOrganization(ctx, "apigee_org", &apigee.OrganizationArgs{
			AnalyticsRegion:   pulumi.String("us-central1"),
			ProjectId:         pulumi.String(current.Project),
			AuthorizedNetwork: apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		_, err = apigee.NewInstance(ctx, "apigee_instance", &apigee.InstanceArgs{
			Name:     pulumi.String("my-instance-name"),
			Location: pulumi.String("us-central1"),
			OrgId:    apigeeOrg.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Apigee Instance Cidr Range

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/servicenetworking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := organizations.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		apigeeNetwork, err := compute.NewNetwork(ctx, "apigee_network", &compute.NetworkArgs{
			Name: pulumi.String("apigee-network"),
		})
		if err != nil {
			return err
		}
		apigeeRange, err := compute.NewGlobalAddress(ctx, "apigee_range", &compute.GlobalAddressArgs{
			Name:         pulumi.String("apigee-range"),
			Purpose:      pulumi.String("VPC_PEERING"),
			AddressType:  pulumi.String("INTERNAL"),
			PrefixLength: pulumi.Int(22),
			Network:      apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		_, err = servicenetworking.NewConnection(ctx, "apigee_vpc_connection", &servicenetworking.ConnectionArgs{
			Network: apigeeNetwork.ID(),
			Service: pulumi.String("servicenetworking.googleapis.com"),
			ReservedPeeringRanges: pulumi.StringArray{
				apigeeRange.Name,
			},
		})
		if err != nil {
			return err
		}
		apigeeOrg, err := apigee.NewOrganization(ctx, "apigee_org", &apigee.OrganizationArgs{
			AnalyticsRegion:   pulumi.String("us-central1"),
			ProjectId:         pulumi.String(current.Project),
			AuthorizedNetwork: apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		_, err = apigee.NewInstance(ctx, "apigee_instance", &apigee.InstanceArgs{
			Name:             pulumi.String("my-instance-name"),
			Location:         pulumi.String("us-central1"),
			OrgId:            apigeeOrg.ID(),
			PeeringCidrRange: pulumi.String("SLASH_22"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Apigee Instance Ip Range

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/servicenetworking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := organizations.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		apigeeNetwork, err := compute.NewNetwork(ctx, "apigee_network", &compute.NetworkArgs{
			Name: pulumi.String("apigee-network"),
		})
		if err != nil {
			return err
		}
		apigeeRange, err := compute.NewGlobalAddress(ctx, "apigee_range", &compute.GlobalAddressArgs{
			Name:         pulumi.String("apigee-range"),
			Purpose:      pulumi.String("VPC_PEERING"),
			AddressType:  pulumi.String("INTERNAL"),
			PrefixLength: pulumi.Int(22),
			Network:      apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		_, err = servicenetworking.NewConnection(ctx, "apigee_vpc_connection", &servicenetworking.ConnectionArgs{
			Network: apigeeNetwork.ID(),
			Service: pulumi.String("servicenetworking.googleapis.com"),
			ReservedPeeringRanges: pulumi.StringArray{
				apigeeRange.Name,
			},
		})
		if err != nil {
			return err
		}
		apigeeOrg, err := apigee.NewOrganization(ctx, "apigee_org", &apigee.OrganizationArgs{
			AnalyticsRegion:   pulumi.String("us-central1"),
			ProjectId:         pulumi.String(current.Project),
			AuthorizedNetwork: apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		_, err = apigee.NewInstance(ctx, "apigee_instance", &apigee.InstanceArgs{
			Name:     pulumi.String("my-instance-name"),
			Location: pulumi.String("us-central1"),
			OrgId:    apigeeOrg.ID(),
			IpRange:  pulumi.String("10.87.8.0/22"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Apigee Instance Full

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/kms"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/projects"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/servicenetworking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := organizations.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		apigeeNetwork, err := compute.NewNetwork(ctx, "apigee_network", &compute.NetworkArgs{
			Name: pulumi.String("apigee-network"),
		})
		if err != nil {
			return err
		}
		apigeeRange, err := compute.NewGlobalAddress(ctx, "apigee_range", &compute.GlobalAddressArgs{
			Name:         pulumi.String("apigee-range"),
			Purpose:      pulumi.String("VPC_PEERING"),
			AddressType:  pulumi.String("INTERNAL"),
			PrefixLength: pulumi.Int(16),
			Network:      apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		_, err = servicenetworking.NewConnection(ctx, "apigee_vpc_connection", &servicenetworking.ConnectionArgs{
			Network: apigeeNetwork.ID(),
			Service: pulumi.String("servicenetworking.googleapis.com"),
			ReservedPeeringRanges: pulumi.StringArray{
				apigeeRange.Name,
			},
		})
		if err != nil {
			return err
		}
		apigeeKeyring, err := kms.NewKeyRing(ctx, "apigee_keyring", &kms.KeyRingArgs{
			Name:     pulumi.String("apigee-keyring"),
			Location: pulumi.String("us-central1"),
		})
		if err != nil {
			return err
		}
		apigeeKey, err := kms.NewCryptoKey(ctx, "apigee_key", &kms.CryptoKeyArgs{
			Name:    pulumi.String("apigee-key"),
			KeyRing: apigeeKeyring.ID(),
		})
		if err != nil {
			return err
		}
		apigeeSa, err := projects.NewServiceIdentity(ctx, "apigee_sa", &projects.ServiceIdentityArgs{
			Project: pulumi.Any(project.ProjectId),
			Service: pulumi.Any(apigee.Service),
		})
		if err != nil {
			return err
		}
		_, err = kms.NewCryptoKeyIAMMember(ctx, "apigee_sa_keyuser", &kms.CryptoKeyIAMMemberArgs{
			CryptoKeyId: apigeeKey.ID(),
			Role:        pulumi.String("roles/cloudkms.cryptoKeyEncrypterDecrypter"),
			Member: apigeeSa.Email.ApplyT(func(email string) (string, error) {
				return fmt.Sprintf("serviceAccount:%v", email), nil
			}).(pulumi.StringOutput),
		})
		if err != nil {
			return err
		}
		apigeeOrg, err := apigee.NewOrganization(ctx, "apigee_org", &apigee.OrganizationArgs{
			AnalyticsRegion:                  pulumi.String("us-central1"),
			DisplayName:                      pulumi.String("apigee-org"),
			Description:                      pulumi.String("Auto-provisioned Apigee Org."),
			ProjectId:                        pulumi.String(current.Project),
			AuthorizedNetwork:                apigeeNetwork.ID(),
			RuntimeDatabaseEncryptionKeyName: apigeeKey.ID(),
		})
		if err != nil {
			return err
		}
		_, err = apigee.NewInstance(ctx, "apigee_instance", &apigee.InstanceArgs{
			Name:                  pulumi.String("my-instance-name"),
			Location:              pulumi.String("us-central1"),
			Description:           pulumi.String("Auto-managed Apigee Runtime Instance"),
			DisplayName:           pulumi.String("my-instance-name"),
			OrgId:                 apigeeOrg.ID(),
			DiskEncryptionKeyName: apigeeKey.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Instance can be imported using any of these accepted formats:

* `{{org_id}}/instances/{{name}}`

* `{{org_id}}/{{name}}`

When using the `pulumi import` command, Instance can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/instance:Instance default {{org_id}}/instances/{{name}} ```

```sh $ pulumi import gcp:apigee/instance:Instance default {{org_id}}/{{name}} ```

func GetInstance

func GetInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceState, opts ...pulumi.ResourceOption) (*Instance, error)

GetInstance gets an existing Instance 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 NewInstance

func NewInstance(ctx *pulumi.Context,
	name string, args *InstanceArgs, opts ...pulumi.ResourceOption) (*Instance, error)

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

func (*Instance) ElementType

func (*Instance) ElementType() reflect.Type

func (*Instance) ToInstanceOutput

func (i *Instance) ToInstanceOutput() InstanceOutput

func (*Instance) ToInstanceOutputWithContext

func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

type InstanceArgs

type InstanceArgs struct {
	// Optional. Customer accept list represents the list of projects (id/number) on customer
	// side that can privately connect to the service attachment. It is an optional field
	// which the customers can provide during the instance creation. By default, the customer
	// project associated with the Apigee organization will be included to the list.
	ConsumerAcceptLists pulumi.StringArrayInput
	// Description of the instance.
	Description pulumi.StringPtrInput
	// Customer Managed Encryption Key (CMEK) used for disk and volume encryption. Required for Apigee paid subscriptions only.
	// Use the following format: `projects/([^/]+)/locations/([^/]+)/keyRings/([^/]+)/cryptoKeys/([^/]+)`
	DiskEncryptionKeyName pulumi.StringPtrInput
	// Display name of the instance.
	DisplayName pulumi.StringPtrInput
	// IP range represents the customer-provided CIDR block of length 22 that will be used for
	// the Apigee instance creation. This optional range, if provided, should be freely
	// available as part of larger named range the customer has allocated to the Service
	// Networking peering. If this is not provided, Apigee will automatically request for any
	// available /22 CIDR block from Service Networking. The customer should use this CIDR block
	// for configuring their firewall needs to allow traffic from Apigee.
	// Input format: "a.b.c.d/22"
	IpRange pulumi.StringPtrInput
	// Required. Compute Engine location where the instance resides.
	Location pulumi.StringInput
	// Resource ID of the instance.
	Name pulumi.StringPtrInput
	// The Apigee Organization associated with the Apigee instance,
	// in the format `organizations/{{org_name}}`.
	//
	// ***
	OrgId pulumi.StringInput
	// The size of the CIDR block range that will be reserved by the instance. For valid values,
	// see [CidrRange](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.instances#CidrRange) on the documentation.
	PeeringCidrRange pulumi.StringPtrInput
}

The set of arguments for constructing a Instance resource.

func (InstanceArgs) ElementType

func (InstanceArgs) ElementType() reflect.Type

type InstanceArray

type InstanceArray []InstanceInput

func (InstanceArray) ElementType

func (InstanceArray) ElementType() reflect.Type

func (InstanceArray) ToInstanceArrayOutput

func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArray) ToInstanceArrayOutputWithContext

func (i InstanceArray) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceArrayInput

type InstanceArrayInput interface {
	pulumi.Input

	ToInstanceArrayOutput() InstanceArrayOutput
	ToInstanceArrayOutputWithContext(context.Context) InstanceArrayOutput
}

InstanceArrayInput is an input type that accepts InstanceArray and InstanceArrayOutput values. You can construct a concrete instance of `InstanceArrayInput` via:

InstanceArray{ InstanceArgs{...} }

type InstanceArrayOutput

type InstanceArrayOutput struct{ *pulumi.OutputState }

func (InstanceArrayOutput) ElementType

func (InstanceArrayOutput) ElementType() reflect.Type

func (InstanceArrayOutput) Index

func (InstanceArrayOutput) ToInstanceArrayOutput

func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArrayOutput) ToInstanceArrayOutputWithContext

func (o InstanceArrayOutput) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceAttachment

type InstanceAttachment struct {
	pulumi.CustomResourceState

	// The resource ID of the environment.
	Environment pulumi.StringOutput `pulumi:"environment"`
	// The Apigee instance associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/instances/{{instance_name}}`.
	//
	// ***
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The name of the newly created  attachment (output parameter).
	Name pulumi.StringOutput `pulumi:"name"`
}

An `Instance attachment` in Apigee.

To get more information about InstanceAttachment, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.instances.attachments/create) * How-to Guides

## Example Usage

## Import

InstanceAttachment can be imported using any of these accepted formats:

* `{{instance_id}}/attachments/{{name}}`

* `{{instance_id}}/{{name}}`

When using the `pulumi import` command, InstanceAttachment can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/instanceAttachment:InstanceAttachment default {{instance_id}}/attachments/{{name}} ```

```sh $ pulumi import gcp:apigee/instanceAttachment:InstanceAttachment default {{instance_id}}/{{name}} ```

func GetInstanceAttachment

func GetInstanceAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceAttachmentState, opts ...pulumi.ResourceOption) (*InstanceAttachment, error)

GetInstanceAttachment gets an existing InstanceAttachment 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 NewInstanceAttachment

func NewInstanceAttachment(ctx *pulumi.Context,
	name string, args *InstanceAttachmentArgs, opts ...pulumi.ResourceOption) (*InstanceAttachment, error)

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

func (*InstanceAttachment) ElementType

func (*InstanceAttachment) ElementType() reflect.Type

func (*InstanceAttachment) ToInstanceAttachmentOutput

func (i *InstanceAttachment) ToInstanceAttachmentOutput() InstanceAttachmentOutput

func (*InstanceAttachment) ToInstanceAttachmentOutputWithContext

func (i *InstanceAttachment) ToInstanceAttachmentOutputWithContext(ctx context.Context) InstanceAttachmentOutput

type InstanceAttachmentArgs

type InstanceAttachmentArgs struct {
	// The resource ID of the environment.
	Environment pulumi.StringInput
	// The Apigee instance associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/instances/{{instance_name}}`.
	//
	// ***
	InstanceId pulumi.StringInput
}

The set of arguments for constructing a InstanceAttachment resource.

func (InstanceAttachmentArgs) ElementType

func (InstanceAttachmentArgs) ElementType() reflect.Type

type InstanceAttachmentArray

type InstanceAttachmentArray []InstanceAttachmentInput

func (InstanceAttachmentArray) ElementType

func (InstanceAttachmentArray) ElementType() reflect.Type

func (InstanceAttachmentArray) ToInstanceAttachmentArrayOutput

func (i InstanceAttachmentArray) ToInstanceAttachmentArrayOutput() InstanceAttachmentArrayOutput

func (InstanceAttachmentArray) ToInstanceAttachmentArrayOutputWithContext

func (i InstanceAttachmentArray) ToInstanceAttachmentArrayOutputWithContext(ctx context.Context) InstanceAttachmentArrayOutput

type InstanceAttachmentArrayInput

type InstanceAttachmentArrayInput interface {
	pulumi.Input

	ToInstanceAttachmentArrayOutput() InstanceAttachmentArrayOutput
	ToInstanceAttachmentArrayOutputWithContext(context.Context) InstanceAttachmentArrayOutput
}

InstanceAttachmentArrayInput is an input type that accepts InstanceAttachmentArray and InstanceAttachmentArrayOutput values. You can construct a concrete instance of `InstanceAttachmentArrayInput` via:

InstanceAttachmentArray{ InstanceAttachmentArgs{...} }

type InstanceAttachmentArrayOutput

type InstanceAttachmentArrayOutput struct{ *pulumi.OutputState }

func (InstanceAttachmentArrayOutput) ElementType

func (InstanceAttachmentArrayOutput) Index

func (InstanceAttachmentArrayOutput) ToInstanceAttachmentArrayOutput

func (o InstanceAttachmentArrayOutput) ToInstanceAttachmentArrayOutput() InstanceAttachmentArrayOutput

func (InstanceAttachmentArrayOutput) ToInstanceAttachmentArrayOutputWithContext

func (o InstanceAttachmentArrayOutput) ToInstanceAttachmentArrayOutputWithContext(ctx context.Context) InstanceAttachmentArrayOutput

type InstanceAttachmentInput

type InstanceAttachmentInput interface {
	pulumi.Input

	ToInstanceAttachmentOutput() InstanceAttachmentOutput
	ToInstanceAttachmentOutputWithContext(ctx context.Context) InstanceAttachmentOutput
}

type InstanceAttachmentMap

type InstanceAttachmentMap map[string]InstanceAttachmentInput

func (InstanceAttachmentMap) ElementType

func (InstanceAttachmentMap) ElementType() reflect.Type

func (InstanceAttachmentMap) ToInstanceAttachmentMapOutput

func (i InstanceAttachmentMap) ToInstanceAttachmentMapOutput() InstanceAttachmentMapOutput

func (InstanceAttachmentMap) ToInstanceAttachmentMapOutputWithContext

func (i InstanceAttachmentMap) ToInstanceAttachmentMapOutputWithContext(ctx context.Context) InstanceAttachmentMapOutput

type InstanceAttachmentMapInput

type InstanceAttachmentMapInput interface {
	pulumi.Input

	ToInstanceAttachmentMapOutput() InstanceAttachmentMapOutput
	ToInstanceAttachmentMapOutputWithContext(context.Context) InstanceAttachmentMapOutput
}

InstanceAttachmentMapInput is an input type that accepts InstanceAttachmentMap and InstanceAttachmentMapOutput values. You can construct a concrete instance of `InstanceAttachmentMapInput` via:

InstanceAttachmentMap{ "key": InstanceAttachmentArgs{...} }

type InstanceAttachmentMapOutput

type InstanceAttachmentMapOutput struct{ *pulumi.OutputState }

func (InstanceAttachmentMapOutput) ElementType

func (InstanceAttachmentMapOutput) MapIndex

func (InstanceAttachmentMapOutput) ToInstanceAttachmentMapOutput

func (o InstanceAttachmentMapOutput) ToInstanceAttachmentMapOutput() InstanceAttachmentMapOutput

func (InstanceAttachmentMapOutput) ToInstanceAttachmentMapOutputWithContext

func (o InstanceAttachmentMapOutput) ToInstanceAttachmentMapOutputWithContext(ctx context.Context) InstanceAttachmentMapOutput

type InstanceAttachmentOutput

type InstanceAttachmentOutput struct{ *pulumi.OutputState }

func (InstanceAttachmentOutput) ElementType

func (InstanceAttachmentOutput) ElementType() reflect.Type

func (InstanceAttachmentOutput) Environment

The resource ID of the environment.

func (InstanceAttachmentOutput) InstanceId

The Apigee instance associated with the Apigee environment, in the format `organizations/{{org_name}}/instances/{{instance_name}}`.

***

func (InstanceAttachmentOutput) Name

The name of the newly created attachment (output parameter).

func (InstanceAttachmentOutput) ToInstanceAttachmentOutput

func (o InstanceAttachmentOutput) ToInstanceAttachmentOutput() InstanceAttachmentOutput

func (InstanceAttachmentOutput) ToInstanceAttachmentOutputWithContext

func (o InstanceAttachmentOutput) ToInstanceAttachmentOutputWithContext(ctx context.Context) InstanceAttachmentOutput

type InstanceAttachmentState

type InstanceAttachmentState struct {
	// The resource ID of the environment.
	Environment pulumi.StringPtrInput
	// The Apigee instance associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/instances/{{instance_name}}`.
	//
	// ***
	InstanceId pulumi.StringPtrInput
	// The name of the newly created  attachment (output parameter).
	Name pulumi.StringPtrInput
}

func (InstanceAttachmentState) ElementType

func (InstanceAttachmentState) ElementType() reflect.Type

type InstanceInput

type InstanceInput interface {
	pulumi.Input

	ToInstanceOutput() InstanceOutput
	ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
}

type InstanceMap

type InstanceMap map[string]InstanceInput

func (InstanceMap) ElementType

func (InstanceMap) ElementType() reflect.Type

func (InstanceMap) ToInstanceMapOutput

func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMap) ToInstanceMapOutputWithContext

func (i InstanceMap) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceMapInput

type InstanceMapInput interface {
	pulumi.Input

	ToInstanceMapOutput() InstanceMapOutput
	ToInstanceMapOutputWithContext(context.Context) InstanceMapOutput
}

InstanceMapInput is an input type that accepts InstanceMap and InstanceMapOutput values. You can construct a concrete instance of `InstanceMapInput` via:

InstanceMap{ "key": InstanceArgs{...} }

type InstanceMapOutput

type InstanceMapOutput struct{ *pulumi.OutputState }

func (InstanceMapOutput) ElementType

func (InstanceMapOutput) ElementType() reflect.Type

func (InstanceMapOutput) MapIndex

func (InstanceMapOutput) ToInstanceMapOutput

func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMapOutput) ToInstanceMapOutputWithContext

func (o InstanceMapOutput) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceOutput

type InstanceOutput struct{ *pulumi.OutputState }

func (InstanceOutput) ConsumerAcceptLists

func (o InstanceOutput) ConsumerAcceptLists() pulumi.StringArrayOutput

Optional. Customer accept list represents the list of projects (id/number) on customer side that can privately connect to the service attachment. It is an optional field which the customers can provide during the instance creation. By default, the customer project associated with the Apigee organization will be included to the list.

func (InstanceOutput) Description

func (o InstanceOutput) Description() pulumi.StringPtrOutput

Description of the instance.

func (InstanceOutput) DiskEncryptionKeyName

func (o InstanceOutput) DiskEncryptionKeyName() pulumi.StringPtrOutput

Customer Managed Encryption Key (CMEK) used for disk and volume encryption. Required for Apigee paid subscriptions only. Use the following format: `projects/([^/]+)/locations/([^/]+)/keyRings/([^/]+)/cryptoKeys/([^/]+)`

func (InstanceOutput) DisplayName

func (o InstanceOutput) DisplayName() pulumi.StringPtrOutput

Display name of the instance.

func (InstanceOutput) ElementType

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) Host

Output only. Hostname or IP address of the exposed Apigee endpoint used by clients to connect to the service.

func (InstanceOutput) IpRange

IP range represents the customer-provided CIDR block of length 22 that will be used for the Apigee instance creation. This optional range, if provided, should be freely available as part of larger named range the customer has allocated to the Service Networking peering. If this is not provided, Apigee will automatically request for any available /22 CIDR block from Service Networking. The customer should use this CIDR block for configuring their firewall needs to allow traffic from Apigee. Input format: "a.b.c.d/22"

func (InstanceOutput) Location

func (o InstanceOutput) Location() pulumi.StringOutput

Required. Compute Engine location where the instance resides.

func (InstanceOutput) Name

Resource ID of the instance.

func (InstanceOutput) OrgId

The Apigee Organization associated with the Apigee instance, in the format `organizations/{{org_name}}`.

***

func (InstanceOutput) PeeringCidrRange

func (o InstanceOutput) PeeringCidrRange() pulumi.StringOutput

The size of the CIDR block range that will be reserved by the instance. For valid values, see [CidrRange](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.instances#CidrRange) on the documentation.

func (InstanceOutput) Port

Output only. Port number of the exposed Apigee endpoint.

func (InstanceOutput) ServiceAttachment

func (o InstanceOutput) ServiceAttachment() pulumi.StringOutput

Output only. Resource name of the service attachment created for the instance in the format: projects/*/regions/*/serviceAttachments/* Apigee customers can privately forward traffic to this service attachment using the PSC endpoints.

func (InstanceOutput) ToInstanceOutput

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext

func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

type InstanceState

type InstanceState struct {
	// Optional. Customer accept list represents the list of projects (id/number) on customer
	// side that can privately connect to the service attachment. It is an optional field
	// which the customers can provide during the instance creation. By default, the customer
	// project associated with the Apigee organization will be included to the list.
	ConsumerAcceptLists pulumi.StringArrayInput
	// Description of the instance.
	Description pulumi.StringPtrInput
	// Customer Managed Encryption Key (CMEK) used for disk and volume encryption. Required for Apigee paid subscriptions only.
	// Use the following format: `projects/([^/]+)/locations/([^/]+)/keyRings/([^/]+)/cryptoKeys/([^/]+)`
	DiskEncryptionKeyName pulumi.StringPtrInput
	// Display name of the instance.
	DisplayName pulumi.StringPtrInput
	// Output only. Hostname or IP address of the exposed Apigee endpoint used by clients to connect to the service.
	Host pulumi.StringPtrInput
	// IP range represents the customer-provided CIDR block of length 22 that will be used for
	// the Apigee instance creation. This optional range, if provided, should be freely
	// available as part of larger named range the customer has allocated to the Service
	// Networking peering. If this is not provided, Apigee will automatically request for any
	// available /22 CIDR block from Service Networking. The customer should use this CIDR block
	// for configuring their firewall needs to allow traffic from Apigee.
	// Input format: "a.b.c.d/22"
	IpRange pulumi.StringPtrInput
	// Required. Compute Engine location where the instance resides.
	Location pulumi.StringPtrInput
	// Resource ID of the instance.
	Name pulumi.StringPtrInput
	// The Apigee Organization associated with the Apigee instance,
	// in the format `organizations/{{org_name}}`.
	//
	// ***
	OrgId pulumi.StringPtrInput
	// The size of the CIDR block range that will be reserved by the instance. For valid values,
	// see [CidrRange](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.instances#CidrRange) on the documentation.
	PeeringCidrRange pulumi.StringPtrInput
	// Output only. Port number of the exposed Apigee endpoint.
	Port pulumi.StringPtrInput
	// Output only. Resource name of the service attachment created for the instance in
	// the format: projects/*/regions/*/serviceAttachments/* Apigee customers can privately
	// forward traffic to this service attachment using the PSC endpoints.
	ServiceAttachment pulumi.StringPtrInput
}

func (InstanceState) ElementType

func (InstanceState) ElementType() reflect.Type

type KeystoresAliasesKeyCertFile

type KeystoresAliasesKeyCertFile struct {
	pulumi.CustomResourceState

	// Alias Name
	Alias pulumi.StringOutput `pulumi:"alias"`
	// Cert content
	//
	// ***
	Cert pulumi.StringOutput `pulumi:"cert"`
	// Chain of certificates under this alias.
	// Structure is documented below.
	CertsInfo KeystoresAliasesKeyCertFileCertsInfoOutput `pulumi:"certsInfo"`
	// Environment associated with the alias
	Environment pulumi.StringOutput `pulumi:"environment"`
	// Private Key content, omit if uploading to truststore
	Key pulumi.StringPtrOutput `pulumi:"key"`
	// Keystore Name
	Keystore pulumi.StringOutput `pulumi:"keystore"`
	// Organization ID associated with the alias, without organization/ prefix
	OrgId pulumi.StringOutput `pulumi:"orgId"`
	// Password for the Private Key if it's encrypted
	Password pulumi.StringPtrOutput `pulumi:"password"`
	// Optional.Type of Alias
	Type pulumi.StringOutput `pulumi:"type"`
}

An alias from a key/certificate pair.

To get more information about KeystoresAliasesKeyCertFile, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.environments.keystores.aliases) * How-to Guides

## Import

KeystoresAliasesKeyCertFile can be imported using any of these accepted formats:

* `organizations/{{org_id}}/environments/{{environment}}/keystores/{{keystore}}/aliases/{{alias}}`

* `{{org_id}}/{{environment}}/{{keystore}}/{{alias}}`

When using the `pulumi import` command, KeystoresAliasesKeyCertFile can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/keystoresAliasesKeyCertFile:KeystoresAliasesKeyCertFile default organizations/{{org_id}}/environments/{{environment}}/keystores/{{keystore}}/aliases/{{alias}} ```

```sh $ pulumi import gcp:apigee/keystoresAliasesKeyCertFile:KeystoresAliasesKeyCertFile default {{org_id}}/{{environment}}/{{keystore}}/{{alias}} ```

func GetKeystoresAliasesKeyCertFile

func GetKeystoresAliasesKeyCertFile(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *KeystoresAliasesKeyCertFileState, opts ...pulumi.ResourceOption) (*KeystoresAliasesKeyCertFile, error)

GetKeystoresAliasesKeyCertFile gets an existing KeystoresAliasesKeyCertFile 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 NewKeystoresAliasesKeyCertFile

func NewKeystoresAliasesKeyCertFile(ctx *pulumi.Context,
	name string, args *KeystoresAliasesKeyCertFileArgs, opts ...pulumi.ResourceOption) (*KeystoresAliasesKeyCertFile, error)

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

func (*KeystoresAliasesKeyCertFile) ElementType

func (*KeystoresAliasesKeyCertFile) ElementType() reflect.Type

func (*KeystoresAliasesKeyCertFile) ToKeystoresAliasesKeyCertFileOutput

func (i *KeystoresAliasesKeyCertFile) ToKeystoresAliasesKeyCertFileOutput() KeystoresAliasesKeyCertFileOutput

func (*KeystoresAliasesKeyCertFile) ToKeystoresAliasesKeyCertFileOutputWithContext

func (i *KeystoresAliasesKeyCertFile) ToKeystoresAliasesKeyCertFileOutputWithContext(ctx context.Context) KeystoresAliasesKeyCertFileOutput

type KeystoresAliasesKeyCertFileArgs

type KeystoresAliasesKeyCertFileArgs struct {
	// Alias Name
	Alias pulumi.StringInput
	// Cert content
	//
	// ***
	Cert pulumi.StringInput
	// Chain of certificates under this alias.
	// Structure is documented below.
	CertsInfo KeystoresAliasesKeyCertFileCertsInfoPtrInput
	// Environment associated with the alias
	Environment pulumi.StringInput
	// Private Key content, omit if uploading to truststore
	Key pulumi.StringPtrInput
	// Keystore Name
	Keystore pulumi.StringInput
	// Organization ID associated with the alias, without organization/ prefix
	OrgId pulumi.StringInput
	// Password for the Private Key if it's encrypted
	Password pulumi.StringPtrInput
}

The set of arguments for constructing a KeystoresAliasesKeyCertFile resource.

func (KeystoresAliasesKeyCertFileArgs) ElementType

type KeystoresAliasesKeyCertFileArray

type KeystoresAliasesKeyCertFileArray []KeystoresAliasesKeyCertFileInput

func (KeystoresAliasesKeyCertFileArray) ElementType

func (KeystoresAliasesKeyCertFileArray) ToKeystoresAliasesKeyCertFileArrayOutput

func (i KeystoresAliasesKeyCertFileArray) ToKeystoresAliasesKeyCertFileArrayOutput() KeystoresAliasesKeyCertFileArrayOutput

func (KeystoresAliasesKeyCertFileArray) ToKeystoresAliasesKeyCertFileArrayOutputWithContext

func (i KeystoresAliasesKeyCertFileArray) ToKeystoresAliasesKeyCertFileArrayOutputWithContext(ctx context.Context) KeystoresAliasesKeyCertFileArrayOutput

type KeystoresAliasesKeyCertFileArrayInput

type KeystoresAliasesKeyCertFileArrayInput interface {
	pulumi.Input

	ToKeystoresAliasesKeyCertFileArrayOutput() KeystoresAliasesKeyCertFileArrayOutput
	ToKeystoresAliasesKeyCertFileArrayOutputWithContext(context.Context) KeystoresAliasesKeyCertFileArrayOutput
}

KeystoresAliasesKeyCertFileArrayInput is an input type that accepts KeystoresAliasesKeyCertFileArray and KeystoresAliasesKeyCertFileArrayOutput values. You can construct a concrete instance of `KeystoresAliasesKeyCertFileArrayInput` via:

KeystoresAliasesKeyCertFileArray{ KeystoresAliasesKeyCertFileArgs{...} }

type KeystoresAliasesKeyCertFileArrayOutput

type KeystoresAliasesKeyCertFileArrayOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesKeyCertFileArrayOutput) ElementType

func (KeystoresAliasesKeyCertFileArrayOutput) Index

func (KeystoresAliasesKeyCertFileArrayOutput) ToKeystoresAliasesKeyCertFileArrayOutput

func (o KeystoresAliasesKeyCertFileArrayOutput) ToKeystoresAliasesKeyCertFileArrayOutput() KeystoresAliasesKeyCertFileArrayOutput

func (KeystoresAliasesKeyCertFileArrayOutput) ToKeystoresAliasesKeyCertFileArrayOutputWithContext

func (o KeystoresAliasesKeyCertFileArrayOutput) ToKeystoresAliasesKeyCertFileArrayOutputWithContext(ctx context.Context) KeystoresAliasesKeyCertFileArrayOutput

type KeystoresAliasesKeyCertFileCertsInfo

type KeystoresAliasesKeyCertFileCertsInfo struct {
	// (Output)
	// List of all properties in the object.
	// Structure is documented below.
	CertInfos []KeystoresAliasesKeyCertFileCertsInfoCertInfo `pulumi:"certInfos"`
}

type KeystoresAliasesKeyCertFileCertsInfoArgs

type KeystoresAliasesKeyCertFileCertsInfoArgs struct {
	// (Output)
	// List of all properties in the object.
	// Structure is documented below.
	CertInfos KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayInput `pulumi:"certInfos"`
}

func (KeystoresAliasesKeyCertFileCertsInfoArgs) ElementType

func (KeystoresAliasesKeyCertFileCertsInfoArgs) ToKeystoresAliasesKeyCertFileCertsInfoOutput

func (i KeystoresAliasesKeyCertFileCertsInfoArgs) ToKeystoresAliasesKeyCertFileCertsInfoOutput() KeystoresAliasesKeyCertFileCertsInfoOutput

func (KeystoresAliasesKeyCertFileCertsInfoArgs) ToKeystoresAliasesKeyCertFileCertsInfoOutputWithContext

func (i KeystoresAliasesKeyCertFileCertsInfoArgs) ToKeystoresAliasesKeyCertFileCertsInfoOutputWithContext(ctx context.Context) KeystoresAliasesKeyCertFileCertsInfoOutput

func (KeystoresAliasesKeyCertFileCertsInfoArgs) ToKeystoresAliasesKeyCertFileCertsInfoPtrOutput

func (i KeystoresAliasesKeyCertFileCertsInfoArgs) ToKeystoresAliasesKeyCertFileCertsInfoPtrOutput() KeystoresAliasesKeyCertFileCertsInfoPtrOutput

func (KeystoresAliasesKeyCertFileCertsInfoArgs) ToKeystoresAliasesKeyCertFileCertsInfoPtrOutputWithContext

func (i KeystoresAliasesKeyCertFileCertsInfoArgs) ToKeystoresAliasesKeyCertFileCertsInfoPtrOutputWithContext(ctx context.Context) KeystoresAliasesKeyCertFileCertsInfoPtrOutput

type KeystoresAliasesKeyCertFileCertsInfoCertInfo

type KeystoresAliasesKeyCertFileCertsInfoCertInfo struct {
	// (Output)
	// X.509 basic constraints extension.
	BasicConstraints *string `pulumi:"basicConstraints"`
	// (Output)
	// X.509 notAfter validity period in milliseconds since epoch.
	ExpiryDate *string `pulumi:"expiryDate"`
	// (Output)
	// Flag that specifies whether the certificate is valid.
	// Flag is set to Yes if the certificate is valid, No if expired, or Not yet if not yet valid.
	IsValid *string `pulumi:"isValid"`
	// (Output)
	// X.509 issuer.
	Issuer *string `pulumi:"issuer"`
	// (Output)
	// Public key component of the X.509 subject public key info.
	PublicKey *string `pulumi:"publicKey"`
	// (Output)
	// X.509 serial number.
	SerialNumber *string `pulumi:"serialNumber"`
	// (Output)
	// X.509 signatureAlgorithm.
	SigAlgName *string `pulumi:"sigAlgName"`
	// (Output)
	// X.509 subject.
	Subject *string `pulumi:"subject"`
	// (Output)
	// X.509 subject alternative names (SANs) extension.
	SubjectAlternativeNames []string `pulumi:"subjectAlternativeNames"`
	// (Output)
	// X.509 notBefore validity period in milliseconds since epoch.
	ValidFrom *string `pulumi:"validFrom"`
	// (Output)
	// X.509 version.
	Version *int `pulumi:"version"`
}

type KeystoresAliasesKeyCertFileCertsInfoCertInfoArgs

type KeystoresAliasesKeyCertFileCertsInfoCertInfoArgs struct {
	// (Output)
	// X.509 basic constraints extension.
	BasicConstraints pulumi.StringPtrInput `pulumi:"basicConstraints"`
	// (Output)
	// X.509 notAfter validity period in milliseconds since epoch.
	ExpiryDate pulumi.StringPtrInput `pulumi:"expiryDate"`
	// (Output)
	// Flag that specifies whether the certificate is valid.
	// Flag is set to Yes if the certificate is valid, No if expired, or Not yet if not yet valid.
	IsValid pulumi.StringPtrInput `pulumi:"isValid"`
	// (Output)
	// X.509 issuer.
	Issuer pulumi.StringPtrInput `pulumi:"issuer"`
	// (Output)
	// Public key component of the X.509 subject public key info.
	PublicKey pulumi.StringPtrInput `pulumi:"publicKey"`
	// (Output)
	// X.509 serial number.
	SerialNumber pulumi.StringPtrInput `pulumi:"serialNumber"`
	// (Output)
	// X.509 signatureAlgorithm.
	SigAlgName pulumi.StringPtrInput `pulumi:"sigAlgName"`
	// (Output)
	// X.509 subject.
	Subject pulumi.StringPtrInput `pulumi:"subject"`
	// (Output)
	// X.509 subject alternative names (SANs) extension.
	SubjectAlternativeNames pulumi.StringArrayInput `pulumi:"subjectAlternativeNames"`
	// (Output)
	// X.509 notBefore validity period in milliseconds since epoch.
	ValidFrom pulumi.StringPtrInput `pulumi:"validFrom"`
	// (Output)
	// X.509 version.
	Version pulumi.IntPtrInput `pulumi:"version"`
}

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoArgs) ElementType

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoArgs) ToKeystoresAliasesKeyCertFileCertsInfoCertInfoOutput

func (i KeystoresAliasesKeyCertFileCertsInfoCertInfoArgs) ToKeystoresAliasesKeyCertFileCertsInfoCertInfoOutput() KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoArgs) ToKeystoresAliasesKeyCertFileCertsInfoCertInfoOutputWithContext

func (i KeystoresAliasesKeyCertFileCertsInfoCertInfoArgs) ToKeystoresAliasesKeyCertFileCertsInfoCertInfoOutputWithContext(ctx context.Context) KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput

type KeystoresAliasesKeyCertFileCertsInfoCertInfoArray

type KeystoresAliasesKeyCertFileCertsInfoCertInfoArray []KeystoresAliasesKeyCertFileCertsInfoCertInfoInput

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoArray) ElementType

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoArray) ToKeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput

func (i KeystoresAliasesKeyCertFileCertsInfoCertInfoArray) ToKeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput() KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoArray) ToKeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutputWithContext

func (i KeystoresAliasesKeyCertFileCertsInfoCertInfoArray) ToKeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutputWithContext(ctx context.Context) KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput

type KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayInput

type KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayInput interface {
	pulumi.Input

	ToKeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput() KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput
	ToKeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutputWithContext(context.Context) KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput
}

KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayInput is an input type that accepts KeystoresAliasesKeyCertFileCertsInfoCertInfoArray and KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput values. You can construct a concrete instance of `KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayInput` via:

KeystoresAliasesKeyCertFileCertsInfoCertInfoArray{ KeystoresAliasesKeyCertFileCertsInfoCertInfoArgs{...} }

type KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput

type KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput) ElementType

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput) Index

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput) ToKeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput) ToKeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutputWithContext

func (o KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput) ToKeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutputWithContext(ctx context.Context) KeystoresAliasesKeyCertFileCertsInfoCertInfoArrayOutput

type KeystoresAliasesKeyCertFileCertsInfoCertInfoInput

type KeystoresAliasesKeyCertFileCertsInfoCertInfoInput interface {
	pulumi.Input

	ToKeystoresAliasesKeyCertFileCertsInfoCertInfoOutput() KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput
	ToKeystoresAliasesKeyCertFileCertsInfoCertInfoOutputWithContext(context.Context) KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput
}

KeystoresAliasesKeyCertFileCertsInfoCertInfoInput is an input type that accepts KeystoresAliasesKeyCertFileCertsInfoCertInfoArgs and KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput values. You can construct a concrete instance of `KeystoresAliasesKeyCertFileCertsInfoCertInfoInput` via:

KeystoresAliasesKeyCertFileCertsInfoCertInfoArgs{...}

type KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput

type KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput) BasicConstraints

(Output) X.509 basic constraints extension.

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput) ElementType

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput) ExpiryDate

(Output) X.509 notAfter validity period in milliseconds since epoch.

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput) IsValid

(Output) Flag that specifies whether the certificate is valid. Flag is set to Yes if the certificate is valid, No if expired, or Not yet if not yet valid.

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput) Issuer

(Output) X.509 issuer.

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput) PublicKey

(Output) Public key component of the X.509 subject public key info.

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput) SerialNumber

(Output) X.509 serial number.

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput) SigAlgName

(Output) X.509 signatureAlgorithm.

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput) Subject

(Output) X.509 subject.

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput) SubjectAlternativeNames

(Output) X.509 subject alternative names (SANs) extension.

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput) ToKeystoresAliasesKeyCertFileCertsInfoCertInfoOutput

func (o KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput) ToKeystoresAliasesKeyCertFileCertsInfoCertInfoOutput() KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput) ToKeystoresAliasesKeyCertFileCertsInfoCertInfoOutputWithContext

func (o KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput) ToKeystoresAliasesKeyCertFileCertsInfoCertInfoOutputWithContext(ctx context.Context) KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput) ValidFrom

(Output) X.509 notBefore validity period in milliseconds since epoch.

func (KeystoresAliasesKeyCertFileCertsInfoCertInfoOutput) Version

(Output) X.509 version.

type KeystoresAliasesKeyCertFileCertsInfoInput

type KeystoresAliasesKeyCertFileCertsInfoInput interface {
	pulumi.Input

	ToKeystoresAliasesKeyCertFileCertsInfoOutput() KeystoresAliasesKeyCertFileCertsInfoOutput
	ToKeystoresAliasesKeyCertFileCertsInfoOutputWithContext(context.Context) KeystoresAliasesKeyCertFileCertsInfoOutput
}

KeystoresAliasesKeyCertFileCertsInfoInput is an input type that accepts KeystoresAliasesKeyCertFileCertsInfoArgs and KeystoresAliasesKeyCertFileCertsInfoOutput values. You can construct a concrete instance of `KeystoresAliasesKeyCertFileCertsInfoInput` via:

KeystoresAliasesKeyCertFileCertsInfoArgs{...}

type KeystoresAliasesKeyCertFileCertsInfoOutput

type KeystoresAliasesKeyCertFileCertsInfoOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesKeyCertFileCertsInfoOutput) CertInfos

(Output) List of all properties in the object. Structure is documented below.

func (KeystoresAliasesKeyCertFileCertsInfoOutput) ElementType

func (KeystoresAliasesKeyCertFileCertsInfoOutput) ToKeystoresAliasesKeyCertFileCertsInfoOutput

func (o KeystoresAliasesKeyCertFileCertsInfoOutput) ToKeystoresAliasesKeyCertFileCertsInfoOutput() KeystoresAliasesKeyCertFileCertsInfoOutput

func (KeystoresAliasesKeyCertFileCertsInfoOutput) ToKeystoresAliasesKeyCertFileCertsInfoOutputWithContext

func (o KeystoresAliasesKeyCertFileCertsInfoOutput) ToKeystoresAliasesKeyCertFileCertsInfoOutputWithContext(ctx context.Context) KeystoresAliasesKeyCertFileCertsInfoOutput

func (KeystoresAliasesKeyCertFileCertsInfoOutput) ToKeystoresAliasesKeyCertFileCertsInfoPtrOutput

func (o KeystoresAliasesKeyCertFileCertsInfoOutput) ToKeystoresAliasesKeyCertFileCertsInfoPtrOutput() KeystoresAliasesKeyCertFileCertsInfoPtrOutput

func (KeystoresAliasesKeyCertFileCertsInfoOutput) ToKeystoresAliasesKeyCertFileCertsInfoPtrOutputWithContext

func (o KeystoresAliasesKeyCertFileCertsInfoOutput) ToKeystoresAliasesKeyCertFileCertsInfoPtrOutputWithContext(ctx context.Context) KeystoresAliasesKeyCertFileCertsInfoPtrOutput

type KeystoresAliasesKeyCertFileCertsInfoPtrInput

type KeystoresAliasesKeyCertFileCertsInfoPtrInput interface {
	pulumi.Input

	ToKeystoresAliasesKeyCertFileCertsInfoPtrOutput() KeystoresAliasesKeyCertFileCertsInfoPtrOutput
	ToKeystoresAliasesKeyCertFileCertsInfoPtrOutputWithContext(context.Context) KeystoresAliasesKeyCertFileCertsInfoPtrOutput
}

KeystoresAliasesKeyCertFileCertsInfoPtrInput is an input type that accepts KeystoresAliasesKeyCertFileCertsInfoArgs, KeystoresAliasesKeyCertFileCertsInfoPtr and KeystoresAliasesKeyCertFileCertsInfoPtrOutput values. You can construct a concrete instance of `KeystoresAliasesKeyCertFileCertsInfoPtrInput` via:

        KeystoresAliasesKeyCertFileCertsInfoArgs{...}

or:

        nil

type KeystoresAliasesKeyCertFileCertsInfoPtrOutput

type KeystoresAliasesKeyCertFileCertsInfoPtrOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesKeyCertFileCertsInfoPtrOutput) CertInfos

(Output) List of all properties in the object. Structure is documented below.

func (KeystoresAliasesKeyCertFileCertsInfoPtrOutput) Elem

func (KeystoresAliasesKeyCertFileCertsInfoPtrOutput) ElementType

func (KeystoresAliasesKeyCertFileCertsInfoPtrOutput) ToKeystoresAliasesKeyCertFileCertsInfoPtrOutput

func (o KeystoresAliasesKeyCertFileCertsInfoPtrOutput) ToKeystoresAliasesKeyCertFileCertsInfoPtrOutput() KeystoresAliasesKeyCertFileCertsInfoPtrOutput

func (KeystoresAliasesKeyCertFileCertsInfoPtrOutput) ToKeystoresAliasesKeyCertFileCertsInfoPtrOutputWithContext

func (o KeystoresAliasesKeyCertFileCertsInfoPtrOutput) ToKeystoresAliasesKeyCertFileCertsInfoPtrOutputWithContext(ctx context.Context) KeystoresAliasesKeyCertFileCertsInfoPtrOutput

type KeystoresAliasesKeyCertFileInput

type KeystoresAliasesKeyCertFileInput interface {
	pulumi.Input

	ToKeystoresAliasesKeyCertFileOutput() KeystoresAliasesKeyCertFileOutput
	ToKeystoresAliasesKeyCertFileOutputWithContext(ctx context.Context) KeystoresAliasesKeyCertFileOutput
}

type KeystoresAliasesKeyCertFileMap

type KeystoresAliasesKeyCertFileMap map[string]KeystoresAliasesKeyCertFileInput

func (KeystoresAliasesKeyCertFileMap) ElementType

func (KeystoresAliasesKeyCertFileMap) ToKeystoresAliasesKeyCertFileMapOutput

func (i KeystoresAliasesKeyCertFileMap) ToKeystoresAliasesKeyCertFileMapOutput() KeystoresAliasesKeyCertFileMapOutput

func (KeystoresAliasesKeyCertFileMap) ToKeystoresAliasesKeyCertFileMapOutputWithContext

func (i KeystoresAliasesKeyCertFileMap) ToKeystoresAliasesKeyCertFileMapOutputWithContext(ctx context.Context) KeystoresAliasesKeyCertFileMapOutput

type KeystoresAliasesKeyCertFileMapInput

type KeystoresAliasesKeyCertFileMapInput interface {
	pulumi.Input

	ToKeystoresAliasesKeyCertFileMapOutput() KeystoresAliasesKeyCertFileMapOutput
	ToKeystoresAliasesKeyCertFileMapOutputWithContext(context.Context) KeystoresAliasesKeyCertFileMapOutput
}

KeystoresAliasesKeyCertFileMapInput is an input type that accepts KeystoresAliasesKeyCertFileMap and KeystoresAliasesKeyCertFileMapOutput values. You can construct a concrete instance of `KeystoresAliasesKeyCertFileMapInput` via:

KeystoresAliasesKeyCertFileMap{ "key": KeystoresAliasesKeyCertFileArgs{...} }

type KeystoresAliasesKeyCertFileMapOutput

type KeystoresAliasesKeyCertFileMapOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesKeyCertFileMapOutput) ElementType

func (KeystoresAliasesKeyCertFileMapOutput) MapIndex

func (KeystoresAliasesKeyCertFileMapOutput) ToKeystoresAliasesKeyCertFileMapOutput

func (o KeystoresAliasesKeyCertFileMapOutput) ToKeystoresAliasesKeyCertFileMapOutput() KeystoresAliasesKeyCertFileMapOutput

func (KeystoresAliasesKeyCertFileMapOutput) ToKeystoresAliasesKeyCertFileMapOutputWithContext

func (o KeystoresAliasesKeyCertFileMapOutput) ToKeystoresAliasesKeyCertFileMapOutputWithContext(ctx context.Context) KeystoresAliasesKeyCertFileMapOutput

type KeystoresAliasesKeyCertFileOutput

type KeystoresAliasesKeyCertFileOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesKeyCertFileOutput) Alias

Alias Name

func (KeystoresAliasesKeyCertFileOutput) Cert

Cert content

***

func (KeystoresAliasesKeyCertFileOutput) CertsInfo

Chain of certificates under this alias. Structure is documented below.

func (KeystoresAliasesKeyCertFileOutput) ElementType

func (KeystoresAliasesKeyCertFileOutput) Environment

Environment associated with the alias

func (KeystoresAliasesKeyCertFileOutput) Key

Private Key content, omit if uploading to truststore

func (KeystoresAliasesKeyCertFileOutput) Keystore

Keystore Name

func (KeystoresAliasesKeyCertFileOutput) OrgId

Organization ID associated with the alias, without organization/ prefix

func (KeystoresAliasesKeyCertFileOutput) Password

Password for the Private Key if it's encrypted

func (KeystoresAliasesKeyCertFileOutput) ToKeystoresAliasesKeyCertFileOutput

func (o KeystoresAliasesKeyCertFileOutput) ToKeystoresAliasesKeyCertFileOutput() KeystoresAliasesKeyCertFileOutput

func (KeystoresAliasesKeyCertFileOutput) ToKeystoresAliasesKeyCertFileOutputWithContext

func (o KeystoresAliasesKeyCertFileOutput) ToKeystoresAliasesKeyCertFileOutputWithContext(ctx context.Context) KeystoresAliasesKeyCertFileOutput

func (KeystoresAliasesKeyCertFileOutput) Type

Optional.Type of Alias

type KeystoresAliasesKeyCertFileState

type KeystoresAliasesKeyCertFileState struct {
	// Alias Name
	Alias pulumi.StringPtrInput
	// Cert content
	//
	// ***
	Cert pulumi.StringPtrInput
	// Chain of certificates under this alias.
	// Structure is documented below.
	CertsInfo KeystoresAliasesKeyCertFileCertsInfoPtrInput
	// Environment associated with the alias
	Environment pulumi.StringPtrInput
	// Private Key content, omit if uploading to truststore
	Key pulumi.StringPtrInput
	// Keystore Name
	Keystore pulumi.StringPtrInput
	// Organization ID associated with the alias, without organization/ prefix
	OrgId pulumi.StringPtrInput
	// Password for the Private Key if it's encrypted
	Password pulumi.StringPtrInput
	// Optional.Type of Alias
	Type pulumi.StringPtrInput
}

func (KeystoresAliasesKeyCertFileState) ElementType

type KeystoresAliasesPkcs12

type KeystoresAliasesPkcs12 struct {
	pulumi.CustomResourceState

	// Alias Name
	Alias pulumi.StringOutput `pulumi:"alias"`
	// Chain of certificates under this alias.
	// Structure is documented below.
	CertsInfos KeystoresAliasesPkcs12CertsInfoArrayOutput `pulumi:"certsInfos"`
	// Environment associated with the alias
	Environment pulumi.StringOutput `pulumi:"environment"`
	// PKCS12 file content
	//
	// ***
	File pulumi.StringOutput `pulumi:"file"`
	// Hash of the pkcs file
	Filehash pulumi.StringOutput `pulumi:"filehash"`
	// Keystore Name
	Keystore pulumi.StringOutput `pulumi:"keystore"`
	// Organization ID associated with the alias, without organization/ prefix
	OrgId pulumi.StringOutput `pulumi:"orgId"`
	// Password for the PKCS12 file if it's encrypted
	Password pulumi.StringOutput `pulumi:"password"`
	// Optional.Type of Alias
	Type pulumi.StringOutput `pulumi:"type"`
}

An alias from a pkcs12 file.

To get more information about KeystoresAliasesPkcs12, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.environments.keystores.aliases) * How-to Guides

## Import

KeystoresAliasesPkcs12 can be imported using any of these accepted formats:

* `organizations/{{org_id}}/environments/{{environment}}/keystores/{{keystore}}/aliases/{{alias}}`

* `{{org_id}}/{{environment}}/{{keystore}}/{{alias}}`

When using the `pulumi import` command, KeystoresAliasesPkcs12 can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/keystoresAliasesPkcs12:KeystoresAliasesPkcs12 default organizations/{{org_id}}/environments/{{environment}}/keystores/{{keystore}}/aliases/{{alias}} ```

```sh $ pulumi import gcp:apigee/keystoresAliasesPkcs12:KeystoresAliasesPkcs12 default {{org_id}}/{{environment}}/{{keystore}}/{{alias}} ```

func GetKeystoresAliasesPkcs12

func GetKeystoresAliasesPkcs12(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *KeystoresAliasesPkcs12State, opts ...pulumi.ResourceOption) (*KeystoresAliasesPkcs12, error)

GetKeystoresAliasesPkcs12 gets an existing KeystoresAliasesPkcs12 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 NewKeystoresAliasesPkcs12

func NewKeystoresAliasesPkcs12(ctx *pulumi.Context,
	name string, args *KeystoresAliasesPkcs12Args, opts ...pulumi.ResourceOption) (*KeystoresAliasesPkcs12, error)

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

func (*KeystoresAliasesPkcs12) ElementType

func (*KeystoresAliasesPkcs12) ElementType() reflect.Type

func (*KeystoresAliasesPkcs12) ToKeystoresAliasesPkcs12Output

func (i *KeystoresAliasesPkcs12) ToKeystoresAliasesPkcs12Output() KeystoresAliasesPkcs12Output

func (*KeystoresAliasesPkcs12) ToKeystoresAliasesPkcs12OutputWithContext

func (i *KeystoresAliasesPkcs12) ToKeystoresAliasesPkcs12OutputWithContext(ctx context.Context) KeystoresAliasesPkcs12Output

type KeystoresAliasesPkcs12Args

type KeystoresAliasesPkcs12Args struct {
	// Alias Name
	Alias pulumi.StringInput
	// Environment associated with the alias
	Environment pulumi.StringInput
	// PKCS12 file content
	//
	// ***
	File pulumi.StringInput
	// Hash of the pkcs file
	Filehash pulumi.StringInput
	// Keystore Name
	Keystore pulumi.StringInput
	// Organization ID associated with the alias, without organization/ prefix
	OrgId pulumi.StringInput
	// Password for the PKCS12 file if it's encrypted
	Password pulumi.StringPtrInput
}

The set of arguments for constructing a KeystoresAliasesPkcs12 resource.

func (KeystoresAliasesPkcs12Args) ElementType

func (KeystoresAliasesPkcs12Args) ElementType() reflect.Type

type KeystoresAliasesPkcs12Array

type KeystoresAliasesPkcs12Array []KeystoresAliasesPkcs12Input

func (KeystoresAliasesPkcs12Array) ElementType

func (KeystoresAliasesPkcs12Array) ToKeystoresAliasesPkcs12ArrayOutput

func (i KeystoresAliasesPkcs12Array) ToKeystoresAliasesPkcs12ArrayOutput() KeystoresAliasesPkcs12ArrayOutput

func (KeystoresAliasesPkcs12Array) ToKeystoresAliasesPkcs12ArrayOutputWithContext

func (i KeystoresAliasesPkcs12Array) ToKeystoresAliasesPkcs12ArrayOutputWithContext(ctx context.Context) KeystoresAliasesPkcs12ArrayOutput

type KeystoresAliasesPkcs12ArrayInput

type KeystoresAliasesPkcs12ArrayInput interface {
	pulumi.Input

	ToKeystoresAliasesPkcs12ArrayOutput() KeystoresAliasesPkcs12ArrayOutput
	ToKeystoresAliasesPkcs12ArrayOutputWithContext(context.Context) KeystoresAliasesPkcs12ArrayOutput
}

KeystoresAliasesPkcs12ArrayInput is an input type that accepts KeystoresAliasesPkcs12Array and KeystoresAliasesPkcs12ArrayOutput values. You can construct a concrete instance of `KeystoresAliasesPkcs12ArrayInput` via:

KeystoresAliasesPkcs12Array{ KeystoresAliasesPkcs12Args{...} }

type KeystoresAliasesPkcs12ArrayOutput

type KeystoresAliasesPkcs12ArrayOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesPkcs12ArrayOutput) ElementType

func (KeystoresAliasesPkcs12ArrayOutput) Index

func (KeystoresAliasesPkcs12ArrayOutput) ToKeystoresAliasesPkcs12ArrayOutput

func (o KeystoresAliasesPkcs12ArrayOutput) ToKeystoresAliasesPkcs12ArrayOutput() KeystoresAliasesPkcs12ArrayOutput

func (KeystoresAliasesPkcs12ArrayOutput) ToKeystoresAliasesPkcs12ArrayOutputWithContext

func (o KeystoresAliasesPkcs12ArrayOutput) ToKeystoresAliasesPkcs12ArrayOutputWithContext(ctx context.Context) KeystoresAliasesPkcs12ArrayOutput

type KeystoresAliasesPkcs12CertsInfo

type KeystoresAliasesPkcs12CertsInfo struct {
	// (Output)
	// List of all properties in the object.
	// Structure is documented below.
	CertInfos []KeystoresAliasesPkcs12CertsInfoCertInfo `pulumi:"certInfos"`
}

type KeystoresAliasesPkcs12CertsInfoArgs

type KeystoresAliasesPkcs12CertsInfoArgs struct {
	// (Output)
	// List of all properties in the object.
	// Structure is documented below.
	CertInfos KeystoresAliasesPkcs12CertsInfoCertInfoArrayInput `pulumi:"certInfos"`
}

func (KeystoresAliasesPkcs12CertsInfoArgs) ElementType

func (KeystoresAliasesPkcs12CertsInfoArgs) ToKeystoresAliasesPkcs12CertsInfoOutput

func (i KeystoresAliasesPkcs12CertsInfoArgs) ToKeystoresAliasesPkcs12CertsInfoOutput() KeystoresAliasesPkcs12CertsInfoOutput

func (KeystoresAliasesPkcs12CertsInfoArgs) ToKeystoresAliasesPkcs12CertsInfoOutputWithContext

func (i KeystoresAliasesPkcs12CertsInfoArgs) ToKeystoresAliasesPkcs12CertsInfoOutputWithContext(ctx context.Context) KeystoresAliasesPkcs12CertsInfoOutput

type KeystoresAliasesPkcs12CertsInfoArray

type KeystoresAliasesPkcs12CertsInfoArray []KeystoresAliasesPkcs12CertsInfoInput

func (KeystoresAliasesPkcs12CertsInfoArray) ElementType

func (KeystoresAliasesPkcs12CertsInfoArray) ToKeystoresAliasesPkcs12CertsInfoArrayOutput

func (i KeystoresAliasesPkcs12CertsInfoArray) ToKeystoresAliasesPkcs12CertsInfoArrayOutput() KeystoresAliasesPkcs12CertsInfoArrayOutput

func (KeystoresAliasesPkcs12CertsInfoArray) ToKeystoresAliasesPkcs12CertsInfoArrayOutputWithContext

func (i KeystoresAliasesPkcs12CertsInfoArray) ToKeystoresAliasesPkcs12CertsInfoArrayOutputWithContext(ctx context.Context) KeystoresAliasesPkcs12CertsInfoArrayOutput

type KeystoresAliasesPkcs12CertsInfoArrayInput

type KeystoresAliasesPkcs12CertsInfoArrayInput interface {
	pulumi.Input

	ToKeystoresAliasesPkcs12CertsInfoArrayOutput() KeystoresAliasesPkcs12CertsInfoArrayOutput
	ToKeystoresAliasesPkcs12CertsInfoArrayOutputWithContext(context.Context) KeystoresAliasesPkcs12CertsInfoArrayOutput
}

KeystoresAliasesPkcs12CertsInfoArrayInput is an input type that accepts KeystoresAliasesPkcs12CertsInfoArray and KeystoresAliasesPkcs12CertsInfoArrayOutput values. You can construct a concrete instance of `KeystoresAliasesPkcs12CertsInfoArrayInput` via:

KeystoresAliasesPkcs12CertsInfoArray{ KeystoresAliasesPkcs12CertsInfoArgs{...} }

type KeystoresAliasesPkcs12CertsInfoArrayOutput

type KeystoresAliasesPkcs12CertsInfoArrayOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesPkcs12CertsInfoArrayOutput) ElementType

func (KeystoresAliasesPkcs12CertsInfoArrayOutput) Index

func (KeystoresAliasesPkcs12CertsInfoArrayOutput) ToKeystoresAliasesPkcs12CertsInfoArrayOutput

func (o KeystoresAliasesPkcs12CertsInfoArrayOutput) ToKeystoresAliasesPkcs12CertsInfoArrayOutput() KeystoresAliasesPkcs12CertsInfoArrayOutput

func (KeystoresAliasesPkcs12CertsInfoArrayOutput) ToKeystoresAliasesPkcs12CertsInfoArrayOutputWithContext

func (o KeystoresAliasesPkcs12CertsInfoArrayOutput) ToKeystoresAliasesPkcs12CertsInfoArrayOutputWithContext(ctx context.Context) KeystoresAliasesPkcs12CertsInfoArrayOutput

type KeystoresAliasesPkcs12CertsInfoCertInfo

type KeystoresAliasesPkcs12CertsInfoCertInfo struct {
	// (Output)
	// X.509 basic constraints extension.
	BasicConstraints *string `pulumi:"basicConstraints"`
	// (Output)
	// X.509 notAfter validity period in milliseconds since epoch.
	ExpiryDate *string `pulumi:"expiryDate"`
	// (Output)
	// Flag that specifies whether the certificate is valid.
	// Flag is set to Yes if the certificate is valid, No if expired, or Not yet if not yet valid.
	IsValid *string `pulumi:"isValid"`
	// (Output)
	// X.509 issuer.
	Issuer *string `pulumi:"issuer"`
	// (Output)
	// Public key component of the X.509 subject public key info.
	PublicKey *string `pulumi:"publicKey"`
	// (Output)
	// X.509 serial number.
	SerialNumber *string `pulumi:"serialNumber"`
	// (Output)
	// X.509 signatureAlgorithm.
	SigAlgName *string `pulumi:"sigAlgName"`
	// (Output)
	// X.509 subject.
	Subject *string `pulumi:"subject"`
	// (Output)
	// X.509 subject alternative names (SANs) extension.
	SubjectAlternativeNames []string `pulumi:"subjectAlternativeNames"`
	// (Output)
	// X.509 notBefore validity period in milliseconds since epoch.
	ValidFrom *string `pulumi:"validFrom"`
	// (Output)
	// X.509 version.
	Version *int `pulumi:"version"`
}

type KeystoresAliasesPkcs12CertsInfoCertInfoArgs

type KeystoresAliasesPkcs12CertsInfoCertInfoArgs struct {
	// (Output)
	// X.509 basic constraints extension.
	BasicConstraints pulumi.StringPtrInput `pulumi:"basicConstraints"`
	// (Output)
	// X.509 notAfter validity period in milliseconds since epoch.
	ExpiryDate pulumi.StringPtrInput `pulumi:"expiryDate"`
	// (Output)
	// Flag that specifies whether the certificate is valid.
	// Flag is set to Yes if the certificate is valid, No if expired, or Not yet if not yet valid.
	IsValid pulumi.StringPtrInput `pulumi:"isValid"`
	// (Output)
	// X.509 issuer.
	Issuer pulumi.StringPtrInput `pulumi:"issuer"`
	// (Output)
	// Public key component of the X.509 subject public key info.
	PublicKey pulumi.StringPtrInput `pulumi:"publicKey"`
	// (Output)
	// X.509 serial number.
	SerialNumber pulumi.StringPtrInput `pulumi:"serialNumber"`
	// (Output)
	// X.509 signatureAlgorithm.
	SigAlgName pulumi.StringPtrInput `pulumi:"sigAlgName"`
	// (Output)
	// X.509 subject.
	Subject pulumi.StringPtrInput `pulumi:"subject"`
	// (Output)
	// X.509 subject alternative names (SANs) extension.
	SubjectAlternativeNames pulumi.StringArrayInput `pulumi:"subjectAlternativeNames"`
	// (Output)
	// X.509 notBefore validity period in milliseconds since epoch.
	ValidFrom pulumi.StringPtrInput `pulumi:"validFrom"`
	// (Output)
	// X.509 version.
	Version pulumi.IntPtrInput `pulumi:"version"`
}

func (KeystoresAliasesPkcs12CertsInfoCertInfoArgs) ElementType

func (KeystoresAliasesPkcs12CertsInfoCertInfoArgs) ToKeystoresAliasesPkcs12CertsInfoCertInfoOutput

func (i KeystoresAliasesPkcs12CertsInfoCertInfoArgs) ToKeystoresAliasesPkcs12CertsInfoCertInfoOutput() KeystoresAliasesPkcs12CertsInfoCertInfoOutput

func (KeystoresAliasesPkcs12CertsInfoCertInfoArgs) ToKeystoresAliasesPkcs12CertsInfoCertInfoOutputWithContext

func (i KeystoresAliasesPkcs12CertsInfoCertInfoArgs) ToKeystoresAliasesPkcs12CertsInfoCertInfoOutputWithContext(ctx context.Context) KeystoresAliasesPkcs12CertsInfoCertInfoOutput

type KeystoresAliasesPkcs12CertsInfoCertInfoArray

type KeystoresAliasesPkcs12CertsInfoCertInfoArray []KeystoresAliasesPkcs12CertsInfoCertInfoInput

func (KeystoresAliasesPkcs12CertsInfoCertInfoArray) ElementType

func (KeystoresAliasesPkcs12CertsInfoCertInfoArray) ToKeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput

func (i KeystoresAliasesPkcs12CertsInfoCertInfoArray) ToKeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput() KeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput

func (KeystoresAliasesPkcs12CertsInfoCertInfoArray) ToKeystoresAliasesPkcs12CertsInfoCertInfoArrayOutputWithContext

func (i KeystoresAliasesPkcs12CertsInfoCertInfoArray) ToKeystoresAliasesPkcs12CertsInfoCertInfoArrayOutputWithContext(ctx context.Context) KeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput

type KeystoresAliasesPkcs12CertsInfoCertInfoArrayInput

type KeystoresAliasesPkcs12CertsInfoCertInfoArrayInput interface {
	pulumi.Input

	ToKeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput() KeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput
	ToKeystoresAliasesPkcs12CertsInfoCertInfoArrayOutputWithContext(context.Context) KeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput
}

KeystoresAliasesPkcs12CertsInfoCertInfoArrayInput is an input type that accepts KeystoresAliasesPkcs12CertsInfoCertInfoArray and KeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput values. You can construct a concrete instance of `KeystoresAliasesPkcs12CertsInfoCertInfoArrayInput` via:

KeystoresAliasesPkcs12CertsInfoCertInfoArray{ KeystoresAliasesPkcs12CertsInfoCertInfoArgs{...} }

type KeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput

type KeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput) ElementType

func (KeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput) Index

func (KeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput) ToKeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput

func (o KeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput) ToKeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput() KeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput

func (KeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput) ToKeystoresAliasesPkcs12CertsInfoCertInfoArrayOutputWithContext

func (o KeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput) ToKeystoresAliasesPkcs12CertsInfoCertInfoArrayOutputWithContext(ctx context.Context) KeystoresAliasesPkcs12CertsInfoCertInfoArrayOutput

type KeystoresAliasesPkcs12CertsInfoCertInfoInput

type KeystoresAliasesPkcs12CertsInfoCertInfoInput interface {
	pulumi.Input

	ToKeystoresAliasesPkcs12CertsInfoCertInfoOutput() KeystoresAliasesPkcs12CertsInfoCertInfoOutput
	ToKeystoresAliasesPkcs12CertsInfoCertInfoOutputWithContext(context.Context) KeystoresAliasesPkcs12CertsInfoCertInfoOutput
}

KeystoresAliasesPkcs12CertsInfoCertInfoInput is an input type that accepts KeystoresAliasesPkcs12CertsInfoCertInfoArgs and KeystoresAliasesPkcs12CertsInfoCertInfoOutput values. You can construct a concrete instance of `KeystoresAliasesPkcs12CertsInfoCertInfoInput` via:

KeystoresAliasesPkcs12CertsInfoCertInfoArgs{...}

type KeystoresAliasesPkcs12CertsInfoCertInfoOutput

type KeystoresAliasesPkcs12CertsInfoCertInfoOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesPkcs12CertsInfoCertInfoOutput) BasicConstraints

(Output) X.509 basic constraints extension.

func (KeystoresAliasesPkcs12CertsInfoCertInfoOutput) ElementType

func (KeystoresAliasesPkcs12CertsInfoCertInfoOutput) ExpiryDate

(Output) X.509 notAfter validity period in milliseconds since epoch.

func (KeystoresAliasesPkcs12CertsInfoCertInfoOutput) IsValid

(Output) Flag that specifies whether the certificate is valid. Flag is set to Yes if the certificate is valid, No if expired, or Not yet if not yet valid.

func (KeystoresAliasesPkcs12CertsInfoCertInfoOutput) Issuer

(Output) X.509 issuer.

func (KeystoresAliasesPkcs12CertsInfoCertInfoOutput) PublicKey

(Output) Public key component of the X.509 subject public key info.

func (KeystoresAliasesPkcs12CertsInfoCertInfoOutput) SerialNumber

(Output) X.509 serial number.

func (KeystoresAliasesPkcs12CertsInfoCertInfoOutput) SigAlgName

(Output) X.509 signatureAlgorithm.

func (KeystoresAliasesPkcs12CertsInfoCertInfoOutput) Subject

(Output) X.509 subject.

func (KeystoresAliasesPkcs12CertsInfoCertInfoOutput) SubjectAlternativeNames

(Output) X.509 subject alternative names (SANs) extension.

func (KeystoresAliasesPkcs12CertsInfoCertInfoOutput) ToKeystoresAliasesPkcs12CertsInfoCertInfoOutput

func (o KeystoresAliasesPkcs12CertsInfoCertInfoOutput) ToKeystoresAliasesPkcs12CertsInfoCertInfoOutput() KeystoresAliasesPkcs12CertsInfoCertInfoOutput

func (KeystoresAliasesPkcs12CertsInfoCertInfoOutput) ToKeystoresAliasesPkcs12CertsInfoCertInfoOutputWithContext

func (o KeystoresAliasesPkcs12CertsInfoCertInfoOutput) ToKeystoresAliasesPkcs12CertsInfoCertInfoOutputWithContext(ctx context.Context) KeystoresAliasesPkcs12CertsInfoCertInfoOutput

func (KeystoresAliasesPkcs12CertsInfoCertInfoOutput) ValidFrom

(Output) X.509 notBefore validity period in milliseconds since epoch.

func (KeystoresAliasesPkcs12CertsInfoCertInfoOutput) Version

(Output) X.509 version.

type KeystoresAliasesPkcs12CertsInfoInput

type KeystoresAliasesPkcs12CertsInfoInput interface {
	pulumi.Input

	ToKeystoresAliasesPkcs12CertsInfoOutput() KeystoresAliasesPkcs12CertsInfoOutput
	ToKeystoresAliasesPkcs12CertsInfoOutputWithContext(context.Context) KeystoresAliasesPkcs12CertsInfoOutput
}

KeystoresAliasesPkcs12CertsInfoInput is an input type that accepts KeystoresAliasesPkcs12CertsInfoArgs and KeystoresAliasesPkcs12CertsInfoOutput values. You can construct a concrete instance of `KeystoresAliasesPkcs12CertsInfoInput` via:

KeystoresAliasesPkcs12CertsInfoArgs{...}

type KeystoresAliasesPkcs12CertsInfoOutput

type KeystoresAliasesPkcs12CertsInfoOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesPkcs12CertsInfoOutput) CertInfos

(Output) List of all properties in the object. Structure is documented below.

func (KeystoresAliasesPkcs12CertsInfoOutput) ElementType

func (KeystoresAliasesPkcs12CertsInfoOutput) ToKeystoresAliasesPkcs12CertsInfoOutput

func (o KeystoresAliasesPkcs12CertsInfoOutput) ToKeystoresAliasesPkcs12CertsInfoOutput() KeystoresAliasesPkcs12CertsInfoOutput

func (KeystoresAliasesPkcs12CertsInfoOutput) ToKeystoresAliasesPkcs12CertsInfoOutputWithContext

func (o KeystoresAliasesPkcs12CertsInfoOutput) ToKeystoresAliasesPkcs12CertsInfoOutputWithContext(ctx context.Context) KeystoresAliasesPkcs12CertsInfoOutput

type KeystoresAliasesPkcs12Input

type KeystoresAliasesPkcs12Input interface {
	pulumi.Input

	ToKeystoresAliasesPkcs12Output() KeystoresAliasesPkcs12Output
	ToKeystoresAliasesPkcs12OutputWithContext(ctx context.Context) KeystoresAliasesPkcs12Output
}

type KeystoresAliasesPkcs12Map

type KeystoresAliasesPkcs12Map map[string]KeystoresAliasesPkcs12Input

func (KeystoresAliasesPkcs12Map) ElementType

func (KeystoresAliasesPkcs12Map) ElementType() reflect.Type

func (KeystoresAliasesPkcs12Map) ToKeystoresAliasesPkcs12MapOutput

func (i KeystoresAliasesPkcs12Map) ToKeystoresAliasesPkcs12MapOutput() KeystoresAliasesPkcs12MapOutput

func (KeystoresAliasesPkcs12Map) ToKeystoresAliasesPkcs12MapOutputWithContext

func (i KeystoresAliasesPkcs12Map) ToKeystoresAliasesPkcs12MapOutputWithContext(ctx context.Context) KeystoresAliasesPkcs12MapOutput

type KeystoresAliasesPkcs12MapInput

type KeystoresAliasesPkcs12MapInput interface {
	pulumi.Input

	ToKeystoresAliasesPkcs12MapOutput() KeystoresAliasesPkcs12MapOutput
	ToKeystoresAliasesPkcs12MapOutputWithContext(context.Context) KeystoresAliasesPkcs12MapOutput
}

KeystoresAliasesPkcs12MapInput is an input type that accepts KeystoresAliasesPkcs12Map and KeystoresAliasesPkcs12MapOutput values. You can construct a concrete instance of `KeystoresAliasesPkcs12MapInput` via:

KeystoresAliasesPkcs12Map{ "key": KeystoresAliasesPkcs12Args{...} }

type KeystoresAliasesPkcs12MapOutput

type KeystoresAliasesPkcs12MapOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesPkcs12MapOutput) ElementType

func (KeystoresAliasesPkcs12MapOutput) MapIndex

func (KeystoresAliasesPkcs12MapOutput) ToKeystoresAliasesPkcs12MapOutput

func (o KeystoresAliasesPkcs12MapOutput) ToKeystoresAliasesPkcs12MapOutput() KeystoresAliasesPkcs12MapOutput

func (KeystoresAliasesPkcs12MapOutput) ToKeystoresAliasesPkcs12MapOutputWithContext

func (o KeystoresAliasesPkcs12MapOutput) ToKeystoresAliasesPkcs12MapOutputWithContext(ctx context.Context) KeystoresAliasesPkcs12MapOutput

type KeystoresAliasesPkcs12Output

type KeystoresAliasesPkcs12Output struct{ *pulumi.OutputState }

func (KeystoresAliasesPkcs12Output) Alias

Alias Name

func (KeystoresAliasesPkcs12Output) CertsInfos

Chain of certificates under this alias. Structure is documented below.

func (KeystoresAliasesPkcs12Output) ElementType

func (KeystoresAliasesPkcs12Output) Environment

Environment associated with the alias

func (KeystoresAliasesPkcs12Output) File

PKCS12 file content

***

func (KeystoresAliasesPkcs12Output) Filehash

Hash of the pkcs file

func (KeystoresAliasesPkcs12Output) Keystore

Keystore Name

func (KeystoresAliasesPkcs12Output) OrgId

Organization ID associated with the alias, without organization/ prefix

func (KeystoresAliasesPkcs12Output) Password

Password for the PKCS12 file if it's encrypted

func (KeystoresAliasesPkcs12Output) ToKeystoresAliasesPkcs12Output

func (o KeystoresAliasesPkcs12Output) ToKeystoresAliasesPkcs12Output() KeystoresAliasesPkcs12Output

func (KeystoresAliasesPkcs12Output) ToKeystoresAliasesPkcs12OutputWithContext

func (o KeystoresAliasesPkcs12Output) ToKeystoresAliasesPkcs12OutputWithContext(ctx context.Context) KeystoresAliasesPkcs12Output

func (KeystoresAliasesPkcs12Output) Type

Optional.Type of Alias

type KeystoresAliasesPkcs12State

type KeystoresAliasesPkcs12State struct {
	// Alias Name
	Alias pulumi.StringPtrInput
	// Chain of certificates under this alias.
	// Structure is documented below.
	CertsInfos KeystoresAliasesPkcs12CertsInfoArrayInput
	// Environment associated with the alias
	Environment pulumi.StringPtrInput
	// PKCS12 file content
	//
	// ***
	File pulumi.StringPtrInput
	// Hash of the pkcs file
	Filehash pulumi.StringPtrInput
	// Keystore Name
	Keystore pulumi.StringPtrInput
	// Organization ID associated with the alias, without organization/ prefix
	OrgId pulumi.StringPtrInput
	// Password for the PKCS12 file if it's encrypted
	Password pulumi.StringPtrInput
	// Optional.Type of Alias
	Type pulumi.StringPtrInput
}

func (KeystoresAliasesPkcs12State) ElementType

type KeystoresAliasesSelfSignedCert

type KeystoresAliasesSelfSignedCert struct {
	pulumi.CustomResourceState

	// Alias for the key/certificate pair. Values must match the regular expression [\w\s-.]{1,255}.
	// This must be provided for all formats except selfsignedcert; self-signed certs may specify the alias in either
	// this parameter or the JSON body.
	Alias pulumi.StringOutput `pulumi:"alias"`
	// Validity duration of certificate, in days. Accepts positive non-zero value. Defaults to 365.
	CertValidityInDays pulumi.IntPtrOutput `pulumi:"certValidityInDays"`
	// Chain of certificates under this alias.
	// Structure is documented below.
	CertsInfos KeystoresAliasesSelfSignedCertCertsInfoArrayOutput `pulumi:"certsInfos"`
	// The Apigee environment name
	Environment pulumi.StringOutput `pulumi:"environment"`
	// Key size. Default and maximum value is 2048 bits.
	KeySize pulumi.StringPtrOutput `pulumi:"keySize"`
	// The Apigee keystore name associated in an Apigee environment
	Keystore pulumi.StringOutput `pulumi:"keystore"`
	// The Apigee Organization name associated with the Apigee environment
	OrgId pulumi.StringOutput `pulumi:"orgId"`
	// Signature algorithm to generate private key. Valid values are SHA512withRSA, SHA384withRSA, and SHA256withRSA
	SigAlg pulumi.StringOutput `pulumi:"sigAlg"`
	// Subject details.
	// Structure is documented below.
	Subject KeystoresAliasesSelfSignedCertSubjectOutput `pulumi:"subject"`
	// List of alternative host names. Maximum length is 255 characters for each value.
	SubjectAlternativeDnsNames KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput `pulumi:"subjectAlternativeDnsNames"`
	// Optional.Type of Alias
	Type pulumi.StringOutput `pulumi:"type"`
}

An Environment Keystore Alias for Self Signed Certificate Format in Apigee

To get more information about KeystoresAliasesSelfSignedCert, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.environments.keystores.aliases/create) * How-to Guides

## Example Usage

### Apigee Env Keystore Alias Self Signed Cert

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/projects"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/servicenetworking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		project, err := organizations.NewProject(ctx, "project", &organizations.ProjectArgs{
			ProjectId:      pulumi.String("my-project"),
			Name:           pulumi.String("my-project"),
			OrgId:          pulumi.String("123456789"),
			BillingAccount: pulumi.String("000000-0000000-0000000-000000"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewService(ctx, "apigee", &projects.ServiceArgs{
			Project: project.ProjectId,
			Service: pulumi.String("apigee.googleapis.com"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewService(ctx, "servicenetworking", &projects.ServiceArgs{
			Project: project.ProjectId,
			Service: pulumi.String("servicenetworking.googleapis.com"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewService(ctx, "compute", &projects.ServiceArgs{
			Project: project.ProjectId,
			Service: pulumi.String("compute.googleapis.com"),
		})
		if err != nil {
			return err
		}
		apigeeNetwork, err := compute.NewNetwork(ctx, "apigee_network", &compute.NetworkArgs{
			Name:    pulumi.String("apigee-network"),
			Project: project.ProjectId,
		})
		if err != nil {
			return err
		}
		apigeeRange, err := compute.NewGlobalAddress(ctx, "apigee_range", &compute.GlobalAddressArgs{
			Name:         pulumi.String("apigee-range"),
			Purpose:      pulumi.String("VPC_PEERING"),
			AddressType:  pulumi.String("INTERNAL"),
			PrefixLength: pulumi.Int(16),
			Network:      apigeeNetwork.ID(),
			Project:      project.ProjectId,
		})
		if err != nil {
			return err
		}
		_, err = servicenetworking.NewConnection(ctx, "apigee_vpc_connection", &servicenetworking.ConnectionArgs{
			Network: apigeeNetwork.ID(),
			Service: pulumi.String("servicenetworking.googleapis.com"),
			ReservedPeeringRanges: pulumi.StringArray{
				apigeeRange.Name,
			},
		})
		if err != nil {
			return err
		}
		apigeeOrg, err := apigee.NewOrganization(ctx, "apigee_org", &apigee.OrganizationArgs{
			AnalyticsRegion:   pulumi.String("us-central1"),
			ProjectId:         project.ProjectId,
			AuthorizedNetwork: apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		apigeeEnvironmentKeystoreSsAlias, err := apigee.NewEnvironment(ctx, "apigee_environment_keystore_ss_alias", &apigee.EnvironmentArgs{
			OrgId:       apigeeOrg.ID(),
			Name:        pulumi.String("env-name"),
			Description: pulumi.String("Apigee Environment"),
			DisplayName: pulumi.String("environment-1"),
		})
		if err != nil {
			return err
		}
		apigeeEnvironmentKeystoreAlias, err := apigee.NewEnvKeystore(ctx, "apigee_environment_keystore_alias", &apigee.EnvKeystoreArgs{
			Name:  pulumi.String("env-keystore"),
			EnvId: apigeeEnvironmentKeystoreSsAlias.ID(),
		})
		if err != nil {
			return err
		}
		_, err = apigee.NewKeystoresAliasesSelfSignedCert(ctx, "apigee_environment_keystore_ss_alias", &apigee.KeystoresAliasesSelfSignedCertArgs{
			Environment:        apigeeEnvironmentKeystoreSsAlias.Name,
			OrgId:              apigeeOrg.Name,
			Keystore:           apigeeEnvironmentKeystoreAlias.Name,
			Alias:              pulumi.String("alias"),
			KeySize:            pulumi.String("1024"),
			SigAlg:             pulumi.String("SHA512withRSA"),
			CertValidityInDays: pulumi.Int(4),
			Subject: &apigee.KeystoresAliasesSelfSignedCertSubjectArgs{
				CommonName:  pulumi.String("selfsigned_example"),
				CountryCode: pulumi.String("US"),
				Locality:    pulumi.String("TX"),
				Org:         pulumi.String("CCE"),
				OrgUnit:     pulumi.String("PSO"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

KeystoresAliasesSelfSignedCert can be imported using any of these accepted formats:

* `organizations/{{org_id}}/environments/{{environment}}/keystores/{{keystore}}/aliases/{{alias}}`

* `{{org_id}}/{{environment}}/{{keystore}}/{{alias}}`

When using the `pulumi import` command, KeystoresAliasesSelfSignedCert can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/keystoresAliasesSelfSignedCert:KeystoresAliasesSelfSignedCert default organizations/{{org_id}}/environments/{{environment}}/keystores/{{keystore}}/aliases/{{alias}} ```

```sh $ pulumi import gcp:apigee/keystoresAliasesSelfSignedCert:KeystoresAliasesSelfSignedCert default {{org_id}}/{{environment}}/{{keystore}}/{{alias}} ```

func GetKeystoresAliasesSelfSignedCert

func GetKeystoresAliasesSelfSignedCert(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *KeystoresAliasesSelfSignedCertState, opts ...pulumi.ResourceOption) (*KeystoresAliasesSelfSignedCert, error)

GetKeystoresAliasesSelfSignedCert gets an existing KeystoresAliasesSelfSignedCert 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 NewKeystoresAliasesSelfSignedCert

func NewKeystoresAliasesSelfSignedCert(ctx *pulumi.Context,
	name string, args *KeystoresAliasesSelfSignedCertArgs, opts ...pulumi.ResourceOption) (*KeystoresAliasesSelfSignedCert, error)

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

func (*KeystoresAliasesSelfSignedCert) ElementType

func (*KeystoresAliasesSelfSignedCert) ToKeystoresAliasesSelfSignedCertOutput

func (i *KeystoresAliasesSelfSignedCert) ToKeystoresAliasesSelfSignedCertOutput() KeystoresAliasesSelfSignedCertOutput

func (*KeystoresAliasesSelfSignedCert) ToKeystoresAliasesSelfSignedCertOutputWithContext

func (i *KeystoresAliasesSelfSignedCert) ToKeystoresAliasesSelfSignedCertOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertOutput

type KeystoresAliasesSelfSignedCertArgs

type KeystoresAliasesSelfSignedCertArgs struct {
	// Alias for the key/certificate pair. Values must match the regular expression [\w\s-.]{1,255}.
	// This must be provided for all formats except selfsignedcert; self-signed certs may specify the alias in either
	// this parameter or the JSON body.
	Alias pulumi.StringInput
	// Validity duration of certificate, in days. Accepts positive non-zero value. Defaults to 365.
	CertValidityInDays pulumi.IntPtrInput
	// The Apigee environment name
	Environment pulumi.StringInput
	// Key size. Default and maximum value is 2048 bits.
	KeySize pulumi.StringPtrInput
	// The Apigee keystore name associated in an Apigee environment
	Keystore pulumi.StringInput
	// The Apigee Organization name associated with the Apigee environment
	OrgId pulumi.StringInput
	// Signature algorithm to generate private key. Valid values are SHA512withRSA, SHA384withRSA, and SHA256withRSA
	SigAlg pulumi.StringInput
	// Subject details.
	// Structure is documented below.
	Subject KeystoresAliasesSelfSignedCertSubjectInput
	// List of alternative host names. Maximum length is 255 characters for each value.
	SubjectAlternativeDnsNames KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrInput
}

The set of arguments for constructing a KeystoresAliasesSelfSignedCert resource.

func (KeystoresAliasesSelfSignedCertArgs) ElementType

type KeystoresAliasesSelfSignedCertArray

type KeystoresAliasesSelfSignedCertArray []KeystoresAliasesSelfSignedCertInput

func (KeystoresAliasesSelfSignedCertArray) ElementType

func (KeystoresAliasesSelfSignedCertArray) ToKeystoresAliasesSelfSignedCertArrayOutput

func (i KeystoresAliasesSelfSignedCertArray) ToKeystoresAliasesSelfSignedCertArrayOutput() KeystoresAliasesSelfSignedCertArrayOutput

func (KeystoresAliasesSelfSignedCertArray) ToKeystoresAliasesSelfSignedCertArrayOutputWithContext

func (i KeystoresAliasesSelfSignedCertArray) ToKeystoresAliasesSelfSignedCertArrayOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertArrayOutput

type KeystoresAliasesSelfSignedCertArrayInput

type KeystoresAliasesSelfSignedCertArrayInput interface {
	pulumi.Input

	ToKeystoresAliasesSelfSignedCertArrayOutput() KeystoresAliasesSelfSignedCertArrayOutput
	ToKeystoresAliasesSelfSignedCertArrayOutputWithContext(context.Context) KeystoresAliasesSelfSignedCertArrayOutput
}

KeystoresAliasesSelfSignedCertArrayInput is an input type that accepts KeystoresAliasesSelfSignedCertArray and KeystoresAliasesSelfSignedCertArrayOutput values. You can construct a concrete instance of `KeystoresAliasesSelfSignedCertArrayInput` via:

KeystoresAliasesSelfSignedCertArray{ KeystoresAliasesSelfSignedCertArgs{...} }

type KeystoresAliasesSelfSignedCertArrayOutput

type KeystoresAliasesSelfSignedCertArrayOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesSelfSignedCertArrayOutput) ElementType

func (KeystoresAliasesSelfSignedCertArrayOutput) Index

func (KeystoresAliasesSelfSignedCertArrayOutput) ToKeystoresAliasesSelfSignedCertArrayOutput

func (o KeystoresAliasesSelfSignedCertArrayOutput) ToKeystoresAliasesSelfSignedCertArrayOutput() KeystoresAliasesSelfSignedCertArrayOutput

func (KeystoresAliasesSelfSignedCertArrayOutput) ToKeystoresAliasesSelfSignedCertArrayOutputWithContext

func (o KeystoresAliasesSelfSignedCertArrayOutput) ToKeystoresAliasesSelfSignedCertArrayOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertArrayOutput

type KeystoresAliasesSelfSignedCertCertsInfo

type KeystoresAliasesSelfSignedCertCertsInfo struct {
	// (Output)
	// List of all properties in the object.
	// Structure is documented below.
	CertInfos []KeystoresAliasesSelfSignedCertCertsInfoCertInfo `pulumi:"certInfos"`
}

type KeystoresAliasesSelfSignedCertCertsInfoArgs

type KeystoresAliasesSelfSignedCertCertsInfoArgs struct {
	// (Output)
	// List of all properties in the object.
	// Structure is documented below.
	CertInfos KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayInput `pulumi:"certInfos"`
}

func (KeystoresAliasesSelfSignedCertCertsInfoArgs) ElementType

func (KeystoresAliasesSelfSignedCertCertsInfoArgs) ToKeystoresAliasesSelfSignedCertCertsInfoOutput

func (i KeystoresAliasesSelfSignedCertCertsInfoArgs) ToKeystoresAliasesSelfSignedCertCertsInfoOutput() KeystoresAliasesSelfSignedCertCertsInfoOutput

func (KeystoresAliasesSelfSignedCertCertsInfoArgs) ToKeystoresAliasesSelfSignedCertCertsInfoOutputWithContext

func (i KeystoresAliasesSelfSignedCertCertsInfoArgs) ToKeystoresAliasesSelfSignedCertCertsInfoOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertCertsInfoOutput

type KeystoresAliasesSelfSignedCertCertsInfoArray

type KeystoresAliasesSelfSignedCertCertsInfoArray []KeystoresAliasesSelfSignedCertCertsInfoInput

func (KeystoresAliasesSelfSignedCertCertsInfoArray) ElementType

func (KeystoresAliasesSelfSignedCertCertsInfoArray) ToKeystoresAliasesSelfSignedCertCertsInfoArrayOutput

func (i KeystoresAliasesSelfSignedCertCertsInfoArray) ToKeystoresAliasesSelfSignedCertCertsInfoArrayOutput() KeystoresAliasesSelfSignedCertCertsInfoArrayOutput

func (KeystoresAliasesSelfSignedCertCertsInfoArray) ToKeystoresAliasesSelfSignedCertCertsInfoArrayOutputWithContext

func (i KeystoresAliasesSelfSignedCertCertsInfoArray) ToKeystoresAliasesSelfSignedCertCertsInfoArrayOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertCertsInfoArrayOutput

type KeystoresAliasesSelfSignedCertCertsInfoArrayInput

type KeystoresAliasesSelfSignedCertCertsInfoArrayInput interface {
	pulumi.Input

	ToKeystoresAliasesSelfSignedCertCertsInfoArrayOutput() KeystoresAliasesSelfSignedCertCertsInfoArrayOutput
	ToKeystoresAliasesSelfSignedCertCertsInfoArrayOutputWithContext(context.Context) KeystoresAliasesSelfSignedCertCertsInfoArrayOutput
}

KeystoresAliasesSelfSignedCertCertsInfoArrayInput is an input type that accepts KeystoresAliasesSelfSignedCertCertsInfoArray and KeystoresAliasesSelfSignedCertCertsInfoArrayOutput values. You can construct a concrete instance of `KeystoresAliasesSelfSignedCertCertsInfoArrayInput` via:

KeystoresAliasesSelfSignedCertCertsInfoArray{ KeystoresAliasesSelfSignedCertCertsInfoArgs{...} }

type KeystoresAliasesSelfSignedCertCertsInfoArrayOutput

type KeystoresAliasesSelfSignedCertCertsInfoArrayOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesSelfSignedCertCertsInfoArrayOutput) ElementType

func (KeystoresAliasesSelfSignedCertCertsInfoArrayOutput) Index

func (KeystoresAliasesSelfSignedCertCertsInfoArrayOutput) ToKeystoresAliasesSelfSignedCertCertsInfoArrayOutput

func (o KeystoresAliasesSelfSignedCertCertsInfoArrayOutput) ToKeystoresAliasesSelfSignedCertCertsInfoArrayOutput() KeystoresAliasesSelfSignedCertCertsInfoArrayOutput

func (KeystoresAliasesSelfSignedCertCertsInfoArrayOutput) ToKeystoresAliasesSelfSignedCertCertsInfoArrayOutputWithContext

func (o KeystoresAliasesSelfSignedCertCertsInfoArrayOutput) ToKeystoresAliasesSelfSignedCertCertsInfoArrayOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertCertsInfoArrayOutput

type KeystoresAliasesSelfSignedCertCertsInfoCertInfo

type KeystoresAliasesSelfSignedCertCertsInfoCertInfo struct {
	// (Output)
	// X.509 basic constraints extension.
	BasicConstraints *string `pulumi:"basicConstraints"`
	// (Output)
	// X.509 notAfter validity period in milliseconds since epoch.
	ExpiryDate *string `pulumi:"expiryDate"`
	// (Output)
	// Flag that specifies whether the certificate is valid.
	// Flag is set to Yes if the certificate is valid, No if expired, or Not yet if not yet valid.
	IsValid *string `pulumi:"isValid"`
	// (Output)
	// X.509 issuer.
	Issuer *string `pulumi:"issuer"`
	// (Output)
	// Public key component of the X.509 subject public key info.
	PublicKey *string `pulumi:"publicKey"`
	// (Output)
	// X.509 serial number.
	SerialNumber *string `pulumi:"serialNumber"`
	// (Output)
	// X.509 signatureAlgorithm.
	SigAlgName *string `pulumi:"sigAlgName"`
	// Subject details.
	// Structure is documented below.
	Subject *string `pulumi:"subject"`
	// (Output)
	// X.509 subject alternative names (SANs) extension.
	SubjectAlternativeNames []string `pulumi:"subjectAlternativeNames"`
	// (Output)
	// X.509 notBefore validity period in milliseconds since epoch.
	ValidFrom *string `pulumi:"validFrom"`
	// (Output)
	// X.509 version.
	Version *int `pulumi:"version"`
}

type KeystoresAliasesSelfSignedCertCertsInfoCertInfoArgs

type KeystoresAliasesSelfSignedCertCertsInfoCertInfoArgs struct {
	// (Output)
	// X.509 basic constraints extension.
	BasicConstraints pulumi.StringPtrInput `pulumi:"basicConstraints"`
	// (Output)
	// X.509 notAfter validity period in milliseconds since epoch.
	ExpiryDate pulumi.StringPtrInput `pulumi:"expiryDate"`
	// (Output)
	// Flag that specifies whether the certificate is valid.
	// Flag is set to Yes if the certificate is valid, No if expired, or Not yet if not yet valid.
	IsValid pulumi.StringPtrInput `pulumi:"isValid"`
	// (Output)
	// X.509 issuer.
	Issuer pulumi.StringPtrInput `pulumi:"issuer"`
	// (Output)
	// Public key component of the X.509 subject public key info.
	PublicKey pulumi.StringPtrInput `pulumi:"publicKey"`
	// (Output)
	// X.509 serial number.
	SerialNumber pulumi.StringPtrInput `pulumi:"serialNumber"`
	// (Output)
	// X.509 signatureAlgorithm.
	SigAlgName pulumi.StringPtrInput `pulumi:"sigAlgName"`
	// Subject details.
	// Structure is documented below.
	Subject pulumi.StringPtrInput `pulumi:"subject"`
	// (Output)
	// X.509 subject alternative names (SANs) extension.
	SubjectAlternativeNames pulumi.StringArrayInput `pulumi:"subjectAlternativeNames"`
	// (Output)
	// X.509 notBefore validity period in milliseconds since epoch.
	ValidFrom pulumi.StringPtrInput `pulumi:"validFrom"`
	// (Output)
	// X.509 version.
	Version pulumi.IntPtrInput `pulumi:"version"`
}

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoArgs) ElementType

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoArgs) ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput

func (i KeystoresAliasesSelfSignedCertCertsInfoCertInfoArgs) ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput() KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoArgs) ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoOutputWithContext

func (i KeystoresAliasesSelfSignedCertCertsInfoCertInfoArgs) ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput

type KeystoresAliasesSelfSignedCertCertsInfoCertInfoArray

type KeystoresAliasesSelfSignedCertCertsInfoCertInfoArray []KeystoresAliasesSelfSignedCertCertsInfoCertInfoInput

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoArray) ElementType

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoArray) ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput

func (i KeystoresAliasesSelfSignedCertCertsInfoCertInfoArray) ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput() KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoArray) ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutputWithContext

func (i KeystoresAliasesSelfSignedCertCertsInfoCertInfoArray) ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput

type KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayInput

type KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayInput interface {
	pulumi.Input

	ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput() KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput
	ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutputWithContext(context.Context) KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput
}

KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayInput is an input type that accepts KeystoresAliasesSelfSignedCertCertsInfoCertInfoArray and KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput values. You can construct a concrete instance of `KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayInput` via:

KeystoresAliasesSelfSignedCertCertsInfoCertInfoArray{ KeystoresAliasesSelfSignedCertCertsInfoCertInfoArgs{...} }

type KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput

type KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput) ElementType

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput) Index

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput) ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput) ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutputWithContext

func (o KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput) ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertCertsInfoCertInfoArrayOutput

type KeystoresAliasesSelfSignedCertCertsInfoCertInfoInput

type KeystoresAliasesSelfSignedCertCertsInfoCertInfoInput interface {
	pulumi.Input

	ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput() KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput
	ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoOutputWithContext(context.Context) KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput
}

KeystoresAliasesSelfSignedCertCertsInfoCertInfoInput is an input type that accepts KeystoresAliasesSelfSignedCertCertsInfoCertInfoArgs and KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput values. You can construct a concrete instance of `KeystoresAliasesSelfSignedCertCertsInfoCertInfoInput` via:

KeystoresAliasesSelfSignedCertCertsInfoCertInfoArgs{...}

type KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput

type KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput) BasicConstraints

(Output) X.509 basic constraints extension.

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput) ElementType

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput) ExpiryDate

(Output) X.509 notAfter validity period in milliseconds since epoch.

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput) IsValid

(Output) Flag that specifies whether the certificate is valid. Flag is set to Yes if the certificate is valid, No if expired, or Not yet if not yet valid.

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput) Issuer

(Output) X.509 issuer.

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput) PublicKey

(Output) Public key component of the X.509 subject public key info.

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput) SerialNumber

(Output) X.509 serial number.

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput) SigAlgName

(Output) X.509 signatureAlgorithm.

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput) Subject

Subject details. Structure is documented below.

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput) SubjectAlternativeNames

(Output) X.509 subject alternative names (SANs) extension.

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput) ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput) ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoOutputWithContext

func (o KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput) ToKeystoresAliasesSelfSignedCertCertsInfoCertInfoOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput) ValidFrom

(Output) X.509 notBefore validity period in milliseconds since epoch.

func (KeystoresAliasesSelfSignedCertCertsInfoCertInfoOutput) Version

(Output) X.509 version.

type KeystoresAliasesSelfSignedCertCertsInfoInput

type KeystoresAliasesSelfSignedCertCertsInfoInput interface {
	pulumi.Input

	ToKeystoresAliasesSelfSignedCertCertsInfoOutput() KeystoresAliasesSelfSignedCertCertsInfoOutput
	ToKeystoresAliasesSelfSignedCertCertsInfoOutputWithContext(context.Context) KeystoresAliasesSelfSignedCertCertsInfoOutput
}

KeystoresAliasesSelfSignedCertCertsInfoInput is an input type that accepts KeystoresAliasesSelfSignedCertCertsInfoArgs and KeystoresAliasesSelfSignedCertCertsInfoOutput values. You can construct a concrete instance of `KeystoresAliasesSelfSignedCertCertsInfoInput` via:

KeystoresAliasesSelfSignedCertCertsInfoArgs{...}

type KeystoresAliasesSelfSignedCertCertsInfoOutput

type KeystoresAliasesSelfSignedCertCertsInfoOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesSelfSignedCertCertsInfoOutput) CertInfos

(Output) List of all properties in the object. Structure is documented below.

func (KeystoresAliasesSelfSignedCertCertsInfoOutput) ElementType

func (KeystoresAliasesSelfSignedCertCertsInfoOutput) ToKeystoresAliasesSelfSignedCertCertsInfoOutput

func (o KeystoresAliasesSelfSignedCertCertsInfoOutput) ToKeystoresAliasesSelfSignedCertCertsInfoOutput() KeystoresAliasesSelfSignedCertCertsInfoOutput

func (KeystoresAliasesSelfSignedCertCertsInfoOutput) ToKeystoresAliasesSelfSignedCertCertsInfoOutputWithContext

func (o KeystoresAliasesSelfSignedCertCertsInfoOutput) ToKeystoresAliasesSelfSignedCertCertsInfoOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertCertsInfoOutput

type KeystoresAliasesSelfSignedCertInput

type KeystoresAliasesSelfSignedCertInput interface {
	pulumi.Input

	ToKeystoresAliasesSelfSignedCertOutput() KeystoresAliasesSelfSignedCertOutput
	ToKeystoresAliasesSelfSignedCertOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertOutput
}

type KeystoresAliasesSelfSignedCertMap

type KeystoresAliasesSelfSignedCertMap map[string]KeystoresAliasesSelfSignedCertInput

func (KeystoresAliasesSelfSignedCertMap) ElementType

func (KeystoresAliasesSelfSignedCertMap) ToKeystoresAliasesSelfSignedCertMapOutput

func (i KeystoresAliasesSelfSignedCertMap) ToKeystoresAliasesSelfSignedCertMapOutput() KeystoresAliasesSelfSignedCertMapOutput

func (KeystoresAliasesSelfSignedCertMap) ToKeystoresAliasesSelfSignedCertMapOutputWithContext

func (i KeystoresAliasesSelfSignedCertMap) ToKeystoresAliasesSelfSignedCertMapOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertMapOutput

type KeystoresAliasesSelfSignedCertMapInput

type KeystoresAliasesSelfSignedCertMapInput interface {
	pulumi.Input

	ToKeystoresAliasesSelfSignedCertMapOutput() KeystoresAliasesSelfSignedCertMapOutput
	ToKeystoresAliasesSelfSignedCertMapOutputWithContext(context.Context) KeystoresAliasesSelfSignedCertMapOutput
}

KeystoresAliasesSelfSignedCertMapInput is an input type that accepts KeystoresAliasesSelfSignedCertMap and KeystoresAliasesSelfSignedCertMapOutput values. You can construct a concrete instance of `KeystoresAliasesSelfSignedCertMapInput` via:

KeystoresAliasesSelfSignedCertMap{ "key": KeystoresAliasesSelfSignedCertArgs{...} }

type KeystoresAliasesSelfSignedCertMapOutput

type KeystoresAliasesSelfSignedCertMapOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesSelfSignedCertMapOutput) ElementType

func (KeystoresAliasesSelfSignedCertMapOutput) MapIndex

func (KeystoresAliasesSelfSignedCertMapOutput) ToKeystoresAliasesSelfSignedCertMapOutput

func (o KeystoresAliasesSelfSignedCertMapOutput) ToKeystoresAliasesSelfSignedCertMapOutput() KeystoresAliasesSelfSignedCertMapOutput

func (KeystoresAliasesSelfSignedCertMapOutput) ToKeystoresAliasesSelfSignedCertMapOutputWithContext

func (o KeystoresAliasesSelfSignedCertMapOutput) ToKeystoresAliasesSelfSignedCertMapOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertMapOutput

type KeystoresAliasesSelfSignedCertOutput

type KeystoresAliasesSelfSignedCertOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesSelfSignedCertOutput) Alias

Alias for the key/certificate pair. Values must match the regular expression [\w\s-.]{1,255}. This must be provided for all formats except selfsignedcert; self-signed certs may specify the alias in either this parameter or the JSON body.

func (KeystoresAliasesSelfSignedCertOutput) CertValidityInDays

Validity duration of certificate, in days. Accepts positive non-zero value. Defaults to 365.

func (KeystoresAliasesSelfSignedCertOutput) CertsInfos

Chain of certificates under this alias. Structure is documented below.

func (KeystoresAliasesSelfSignedCertOutput) ElementType

func (KeystoresAliasesSelfSignedCertOutput) Environment

The Apigee environment name

func (KeystoresAliasesSelfSignedCertOutput) KeySize

Key size. Default and maximum value is 2048 bits.

func (KeystoresAliasesSelfSignedCertOutput) Keystore

The Apigee keystore name associated in an Apigee environment

func (KeystoresAliasesSelfSignedCertOutput) OrgId

The Apigee Organization name associated with the Apigee environment

func (KeystoresAliasesSelfSignedCertOutput) SigAlg

Signature algorithm to generate private key. Valid values are SHA512withRSA, SHA384withRSA, and SHA256withRSA

func (KeystoresAliasesSelfSignedCertOutput) Subject

Subject details. Structure is documented below.

func (KeystoresAliasesSelfSignedCertOutput) SubjectAlternativeDnsNames

List of alternative host names. Maximum length is 255 characters for each value.

func (KeystoresAliasesSelfSignedCertOutput) ToKeystoresAliasesSelfSignedCertOutput

func (o KeystoresAliasesSelfSignedCertOutput) ToKeystoresAliasesSelfSignedCertOutput() KeystoresAliasesSelfSignedCertOutput

func (KeystoresAliasesSelfSignedCertOutput) ToKeystoresAliasesSelfSignedCertOutputWithContext

func (o KeystoresAliasesSelfSignedCertOutput) ToKeystoresAliasesSelfSignedCertOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertOutput

func (KeystoresAliasesSelfSignedCertOutput) Type

Optional.Type of Alias

type KeystoresAliasesSelfSignedCertState

type KeystoresAliasesSelfSignedCertState struct {
	// Alias for the key/certificate pair. Values must match the regular expression [\w\s-.]{1,255}.
	// This must be provided for all formats except selfsignedcert; self-signed certs may specify the alias in either
	// this parameter or the JSON body.
	Alias pulumi.StringPtrInput
	// Validity duration of certificate, in days. Accepts positive non-zero value. Defaults to 365.
	CertValidityInDays pulumi.IntPtrInput
	// Chain of certificates under this alias.
	// Structure is documented below.
	CertsInfos KeystoresAliasesSelfSignedCertCertsInfoArrayInput
	// The Apigee environment name
	Environment pulumi.StringPtrInput
	// Key size. Default and maximum value is 2048 bits.
	KeySize pulumi.StringPtrInput
	// The Apigee keystore name associated in an Apigee environment
	Keystore pulumi.StringPtrInput
	// The Apigee Organization name associated with the Apigee environment
	OrgId pulumi.StringPtrInput
	// Signature algorithm to generate private key. Valid values are SHA512withRSA, SHA384withRSA, and SHA256withRSA
	SigAlg pulumi.StringPtrInput
	// Subject details.
	// Structure is documented below.
	Subject KeystoresAliasesSelfSignedCertSubjectPtrInput
	// List of alternative host names. Maximum length is 255 characters for each value.
	SubjectAlternativeDnsNames KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrInput
	// Optional.Type of Alias
	Type pulumi.StringPtrInput
}

func (KeystoresAliasesSelfSignedCertState) ElementType

type KeystoresAliasesSelfSignedCertSubject

type KeystoresAliasesSelfSignedCertSubject struct {
	// Common name of the organization. Maximum length is 64 characters.
	CommonName *string `pulumi:"commonName"`
	// Two-letter country code. Example, IN for India, US for United States of America.
	CountryCode *string `pulumi:"countryCode"`
	// Email address. Max 255 characters.
	//
	// ***
	Email *string `pulumi:"email"`
	// City or town name. Maximum length is 128 characters.
	Locality *string `pulumi:"locality"`
	// Organization name. Maximum length is 64 characters.
	Org *string `pulumi:"org"`
	// Organization team name. Maximum length is 64 characters.
	OrgUnit *string `pulumi:"orgUnit"`
	// State or district name. Maximum length is 128 characters.
	State *string `pulumi:"state"`
}

type KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNames

type KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNames struct {
	// Subject Alternative Name
	SubjectAlternativeName *string `pulumi:"subjectAlternativeName"`
}

type KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesArgs

type KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesArgs struct {
	// Subject Alternative Name
	SubjectAlternativeName pulumi.StringPtrInput `pulumi:"subjectAlternativeName"`
}

func (KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesArgs) ElementType

func (KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesArgs) ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput

func (KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesArgs) ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutputWithContext

func (i KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesArgs) ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput

func (KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesArgs) ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput

func (KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesArgs) ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutputWithContext

func (i KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesArgs) ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput

type KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesInput

type KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesInput interface {
	pulumi.Input

	ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput() KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput
	ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutputWithContext(context.Context) KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput
}

KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesInput is an input type that accepts KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesArgs and KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput values. You can construct a concrete instance of `KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesInput` via:

KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesArgs{...}

type KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput

type KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput) ElementType

func (KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput) SubjectAlternativeName

Subject Alternative Name

func (KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput) ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput

func (KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput) ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutputWithContext

func (o KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput) ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput

func (KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput) ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput

func (KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput) ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutputWithContext

func (o KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesOutput) ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput

type KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrInput

type KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrInput interface {
	pulumi.Input

	ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput() KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput
	ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutputWithContext(context.Context) KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput
}

KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrInput is an input type that accepts KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesArgs, KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtr and KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput values. You can construct a concrete instance of `KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrInput` via:

        KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesArgs{...}

or:

        nil

type KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput

type KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput) Elem

func (KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput) ElementType

func (KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput) SubjectAlternativeName

Subject Alternative Name

func (KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput) ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput

func (KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput) ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutputWithContext

func (o KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput) ToKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertSubjectAlternativeDnsNamesPtrOutput

type KeystoresAliasesSelfSignedCertSubjectArgs

type KeystoresAliasesSelfSignedCertSubjectArgs struct {
	// Common name of the organization. Maximum length is 64 characters.
	CommonName pulumi.StringPtrInput `pulumi:"commonName"`
	// Two-letter country code. Example, IN for India, US for United States of America.
	CountryCode pulumi.StringPtrInput `pulumi:"countryCode"`
	// Email address. Max 255 characters.
	//
	// ***
	Email pulumi.StringPtrInput `pulumi:"email"`
	// City or town name. Maximum length is 128 characters.
	Locality pulumi.StringPtrInput `pulumi:"locality"`
	// Organization name. Maximum length is 64 characters.
	Org pulumi.StringPtrInput `pulumi:"org"`
	// Organization team name. Maximum length is 64 characters.
	OrgUnit pulumi.StringPtrInput `pulumi:"orgUnit"`
	// State or district name. Maximum length is 128 characters.
	State pulumi.StringPtrInput `pulumi:"state"`
}

func (KeystoresAliasesSelfSignedCertSubjectArgs) ElementType

func (KeystoresAliasesSelfSignedCertSubjectArgs) ToKeystoresAliasesSelfSignedCertSubjectOutput

func (i KeystoresAliasesSelfSignedCertSubjectArgs) ToKeystoresAliasesSelfSignedCertSubjectOutput() KeystoresAliasesSelfSignedCertSubjectOutput

func (KeystoresAliasesSelfSignedCertSubjectArgs) ToKeystoresAliasesSelfSignedCertSubjectOutputWithContext

func (i KeystoresAliasesSelfSignedCertSubjectArgs) ToKeystoresAliasesSelfSignedCertSubjectOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertSubjectOutput

func (KeystoresAliasesSelfSignedCertSubjectArgs) ToKeystoresAliasesSelfSignedCertSubjectPtrOutput

func (i KeystoresAliasesSelfSignedCertSubjectArgs) ToKeystoresAliasesSelfSignedCertSubjectPtrOutput() KeystoresAliasesSelfSignedCertSubjectPtrOutput

func (KeystoresAliasesSelfSignedCertSubjectArgs) ToKeystoresAliasesSelfSignedCertSubjectPtrOutputWithContext

func (i KeystoresAliasesSelfSignedCertSubjectArgs) ToKeystoresAliasesSelfSignedCertSubjectPtrOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertSubjectPtrOutput

type KeystoresAliasesSelfSignedCertSubjectInput

type KeystoresAliasesSelfSignedCertSubjectInput interface {
	pulumi.Input

	ToKeystoresAliasesSelfSignedCertSubjectOutput() KeystoresAliasesSelfSignedCertSubjectOutput
	ToKeystoresAliasesSelfSignedCertSubjectOutputWithContext(context.Context) KeystoresAliasesSelfSignedCertSubjectOutput
}

KeystoresAliasesSelfSignedCertSubjectInput is an input type that accepts KeystoresAliasesSelfSignedCertSubjectArgs and KeystoresAliasesSelfSignedCertSubjectOutput values. You can construct a concrete instance of `KeystoresAliasesSelfSignedCertSubjectInput` via:

KeystoresAliasesSelfSignedCertSubjectArgs{...}

type KeystoresAliasesSelfSignedCertSubjectOutput

type KeystoresAliasesSelfSignedCertSubjectOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesSelfSignedCertSubjectOutput) CommonName

Common name of the organization. Maximum length is 64 characters.

func (KeystoresAliasesSelfSignedCertSubjectOutput) CountryCode

Two-letter country code. Example, IN for India, US for United States of America.

func (KeystoresAliasesSelfSignedCertSubjectOutput) ElementType

func (KeystoresAliasesSelfSignedCertSubjectOutput) Email

Email address. Max 255 characters.

***

func (KeystoresAliasesSelfSignedCertSubjectOutput) Locality

City or town name. Maximum length is 128 characters.

func (KeystoresAliasesSelfSignedCertSubjectOutput) Org

Organization name. Maximum length is 64 characters.

func (KeystoresAliasesSelfSignedCertSubjectOutput) OrgUnit

Organization team name. Maximum length is 64 characters.

func (KeystoresAliasesSelfSignedCertSubjectOutput) State

State or district name. Maximum length is 128 characters.

func (KeystoresAliasesSelfSignedCertSubjectOutput) ToKeystoresAliasesSelfSignedCertSubjectOutput

func (o KeystoresAliasesSelfSignedCertSubjectOutput) ToKeystoresAliasesSelfSignedCertSubjectOutput() KeystoresAliasesSelfSignedCertSubjectOutput

func (KeystoresAliasesSelfSignedCertSubjectOutput) ToKeystoresAliasesSelfSignedCertSubjectOutputWithContext

func (o KeystoresAliasesSelfSignedCertSubjectOutput) ToKeystoresAliasesSelfSignedCertSubjectOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertSubjectOutput

func (KeystoresAliasesSelfSignedCertSubjectOutput) ToKeystoresAliasesSelfSignedCertSubjectPtrOutput

func (o KeystoresAliasesSelfSignedCertSubjectOutput) ToKeystoresAliasesSelfSignedCertSubjectPtrOutput() KeystoresAliasesSelfSignedCertSubjectPtrOutput

func (KeystoresAliasesSelfSignedCertSubjectOutput) ToKeystoresAliasesSelfSignedCertSubjectPtrOutputWithContext

func (o KeystoresAliasesSelfSignedCertSubjectOutput) ToKeystoresAliasesSelfSignedCertSubjectPtrOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertSubjectPtrOutput

type KeystoresAliasesSelfSignedCertSubjectPtrInput

type KeystoresAliasesSelfSignedCertSubjectPtrInput interface {
	pulumi.Input

	ToKeystoresAliasesSelfSignedCertSubjectPtrOutput() KeystoresAliasesSelfSignedCertSubjectPtrOutput
	ToKeystoresAliasesSelfSignedCertSubjectPtrOutputWithContext(context.Context) KeystoresAliasesSelfSignedCertSubjectPtrOutput
}

KeystoresAliasesSelfSignedCertSubjectPtrInput is an input type that accepts KeystoresAliasesSelfSignedCertSubjectArgs, KeystoresAliasesSelfSignedCertSubjectPtr and KeystoresAliasesSelfSignedCertSubjectPtrOutput values. You can construct a concrete instance of `KeystoresAliasesSelfSignedCertSubjectPtrInput` via:

        KeystoresAliasesSelfSignedCertSubjectArgs{...}

or:

        nil

type KeystoresAliasesSelfSignedCertSubjectPtrOutput

type KeystoresAliasesSelfSignedCertSubjectPtrOutput struct{ *pulumi.OutputState }

func (KeystoresAliasesSelfSignedCertSubjectPtrOutput) CommonName

Common name of the organization. Maximum length is 64 characters.

func (KeystoresAliasesSelfSignedCertSubjectPtrOutput) CountryCode

Two-letter country code. Example, IN for India, US for United States of America.

func (KeystoresAliasesSelfSignedCertSubjectPtrOutput) Elem

func (KeystoresAliasesSelfSignedCertSubjectPtrOutput) ElementType

func (KeystoresAliasesSelfSignedCertSubjectPtrOutput) Email

Email address. Max 255 characters.

***

func (KeystoresAliasesSelfSignedCertSubjectPtrOutput) Locality

City or town name. Maximum length is 128 characters.

func (KeystoresAliasesSelfSignedCertSubjectPtrOutput) Org

Organization name. Maximum length is 64 characters.

func (KeystoresAliasesSelfSignedCertSubjectPtrOutput) OrgUnit

Organization team name. Maximum length is 64 characters.

func (KeystoresAliasesSelfSignedCertSubjectPtrOutput) State

State or district name. Maximum length is 128 characters.

func (KeystoresAliasesSelfSignedCertSubjectPtrOutput) ToKeystoresAliasesSelfSignedCertSubjectPtrOutput

func (o KeystoresAliasesSelfSignedCertSubjectPtrOutput) ToKeystoresAliasesSelfSignedCertSubjectPtrOutput() KeystoresAliasesSelfSignedCertSubjectPtrOutput

func (KeystoresAliasesSelfSignedCertSubjectPtrOutput) ToKeystoresAliasesSelfSignedCertSubjectPtrOutputWithContext

func (o KeystoresAliasesSelfSignedCertSubjectPtrOutput) ToKeystoresAliasesSelfSignedCertSubjectPtrOutputWithContext(ctx context.Context) KeystoresAliasesSelfSignedCertSubjectPtrOutput

type LookupEnvironmentIamPolicyArgs

type LookupEnvironmentIamPolicyArgs struct {
	// Used to find the parent resource to bind the IAM policy to
	EnvId string `pulumi:"envId"`
	OrgId string `pulumi:"orgId"`
}

A collection of arguments for invoking getEnvironmentIamPolicy.

type LookupEnvironmentIamPolicyOutputArgs

type LookupEnvironmentIamPolicyOutputArgs struct {
	// Used to find the parent resource to bind the IAM policy to
	EnvId pulumi.StringInput `pulumi:"envId"`
	OrgId pulumi.StringInput `pulumi:"orgId"`
}

A collection of arguments for invoking getEnvironmentIamPolicy.

func (LookupEnvironmentIamPolicyOutputArgs) ElementType

type LookupEnvironmentIamPolicyResult

type LookupEnvironmentIamPolicyResult struct {
	EnvId string `pulumi:"envId"`
	// (Computed) The etag of the IAM policy.
	Etag string `pulumi:"etag"`
	// The provider-assigned unique ID for this managed resource.
	Id    string `pulumi:"id"`
	OrgId string `pulumi:"orgId"`
	// (Required only by `apigee.EnvironmentIamPolicy`) The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData string `pulumi:"policyData"`
}

A collection of values returned by getEnvironmentIamPolicy.

func LookupEnvironmentIamPolicy

func LookupEnvironmentIamPolicy(ctx *pulumi.Context, args *LookupEnvironmentIamPolicyArgs, opts ...pulumi.InvokeOption) (*LookupEnvironmentIamPolicyResult, error)

Retrieves the current IAM policy data for environment

## example

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigee.LookupEnvironmentIamPolicy(ctx, &apigee.LookupEnvironmentIamPolicyArgs{
			OrgId: apigeeEnvironment.OrgId,
			EnvId: apigeeEnvironment.Name,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupEnvironmentIamPolicyResultOutput

type LookupEnvironmentIamPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEnvironmentIamPolicy.

func (LookupEnvironmentIamPolicyResultOutput) ElementType

func (LookupEnvironmentIamPolicyResultOutput) EnvId

func (LookupEnvironmentIamPolicyResultOutput) Etag

(Computed) The etag of the IAM policy.

func (LookupEnvironmentIamPolicyResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupEnvironmentIamPolicyResultOutput) OrgId

func (LookupEnvironmentIamPolicyResultOutput) PolicyData

(Required only by `apigee.EnvironmentIamPolicy`) The policy data generated by a `organizations.getIAMPolicy` data source.

func (LookupEnvironmentIamPolicyResultOutput) ToLookupEnvironmentIamPolicyResultOutput

func (o LookupEnvironmentIamPolicyResultOutput) ToLookupEnvironmentIamPolicyResultOutput() LookupEnvironmentIamPolicyResultOutput

func (LookupEnvironmentIamPolicyResultOutput) ToLookupEnvironmentIamPolicyResultOutputWithContext

func (o LookupEnvironmentIamPolicyResultOutput) ToLookupEnvironmentIamPolicyResultOutputWithContext(ctx context.Context) LookupEnvironmentIamPolicyResultOutput

type NatAddress

type NatAddress struct {
	pulumi.CustomResourceState

	// The Apigee instance associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/instances/{{instance_name}}`.
	//
	// ***
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The allocated NAT IP address.
	IpAddress pulumi.StringOutput `pulumi:"ipAddress"`
	// Resource ID of the NAT address.
	Name pulumi.StringOutput `pulumi:"name"`
	// State of the NAT IP address.
	State pulumi.StringOutput `pulumi:"state"`
}

Apigee NAT (network address translation) address. A NAT address is a static external IP address used for Internet egress traffic. This is not avaible for Apigee hybrid. Apigee NAT addresses are not automatically activated because they might require explicit allow entries on the target systems first. See https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.instances.natAddresses/activate

To get more information about NatAddress, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.instances.natAddresses) * How-to Guides

## Example Usage

### Apigee Nat Address Basic

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/kms"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/projects"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/servicenetworking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := organizations.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		apigeeNetwork, err := compute.NewNetwork(ctx, "apigee_network", &compute.NetworkArgs{
			Name: pulumi.String("apigee-network"),
		})
		if err != nil {
			return err
		}
		apigeeRange, err := compute.NewGlobalAddress(ctx, "apigee_range", &compute.GlobalAddressArgs{
			Name:         pulumi.String("apigee-range"),
			Purpose:      pulumi.String("VPC_PEERING"),
			AddressType:  pulumi.String("INTERNAL"),
			PrefixLength: pulumi.Int(21),
			Network:      apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		_, err = servicenetworking.NewConnection(ctx, "apigee_vpc_connection", &servicenetworking.ConnectionArgs{
			Network: apigeeNetwork.ID(),
			Service: pulumi.String("servicenetworking.googleapis.com"),
			ReservedPeeringRanges: pulumi.StringArray{
				apigeeRange.Name,
			},
		})
		if err != nil {
			return err
		}
		apigeeKeyring, err := kms.NewKeyRing(ctx, "apigee_keyring", &kms.KeyRingArgs{
			Name:     pulumi.String("apigee-keyring"),
			Location: pulumi.String("us-central1"),
		})
		if err != nil {
			return err
		}
		apigeeKey, err := kms.NewCryptoKey(ctx, "apigee_key", &kms.CryptoKeyArgs{
			Name:    pulumi.String("apigee-key"),
			KeyRing: apigeeKeyring.ID(),
		})
		if err != nil {
			return err
		}
		apigeeSa, err := projects.NewServiceIdentity(ctx, "apigee_sa", &projects.ServiceIdentityArgs{
			Project: pulumi.Any(project.ProjectId),
			Service: pulumi.Any(apigee.Service),
		})
		if err != nil {
			return err
		}
		_, err = kms.NewCryptoKeyIAMMember(ctx, "apigee_sa_keyuser", &kms.CryptoKeyIAMMemberArgs{
			CryptoKeyId: apigeeKey.ID(),
			Role:        pulumi.String("roles/cloudkms.cryptoKeyEncrypterDecrypter"),
			Member: apigeeSa.Email.ApplyT(func(email string) (string, error) {
				return fmt.Sprintf("serviceAccount:%v", email), nil
			}).(pulumi.StringOutput),
		})
		if err != nil {
			return err
		}
		apigeeOrg, err := apigee.NewOrganization(ctx, "apigee_org", &apigee.OrganizationArgs{
			AnalyticsRegion:                  pulumi.String("us-central1"),
			DisplayName:                      pulumi.String("apigee-org"),
			Description:                      pulumi.String("Terraform-provisioned Apigee Org."),
			ProjectId:                        pulumi.String(current.Project),
			AuthorizedNetwork:                apigeeNetwork.ID(),
			RuntimeDatabaseEncryptionKeyName: apigeeKey.ID(),
		})
		if err != nil {
			return err
		}
		apigeeInstance, err := apigee.NewInstance(ctx, "apigee_instance", &apigee.InstanceArgs{
			Name:                  pulumi.String("apigee-instance"),
			Location:              pulumi.String("us-central1"),
			Description:           pulumi.String("Terraform-managed Apigee Runtime Instance"),
			DisplayName:           pulumi.String("apigee-instance"),
			OrgId:                 apigeeOrg.ID(),
			DiskEncryptionKeyName: apigeeKey.ID(),
		})
		if err != nil {
			return err
		}
		_, err = apigee.NewNatAddress(ctx, "apigee-nat", &apigee.NatAddressArgs{
			Name:       pulumi.String("my-nat-address"),
			InstanceId: apigeeInstance.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

NatAddress can be imported using any of these accepted formats:

* `{{instance_id}}/natAddresses/{{name}}`

* `{{instance_id}}/{{name}}`

When using the `pulumi import` command, NatAddress can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/natAddress:NatAddress default {{instance_id}}/natAddresses/{{name}} ```

```sh $ pulumi import gcp:apigee/natAddress:NatAddress default {{instance_id}}/{{name}} ```

func GetNatAddress

func GetNatAddress(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NatAddressState, opts ...pulumi.ResourceOption) (*NatAddress, error)

GetNatAddress gets an existing NatAddress 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 NewNatAddress

func NewNatAddress(ctx *pulumi.Context,
	name string, args *NatAddressArgs, opts ...pulumi.ResourceOption) (*NatAddress, error)

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

func (*NatAddress) ElementType

func (*NatAddress) ElementType() reflect.Type

func (*NatAddress) ToNatAddressOutput

func (i *NatAddress) ToNatAddressOutput() NatAddressOutput

func (*NatAddress) ToNatAddressOutputWithContext

func (i *NatAddress) ToNatAddressOutputWithContext(ctx context.Context) NatAddressOutput

type NatAddressArgs

type NatAddressArgs struct {
	// The Apigee instance associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/instances/{{instance_name}}`.
	//
	// ***
	InstanceId pulumi.StringInput
	// Resource ID of the NAT address.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a NatAddress resource.

func (NatAddressArgs) ElementType

func (NatAddressArgs) ElementType() reflect.Type

type NatAddressArray

type NatAddressArray []NatAddressInput

func (NatAddressArray) ElementType

func (NatAddressArray) ElementType() reflect.Type

func (NatAddressArray) ToNatAddressArrayOutput

func (i NatAddressArray) ToNatAddressArrayOutput() NatAddressArrayOutput

func (NatAddressArray) ToNatAddressArrayOutputWithContext

func (i NatAddressArray) ToNatAddressArrayOutputWithContext(ctx context.Context) NatAddressArrayOutput

type NatAddressArrayInput

type NatAddressArrayInput interface {
	pulumi.Input

	ToNatAddressArrayOutput() NatAddressArrayOutput
	ToNatAddressArrayOutputWithContext(context.Context) NatAddressArrayOutput
}

NatAddressArrayInput is an input type that accepts NatAddressArray and NatAddressArrayOutput values. You can construct a concrete instance of `NatAddressArrayInput` via:

NatAddressArray{ NatAddressArgs{...} }

type NatAddressArrayOutput

type NatAddressArrayOutput struct{ *pulumi.OutputState }

func (NatAddressArrayOutput) ElementType

func (NatAddressArrayOutput) ElementType() reflect.Type

func (NatAddressArrayOutput) Index

func (NatAddressArrayOutput) ToNatAddressArrayOutput

func (o NatAddressArrayOutput) ToNatAddressArrayOutput() NatAddressArrayOutput

func (NatAddressArrayOutput) ToNatAddressArrayOutputWithContext

func (o NatAddressArrayOutput) ToNatAddressArrayOutputWithContext(ctx context.Context) NatAddressArrayOutput

type NatAddressInput

type NatAddressInput interface {
	pulumi.Input

	ToNatAddressOutput() NatAddressOutput
	ToNatAddressOutputWithContext(ctx context.Context) NatAddressOutput
}

type NatAddressMap

type NatAddressMap map[string]NatAddressInput

func (NatAddressMap) ElementType

func (NatAddressMap) ElementType() reflect.Type

func (NatAddressMap) ToNatAddressMapOutput

func (i NatAddressMap) ToNatAddressMapOutput() NatAddressMapOutput

func (NatAddressMap) ToNatAddressMapOutputWithContext

func (i NatAddressMap) ToNatAddressMapOutputWithContext(ctx context.Context) NatAddressMapOutput

type NatAddressMapInput

type NatAddressMapInput interface {
	pulumi.Input

	ToNatAddressMapOutput() NatAddressMapOutput
	ToNatAddressMapOutputWithContext(context.Context) NatAddressMapOutput
}

NatAddressMapInput is an input type that accepts NatAddressMap and NatAddressMapOutput values. You can construct a concrete instance of `NatAddressMapInput` via:

NatAddressMap{ "key": NatAddressArgs{...} }

type NatAddressMapOutput

type NatAddressMapOutput struct{ *pulumi.OutputState }

func (NatAddressMapOutput) ElementType

func (NatAddressMapOutput) ElementType() reflect.Type

func (NatAddressMapOutput) MapIndex

func (NatAddressMapOutput) ToNatAddressMapOutput

func (o NatAddressMapOutput) ToNatAddressMapOutput() NatAddressMapOutput

func (NatAddressMapOutput) ToNatAddressMapOutputWithContext

func (o NatAddressMapOutput) ToNatAddressMapOutputWithContext(ctx context.Context) NatAddressMapOutput

type NatAddressOutput

type NatAddressOutput struct{ *pulumi.OutputState }

func (NatAddressOutput) ElementType

func (NatAddressOutput) ElementType() reflect.Type

func (NatAddressOutput) InstanceId

func (o NatAddressOutput) InstanceId() pulumi.StringOutput

The Apigee instance associated with the Apigee environment, in the format `organizations/{{org_name}}/instances/{{instance_name}}`.

***

func (NatAddressOutput) IpAddress

func (o NatAddressOutput) IpAddress() pulumi.StringOutput

The allocated NAT IP address.

func (NatAddressOutput) Name

Resource ID of the NAT address.

func (NatAddressOutput) State

State of the NAT IP address.

func (NatAddressOutput) ToNatAddressOutput

func (o NatAddressOutput) ToNatAddressOutput() NatAddressOutput

func (NatAddressOutput) ToNatAddressOutputWithContext

func (o NatAddressOutput) ToNatAddressOutputWithContext(ctx context.Context) NatAddressOutput

type NatAddressState

type NatAddressState struct {
	// The Apigee instance associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/instances/{{instance_name}}`.
	//
	// ***
	InstanceId pulumi.StringPtrInput
	// The allocated NAT IP address.
	IpAddress pulumi.StringPtrInput
	// Resource ID of the NAT address.
	Name pulumi.StringPtrInput
	// State of the NAT IP address.
	State pulumi.StringPtrInput
}

func (NatAddressState) ElementType

func (NatAddressState) ElementType() reflect.Type

type Organization

type Organization struct {
	pulumi.CustomResourceState

	// Primary GCP region for analytics data storage. For valid values, see [Create an Apigee organization](https://cloud.google.com/apigee/docs/api-platform/get-started/create-org).
	AnalyticsRegion pulumi.StringPtrOutput `pulumi:"analyticsRegion"`
	// Cloud KMS key name used for encrypting API consumer data.
	ApiConsumerDataEncryptionKeyName pulumi.StringPtrOutput `pulumi:"apiConsumerDataEncryptionKeyName"`
	// This field is needed only for customers using non-default data residency regions.
	// Apigee stores some control plane data only in single region.
	// This field determines which single region Apigee should use.
	ApiConsumerDataLocation pulumi.StringPtrOutput `pulumi:"apiConsumerDataLocation"`
	// Output only. Project ID of the Apigee Tenant Project.
	ApigeeProjectId pulumi.StringOutput `pulumi:"apigeeProjectId"`
	// Compute Engine network used for Service Networking to be peered with Apigee runtime instances.
	// See [Getting started with the Service Networking API](https://cloud.google.com/service-infrastructure/docs/service-networking/getting-started).
	// Valid only when `RuntimeType` is set to CLOUD. The value can be updated only when there are no runtime instances. For example: "default".
	AuthorizedNetwork pulumi.StringPtrOutput `pulumi:"authorizedNetwork"`
	// Billing type of the Apigee organization. See [Apigee pricing](https://cloud.google.com/apigee/pricing).
	BillingType pulumi.StringOutput `pulumi:"billingType"`
	// Output only. Base64-encoded public certificate for the root CA of the Apigee organization.
	// Valid only when `RuntimeType` is CLOUD. A base64-encoded string.
	CaCertificate pulumi.StringOutput `pulumi:"caCertificate"`
	// Cloud KMS key name used for encrypting control plane data that is stored in a multi region.
	// Only used for the data residency region "US" or "EU".
	ControlPlaneEncryptionKeyName pulumi.StringPtrOutput `pulumi:"controlPlaneEncryptionKeyName"`
	// Description of the Apigee organization.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Flag that specifies whether the VPC Peering through Private Google Access should be
	// disabled between the consumer network and Apigee. Required if an `authorizedNetwork`
	// on the consumer project is not provided, in which case the flag should be set to `true`.
	// Valid only when `RuntimeType` is set to CLOUD. The value must be set before the creation
	// of any Apigee runtime instance and can be updated only when there are no runtime instances.
	DisableVpcPeering pulumi.BoolPtrOutput `pulumi:"disableVpcPeering"`
	// The display name of the Apigee organization.
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// Output only. Name of the Apigee organization.
	Name pulumi.StringOutput `pulumi:"name"`
	// The project ID associated with the Apigee organization.
	//
	// ***
	ProjectId pulumi.StringOutput `pulumi:"projectId"`
	// Properties defined in the Apigee organization profile.
	// Structure is documented below.
	Properties OrganizationPropertiesOutput `pulumi:"properties"`
	// Optional. This setting is applicable only for organizations that are soft-deleted (i.e., BillingType
	// is not EVALUATION). It controls how long Organization data will be retained after the initial delete
	// operation completes. During this period, the Organization may be restored to its last known state.
	// After this period, the Organization will no longer be able to be restored.
	// Default value is `DELETION_RETENTION_UNSPECIFIED`.
	// Possible values are: `DELETION_RETENTION_UNSPECIFIED`, `MINIMUM`.
	Retention pulumi.StringPtrOutput `pulumi:"retention"`
	// Cloud KMS key name used for encrypting the data that is stored and replicated across runtime instances.
	// Update is not allowed after the organization is created.
	// If not specified, a Google-Managed encryption key will be used.
	// Valid only when `RuntimeType` is CLOUD. For example: `projects/foo/locations/us/keyRings/bar/cryptoKeys/baz`.
	RuntimeDatabaseEncryptionKeyName pulumi.StringPtrOutput `pulumi:"runtimeDatabaseEncryptionKeyName"`
	// Runtime type of the Apigee organization based on the Apigee subscription purchased.
	// Default value is `CLOUD`.
	// Possible values are: `CLOUD`, `HYBRID`.
	RuntimeType pulumi.StringPtrOutput `pulumi:"runtimeType"`
	// Output only. Subscription type of the Apigee organization.
	// Valid values include trial (free, limited, and for evaluation purposes only) or paid (full subscription has been purchased).
	SubscriptionType pulumi.StringOutput `pulumi:"subscriptionType"`
}

An `Organization` is the top-level container in Apigee.

To get more information about Organization, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations) * How-to Guides

## Example Usage

### Apigee Organization Cloud Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/servicenetworking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := organizations.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		apigeeNetwork, err := compute.NewNetwork(ctx, "apigee_network", &compute.NetworkArgs{
			Name: pulumi.String("apigee-network"),
		})
		if err != nil {
			return err
		}
		apigeeRange, err := compute.NewGlobalAddress(ctx, "apigee_range", &compute.GlobalAddressArgs{
			Name:         pulumi.String("apigee-range"),
			Purpose:      pulumi.String("VPC_PEERING"),
			AddressType:  pulumi.String("INTERNAL"),
			PrefixLength: pulumi.Int(16),
			Network:      apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		_, err = servicenetworking.NewConnection(ctx, "apigee_vpc_connection", &servicenetworking.ConnectionArgs{
			Network: apigeeNetwork.ID(),
			Service: pulumi.String("servicenetworking.googleapis.com"),
			ReservedPeeringRanges: pulumi.StringArray{
				apigeeRange.Name,
			},
		})
		if err != nil {
			return err
		}
		_, err = apigee.NewOrganization(ctx, "org", &apigee.OrganizationArgs{
			AnalyticsRegion:   pulumi.String("us-central1"),
			ProjectId:         pulumi.String(current.Project),
			AuthorizedNetwork: apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Apigee Organization Cloud Basic Disable Vpc Peering

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := organizations.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		_, err = apigee.NewOrganization(ctx, "org", &apigee.OrganizationArgs{
			Description:       pulumi.String("Terraform-provisioned basic Apigee Org without VPC Peering."),
			AnalyticsRegion:   pulumi.String("us-central1"),
			ProjectId:         pulumi.String(current.Project),
			DisableVpcPeering: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Apigee Organization Cloud Full

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/kms"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/projects"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/servicenetworking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := organizations.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		apigeeNetwork, err := compute.NewNetwork(ctx, "apigee_network", &compute.NetworkArgs{
			Name: pulumi.String("apigee-network"),
		})
		if err != nil {
			return err
		}
		apigeeRange, err := compute.NewGlobalAddress(ctx, "apigee_range", &compute.GlobalAddressArgs{
			Name:         pulumi.String("apigee-range"),
			Purpose:      pulumi.String("VPC_PEERING"),
			AddressType:  pulumi.String("INTERNAL"),
			PrefixLength: pulumi.Int(16),
			Network:      apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		_, err = servicenetworking.NewConnection(ctx, "apigee_vpc_connection", &servicenetworking.ConnectionArgs{
			Network: apigeeNetwork.ID(),
			Service: pulumi.String("servicenetworking.googleapis.com"),
			ReservedPeeringRanges: pulumi.StringArray{
				apigeeRange.Name,
			},
		})
		if err != nil {
			return err
		}
		apigeeKeyring, err := kms.NewKeyRing(ctx, "apigee_keyring", &kms.KeyRingArgs{
			Name:     pulumi.String("apigee-keyring"),
			Location: pulumi.String("us-central1"),
		})
		if err != nil {
			return err
		}
		apigeeKey, err := kms.NewCryptoKey(ctx, "apigee_key", &kms.CryptoKeyArgs{
			Name:    pulumi.String("apigee-key"),
			KeyRing: apigeeKeyring.ID(),
		})
		if err != nil {
			return err
		}
		apigeeSa, err := projects.NewServiceIdentity(ctx, "apigee_sa", &projects.ServiceIdentityArgs{
			Project: pulumi.Any(project.ProjectId),
			Service: pulumi.Any(apigee.Service),
		})
		if err != nil {
			return err
		}
		_, err = kms.NewCryptoKeyIAMMember(ctx, "apigee_sa_keyuser", &kms.CryptoKeyIAMMemberArgs{
			CryptoKeyId: apigeeKey.ID(),
			Role:        pulumi.String("roles/cloudkms.cryptoKeyEncrypterDecrypter"),
			Member: apigeeSa.Email.ApplyT(func(email string) (string, error) {
				return fmt.Sprintf("serviceAccount:%v", email), nil
			}).(pulumi.StringOutput),
		})
		if err != nil {
			return err
		}
		_, err = apigee.NewOrganization(ctx, "org", &apigee.OrganizationArgs{
			AnalyticsRegion:                  pulumi.String("us-central1"),
			DisplayName:                      pulumi.String("apigee-org"),
			Description:                      pulumi.String("Auto-provisioned Apigee Org."),
			ProjectId:                        pulumi.String(current.Project),
			AuthorizedNetwork:                apigeeNetwork.ID(),
			RuntimeDatabaseEncryptionKeyName: apigeeKey.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Apigee Organization Cloud Full Disable Vpc Peering

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/kms"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := organizations.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		apigeeKeyring, err := kms.NewKeyRing(ctx, "apigee_keyring", &kms.KeyRingArgs{
			Name:     pulumi.String("apigee-keyring"),
			Location: pulumi.String("us-central1"),
		})
		if err != nil {
			return err
		}
		apigeeKey, err := kms.NewCryptoKey(ctx, "apigee_key", &kms.CryptoKeyArgs{
			Name:    pulumi.String("apigee-key"),
			KeyRing: apigeeKeyring.ID(),
		})
		if err != nil {
			return err
		}
		apigeeSa, err := projects.NewServiceIdentity(ctx, "apigee_sa", &projects.ServiceIdentityArgs{
			Project: pulumi.Any(project.ProjectId),
			Service: pulumi.Any(apigee.Service),
		})
		if err != nil {
			return err
		}
		_, err = kms.NewCryptoKeyIAMMember(ctx, "apigee_sa_keyuser", &kms.CryptoKeyIAMMemberArgs{
			CryptoKeyId: apigeeKey.ID(),
			Role:        pulumi.String("roles/cloudkms.cryptoKeyEncrypterDecrypter"),
			Member: apigeeSa.Email.ApplyT(func(email string) (string, error) {
				return fmt.Sprintf("serviceAccount:%v", email), nil
			}).(pulumi.StringOutput),
		})
		if err != nil {
			return err
		}
		_, err = apigee.NewOrganization(ctx, "org", &apigee.OrganizationArgs{
			AnalyticsRegion:                  pulumi.String("us-central1"),
			DisplayName:                      pulumi.String("apigee-org"),
			Description:                      pulumi.String("Terraform-provisioned Apigee Org without VPC Peering."),
			ProjectId:                        pulumi.String(current.Project),
			DisableVpcPeering:                pulumi.Bool(true),
			RuntimeDatabaseEncryptionKeyName: apigeeKey.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Organization can be imported using any of these accepted formats:

* `organizations/{{name}}`

* `{{name}}`

When using the `pulumi import` command, Organization can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/organization:Organization default organizations/{{name}} ```

```sh $ pulumi import gcp:apigee/organization:Organization default {{name}} ```

func GetOrganization

func GetOrganization(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *OrganizationState, opts ...pulumi.ResourceOption) (*Organization, error)

GetOrganization gets an existing Organization 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 NewOrganization

func NewOrganization(ctx *pulumi.Context,
	name string, args *OrganizationArgs, opts ...pulumi.ResourceOption) (*Organization, error)

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

func (*Organization) ElementType

func (*Organization) ElementType() reflect.Type

func (*Organization) ToOrganizationOutput

func (i *Organization) ToOrganizationOutput() OrganizationOutput

func (*Organization) ToOrganizationOutputWithContext

func (i *Organization) ToOrganizationOutputWithContext(ctx context.Context) OrganizationOutput

type OrganizationArgs

type OrganizationArgs struct {
	// Primary GCP region for analytics data storage. For valid values, see [Create an Apigee organization](https://cloud.google.com/apigee/docs/api-platform/get-started/create-org).
	AnalyticsRegion pulumi.StringPtrInput
	// Cloud KMS key name used for encrypting API consumer data.
	ApiConsumerDataEncryptionKeyName pulumi.StringPtrInput
	// This field is needed only for customers using non-default data residency regions.
	// Apigee stores some control plane data only in single region.
	// This field determines which single region Apigee should use.
	ApiConsumerDataLocation pulumi.StringPtrInput
	// Compute Engine network used for Service Networking to be peered with Apigee runtime instances.
	// See [Getting started with the Service Networking API](https://cloud.google.com/service-infrastructure/docs/service-networking/getting-started).
	// Valid only when `RuntimeType` is set to CLOUD. The value can be updated only when there are no runtime instances. For example: "default".
	AuthorizedNetwork pulumi.StringPtrInput
	// Billing type of the Apigee organization. See [Apigee pricing](https://cloud.google.com/apigee/pricing).
	BillingType pulumi.StringPtrInput
	// Cloud KMS key name used for encrypting control plane data that is stored in a multi region.
	// Only used for the data residency region "US" or "EU".
	ControlPlaneEncryptionKeyName pulumi.StringPtrInput
	// Description of the Apigee organization.
	Description pulumi.StringPtrInput
	// Flag that specifies whether the VPC Peering through Private Google Access should be
	// disabled between the consumer network and Apigee. Required if an `authorizedNetwork`
	// on the consumer project is not provided, in which case the flag should be set to `true`.
	// Valid only when `RuntimeType` is set to CLOUD. The value must be set before the creation
	// of any Apigee runtime instance and can be updated only when there are no runtime instances.
	DisableVpcPeering pulumi.BoolPtrInput
	// The display name of the Apigee organization.
	DisplayName pulumi.StringPtrInput
	// The project ID associated with the Apigee organization.
	//
	// ***
	ProjectId pulumi.StringInput
	// Properties defined in the Apigee organization profile.
	// Structure is documented below.
	Properties OrganizationPropertiesPtrInput
	// Optional. This setting is applicable only for organizations that are soft-deleted (i.e., BillingType
	// is not EVALUATION). It controls how long Organization data will be retained after the initial delete
	// operation completes. During this period, the Organization may be restored to its last known state.
	// After this period, the Organization will no longer be able to be restored.
	// Default value is `DELETION_RETENTION_UNSPECIFIED`.
	// Possible values are: `DELETION_RETENTION_UNSPECIFIED`, `MINIMUM`.
	Retention pulumi.StringPtrInput
	// Cloud KMS key name used for encrypting the data that is stored and replicated across runtime instances.
	// Update is not allowed after the organization is created.
	// If not specified, a Google-Managed encryption key will be used.
	// Valid only when `RuntimeType` is CLOUD. For example: `projects/foo/locations/us/keyRings/bar/cryptoKeys/baz`.
	RuntimeDatabaseEncryptionKeyName pulumi.StringPtrInput
	// Runtime type of the Apigee organization based on the Apigee subscription purchased.
	// Default value is `CLOUD`.
	// Possible values are: `CLOUD`, `HYBRID`.
	RuntimeType pulumi.StringPtrInput
}

The set of arguments for constructing a Organization resource.

func (OrganizationArgs) ElementType

func (OrganizationArgs) ElementType() reflect.Type

type OrganizationArray

type OrganizationArray []OrganizationInput

func (OrganizationArray) ElementType

func (OrganizationArray) ElementType() reflect.Type

func (OrganizationArray) ToOrganizationArrayOutput

func (i OrganizationArray) ToOrganizationArrayOutput() OrganizationArrayOutput

func (OrganizationArray) ToOrganizationArrayOutputWithContext

func (i OrganizationArray) ToOrganizationArrayOutputWithContext(ctx context.Context) OrganizationArrayOutput

type OrganizationArrayInput

type OrganizationArrayInput interface {
	pulumi.Input

	ToOrganizationArrayOutput() OrganizationArrayOutput
	ToOrganizationArrayOutputWithContext(context.Context) OrganizationArrayOutput
}

OrganizationArrayInput is an input type that accepts OrganizationArray and OrganizationArrayOutput values. You can construct a concrete instance of `OrganizationArrayInput` via:

OrganizationArray{ OrganizationArgs{...} }

type OrganizationArrayOutput

type OrganizationArrayOutput struct{ *pulumi.OutputState }

func (OrganizationArrayOutput) ElementType

func (OrganizationArrayOutput) ElementType() reflect.Type

func (OrganizationArrayOutput) Index

func (OrganizationArrayOutput) ToOrganizationArrayOutput

func (o OrganizationArrayOutput) ToOrganizationArrayOutput() OrganizationArrayOutput

func (OrganizationArrayOutput) ToOrganizationArrayOutputWithContext

func (o OrganizationArrayOutput) ToOrganizationArrayOutputWithContext(ctx context.Context) OrganizationArrayOutput

type OrganizationInput

type OrganizationInput interface {
	pulumi.Input

	ToOrganizationOutput() OrganizationOutput
	ToOrganizationOutputWithContext(ctx context.Context) OrganizationOutput
}

type OrganizationMap

type OrganizationMap map[string]OrganizationInput

func (OrganizationMap) ElementType

func (OrganizationMap) ElementType() reflect.Type

func (OrganizationMap) ToOrganizationMapOutput

func (i OrganizationMap) ToOrganizationMapOutput() OrganizationMapOutput

func (OrganizationMap) ToOrganizationMapOutputWithContext

func (i OrganizationMap) ToOrganizationMapOutputWithContext(ctx context.Context) OrganizationMapOutput

type OrganizationMapInput

type OrganizationMapInput interface {
	pulumi.Input

	ToOrganizationMapOutput() OrganizationMapOutput
	ToOrganizationMapOutputWithContext(context.Context) OrganizationMapOutput
}

OrganizationMapInput is an input type that accepts OrganizationMap and OrganizationMapOutput values. You can construct a concrete instance of `OrganizationMapInput` via:

OrganizationMap{ "key": OrganizationArgs{...} }

type OrganizationMapOutput

type OrganizationMapOutput struct{ *pulumi.OutputState }

func (OrganizationMapOutput) ElementType

func (OrganizationMapOutput) ElementType() reflect.Type

func (OrganizationMapOutput) MapIndex

func (OrganizationMapOutput) ToOrganizationMapOutput

func (o OrganizationMapOutput) ToOrganizationMapOutput() OrganizationMapOutput

func (OrganizationMapOutput) ToOrganizationMapOutputWithContext

func (o OrganizationMapOutput) ToOrganizationMapOutputWithContext(ctx context.Context) OrganizationMapOutput

type OrganizationOutput

type OrganizationOutput struct{ *pulumi.OutputState }

func (OrganizationOutput) AnalyticsRegion

func (o OrganizationOutput) AnalyticsRegion() pulumi.StringPtrOutput

Primary GCP region for analytics data storage. For valid values, see [Create an Apigee organization](https://cloud.google.com/apigee/docs/api-platform/get-started/create-org).

func (OrganizationOutput) ApiConsumerDataEncryptionKeyName added in v7.20.0

func (o OrganizationOutput) ApiConsumerDataEncryptionKeyName() pulumi.StringPtrOutput

Cloud KMS key name used for encrypting API consumer data.

func (OrganizationOutput) ApiConsumerDataLocation added in v7.20.0

func (o OrganizationOutput) ApiConsumerDataLocation() pulumi.StringPtrOutput

This field is needed only for customers using non-default data residency regions. Apigee stores some control plane data only in single region. This field determines which single region Apigee should use.

func (OrganizationOutput) ApigeeProjectId

func (o OrganizationOutput) ApigeeProjectId() pulumi.StringOutput

Output only. Project ID of the Apigee Tenant Project.

func (OrganizationOutput) AuthorizedNetwork

func (o OrganizationOutput) AuthorizedNetwork() pulumi.StringPtrOutput

Compute Engine network used for Service Networking to be peered with Apigee runtime instances. See [Getting started with the Service Networking API](https://cloud.google.com/service-infrastructure/docs/service-networking/getting-started). Valid only when `RuntimeType` is set to CLOUD. The value can be updated only when there are no runtime instances. For example: "default".

func (OrganizationOutput) BillingType

func (o OrganizationOutput) BillingType() pulumi.StringOutput

Billing type of the Apigee organization. See [Apigee pricing](https://cloud.google.com/apigee/pricing).

func (OrganizationOutput) CaCertificate

func (o OrganizationOutput) CaCertificate() pulumi.StringOutput

Output only. Base64-encoded public certificate for the root CA of the Apigee organization. Valid only when `RuntimeType` is CLOUD. A base64-encoded string.

func (OrganizationOutput) ControlPlaneEncryptionKeyName added in v7.20.0

func (o OrganizationOutput) ControlPlaneEncryptionKeyName() pulumi.StringPtrOutput

Cloud KMS key name used for encrypting control plane data that is stored in a multi region. Only used for the data residency region "US" or "EU".

func (OrganizationOutput) Description

func (o OrganizationOutput) Description() pulumi.StringPtrOutput

Description of the Apigee organization.

func (OrganizationOutput) DisableVpcPeering

func (o OrganizationOutput) DisableVpcPeering() pulumi.BoolPtrOutput

Flag that specifies whether the VPC Peering through Private Google Access should be disabled between the consumer network and Apigee. Required if an `authorizedNetwork` on the consumer project is not provided, in which case the flag should be set to `true`. Valid only when `RuntimeType` is set to CLOUD. The value must be set before the creation of any Apigee runtime instance and can be updated only when there are no runtime instances.

func (OrganizationOutput) DisplayName

func (o OrganizationOutput) DisplayName() pulumi.StringPtrOutput

The display name of the Apigee organization.

func (OrganizationOutput) ElementType

func (OrganizationOutput) ElementType() reflect.Type

func (OrganizationOutput) Name

Output only. Name of the Apigee organization.

func (OrganizationOutput) ProjectId

func (o OrganizationOutput) ProjectId() pulumi.StringOutput

The project ID associated with the Apigee organization.

***

func (OrganizationOutput) Properties

Properties defined in the Apigee organization profile. Structure is documented below.

func (OrganizationOutput) Retention

Optional. This setting is applicable only for organizations that are soft-deleted (i.e., BillingType is not EVALUATION). It controls how long Organization data will be retained after the initial delete operation completes. During this period, the Organization may be restored to its last known state. After this period, the Organization will no longer be able to be restored. Default value is `DELETION_RETENTION_UNSPECIFIED`. Possible values are: `DELETION_RETENTION_UNSPECIFIED`, `MINIMUM`.

func (OrganizationOutput) RuntimeDatabaseEncryptionKeyName

func (o OrganizationOutput) RuntimeDatabaseEncryptionKeyName() pulumi.StringPtrOutput

Cloud KMS key name used for encrypting the data that is stored and replicated across runtime instances. Update is not allowed after the organization is created. If not specified, a Google-Managed encryption key will be used. Valid only when `RuntimeType` is CLOUD. For example: `projects/foo/locations/us/keyRings/bar/cryptoKeys/baz`.

func (OrganizationOutput) RuntimeType

func (o OrganizationOutput) RuntimeType() pulumi.StringPtrOutput

Runtime type of the Apigee organization based on the Apigee subscription purchased. Default value is `CLOUD`. Possible values are: `CLOUD`, `HYBRID`.

func (OrganizationOutput) SubscriptionType

func (o OrganizationOutput) SubscriptionType() pulumi.StringOutput

Output only. Subscription type of the Apigee organization. Valid values include trial (free, limited, and for evaluation purposes only) or paid (full subscription has been purchased).

func (OrganizationOutput) ToOrganizationOutput

func (o OrganizationOutput) ToOrganizationOutput() OrganizationOutput

func (OrganizationOutput) ToOrganizationOutputWithContext

func (o OrganizationOutput) ToOrganizationOutputWithContext(ctx context.Context) OrganizationOutput

type OrganizationProperties

type OrganizationProperties struct {
	// List of all properties in the object.
	// Structure is documented below.
	Properties []OrganizationPropertiesProperty `pulumi:"properties"`
}

type OrganizationPropertiesArgs

type OrganizationPropertiesArgs struct {
	// List of all properties in the object.
	// Structure is documented below.
	Properties OrganizationPropertiesPropertyArrayInput `pulumi:"properties"`
}

func (OrganizationPropertiesArgs) ElementType

func (OrganizationPropertiesArgs) ElementType() reflect.Type

func (OrganizationPropertiesArgs) ToOrganizationPropertiesOutput

func (i OrganizationPropertiesArgs) ToOrganizationPropertiesOutput() OrganizationPropertiesOutput

func (OrganizationPropertiesArgs) ToOrganizationPropertiesOutputWithContext

func (i OrganizationPropertiesArgs) ToOrganizationPropertiesOutputWithContext(ctx context.Context) OrganizationPropertiesOutput

func (OrganizationPropertiesArgs) ToOrganizationPropertiesPtrOutput

func (i OrganizationPropertiesArgs) ToOrganizationPropertiesPtrOutput() OrganizationPropertiesPtrOutput

func (OrganizationPropertiesArgs) ToOrganizationPropertiesPtrOutputWithContext

func (i OrganizationPropertiesArgs) ToOrganizationPropertiesPtrOutputWithContext(ctx context.Context) OrganizationPropertiesPtrOutput

type OrganizationPropertiesInput

type OrganizationPropertiesInput interface {
	pulumi.Input

	ToOrganizationPropertiesOutput() OrganizationPropertiesOutput
	ToOrganizationPropertiesOutputWithContext(context.Context) OrganizationPropertiesOutput
}

OrganizationPropertiesInput is an input type that accepts OrganizationPropertiesArgs and OrganizationPropertiesOutput values. You can construct a concrete instance of `OrganizationPropertiesInput` via:

OrganizationPropertiesArgs{...}

type OrganizationPropertiesOutput

type OrganizationPropertiesOutput struct{ *pulumi.OutputState }

func (OrganizationPropertiesOutput) ElementType

func (OrganizationPropertiesOutput) Properties

List of all properties in the object. Structure is documented below.

func (OrganizationPropertiesOutput) ToOrganizationPropertiesOutput

func (o OrganizationPropertiesOutput) ToOrganizationPropertiesOutput() OrganizationPropertiesOutput

func (OrganizationPropertiesOutput) ToOrganizationPropertiesOutputWithContext

func (o OrganizationPropertiesOutput) ToOrganizationPropertiesOutputWithContext(ctx context.Context) OrganizationPropertiesOutput

func (OrganizationPropertiesOutput) ToOrganizationPropertiesPtrOutput

func (o OrganizationPropertiesOutput) ToOrganizationPropertiesPtrOutput() OrganizationPropertiesPtrOutput

func (OrganizationPropertiesOutput) ToOrganizationPropertiesPtrOutputWithContext

func (o OrganizationPropertiesOutput) ToOrganizationPropertiesPtrOutputWithContext(ctx context.Context) OrganizationPropertiesPtrOutput

type OrganizationPropertiesProperty

type OrganizationPropertiesProperty struct {
	// Name of the property.
	Name *string `pulumi:"name"`
	// Value of the property.
	Value *string `pulumi:"value"`
}

type OrganizationPropertiesPropertyArgs

type OrganizationPropertiesPropertyArgs struct {
	// Name of the property.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Value of the property.
	Value pulumi.StringPtrInput `pulumi:"value"`
}

func (OrganizationPropertiesPropertyArgs) ElementType

func (OrganizationPropertiesPropertyArgs) ToOrganizationPropertiesPropertyOutput

func (i OrganizationPropertiesPropertyArgs) ToOrganizationPropertiesPropertyOutput() OrganizationPropertiesPropertyOutput

func (OrganizationPropertiesPropertyArgs) ToOrganizationPropertiesPropertyOutputWithContext

func (i OrganizationPropertiesPropertyArgs) ToOrganizationPropertiesPropertyOutputWithContext(ctx context.Context) OrganizationPropertiesPropertyOutput

type OrganizationPropertiesPropertyArray

type OrganizationPropertiesPropertyArray []OrganizationPropertiesPropertyInput

func (OrganizationPropertiesPropertyArray) ElementType

func (OrganizationPropertiesPropertyArray) ToOrganizationPropertiesPropertyArrayOutput

func (i OrganizationPropertiesPropertyArray) ToOrganizationPropertiesPropertyArrayOutput() OrganizationPropertiesPropertyArrayOutput

func (OrganizationPropertiesPropertyArray) ToOrganizationPropertiesPropertyArrayOutputWithContext

func (i OrganizationPropertiesPropertyArray) ToOrganizationPropertiesPropertyArrayOutputWithContext(ctx context.Context) OrganizationPropertiesPropertyArrayOutput

type OrganizationPropertiesPropertyArrayInput

type OrganizationPropertiesPropertyArrayInput interface {
	pulumi.Input

	ToOrganizationPropertiesPropertyArrayOutput() OrganizationPropertiesPropertyArrayOutput
	ToOrganizationPropertiesPropertyArrayOutputWithContext(context.Context) OrganizationPropertiesPropertyArrayOutput
}

OrganizationPropertiesPropertyArrayInput is an input type that accepts OrganizationPropertiesPropertyArray and OrganizationPropertiesPropertyArrayOutput values. You can construct a concrete instance of `OrganizationPropertiesPropertyArrayInput` via:

OrganizationPropertiesPropertyArray{ OrganizationPropertiesPropertyArgs{...} }

type OrganizationPropertiesPropertyArrayOutput

type OrganizationPropertiesPropertyArrayOutput struct{ *pulumi.OutputState }

func (OrganizationPropertiesPropertyArrayOutput) ElementType

func (OrganizationPropertiesPropertyArrayOutput) Index

func (OrganizationPropertiesPropertyArrayOutput) ToOrganizationPropertiesPropertyArrayOutput

func (o OrganizationPropertiesPropertyArrayOutput) ToOrganizationPropertiesPropertyArrayOutput() OrganizationPropertiesPropertyArrayOutput

func (OrganizationPropertiesPropertyArrayOutput) ToOrganizationPropertiesPropertyArrayOutputWithContext

func (o OrganizationPropertiesPropertyArrayOutput) ToOrganizationPropertiesPropertyArrayOutputWithContext(ctx context.Context) OrganizationPropertiesPropertyArrayOutput

type OrganizationPropertiesPropertyInput

type OrganizationPropertiesPropertyInput interface {
	pulumi.Input

	ToOrganizationPropertiesPropertyOutput() OrganizationPropertiesPropertyOutput
	ToOrganizationPropertiesPropertyOutputWithContext(context.Context) OrganizationPropertiesPropertyOutput
}

OrganizationPropertiesPropertyInput is an input type that accepts OrganizationPropertiesPropertyArgs and OrganizationPropertiesPropertyOutput values. You can construct a concrete instance of `OrganizationPropertiesPropertyInput` via:

OrganizationPropertiesPropertyArgs{...}

type OrganizationPropertiesPropertyOutput

type OrganizationPropertiesPropertyOutput struct{ *pulumi.OutputState }

func (OrganizationPropertiesPropertyOutput) ElementType

func (OrganizationPropertiesPropertyOutput) Name

Name of the property.

func (OrganizationPropertiesPropertyOutput) ToOrganizationPropertiesPropertyOutput

func (o OrganizationPropertiesPropertyOutput) ToOrganizationPropertiesPropertyOutput() OrganizationPropertiesPropertyOutput

func (OrganizationPropertiesPropertyOutput) ToOrganizationPropertiesPropertyOutputWithContext

func (o OrganizationPropertiesPropertyOutput) ToOrganizationPropertiesPropertyOutputWithContext(ctx context.Context) OrganizationPropertiesPropertyOutput

func (OrganizationPropertiesPropertyOutput) Value

Value of the property.

type OrganizationPropertiesPtrInput

type OrganizationPropertiesPtrInput interface {
	pulumi.Input

	ToOrganizationPropertiesPtrOutput() OrganizationPropertiesPtrOutput
	ToOrganizationPropertiesPtrOutputWithContext(context.Context) OrganizationPropertiesPtrOutput
}

OrganizationPropertiesPtrInput is an input type that accepts OrganizationPropertiesArgs, OrganizationPropertiesPtr and OrganizationPropertiesPtrOutput values. You can construct a concrete instance of `OrganizationPropertiesPtrInput` via:

        OrganizationPropertiesArgs{...}

or:

        nil

type OrganizationPropertiesPtrOutput

type OrganizationPropertiesPtrOutput struct{ *pulumi.OutputState }

func (OrganizationPropertiesPtrOutput) Elem

func (OrganizationPropertiesPtrOutput) ElementType

func (OrganizationPropertiesPtrOutput) Properties

List of all properties in the object. Structure is documented below.

func (OrganizationPropertiesPtrOutput) ToOrganizationPropertiesPtrOutput

func (o OrganizationPropertiesPtrOutput) ToOrganizationPropertiesPtrOutput() OrganizationPropertiesPtrOutput

func (OrganizationPropertiesPtrOutput) ToOrganizationPropertiesPtrOutputWithContext

func (o OrganizationPropertiesPtrOutput) ToOrganizationPropertiesPtrOutputWithContext(ctx context.Context) OrganizationPropertiesPtrOutput

type OrganizationState

type OrganizationState struct {
	// Primary GCP region for analytics data storage. For valid values, see [Create an Apigee organization](https://cloud.google.com/apigee/docs/api-platform/get-started/create-org).
	AnalyticsRegion pulumi.StringPtrInput
	// Cloud KMS key name used for encrypting API consumer data.
	ApiConsumerDataEncryptionKeyName pulumi.StringPtrInput
	// This field is needed only for customers using non-default data residency regions.
	// Apigee stores some control plane data only in single region.
	// This field determines which single region Apigee should use.
	ApiConsumerDataLocation pulumi.StringPtrInput
	// Output only. Project ID of the Apigee Tenant Project.
	ApigeeProjectId pulumi.StringPtrInput
	// Compute Engine network used for Service Networking to be peered with Apigee runtime instances.
	// See [Getting started with the Service Networking API](https://cloud.google.com/service-infrastructure/docs/service-networking/getting-started).
	// Valid only when `RuntimeType` is set to CLOUD. The value can be updated only when there are no runtime instances. For example: "default".
	AuthorizedNetwork pulumi.StringPtrInput
	// Billing type of the Apigee organization. See [Apigee pricing](https://cloud.google.com/apigee/pricing).
	BillingType pulumi.StringPtrInput
	// Output only. Base64-encoded public certificate for the root CA of the Apigee organization.
	// Valid only when `RuntimeType` is CLOUD. A base64-encoded string.
	CaCertificate pulumi.StringPtrInput
	// Cloud KMS key name used for encrypting control plane data that is stored in a multi region.
	// Only used for the data residency region "US" or "EU".
	ControlPlaneEncryptionKeyName pulumi.StringPtrInput
	// Description of the Apigee organization.
	Description pulumi.StringPtrInput
	// Flag that specifies whether the VPC Peering through Private Google Access should be
	// disabled between the consumer network and Apigee. Required if an `authorizedNetwork`
	// on the consumer project is not provided, in which case the flag should be set to `true`.
	// Valid only when `RuntimeType` is set to CLOUD. The value must be set before the creation
	// of any Apigee runtime instance and can be updated only when there are no runtime instances.
	DisableVpcPeering pulumi.BoolPtrInput
	// The display name of the Apigee organization.
	DisplayName pulumi.StringPtrInput
	// Output only. Name of the Apigee organization.
	Name pulumi.StringPtrInput
	// The project ID associated with the Apigee organization.
	//
	// ***
	ProjectId pulumi.StringPtrInput
	// Properties defined in the Apigee organization profile.
	// Structure is documented below.
	Properties OrganizationPropertiesPtrInput
	// Optional. This setting is applicable only for organizations that are soft-deleted (i.e., BillingType
	// is not EVALUATION). It controls how long Organization data will be retained after the initial delete
	// operation completes. During this period, the Organization may be restored to its last known state.
	// After this period, the Organization will no longer be able to be restored.
	// Default value is `DELETION_RETENTION_UNSPECIFIED`.
	// Possible values are: `DELETION_RETENTION_UNSPECIFIED`, `MINIMUM`.
	Retention pulumi.StringPtrInput
	// Cloud KMS key name used for encrypting the data that is stored and replicated across runtime instances.
	// Update is not allowed after the organization is created.
	// If not specified, a Google-Managed encryption key will be used.
	// Valid only when `RuntimeType` is CLOUD. For example: `projects/foo/locations/us/keyRings/bar/cryptoKeys/baz`.
	RuntimeDatabaseEncryptionKeyName pulumi.StringPtrInput
	// Runtime type of the Apigee organization based on the Apigee subscription purchased.
	// Default value is `CLOUD`.
	// Possible values are: `CLOUD`, `HYBRID`.
	RuntimeType pulumi.StringPtrInput
	// Output only. Subscription type of the Apigee organization.
	// Valid values include trial (free, limited, and for evaluation purposes only) or paid (full subscription has been purchased).
	SubscriptionType pulumi.StringPtrInput
}

func (OrganizationState) ElementType

func (OrganizationState) ElementType() reflect.Type

type Sharedflow

type Sharedflow struct {
	pulumi.CustomResourceState

	// Path to the config zip bundle.
	//
	// ***
	ConfigBundle pulumi.StringOutput `pulumi:"configBundle"`
	// A hash of local config bundle in string, user needs to use a Terraform Hash function of their choice. A change in hash
	// will trigger an update.
	DetectMd5hash pulumi.StringPtrOutput `pulumi:"detectMd5hash"`
	// The id of the most recently created revision for this shared flow.
	LatestRevisionId pulumi.StringOutput `pulumi:"latestRevisionId"`
	// (Computed) Base 64 MD5 hash of the uploaded data. It is speculative as remote does not return hash of the bundle. Remote changes are detected using returned lastModified timestamp.
	Md5hash pulumi.StringOutput `pulumi:"md5hash"`
	// Metadata describing the shared flow.
	// Structure is documented below.
	MetaDatas SharedflowMetaDataArrayOutput `pulumi:"metaDatas"`
	// The ID of the shared flow.
	Name pulumi.StringOutput `pulumi:"name"`
	// The Apigee Organization name associated with the Apigee instance.
	OrgId pulumi.StringOutput `pulumi:"orgId"`
	// A list of revisions of this shared flow.
	Revisions pulumi.StringArrayOutput `pulumi:"revisions"`
}

You can combine policies and resources into a shared flow that you can consume from multiple API proxies, and even from other shared flows. Although it's like a proxy, a shared flow has no endpoint. It can be used only from an API proxy or shared flow that's in the same organization as the shared flow itself.

To get more information about SharedFlow, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.sharedflows) * How-to Guides

## Import

SharedFlow can be imported using any of these accepted formats:

* `{{org_id}}/sharedflows/{{name}}`

* `{{org_id}}/{{name}}`

When using the `pulumi import` command, SharedFlow can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/sharedflow:Sharedflow default {{org_id}}/sharedflows/{{name}} ```

```sh $ pulumi import gcp:apigee/sharedflow:Sharedflow default {{org_id}}/{{name}} ```

func GetSharedflow

func GetSharedflow(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SharedflowState, opts ...pulumi.ResourceOption) (*Sharedflow, error)

GetSharedflow gets an existing Sharedflow 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 NewSharedflow

func NewSharedflow(ctx *pulumi.Context,
	name string, args *SharedflowArgs, opts ...pulumi.ResourceOption) (*Sharedflow, error)

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

func (*Sharedflow) ElementType

func (*Sharedflow) ElementType() reflect.Type

func (*Sharedflow) ToSharedflowOutput

func (i *Sharedflow) ToSharedflowOutput() SharedflowOutput

func (*Sharedflow) ToSharedflowOutputWithContext

func (i *Sharedflow) ToSharedflowOutputWithContext(ctx context.Context) SharedflowOutput

type SharedflowArgs

type SharedflowArgs struct {
	// Path to the config zip bundle.
	//
	// ***
	ConfigBundle pulumi.StringInput
	// A hash of local config bundle in string, user needs to use a Terraform Hash function of their choice. A change in hash
	// will trigger an update.
	DetectMd5hash pulumi.StringPtrInput
	// The ID of the shared flow.
	Name pulumi.StringPtrInput
	// The Apigee Organization name associated with the Apigee instance.
	OrgId pulumi.StringInput
}

The set of arguments for constructing a Sharedflow resource.

func (SharedflowArgs) ElementType

func (SharedflowArgs) ElementType() reflect.Type

type SharedflowArray

type SharedflowArray []SharedflowInput

func (SharedflowArray) ElementType

func (SharedflowArray) ElementType() reflect.Type

func (SharedflowArray) ToSharedflowArrayOutput

func (i SharedflowArray) ToSharedflowArrayOutput() SharedflowArrayOutput

func (SharedflowArray) ToSharedflowArrayOutputWithContext

func (i SharedflowArray) ToSharedflowArrayOutputWithContext(ctx context.Context) SharedflowArrayOutput

type SharedflowArrayInput

type SharedflowArrayInput interface {
	pulumi.Input

	ToSharedflowArrayOutput() SharedflowArrayOutput
	ToSharedflowArrayOutputWithContext(context.Context) SharedflowArrayOutput
}

SharedflowArrayInput is an input type that accepts SharedflowArray and SharedflowArrayOutput values. You can construct a concrete instance of `SharedflowArrayInput` via:

SharedflowArray{ SharedflowArgs{...} }

type SharedflowArrayOutput

type SharedflowArrayOutput struct{ *pulumi.OutputState }

func (SharedflowArrayOutput) ElementType

func (SharedflowArrayOutput) ElementType() reflect.Type

func (SharedflowArrayOutput) Index

func (SharedflowArrayOutput) ToSharedflowArrayOutput

func (o SharedflowArrayOutput) ToSharedflowArrayOutput() SharedflowArrayOutput

func (SharedflowArrayOutput) ToSharedflowArrayOutputWithContext

func (o SharedflowArrayOutput) ToSharedflowArrayOutputWithContext(ctx context.Context) SharedflowArrayOutput

type SharedflowDeployment

type SharedflowDeployment struct {
	pulumi.CustomResourceState

	// The resource ID of the environment.
	Environment pulumi.StringOutput `pulumi:"environment"`
	// The Apigee Organization associated with the Sharedflow
	OrgId pulumi.StringOutput `pulumi:"orgId"`
	// Revision of the Sharedflow to be deployed.
	//
	// ***
	Revision pulumi.StringOutput `pulumi:"revision"`
	// The service account represents the identity of the deployed proxy, and determines what permissions it has. The format must be {ACCOUNT_ID}@{PROJECT}.iam.gserviceaccount.com.
	ServiceAccount pulumi.StringPtrOutput `pulumi:"serviceAccount"`
	// Id of the Sharedflow to be deployed.
	SharedflowId pulumi.StringOutput `pulumi:"sharedflowId"`
}

Deploys a revision of a sharedflow.

To get more information about SharedflowDeployment, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.environments.sharedflows.revisions.deployments) * How-to Guides

## Import

SharedflowDeployment can be imported using any of these accepted formats:

* `organizations/{{org_id}}/environments/{{environment}}/sharedflows/{{sharedflow_id}}/revisions/{{revision}}/deployments/{{name}}`

* `{{org_id}}/{{environment}}/{{sharedflow_id}}/{{revision}}/{{name}}`

When using the `pulumi import` command, SharedflowDeployment can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/sharedflowDeployment:SharedflowDeployment default organizations/{{org_id}}/environments/{{environment}}/sharedflows/{{sharedflow_id}}/revisions/{{revision}}/deployments/{{name}} ```

```sh $ pulumi import gcp:apigee/sharedflowDeployment:SharedflowDeployment default {{org_id}}/{{environment}}/{{sharedflow_id}}/{{revision}}/{{name}} ```

func GetSharedflowDeployment

func GetSharedflowDeployment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SharedflowDeploymentState, opts ...pulumi.ResourceOption) (*SharedflowDeployment, error)

GetSharedflowDeployment gets an existing SharedflowDeployment 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 NewSharedflowDeployment

func NewSharedflowDeployment(ctx *pulumi.Context,
	name string, args *SharedflowDeploymentArgs, opts ...pulumi.ResourceOption) (*SharedflowDeployment, error)

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

func (*SharedflowDeployment) ElementType

func (*SharedflowDeployment) ElementType() reflect.Type

func (*SharedflowDeployment) ToSharedflowDeploymentOutput

func (i *SharedflowDeployment) ToSharedflowDeploymentOutput() SharedflowDeploymentOutput

func (*SharedflowDeployment) ToSharedflowDeploymentOutputWithContext

func (i *SharedflowDeployment) ToSharedflowDeploymentOutputWithContext(ctx context.Context) SharedflowDeploymentOutput

type SharedflowDeploymentArgs

type SharedflowDeploymentArgs struct {
	// The resource ID of the environment.
	Environment pulumi.StringInput
	// The Apigee Organization associated with the Sharedflow
	OrgId pulumi.StringInput
	// Revision of the Sharedflow to be deployed.
	//
	// ***
	Revision pulumi.StringInput
	// The service account represents the identity of the deployed proxy, and determines what permissions it has. The format must be {ACCOUNT_ID}@{PROJECT}.iam.gserviceaccount.com.
	ServiceAccount pulumi.StringPtrInput
	// Id of the Sharedflow to be deployed.
	SharedflowId pulumi.StringInput
}

The set of arguments for constructing a SharedflowDeployment resource.

func (SharedflowDeploymentArgs) ElementType

func (SharedflowDeploymentArgs) ElementType() reflect.Type

type SharedflowDeploymentArray

type SharedflowDeploymentArray []SharedflowDeploymentInput

func (SharedflowDeploymentArray) ElementType

func (SharedflowDeploymentArray) ElementType() reflect.Type

func (SharedflowDeploymentArray) ToSharedflowDeploymentArrayOutput

func (i SharedflowDeploymentArray) ToSharedflowDeploymentArrayOutput() SharedflowDeploymentArrayOutput

func (SharedflowDeploymentArray) ToSharedflowDeploymentArrayOutputWithContext

func (i SharedflowDeploymentArray) ToSharedflowDeploymentArrayOutputWithContext(ctx context.Context) SharedflowDeploymentArrayOutput

type SharedflowDeploymentArrayInput

type SharedflowDeploymentArrayInput interface {
	pulumi.Input

	ToSharedflowDeploymentArrayOutput() SharedflowDeploymentArrayOutput
	ToSharedflowDeploymentArrayOutputWithContext(context.Context) SharedflowDeploymentArrayOutput
}

SharedflowDeploymentArrayInput is an input type that accepts SharedflowDeploymentArray and SharedflowDeploymentArrayOutput values. You can construct a concrete instance of `SharedflowDeploymentArrayInput` via:

SharedflowDeploymentArray{ SharedflowDeploymentArgs{...} }

type SharedflowDeploymentArrayOutput

type SharedflowDeploymentArrayOutput struct{ *pulumi.OutputState }

func (SharedflowDeploymentArrayOutput) ElementType

func (SharedflowDeploymentArrayOutput) Index

func (SharedflowDeploymentArrayOutput) ToSharedflowDeploymentArrayOutput

func (o SharedflowDeploymentArrayOutput) ToSharedflowDeploymentArrayOutput() SharedflowDeploymentArrayOutput

func (SharedflowDeploymentArrayOutput) ToSharedflowDeploymentArrayOutputWithContext

func (o SharedflowDeploymentArrayOutput) ToSharedflowDeploymentArrayOutputWithContext(ctx context.Context) SharedflowDeploymentArrayOutput

type SharedflowDeploymentInput

type SharedflowDeploymentInput interface {
	pulumi.Input

	ToSharedflowDeploymentOutput() SharedflowDeploymentOutput
	ToSharedflowDeploymentOutputWithContext(ctx context.Context) SharedflowDeploymentOutput
}

type SharedflowDeploymentMap

type SharedflowDeploymentMap map[string]SharedflowDeploymentInput

func (SharedflowDeploymentMap) ElementType

func (SharedflowDeploymentMap) ElementType() reflect.Type

func (SharedflowDeploymentMap) ToSharedflowDeploymentMapOutput

func (i SharedflowDeploymentMap) ToSharedflowDeploymentMapOutput() SharedflowDeploymentMapOutput

func (SharedflowDeploymentMap) ToSharedflowDeploymentMapOutputWithContext

func (i SharedflowDeploymentMap) ToSharedflowDeploymentMapOutputWithContext(ctx context.Context) SharedflowDeploymentMapOutput

type SharedflowDeploymentMapInput

type SharedflowDeploymentMapInput interface {
	pulumi.Input

	ToSharedflowDeploymentMapOutput() SharedflowDeploymentMapOutput
	ToSharedflowDeploymentMapOutputWithContext(context.Context) SharedflowDeploymentMapOutput
}

SharedflowDeploymentMapInput is an input type that accepts SharedflowDeploymentMap and SharedflowDeploymentMapOutput values. You can construct a concrete instance of `SharedflowDeploymentMapInput` via:

SharedflowDeploymentMap{ "key": SharedflowDeploymentArgs{...} }

type SharedflowDeploymentMapOutput

type SharedflowDeploymentMapOutput struct{ *pulumi.OutputState }

func (SharedflowDeploymentMapOutput) ElementType

func (SharedflowDeploymentMapOutput) MapIndex

func (SharedflowDeploymentMapOutput) ToSharedflowDeploymentMapOutput

func (o SharedflowDeploymentMapOutput) ToSharedflowDeploymentMapOutput() SharedflowDeploymentMapOutput

func (SharedflowDeploymentMapOutput) ToSharedflowDeploymentMapOutputWithContext

func (o SharedflowDeploymentMapOutput) ToSharedflowDeploymentMapOutputWithContext(ctx context.Context) SharedflowDeploymentMapOutput

type SharedflowDeploymentOutput

type SharedflowDeploymentOutput struct{ *pulumi.OutputState }

func (SharedflowDeploymentOutput) ElementType

func (SharedflowDeploymentOutput) ElementType() reflect.Type

func (SharedflowDeploymentOutput) Environment

The resource ID of the environment.

func (SharedflowDeploymentOutput) OrgId

The Apigee Organization associated with the Sharedflow

func (SharedflowDeploymentOutput) Revision

Revision of the Sharedflow to be deployed.

***

func (SharedflowDeploymentOutput) ServiceAccount

The service account represents the identity of the deployed proxy, and determines what permissions it has. The format must be {ACCOUNT_ID}@{PROJECT}.iam.gserviceaccount.com.

func (SharedflowDeploymentOutput) SharedflowId

Id of the Sharedflow to be deployed.

func (SharedflowDeploymentOutput) ToSharedflowDeploymentOutput

func (o SharedflowDeploymentOutput) ToSharedflowDeploymentOutput() SharedflowDeploymentOutput

func (SharedflowDeploymentOutput) ToSharedflowDeploymentOutputWithContext

func (o SharedflowDeploymentOutput) ToSharedflowDeploymentOutputWithContext(ctx context.Context) SharedflowDeploymentOutput

type SharedflowDeploymentState

type SharedflowDeploymentState struct {
	// The resource ID of the environment.
	Environment pulumi.StringPtrInput
	// The Apigee Organization associated with the Sharedflow
	OrgId pulumi.StringPtrInput
	// Revision of the Sharedflow to be deployed.
	//
	// ***
	Revision pulumi.StringPtrInput
	// The service account represents the identity of the deployed proxy, and determines what permissions it has. The format must be {ACCOUNT_ID}@{PROJECT}.iam.gserviceaccount.com.
	ServiceAccount pulumi.StringPtrInput
	// Id of the Sharedflow to be deployed.
	SharedflowId pulumi.StringPtrInput
}

func (SharedflowDeploymentState) ElementType

func (SharedflowDeploymentState) ElementType() reflect.Type

type SharedflowInput

type SharedflowInput interface {
	pulumi.Input

	ToSharedflowOutput() SharedflowOutput
	ToSharedflowOutputWithContext(ctx context.Context) SharedflowOutput
}

type SharedflowMap

type SharedflowMap map[string]SharedflowInput

func (SharedflowMap) ElementType

func (SharedflowMap) ElementType() reflect.Type

func (SharedflowMap) ToSharedflowMapOutput

func (i SharedflowMap) ToSharedflowMapOutput() SharedflowMapOutput

func (SharedflowMap) ToSharedflowMapOutputWithContext

func (i SharedflowMap) ToSharedflowMapOutputWithContext(ctx context.Context) SharedflowMapOutput

type SharedflowMapInput

type SharedflowMapInput interface {
	pulumi.Input

	ToSharedflowMapOutput() SharedflowMapOutput
	ToSharedflowMapOutputWithContext(context.Context) SharedflowMapOutput
}

SharedflowMapInput is an input type that accepts SharedflowMap and SharedflowMapOutput values. You can construct a concrete instance of `SharedflowMapInput` via:

SharedflowMap{ "key": SharedflowArgs{...} }

type SharedflowMapOutput

type SharedflowMapOutput struct{ *pulumi.OutputState }

func (SharedflowMapOutput) ElementType

func (SharedflowMapOutput) ElementType() reflect.Type

func (SharedflowMapOutput) MapIndex

func (SharedflowMapOutput) ToSharedflowMapOutput

func (o SharedflowMapOutput) ToSharedflowMapOutput() SharedflowMapOutput

func (SharedflowMapOutput) ToSharedflowMapOutputWithContext

func (o SharedflowMapOutput) ToSharedflowMapOutputWithContext(ctx context.Context) SharedflowMapOutput

type SharedflowMetaData

type SharedflowMetaData struct {
	// Time at which the API proxy was created, in milliseconds since epoch.
	CreatedAt *string `pulumi:"createdAt"`
	// Time at which the API proxy was most recently modified, in milliseconds since epoch.
	LastModifiedAt *string `pulumi:"lastModifiedAt"`
	// The type of entity described
	SubType *string `pulumi:"subType"`
}

type SharedflowMetaDataArgs

type SharedflowMetaDataArgs struct {
	// Time at which the API proxy was created, in milliseconds since epoch.
	CreatedAt pulumi.StringPtrInput `pulumi:"createdAt"`
	// Time at which the API proxy was most recently modified, in milliseconds since epoch.
	LastModifiedAt pulumi.StringPtrInput `pulumi:"lastModifiedAt"`
	// The type of entity described
	SubType pulumi.StringPtrInput `pulumi:"subType"`
}

func (SharedflowMetaDataArgs) ElementType

func (SharedflowMetaDataArgs) ElementType() reflect.Type

func (SharedflowMetaDataArgs) ToSharedflowMetaDataOutput

func (i SharedflowMetaDataArgs) ToSharedflowMetaDataOutput() SharedflowMetaDataOutput

func (SharedflowMetaDataArgs) ToSharedflowMetaDataOutputWithContext

func (i SharedflowMetaDataArgs) ToSharedflowMetaDataOutputWithContext(ctx context.Context) SharedflowMetaDataOutput

type SharedflowMetaDataArray

type SharedflowMetaDataArray []SharedflowMetaDataInput

func (SharedflowMetaDataArray) ElementType

func (SharedflowMetaDataArray) ElementType() reflect.Type

func (SharedflowMetaDataArray) ToSharedflowMetaDataArrayOutput

func (i SharedflowMetaDataArray) ToSharedflowMetaDataArrayOutput() SharedflowMetaDataArrayOutput

func (SharedflowMetaDataArray) ToSharedflowMetaDataArrayOutputWithContext

func (i SharedflowMetaDataArray) ToSharedflowMetaDataArrayOutputWithContext(ctx context.Context) SharedflowMetaDataArrayOutput

type SharedflowMetaDataArrayInput

type SharedflowMetaDataArrayInput interface {
	pulumi.Input

	ToSharedflowMetaDataArrayOutput() SharedflowMetaDataArrayOutput
	ToSharedflowMetaDataArrayOutputWithContext(context.Context) SharedflowMetaDataArrayOutput
}

SharedflowMetaDataArrayInput is an input type that accepts SharedflowMetaDataArray and SharedflowMetaDataArrayOutput values. You can construct a concrete instance of `SharedflowMetaDataArrayInput` via:

SharedflowMetaDataArray{ SharedflowMetaDataArgs{...} }

type SharedflowMetaDataArrayOutput

type SharedflowMetaDataArrayOutput struct{ *pulumi.OutputState }

func (SharedflowMetaDataArrayOutput) ElementType

func (SharedflowMetaDataArrayOutput) Index

func (SharedflowMetaDataArrayOutput) ToSharedflowMetaDataArrayOutput

func (o SharedflowMetaDataArrayOutput) ToSharedflowMetaDataArrayOutput() SharedflowMetaDataArrayOutput

func (SharedflowMetaDataArrayOutput) ToSharedflowMetaDataArrayOutputWithContext

func (o SharedflowMetaDataArrayOutput) ToSharedflowMetaDataArrayOutputWithContext(ctx context.Context) SharedflowMetaDataArrayOutput

type SharedflowMetaDataInput

type SharedflowMetaDataInput interface {
	pulumi.Input

	ToSharedflowMetaDataOutput() SharedflowMetaDataOutput
	ToSharedflowMetaDataOutputWithContext(context.Context) SharedflowMetaDataOutput
}

SharedflowMetaDataInput is an input type that accepts SharedflowMetaDataArgs and SharedflowMetaDataOutput values. You can construct a concrete instance of `SharedflowMetaDataInput` via:

SharedflowMetaDataArgs{...}

type SharedflowMetaDataOutput

type SharedflowMetaDataOutput struct{ *pulumi.OutputState }

func (SharedflowMetaDataOutput) CreatedAt

Time at which the API proxy was created, in milliseconds since epoch.

func (SharedflowMetaDataOutput) ElementType

func (SharedflowMetaDataOutput) ElementType() reflect.Type

func (SharedflowMetaDataOutput) LastModifiedAt

func (o SharedflowMetaDataOutput) LastModifiedAt() pulumi.StringPtrOutput

Time at which the API proxy was most recently modified, in milliseconds since epoch.

func (SharedflowMetaDataOutput) SubType

The type of entity described

func (SharedflowMetaDataOutput) ToSharedflowMetaDataOutput

func (o SharedflowMetaDataOutput) ToSharedflowMetaDataOutput() SharedflowMetaDataOutput

func (SharedflowMetaDataOutput) ToSharedflowMetaDataOutputWithContext

func (o SharedflowMetaDataOutput) ToSharedflowMetaDataOutputWithContext(ctx context.Context) SharedflowMetaDataOutput

type SharedflowOutput

type SharedflowOutput struct{ *pulumi.OutputState }

func (SharedflowOutput) ConfigBundle

func (o SharedflowOutput) ConfigBundle() pulumi.StringOutput

Path to the config zip bundle.

***

func (SharedflowOutput) DetectMd5hash

func (o SharedflowOutput) DetectMd5hash() pulumi.StringPtrOutput

A hash of local config bundle in string, user needs to use a Terraform Hash function of their choice. A change in hash will trigger an update.

func (SharedflowOutput) ElementType

func (SharedflowOutput) ElementType() reflect.Type

func (SharedflowOutput) LatestRevisionId

func (o SharedflowOutput) LatestRevisionId() pulumi.StringOutput

The id of the most recently created revision for this shared flow.

func (SharedflowOutput) Md5hash

func (o SharedflowOutput) Md5hash() pulumi.StringOutput

(Computed) Base 64 MD5 hash of the uploaded data. It is speculative as remote does not return hash of the bundle. Remote changes are detected using returned lastModified timestamp.

func (SharedflowOutput) MetaDatas

Metadata describing the shared flow. Structure is documented below.

func (SharedflowOutput) Name

The ID of the shared flow.

func (SharedflowOutput) OrgId

The Apigee Organization name associated with the Apigee instance.

func (SharedflowOutput) Revisions

A list of revisions of this shared flow.

func (SharedflowOutput) ToSharedflowOutput

func (o SharedflowOutput) ToSharedflowOutput() SharedflowOutput

func (SharedflowOutput) ToSharedflowOutputWithContext

func (o SharedflowOutput) ToSharedflowOutputWithContext(ctx context.Context) SharedflowOutput

type SharedflowState

type SharedflowState struct {
	// Path to the config zip bundle.
	//
	// ***
	ConfigBundle pulumi.StringPtrInput
	// A hash of local config bundle in string, user needs to use a Terraform Hash function of their choice. A change in hash
	// will trigger an update.
	DetectMd5hash pulumi.StringPtrInput
	// The id of the most recently created revision for this shared flow.
	LatestRevisionId pulumi.StringPtrInput
	// (Computed) Base 64 MD5 hash of the uploaded data. It is speculative as remote does not return hash of the bundle. Remote changes are detected using returned lastModified timestamp.
	Md5hash pulumi.StringPtrInput
	// Metadata describing the shared flow.
	// Structure is documented below.
	MetaDatas SharedflowMetaDataArrayInput
	// The ID of the shared flow.
	Name pulumi.StringPtrInput
	// The Apigee Organization name associated with the Apigee instance.
	OrgId pulumi.StringPtrInput
	// A list of revisions of this shared flow.
	Revisions pulumi.StringArrayInput
}

func (SharedflowState) ElementType

func (SharedflowState) ElementType() reflect.Type

type SyncAuthorization

type SyncAuthorization struct {
	pulumi.CustomResourceState

	// Entity tag (ETag) used for optimistic concurrency control as a way to help prevent simultaneous updates from overwriting each other.
	// Used internally during updates.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// Array of service accounts to grant access to control plane resources, each specified using the following format: `serviceAccount:service-account-name`.
	// The `service-account-name` is formatted like an email address. For example: my-synchronizer-manager-serviceAccount@my_project_id.iam.gserviceaccount.com
	// You might specify multiple service accounts, for example, if you have multiple environments and wish to assign a unique service account to each one.
	// The service accounts must have **Apigee Synchronizer Manager** role. See also [Create service accounts](https://cloud.google.com/apigee/docs/hybrid/v1.8/sa-about#create-the-service-accounts).
	Identities pulumi.StringArrayOutput `pulumi:"identities"`
	// Name of the Apigee organization.
	//
	// ***
	Name pulumi.StringOutput `pulumi:"name"`
}

Authorize the Synchronizer to download environment data from the control plane.

To get more information about SyncAuthorization, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations#getsyncauthorization) * How-to Guides

## Example Usage

### Apigee Sync Authorization Basic Test

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/projects"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/serviceaccount"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		project, err := organizations.NewProject(ctx, "project", &organizations.ProjectArgs{
			ProjectId:      pulumi.String("my-project"),
			Name:           pulumi.String("my-project"),
			OrgId:          pulumi.String("123456789"),
			BillingAccount: pulumi.String("000000-0000000-0000000-000000"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewService(ctx, "apigee", &projects.ServiceArgs{
			Project: project.ProjectId,
			Service: pulumi.String("apigee.googleapis.com"),
		})
		if err != nil {
			return err
		}
		apigeeOrg, err := apigee.NewOrganization(ctx, "apigee_org", &apigee.OrganizationArgs{
			AnalyticsRegion: pulumi.String("us-central1"),
			ProjectId:       project.ProjectId,
			RuntimeType:     pulumi.String("HYBRID"),
		})
		if err != nil {
			return err
		}
		serviceAccount, err := serviceaccount.NewAccount(ctx, "service_account", &serviceaccount.AccountArgs{
			AccountId:   pulumi.String("my-account"),
			DisplayName: pulumi.String("Service Account"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewIAMMember(ctx, "synchronizer-iam", &projects.IAMMemberArgs{
			Project: project.ProjectId,
			Role:    pulumi.String("roles/apigee.synchronizerManager"),
			Member: serviceAccount.Email.ApplyT(func(email string) (string, error) {
				return fmt.Sprintf("serviceAccount:%v", email), nil
			}).(pulumi.StringOutput),
		})
		if err != nil {
			return err
		}
		_, err = apigee.NewSyncAuthorization(ctx, "apigee_sync_authorization", &apigee.SyncAuthorizationArgs{
			Name: apigeeOrg.Name,
			Identities: pulumi.StringArray{
				serviceAccount.Email.ApplyT(func(email string) (string, error) {
					return fmt.Sprintf("serviceAccount:%v", email), nil
				}).(pulumi.StringOutput),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

SyncAuthorization can be imported using any of these accepted formats:

* `organizations/{{name}}/syncAuthorization`

* `{{name}}`

When using the `pulumi import` command, SyncAuthorization can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/syncAuthorization:SyncAuthorization default organizations/{{name}}/syncAuthorization ```

```sh $ pulumi import gcp:apigee/syncAuthorization:SyncAuthorization default {{name}} ```

func GetSyncAuthorization

func GetSyncAuthorization(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SyncAuthorizationState, opts ...pulumi.ResourceOption) (*SyncAuthorization, error)

GetSyncAuthorization gets an existing SyncAuthorization 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 NewSyncAuthorization

func NewSyncAuthorization(ctx *pulumi.Context,
	name string, args *SyncAuthorizationArgs, opts ...pulumi.ResourceOption) (*SyncAuthorization, error)

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

func (*SyncAuthorization) ElementType

func (*SyncAuthorization) ElementType() reflect.Type

func (*SyncAuthorization) ToSyncAuthorizationOutput

func (i *SyncAuthorization) ToSyncAuthorizationOutput() SyncAuthorizationOutput

func (*SyncAuthorization) ToSyncAuthorizationOutputWithContext

func (i *SyncAuthorization) ToSyncAuthorizationOutputWithContext(ctx context.Context) SyncAuthorizationOutput

type SyncAuthorizationArgs

type SyncAuthorizationArgs struct {
	// Array of service accounts to grant access to control plane resources, each specified using the following format: `serviceAccount:service-account-name`.
	// The `service-account-name` is formatted like an email address. For example: my-synchronizer-manager-serviceAccount@my_project_id.iam.gserviceaccount.com
	// You might specify multiple service accounts, for example, if you have multiple environments and wish to assign a unique service account to each one.
	// The service accounts must have **Apigee Synchronizer Manager** role. See also [Create service accounts](https://cloud.google.com/apigee/docs/hybrid/v1.8/sa-about#create-the-service-accounts).
	Identities pulumi.StringArrayInput
	// Name of the Apigee organization.
	//
	// ***
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a SyncAuthorization resource.

func (SyncAuthorizationArgs) ElementType

func (SyncAuthorizationArgs) ElementType() reflect.Type

type SyncAuthorizationArray

type SyncAuthorizationArray []SyncAuthorizationInput

func (SyncAuthorizationArray) ElementType

func (SyncAuthorizationArray) ElementType() reflect.Type

func (SyncAuthorizationArray) ToSyncAuthorizationArrayOutput

func (i SyncAuthorizationArray) ToSyncAuthorizationArrayOutput() SyncAuthorizationArrayOutput

func (SyncAuthorizationArray) ToSyncAuthorizationArrayOutputWithContext

func (i SyncAuthorizationArray) ToSyncAuthorizationArrayOutputWithContext(ctx context.Context) SyncAuthorizationArrayOutput

type SyncAuthorizationArrayInput

type SyncAuthorizationArrayInput interface {
	pulumi.Input

	ToSyncAuthorizationArrayOutput() SyncAuthorizationArrayOutput
	ToSyncAuthorizationArrayOutputWithContext(context.Context) SyncAuthorizationArrayOutput
}

SyncAuthorizationArrayInput is an input type that accepts SyncAuthorizationArray and SyncAuthorizationArrayOutput values. You can construct a concrete instance of `SyncAuthorizationArrayInput` via:

SyncAuthorizationArray{ SyncAuthorizationArgs{...} }

type SyncAuthorizationArrayOutput

type SyncAuthorizationArrayOutput struct{ *pulumi.OutputState }

func (SyncAuthorizationArrayOutput) ElementType

func (SyncAuthorizationArrayOutput) Index

func (SyncAuthorizationArrayOutput) ToSyncAuthorizationArrayOutput

func (o SyncAuthorizationArrayOutput) ToSyncAuthorizationArrayOutput() SyncAuthorizationArrayOutput

func (SyncAuthorizationArrayOutput) ToSyncAuthorizationArrayOutputWithContext

func (o SyncAuthorizationArrayOutput) ToSyncAuthorizationArrayOutputWithContext(ctx context.Context) SyncAuthorizationArrayOutput

type SyncAuthorizationInput

type SyncAuthorizationInput interface {
	pulumi.Input

	ToSyncAuthorizationOutput() SyncAuthorizationOutput
	ToSyncAuthorizationOutputWithContext(ctx context.Context) SyncAuthorizationOutput
}

type SyncAuthorizationMap

type SyncAuthorizationMap map[string]SyncAuthorizationInput

func (SyncAuthorizationMap) ElementType

func (SyncAuthorizationMap) ElementType() reflect.Type

func (SyncAuthorizationMap) ToSyncAuthorizationMapOutput

func (i SyncAuthorizationMap) ToSyncAuthorizationMapOutput() SyncAuthorizationMapOutput

func (SyncAuthorizationMap) ToSyncAuthorizationMapOutputWithContext

func (i SyncAuthorizationMap) ToSyncAuthorizationMapOutputWithContext(ctx context.Context) SyncAuthorizationMapOutput

type SyncAuthorizationMapInput

type SyncAuthorizationMapInput interface {
	pulumi.Input

	ToSyncAuthorizationMapOutput() SyncAuthorizationMapOutput
	ToSyncAuthorizationMapOutputWithContext(context.Context) SyncAuthorizationMapOutput
}

SyncAuthorizationMapInput is an input type that accepts SyncAuthorizationMap and SyncAuthorizationMapOutput values. You can construct a concrete instance of `SyncAuthorizationMapInput` via:

SyncAuthorizationMap{ "key": SyncAuthorizationArgs{...} }

type SyncAuthorizationMapOutput

type SyncAuthorizationMapOutput struct{ *pulumi.OutputState }

func (SyncAuthorizationMapOutput) ElementType

func (SyncAuthorizationMapOutput) ElementType() reflect.Type

func (SyncAuthorizationMapOutput) MapIndex

func (SyncAuthorizationMapOutput) ToSyncAuthorizationMapOutput

func (o SyncAuthorizationMapOutput) ToSyncAuthorizationMapOutput() SyncAuthorizationMapOutput

func (SyncAuthorizationMapOutput) ToSyncAuthorizationMapOutputWithContext

func (o SyncAuthorizationMapOutput) ToSyncAuthorizationMapOutputWithContext(ctx context.Context) SyncAuthorizationMapOutput

type SyncAuthorizationOutput

type SyncAuthorizationOutput struct{ *pulumi.OutputState }

func (SyncAuthorizationOutput) ElementType

func (SyncAuthorizationOutput) ElementType() reflect.Type

func (SyncAuthorizationOutput) Etag

Entity tag (ETag) used for optimistic concurrency control as a way to help prevent simultaneous updates from overwriting each other. Used internally during updates.

func (SyncAuthorizationOutput) Identities

Array of service accounts to grant access to control plane resources, each specified using the following format: `serviceAccount:service-account-name`. The `service-account-name` is formatted like an email address. For example: my-synchronizer-manager-serviceAccount@my_project_id.iam.gserviceaccount.com You might specify multiple service accounts, for example, if you have multiple environments and wish to assign a unique service account to each one. The service accounts must have **Apigee Synchronizer Manager** role. See also [Create service accounts](https://cloud.google.com/apigee/docs/hybrid/v1.8/sa-about#create-the-service-accounts).

func (SyncAuthorizationOutput) Name

Name of the Apigee organization.

***

func (SyncAuthorizationOutput) ToSyncAuthorizationOutput

func (o SyncAuthorizationOutput) ToSyncAuthorizationOutput() SyncAuthorizationOutput

func (SyncAuthorizationOutput) ToSyncAuthorizationOutputWithContext

func (o SyncAuthorizationOutput) ToSyncAuthorizationOutputWithContext(ctx context.Context) SyncAuthorizationOutput

type SyncAuthorizationState

type SyncAuthorizationState struct {
	// Entity tag (ETag) used for optimistic concurrency control as a way to help prevent simultaneous updates from overwriting each other.
	// Used internally during updates.
	Etag pulumi.StringPtrInput
	// Array of service accounts to grant access to control plane resources, each specified using the following format: `serviceAccount:service-account-name`.
	// The `service-account-name` is formatted like an email address. For example: my-synchronizer-manager-serviceAccount@my_project_id.iam.gserviceaccount.com
	// You might specify multiple service accounts, for example, if you have multiple environments and wish to assign a unique service account to each one.
	// The service accounts must have **Apigee Synchronizer Manager** role. See also [Create service accounts](https://cloud.google.com/apigee/docs/hybrid/v1.8/sa-about#create-the-service-accounts).
	Identities pulumi.StringArrayInput
	// Name of the Apigee organization.
	//
	// ***
	Name pulumi.StringPtrInput
}

func (SyncAuthorizationState) ElementType

func (SyncAuthorizationState) ElementType() reflect.Type

type TargetServer

type TargetServer struct {
	pulumi.CustomResourceState

	// A human-readable description of this TargetServer.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The Apigee environment group associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/environments/{{env_name}}`.
	//
	// ***
	EnvId pulumi.StringOutput `pulumi:"envId"`
	// The host name this target connects to. Value must be a valid hostname as described by RFC-1123.
	Host pulumi.StringOutput `pulumi:"host"`
	// Enabling/disabling a TargetServer is useful when TargetServers are used in load balancing configurations, and one or more TargetServers need to taken out of rotation periodically. Defaults to true.
	IsEnabled pulumi.BoolPtrOutput `pulumi:"isEnabled"`
	// The resource id of this reference. Values must match the regular expression [\w\s-.]+.
	Name pulumi.StringOutput `pulumi:"name"`
	// The port number this target connects to on the given host. Value must be between 1 and 65535, inclusive.
	Port pulumi.IntOutput `pulumi:"port"`
	// Immutable. The protocol used by this TargetServer.
	// Possible values are: `HTTP`, `HTTP2`, `GRPC_TARGET`, `GRPC`, `EXTERNAL_CALLOUT`.
	Protocol pulumi.StringOutput `pulumi:"protocol"`
	// Specifies TLS configuration info for this TargetServer. The JSON name is sSLInfo for legacy/backwards compatibility reasons -- Edge originally supported SSL, and the name is still used for TLS configuration.
	// Structure is documented below.
	SSlInfo TargetServerSSlInfoPtrOutput `pulumi:"sSlInfo"`
}

TargetServer configuration. TargetServers are used to decouple a proxy TargetEndpoint HTTPTargetConnections from concrete URLs for backend services.

To get more information about TargetServer, see:

* [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.environments.targetservers/create) * How-to Guides

## Example Usage

### Apigee Target Server Test Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/projects"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/servicenetworking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		project, err := organizations.NewProject(ctx, "project", &organizations.ProjectArgs{
			ProjectId:      pulumi.String("my-project"),
			Name:           pulumi.String("my-project"),
			OrgId:          pulumi.String("123456789"),
			BillingAccount: pulumi.String("000000-0000000-0000000-000000"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewService(ctx, "apigee", &projects.ServiceArgs{
			Project: project.ProjectId,
			Service: pulumi.String("apigee.googleapis.com"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewService(ctx, "servicenetworking", &projects.ServiceArgs{
			Project: project.ProjectId,
			Service: pulumi.String("servicenetworking.googleapis.com"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewService(ctx, "compute", &projects.ServiceArgs{
			Project: project.ProjectId,
			Service: pulumi.String("compute.googleapis.com"),
		})
		if err != nil {
			return err
		}
		apigeeNetwork, err := compute.NewNetwork(ctx, "apigee_network", &compute.NetworkArgs{
			Name:    pulumi.String("apigee-network"),
			Project: project.ProjectId,
		})
		if err != nil {
			return err
		}
		apigeeRange, err := compute.NewGlobalAddress(ctx, "apigee_range", &compute.GlobalAddressArgs{
			Name:         pulumi.String("apigee-range"),
			Purpose:      pulumi.String("VPC_PEERING"),
			AddressType:  pulumi.String("INTERNAL"),
			PrefixLength: pulumi.Int(16),
			Network:      apigeeNetwork.ID(),
			Project:      project.ProjectId,
		})
		if err != nil {
			return err
		}
		_, err = servicenetworking.NewConnection(ctx, "apigee_vpc_connection", &servicenetworking.ConnectionArgs{
			Network: apigeeNetwork.ID(),
			Service: pulumi.String("servicenetworking.googleapis.com"),
			ReservedPeeringRanges: pulumi.StringArray{
				apigeeRange.Name,
			},
		})
		if err != nil {
			return err
		}
		apigeeOrg, err := apigee.NewOrganization(ctx, "apigee_org", &apigee.OrganizationArgs{
			AnalyticsRegion:   pulumi.String("us-central1"),
			ProjectId:         project.ProjectId,
			AuthorizedNetwork: apigeeNetwork.ID(),
		})
		if err != nil {
			return err
		}
		apigeeEnvironment, err := apigee.NewEnvironment(ctx, "apigee_environment", &apigee.EnvironmentArgs{
			OrgId:       apigeeOrg.ID(),
			Name:        pulumi.String("my-environment-name"),
			Description: pulumi.String("Apigee Environment"),
			DisplayName: pulumi.String("environment-1"),
		})
		if err != nil {
			return err
		}
		_, err = apigee.NewTargetServer(ctx, "apigee_target_server", &apigee.TargetServerArgs{
			Name:        pulumi.String("my-target-server"),
			Description: pulumi.String("Apigee Target Server"),
			Protocol:    pulumi.String("HTTP"),
			Host:        pulumi.String("abc.foo.com"),
			Port:        pulumi.Int(8080),
			EnvId:       apigeeEnvironment.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

TargetServer can be imported using any of these accepted formats:

* `{{env_id}}/targetservers/{{name}}`

* `{{env_id}}/{{name}}`

When using the `pulumi import` command, TargetServer can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:apigee/targetServer:TargetServer default {{env_id}}/targetservers/{{name}} ```

```sh $ pulumi import gcp:apigee/targetServer:TargetServer default {{env_id}}/{{name}} ```

func GetTargetServer

func GetTargetServer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TargetServerState, opts ...pulumi.ResourceOption) (*TargetServer, error)

GetTargetServer gets an existing TargetServer 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 NewTargetServer

func NewTargetServer(ctx *pulumi.Context,
	name string, args *TargetServerArgs, opts ...pulumi.ResourceOption) (*TargetServer, error)

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

func (*TargetServer) ElementType

func (*TargetServer) ElementType() reflect.Type

func (*TargetServer) ToTargetServerOutput

func (i *TargetServer) ToTargetServerOutput() TargetServerOutput

func (*TargetServer) ToTargetServerOutputWithContext

func (i *TargetServer) ToTargetServerOutputWithContext(ctx context.Context) TargetServerOutput

type TargetServerArgs

type TargetServerArgs struct {
	// A human-readable description of this TargetServer.
	Description pulumi.StringPtrInput
	// The Apigee environment group associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/environments/{{env_name}}`.
	//
	// ***
	EnvId pulumi.StringInput
	// The host name this target connects to. Value must be a valid hostname as described by RFC-1123.
	Host pulumi.StringInput
	// Enabling/disabling a TargetServer is useful when TargetServers are used in load balancing configurations, and one or more TargetServers need to taken out of rotation periodically. Defaults to true.
	IsEnabled pulumi.BoolPtrInput
	// The resource id of this reference. Values must match the regular expression [\w\s-.]+.
	Name pulumi.StringPtrInput
	// The port number this target connects to on the given host. Value must be between 1 and 65535, inclusive.
	Port pulumi.IntInput
	// Immutable. The protocol used by this TargetServer.
	// Possible values are: `HTTP`, `HTTP2`, `GRPC_TARGET`, `GRPC`, `EXTERNAL_CALLOUT`.
	Protocol pulumi.StringPtrInput
	// Specifies TLS configuration info for this TargetServer. The JSON name is sSLInfo for legacy/backwards compatibility reasons -- Edge originally supported SSL, and the name is still used for TLS configuration.
	// Structure is documented below.
	SSlInfo TargetServerSSlInfoPtrInput
}

The set of arguments for constructing a TargetServer resource.

func (TargetServerArgs) ElementType

func (TargetServerArgs) ElementType() reflect.Type

type TargetServerArray

type TargetServerArray []TargetServerInput

func (TargetServerArray) ElementType

func (TargetServerArray) ElementType() reflect.Type

func (TargetServerArray) ToTargetServerArrayOutput

func (i TargetServerArray) ToTargetServerArrayOutput() TargetServerArrayOutput

func (TargetServerArray) ToTargetServerArrayOutputWithContext

func (i TargetServerArray) ToTargetServerArrayOutputWithContext(ctx context.Context) TargetServerArrayOutput

type TargetServerArrayInput

type TargetServerArrayInput interface {
	pulumi.Input

	ToTargetServerArrayOutput() TargetServerArrayOutput
	ToTargetServerArrayOutputWithContext(context.Context) TargetServerArrayOutput
}

TargetServerArrayInput is an input type that accepts TargetServerArray and TargetServerArrayOutput values. You can construct a concrete instance of `TargetServerArrayInput` via:

TargetServerArray{ TargetServerArgs{...} }

type TargetServerArrayOutput

type TargetServerArrayOutput struct{ *pulumi.OutputState }

func (TargetServerArrayOutput) ElementType

func (TargetServerArrayOutput) ElementType() reflect.Type

func (TargetServerArrayOutput) Index

func (TargetServerArrayOutput) ToTargetServerArrayOutput

func (o TargetServerArrayOutput) ToTargetServerArrayOutput() TargetServerArrayOutput

func (TargetServerArrayOutput) ToTargetServerArrayOutputWithContext

func (o TargetServerArrayOutput) ToTargetServerArrayOutputWithContext(ctx context.Context) TargetServerArrayOutput

type TargetServerInput

type TargetServerInput interface {
	pulumi.Input

	ToTargetServerOutput() TargetServerOutput
	ToTargetServerOutputWithContext(ctx context.Context) TargetServerOutput
}

type TargetServerMap

type TargetServerMap map[string]TargetServerInput

func (TargetServerMap) ElementType

func (TargetServerMap) ElementType() reflect.Type

func (TargetServerMap) ToTargetServerMapOutput

func (i TargetServerMap) ToTargetServerMapOutput() TargetServerMapOutput

func (TargetServerMap) ToTargetServerMapOutputWithContext

func (i TargetServerMap) ToTargetServerMapOutputWithContext(ctx context.Context) TargetServerMapOutput

type TargetServerMapInput

type TargetServerMapInput interface {
	pulumi.Input

	ToTargetServerMapOutput() TargetServerMapOutput
	ToTargetServerMapOutputWithContext(context.Context) TargetServerMapOutput
}

TargetServerMapInput is an input type that accepts TargetServerMap and TargetServerMapOutput values. You can construct a concrete instance of `TargetServerMapInput` via:

TargetServerMap{ "key": TargetServerArgs{...} }

type TargetServerMapOutput

type TargetServerMapOutput struct{ *pulumi.OutputState }

func (TargetServerMapOutput) ElementType

func (TargetServerMapOutput) ElementType() reflect.Type

func (TargetServerMapOutput) MapIndex

func (TargetServerMapOutput) ToTargetServerMapOutput

func (o TargetServerMapOutput) ToTargetServerMapOutput() TargetServerMapOutput

func (TargetServerMapOutput) ToTargetServerMapOutputWithContext

func (o TargetServerMapOutput) ToTargetServerMapOutputWithContext(ctx context.Context) TargetServerMapOutput

type TargetServerOutput

type TargetServerOutput struct{ *pulumi.OutputState }

func (TargetServerOutput) Description

func (o TargetServerOutput) Description() pulumi.StringPtrOutput

A human-readable description of this TargetServer.

func (TargetServerOutput) ElementType

func (TargetServerOutput) ElementType() reflect.Type

func (TargetServerOutput) EnvId

The Apigee environment group associated with the Apigee environment, in the format `organizations/{{org_name}}/environments/{{env_name}}`.

***

func (TargetServerOutput) Host

The host name this target connects to. Value must be a valid hostname as described by RFC-1123.

func (TargetServerOutput) IsEnabled

func (o TargetServerOutput) IsEnabled() pulumi.BoolPtrOutput

Enabling/disabling a TargetServer is useful when TargetServers are used in load balancing configurations, and one or more TargetServers need to taken out of rotation periodically. Defaults to true.

func (TargetServerOutput) Name

The resource id of this reference. Values must match the regular expression [\w\s-.]+.

func (TargetServerOutput) Port

The port number this target connects to on the given host. Value must be between 1 and 65535, inclusive.

func (TargetServerOutput) Protocol

func (o TargetServerOutput) Protocol() pulumi.StringOutput

Immutable. The protocol used by this TargetServer. Possible values are: `HTTP`, `HTTP2`, `GRPC_TARGET`, `GRPC`, `EXTERNAL_CALLOUT`.

func (TargetServerOutput) SSlInfo

Specifies TLS configuration info for this TargetServer. The JSON name is sSLInfo for legacy/backwards compatibility reasons -- Edge originally supported SSL, and the name is still used for TLS configuration. Structure is documented below.

func (TargetServerOutput) ToTargetServerOutput

func (o TargetServerOutput) ToTargetServerOutput() TargetServerOutput

func (TargetServerOutput) ToTargetServerOutputWithContext

func (o TargetServerOutput) ToTargetServerOutputWithContext(ctx context.Context) TargetServerOutput

type TargetServerSSlInfo

type TargetServerSSlInfo struct {
	// The SSL/TLS cipher suites to be used. For programmable proxies, it must be one of the cipher suite names listed in: http://docs.oracle.com/javase/8/docs/technotes/guides/security/StandardNames.html#ciphersuites. For configurable proxies, it must follow the configuration specified in: https://commondatastorage.googleapis.com/chromium-boringssl-docs/ssl.h.html#Cipher-suite-configuration. This setting has no effect for configurable proxies when negotiating TLS 1.3.
	Ciphers []string `pulumi:"ciphers"`
	// Enables two-way TLS.
	ClientAuthEnabled *bool `pulumi:"clientAuthEnabled"`
	// The TLS Common Name of the certificate.
	// Structure is documented below.
	CommonName *TargetServerSSlInfoCommonName `pulumi:"commonName"`
	// Enables TLS. If false, neither one-way nor two-way TLS will be enabled.
	Enabled bool `pulumi:"enabled"`
	// If true, Edge ignores TLS certificate errors. Valid when configuring TLS for target servers and target endpoints, and when configuring virtual hosts that use 2-way TLS. When used with a target endpoint/target server, if the backend system uses SNI and returns a cert with a subject Distinguished Name (DN) that does not match the hostname, there is no way to ignore the error and the connection fails.
	IgnoreValidationErrors *bool `pulumi:"ignoreValidationErrors"`
	// Required if clientAuthEnabled is true. The resource ID for the alias containing the private key and cert.
	KeyAlias *string `pulumi:"keyAlias"`
	// Required if clientAuthEnabled is true. The resource ID of the keystore.
	KeyStore *string `pulumi:"keyStore"`
	// The TLS versioins to be used.
	Protocols []string `pulumi:"protocols"`
	// The resource ID of the truststore.
	TrustStore *string `pulumi:"trustStore"`
}

type TargetServerSSlInfoArgs

type TargetServerSSlInfoArgs struct {
	// The SSL/TLS cipher suites to be used. For programmable proxies, it must be one of the cipher suite names listed in: http://docs.oracle.com/javase/8/docs/technotes/guides/security/StandardNames.html#ciphersuites. For configurable proxies, it must follow the configuration specified in: https://commondatastorage.googleapis.com/chromium-boringssl-docs/ssl.h.html#Cipher-suite-configuration. This setting has no effect for configurable proxies when negotiating TLS 1.3.
	Ciphers pulumi.StringArrayInput `pulumi:"ciphers"`
	// Enables two-way TLS.
	ClientAuthEnabled pulumi.BoolPtrInput `pulumi:"clientAuthEnabled"`
	// The TLS Common Name of the certificate.
	// Structure is documented below.
	CommonName TargetServerSSlInfoCommonNamePtrInput `pulumi:"commonName"`
	// Enables TLS. If false, neither one-way nor two-way TLS will be enabled.
	Enabled pulumi.BoolInput `pulumi:"enabled"`
	// If true, Edge ignores TLS certificate errors. Valid when configuring TLS for target servers and target endpoints, and when configuring virtual hosts that use 2-way TLS. When used with a target endpoint/target server, if the backend system uses SNI and returns a cert with a subject Distinguished Name (DN) that does not match the hostname, there is no way to ignore the error and the connection fails.
	IgnoreValidationErrors pulumi.BoolPtrInput `pulumi:"ignoreValidationErrors"`
	// Required if clientAuthEnabled is true. The resource ID for the alias containing the private key and cert.
	KeyAlias pulumi.StringPtrInput `pulumi:"keyAlias"`
	// Required if clientAuthEnabled is true. The resource ID of the keystore.
	KeyStore pulumi.StringPtrInput `pulumi:"keyStore"`
	// The TLS versioins to be used.
	Protocols pulumi.StringArrayInput `pulumi:"protocols"`
	// The resource ID of the truststore.
	TrustStore pulumi.StringPtrInput `pulumi:"trustStore"`
}

func (TargetServerSSlInfoArgs) ElementType

func (TargetServerSSlInfoArgs) ElementType() reflect.Type

func (TargetServerSSlInfoArgs) ToTargetServerSSlInfoOutput

func (i TargetServerSSlInfoArgs) ToTargetServerSSlInfoOutput() TargetServerSSlInfoOutput

func (TargetServerSSlInfoArgs) ToTargetServerSSlInfoOutputWithContext

func (i TargetServerSSlInfoArgs) ToTargetServerSSlInfoOutputWithContext(ctx context.Context) TargetServerSSlInfoOutput

func (TargetServerSSlInfoArgs) ToTargetServerSSlInfoPtrOutput

func (i TargetServerSSlInfoArgs) ToTargetServerSSlInfoPtrOutput() TargetServerSSlInfoPtrOutput

func (TargetServerSSlInfoArgs) ToTargetServerSSlInfoPtrOutputWithContext

func (i TargetServerSSlInfoArgs) ToTargetServerSSlInfoPtrOutputWithContext(ctx context.Context) TargetServerSSlInfoPtrOutput

type TargetServerSSlInfoCommonName

type TargetServerSSlInfoCommonName struct {
	// The TLS Common Name string of the certificate.
	Value *string `pulumi:"value"`
	// Indicates whether the cert should be matched against as a wildcard cert.
	WildcardMatch *bool `pulumi:"wildcardMatch"`
}

type TargetServerSSlInfoCommonNameArgs

type TargetServerSSlInfoCommonNameArgs struct {
	// The TLS Common Name string of the certificate.
	Value pulumi.StringPtrInput `pulumi:"value"`
	// Indicates whether the cert should be matched against as a wildcard cert.
	WildcardMatch pulumi.BoolPtrInput `pulumi:"wildcardMatch"`
}

func (TargetServerSSlInfoCommonNameArgs) ElementType

func (TargetServerSSlInfoCommonNameArgs) ToTargetServerSSlInfoCommonNameOutput

func (i TargetServerSSlInfoCommonNameArgs) ToTargetServerSSlInfoCommonNameOutput() TargetServerSSlInfoCommonNameOutput

func (TargetServerSSlInfoCommonNameArgs) ToTargetServerSSlInfoCommonNameOutputWithContext

func (i TargetServerSSlInfoCommonNameArgs) ToTargetServerSSlInfoCommonNameOutputWithContext(ctx context.Context) TargetServerSSlInfoCommonNameOutput

func (TargetServerSSlInfoCommonNameArgs) ToTargetServerSSlInfoCommonNamePtrOutput

func (i TargetServerSSlInfoCommonNameArgs) ToTargetServerSSlInfoCommonNamePtrOutput() TargetServerSSlInfoCommonNamePtrOutput

func (TargetServerSSlInfoCommonNameArgs) ToTargetServerSSlInfoCommonNamePtrOutputWithContext

func (i TargetServerSSlInfoCommonNameArgs) ToTargetServerSSlInfoCommonNamePtrOutputWithContext(ctx context.Context) TargetServerSSlInfoCommonNamePtrOutput

type TargetServerSSlInfoCommonNameInput

type TargetServerSSlInfoCommonNameInput interface {
	pulumi.Input

	ToTargetServerSSlInfoCommonNameOutput() TargetServerSSlInfoCommonNameOutput
	ToTargetServerSSlInfoCommonNameOutputWithContext(context.Context) TargetServerSSlInfoCommonNameOutput
}

TargetServerSSlInfoCommonNameInput is an input type that accepts TargetServerSSlInfoCommonNameArgs and TargetServerSSlInfoCommonNameOutput values. You can construct a concrete instance of `TargetServerSSlInfoCommonNameInput` via:

TargetServerSSlInfoCommonNameArgs{...}

type TargetServerSSlInfoCommonNameOutput

type TargetServerSSlInfoCommonNameOutput struct{ *pulumi.OutputState }

func (TargetServerSSlInfoCommonNameOutput) ElementType

func (TargetServerSSlInfoCommonNameOutput) ToTargetServerSSlInfoCommonNameOutput

func (o TargetServerSSlInfoCommonNameOutput) ToTargetServerSSlInfoCommonNameOutput() TargetServerSSlInfoCommonNameOutput

func (TargetServerSSlInfoCommonNameOutput) ToTargetServerSSlInfoCommonNameOutputWithContext

func (o TargetServerSSlInfoCommonNameOutput) ToTargetServerSSlInfoCommonNameOutputWithContext(ctx context.Context) TargetServerSSlInfoCommonNameOutput

func (TargetServerSSlInfoCommonNameOutput) ToTargetServerSSlInfoCommonNamePtrOutput

func (o TargetServerSSlInfoCommonNameOutput) ToTargetServerSSlInfoCommonNamePtrOutput() TargetServerSSlInfoCommonNamePtrOutput

func (TargetServerSSlInfoCommonNameOutput) ToTargetServerSSlInfoCommonNamePtrOutputWithContext

func (o TargetServerSSlInfoCommonNameOutput) ToTargetServerSSlInfoCommonNamePtrOutputWithContext(ctx context.Context) TargetServerSSlInfoCommonNamePtrOutput

func (TargetServerSSlInfoCommonNameOutput) Value

The TLS Common Name string of the certificate.

func (TargetServerSSlInfoCommonNameOutput) WildcardMatch

Indicates whether the cert should be matched against as a wildcard cert.

type TargetServerSSlInfoCommonNamePtrInput

type TargetServerSSlInfoCommonNamePtrInput interface {
	pulumi.Input

	ToTargetServerSSlInfoCommonNamePtrOutput() TargetServerSSlInfoCommonNamePtrOutput
	ToTargetServerSSlInfoCommonNamePtrOutputWithContext(context.Context) TargetServerSSlInfoCommonNamePtrOutput
}

TargetServerSSlInfoCommonNamePtrInput is an input type that accepts TargetServerSSlInfoCommonNameArgs, TargetServerSSlInfoCommonNamePtr and TargetServerSSlInfoCommonNamePtrOutput values. You can construct a concrete instance of `TargetServerSSlInfoCommonNamePtrInput` via:

        TargetServerSSlInfoCommonNameArgs{...}

or:

        nil

type TargetServerSSlInfoCommonNamePtrOutput

type TargetServerSSlInfoCommonNamePtrOutput struct{ *pulumi.OutputState }

func (TargetServerSSlInfoCommonNamePtrOutput) Elem

func (TargetServerSSlInfoCommonNamePtrOutput) ElementType

func (TargetServerSSlInfoCommonNamePtrOutput) ToTargetServerSSlInfoCommonNamePtrOutput

func (o TargetServerSSlInfoCommonNamePtrOutput) ToTargetServerSSlInfoCommonNamePtrOutput() TargetServerSSlInfoCommonNamePtrOutput

func (TargetServerSSlInfoCommonNamePtrOutput) ToTargetServerSSlInfoCommonNamePtrOutputWithContext

func (o TargetServerSSlInfoCommonNamePtrOutput) ToTargetServerSSlInfoCommonNamePtrOutputWithContext(ctx context.Context) TargetServerSSlInfoCommonNamePtrOutput

func (TargetServerSSlInfoCommonNamePtrOutput) Value

The TLS Common Name string of the certificate.

func (TargetServerSSlInfoCommonNamePtrOutput) WildcardMatch

Indicates whether the cert should be matched against as a wildcard cert.

type TargetServerSSlInfoInput

type TargetServerSSlInfoInput interface {
	pulumi.Input

	ToTargetServerSSlInfoOutput() TargetServerSSlInfoOutput
	ToTargetServerSSlInfoOutputWithContext(context.Context) TargetServerSSlInfoOutput
}

TargetServerSSlInfoInput is an input type that accepts TargetServerSSlInfoArgs and TargetServerSSlInfoOutput values. You can construct a concrete instance of `TargetServerSSlInfoInput` via:

TargetServerSSlInfoArgs{...}

type TargetServerSSlInfoOutput

type TargetServerSSlInfoOutput struct{ *pulumi.OutputState }

func (TargetServerSSlInfoOutput) Ciphers

The SSL/TLS cipher suites to be used. For programmable proxies, it must be one of the cipher suite names listed in: http://docs.oracle.com/javase/8/docs/technotes/guides/security/StandardNames.html#ciphersuites. For configurable proxies, it must follow the configuration specified in: https://commondatastorage.googleapis.com/chromium-boringssl-docs/ssl.h.html#Cipher-suite-configuration. This setting has no effect for configurable proxies when negotiating TLS 1.3.

func (TargetServerSSlInfoOutput) ClientAuthEnabled

func (o TargetServerSSlInfoOutput) ClientAuthEnabled() pulumi.BoolPtrOutput

Enables two-way TLS.

func (TargetServerSSlInfoOutput) CommonName

The TLS Common Name of the certificate. Structure is documented below.

func (TargetServerSSlInfoOutput) ElementType

func (TargetServerSSlInfoOutput) ElementType() reflect.Type

func (TargetServerSSlInfoOutput) Enabled

Enables TLS. If false, neither one-way nor two-way TLS will be enabled.

func (TargetServerSSlInfoOutput) IgnoreValidationErrors

func (o TargetServerSSlInfoOutput) IgnoreValidationErrors() pulumi.BoolPtrOutput

If true, Edge ignores TLS certificate errors. Valid when configuring TLS for target servers and target endpoints, and when configuring virtual hosts that use 2-way TLS. When used with a target endpoint/target server, if the backend system uses SNI and returns a cert with a subject Distinguished Name (DN) that does not match the hostname, there is no way to ignore the error and the connection fails.

func (TargetServerSSlInfoOutput) KeyAlias

Required if clientAuthEnabled is true. The resource ID for the alias containing the private key and cert.

func (TargetServerSSlInfoOutput) KeyStore

Required if clientAuthEnabled is true. The resource ID of the keystore.

func (TargetServerSSlInfoOutput) Protocols

The TLS versioins to be used.

func (TargetServerSSlInfoOutput) ToTargetServerSSlInfoOutput

func (o TargetServerSSlInfoOutput) ToTargetServerSSlInfoOutput() TargetServerSSlInfoOutput

func (TargetServerSSlInfoOutput) ToTargetServerSSlInfoOutputWithContext

func (o TargetServerSSlInfoOutput) ToTargetServerSSlInfoOutputWithContext(ctx context.Context) TargetServerSSlInfoOutput

func (TargetServerSSlInfoOutput) ToTargetServerSSlInfoPtrOutput

func (o TargetServerSSlInfoOutput) ToTargetServerSSlInfoPtrOutput() TargetServerSSlInfoPtrOutput

func (TargetServerSSlInfoOutput) ToTargetServerSSlInfoPtrOutputWithContext

func (o TargetServerSSlInfoOutput) ToTargetServerSSlInfoPtrOutputWithContext(ctx context.Context) TargetServerSSlInfoPtrOutput

func (TargetServerSSlInfoOutput) TrustStore

The resource ID of the truststore.

type TargetServerSSlInfoPtrInput

type TargetServerSSlInfoPtrInput interface {
	pulumi.Input

	ToTargetServerSSlInfoPtrOutput() TargetServerSSlInfoPtrOutput
	ToTargetServerSSlInfoPtrOutputWithContext(context.Context) TargetServerSSlInfoPtrOutput
}

TargetServerSSlInfoPtrInput is an input type that accepts TargetServerSSlInfoArgs, TargetServerSSlInfoPtr and TargetServerSSlInfoPtrOutput values. You can construct a concrete instance of `TargetServerSSlInfoPtrInput` via:

        TargetServerSSlInfoArgs{...}

or:

        nil

type TargetServerSSlInfoPtrOutput

type TargetServerSSlInfoPtrOutput struct{ *pulumi.OutputState }

func (TargetServerSSlInfoPtrOutput) Ciphers

The SSL/TLS cipher suites to be used. For programmable proxies, it must be one of the cipher suite names listed in: http://docs.oracle.com/javase/8/docs/technotes/guides/security/StandardNames.html#ciphersuites. For configurable proxies, it must follow the configuration specified in: https://commondatastorage.googleapis.com/chromium-boringssl-docs/ssl.h.html#Cipher-suite-configuration. This setting has no effect for configurable proxies when negotiating TLS 1.3.

func (TargetServerSSlInfoPtrOutput) ClientAuthEnabled

func (o TargetServerSSlInfoPtrOutput) ClientAuthEnabled() pulumi.BoolPtrOutput

Enables two-way TLS.

func (TargetServerSSlInfoPtrOutput) CommonName

The TLS Common Name of the certificate. Structure is documented below.

func (TargetServerSSlInfoPtrOutput) Elem

func (TargetServerSSlInfoPtrOutput) ElementType

func (TargetServerSSlInfoPtrOutput) Enabled

Enables TLS. If false, neither one-way nor two-way TLS will be enabled.

func (TargetServerSSlInfoPtrOutput) IgnoreValidationErrors

func (o TargetServerSSlInfoPtrOutput) IgnoreValidationErrors() pulumi.BoolPtrOutput

If true, Edge ignores TLS certificate errors. Valid when configuring TLS for target servers and target endpoints, and when configuring virtual hosts that use 2-way TLS. When used with a target endpoint/target server, if the backend system uses SNI and returns a cert with a subject Distinguished Name (DN) that does not match the hostname, there is no way to ignore the error and the connection fails.

func (TargetServerSSlInfoPtrOutput) KeyAlias

Required if clientAuthEnabled is true. The resource ID for the alias containing the private key and cert.

func (TargetServerSSlInfoPtrOutput) KeyStore

Required if clientAuthEnabled is true. The resource ID of the keystore.

func (TargetServerSSlInfoPtrOutput) Protocols

The TLS versioins to be used.

func (TargetServerSSlInfoPtrOutput) ToTargetServerSSlInfoPtrOutput

func (o TargetServerSSlInfoPtrOutput) ToTargetServerSSlInfoPtrOutput() TargetServerSSlInfoPtrOutput

func (TargetServerSSlInfoPtrOutput) ToTargetServerSSlInfoPtrOutputWithContext

func (o TargetServerSSlInfoPtrOutput) ToTargetServerSSlInfoPtrOutputWithContext(ctx context.Context) TargetServerSSlInfoPtrOutput

func (TargetServerSSlInfoPtrOutput) TrustStore

The resource ID of the truststore.

type TargetServerState

type TargetServerState struct {
	// A human-readable description of this TargetServer.
	Description pulumi.StringPtrInput
	// The Apigee environment group associated with the Apigee environment,
	// in the format `organizations/{{org_name}}/environments/{{env_name}}`.
	//
	// ***
	EnvId pulumi.StringPtrInput
	// The host name this target connects to. Value must be a valid hostname as described by RFC-1123.
	Host pulumi.StringPtrInput
	// Enabling/disabling a TargetServer is useful when TargetServers are used in load balancing configurations, and one or more TargetServers need to taken out of rotation periodically. Defaults to true.
	IsEnabled pulumi.BoolPtrInput
	// The resource id of this reference. Values must match the regular expression [\w\s-.]+.
	Name pulumi.StringPtrInput
	// The port number this target connects to on the given host. Value must be between 1 and 65535, inclusive.
	Port pulumi.IntPtrInput
	// Immutable. The protocol used by this TargetServer.
	// Possible values are: `HTTP`, `HTTP2`, `GRPC_TARGET`, `GRPC`, `EXTERNAL_CALLOUT`.
	Protocol pulumi.StringPtrInput
	// Specifies TLS configuration info for this TargetServer. The JSON name is sSLInfo for legacy/backwards compatibility reasons -- Edge originally supported SSL, and the name is still used for TLS configuration.
	// Structure is documented below.
	SSlInfo TargetServerSSlInfoPtrInput
}

func (TargetServerState) ElementType

func (TargetServerState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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