opsworks

package
v4.9.0 Latest Latest
Warning

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

Go to latest
Published: Jun 22, 2021 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 Application

type Application struct {
	pulumi.CustomResourceState

	// SCM configuration of the app as described below.
	AppSources ApplicationAppSourceArrayOutput `pulumi:"appSources"`
	// Run bundle install when deploying for application of type `rails`.
	AutoBundleOnDeploy pulumi.StringPtrOutput `pulumi:"autoBundleOnDeploy"`
	// Specify activity and workflow workers for your app using the aws-flow gem.
	AwsFlowRubySettings pulumi.StringPtrOutput `pulumi:"awsFlowRubySettings"`
	// The data source's ARN.
	DataSourceArn pulumi.StringPtrOutput `pulumi:"dataSourceArn"`
	// The database name.
	DataSourceDatabaseName pulumi.StringPtrOutput `pulumi:"dataSourceDatabaseName"`
	// The data source's type one of `AutoSelectOpsworksMysqlInstance`, `OpsworksMysqlInstance`, or `RdsDbInstance`.
	DataSourceType pulumi.StringPtrOutput `pulumi:"dataSourceType"`
	// A description of the app.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Subfolder for the document root for application of type `rails`.
	DocumentRoot pulumi.StringPtrOutput `pulumi:"documentRoot"`
	// A list of virtual host alias.
	Domains pulumi.StringArrayOutput `pulumi:"domains"`
	// Whether to enable SSL for the app. This must be set in order to let `ssl_configuration.private_key`, `ssl_configuration.certificate` and `ssl_configuration.chain` take effect.
	EnableSsl pulumi.BoolPtrOutput `pulumi:"enableSsl"`
	// Object to define environment variables.  Object is described below.
	Environments ApplicationEnvironmentArrayOutput `pulumi:"environments"`
	// A human-readable name for the application.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the Rails environment for application of type `rails`.
	RailsEnv pulumi.StringPtrOutput `pulumi:"railsEnv"`
	// A short, machine-readable name for the application. This can only be defined on resource creation and ignored on resource update.
	ShortName pulumi.StringOutput `pulumi:"shortName"`
	// The SSL configuration of the app. Object is described below.
	SslConfigurations ApplicationSslConfigurationArrayOutput `pulumi:"sslConfigurations"`
	// The id of the stack the application will belong to.
	StackId pulumi.StringOutput `pulumi:"stackId"`
	// Opsworks application type. One of `aws-flow-ruby`, `java`, `rails`, `php`, `nodejs`, `static` or `other`.
	Type pulumi.StringOutput `pulumi:"type"`
}

Provides an OpsWorks application resource.

## Import

Opsworks Application can be imported using the `id`, e.g.

```sh

$ pulumi import aws:opsworks/application:Application test <id>

```

func GetApplication

func GetApplication(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ApplicationState, opts ...pulumi.ResourceOption) (*Application, error)

GetApplication gets an existing Application 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 NewApplication

func NewApplication(ctx *pulumi.Context,
	name string, args *ApplicationArgs, opts ...pulumi.ResourceOption) (*Application, error)

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

func (*Application) ElementType

func (*Application) ElementType() reflect.Type

func (*Application) ToApplicationOutput

func (i *Application) ToApplicationOutput() ApplicationOutput

func (*Application) ToApplicationOutputWithContext

func (i *Application) ToApplicationOutputWithContext(ctx context.Context) ApplicationOutput

func (*Application) ToApplicationPtrOutput

func (i *Application) ToApplicationPtrOutput() ApplicationPtrOutput

func (*Application) ToApplicationPtrOutputWithContext

func (i *Application) ToApplicationPtrOutputWithContext(ctx context.Context) ApplicationPtrOutput

type ApplicationAppSource

type ApplicationAppSource struct {
	// Password to use when authenticating to the source. This provider cannot perform drift detection of this configuration.
	Password *string `pulumi:"password"`
	// For sources that are version-aware, the revision to use.
	Revision *string `pulumi:"revision"`
	// SSH key to use when authenticating to the source. This provider cannot perform drift detection of this configuration.
	SshKey *string `pulumi:"sshKey"`
	// The type of source to use. For example, "archive".
	Type string `pulumi:"type"`
	// The URL where the app resource can be found.
	Url *string `pulumi:"url"`
	// Username to use when authenticating to the source.
	Username *string `pulumi:"username"`
}

type ApplicationAppSourceArgs

type ApplicationAppSourceArgs struct {
	// Password to use when authenticating to the source. This provider cannot perform drift detection of this configuration.
	Password pulumi.StringPtrInput `pulumi:"password"`
	// For sources that are version-aware, the revision to use.
	Revision pulumi.StringPtrInput `pulumi:"revision"`
	// SSH key to use when authenticating to the source. This provider cannot perform drift detection of this configuration.
	SshKey pulumi.StringPtrInput `pulumi:"sshKey"`
	// The type of source to use. For example, "archive".
	Type pulumi.StringInput `pulumi:"type"`
	// The URL where the app resource can be found.
	Url pulumi.StringPtrInput `pulumi:"url"`
	// Username to use when authenticating to the source.
	Username pulumi.StringPtrInput `pulumi:"username"`
}

func (ApplicationAppSourceArgs) ElementType

func (ApplicationAppSourceArgs) ElementType() reflect.Type

func (ApplicationAppSourceArgs) ToApplicationAppSourceOutput

func (i ApplicationAppSourceArgs) ToApplicationAppSourceOutput() ApplicationAppSourceOutput

func (ApplicationAppSourceArgs) ToApplicationAppSourceOutputWithContext

func (i ApplicationAppSourceArgs) ToApplicationAppSourceOutputWithContext(ctx context.Context) ApplicationAppSourceOutput

type ApplicationAppSourceArray

type ApplicationAppSourceArray []ApplicationAppSourceInput

func (ApplicationAppSourceArray) ElementType

func (ApplicationAppSourceArray) ElementType() reflect.Type

func (ApplicationAppSourceArray) ToApplicationAppSourceArrayOutput

func (i ApplicationAppSourceArray) ToApplicationAppSourceArrayOutput() ApplicationAppSourceArrayOutput

func (ApplicationAppSourceArray) ToApplicationAppSourceArrayOutputWithContext

func (i ApplicationAppSourceArray) ToApplicationAppSourceArrayOutputWithContext(ctx context.Context) ApplicationAppSourceArrayOutput

type ApplicationAppSourceArrayInput

type ApplicationAppSourceArrayInput interface {
	pulumi.Input

	ToApplicationAppSourceArrayOutput() ApplicationAppSourceArrayOutput
	ToApplicationAppSourceArrayOutputWithContext(context.Context) ApplicationAppSourceArrayOutput
}

ApplicationAppSourceArrayInput is an input type that accepts ApplicationAppSourceArray and ApplicationAppSourceArrayOutput values. You can construct a concrete instance of `ApplicationAppSourceArrayInput` via:

ApplicationAppSourceArray{ ApplicationAppSourceArgs{...} }

type ApplicationAppSourceArrayOutput

type ApplicationAppSourceArrayOutput struct{ *pulumi.OutputState }

func (ApplicationAppSourceArrayOutput) ElementType

func (ApplicationAppSourceArrayOutput) Index

func (ApplicationAppSourceArrayOutput) ToApplicationAppSourceArrayOutput

func (o ApplicationAppSourceArrayOutput) ToApplicationAppSourceArrayOutput() ApplicationAppSourceArrayOutput

func (ApplicationAppSourceArrayOutput) ToApplicationAppSourceArrayOutputWithContext

func (o ApplicationAppSourceArrayOutput) ToApplicationAppSourceArrayOutputWithContext(ctx context.Context) ApplicationAppSourceArrayOutput

type ApplicationAppSourceInput

type ApplicationAppSourceInput interface {
	pulumi.Input

	ToApplicationAppSourceOutput() ApplicationAppSourceOutput
	ToApplicationAppSourceOutputWithContext(context.Context) ApplicationAppSourceOutput
}

ApplicationAppSourceInput is an input type that accepts ApplicationAppSourceArgs and ApplicationAppSourceOutput values. You can construct a concrete instance of `ApplicationAppSourceInput` via:

ApplicationAppSourceArgs{...}

type ApplicationAppSourceOutput

type ApplicationAppSourceOutput struct{ *pulumi.OutputState }

func (ApplicationAppSourceOutput) ElementType

func (ApplicationAppSourceOutput) ElementType() reflect.Type

func (ApplicationAppSourceOutput) Password

Password to use when authenticating to the source. This provider cannot perform drift detection of this configuration.

func (ApplicationAppSourceOutput) Revision

For sources that are version-aware, the revision to use.

func (ApplicationAppSourceOutput) SshKey

SSH key to use when authenticating to the source. This provider cannot perform drift detection of this configuration.

func (ApplicationAppSourceOutput) ToApplicationAppSourceOutput

func (o ApplicationAppSourceOutput) ToApplicationAppSourceOutput() ApplicationAppSourceOutput

func (ApplicationAppSourceOutput) ToApplicationAppSourceOutputWithContext

func (o ApplicationAppSourceOutput) ToApplicationAppSourceOutputWithContext(ctx context.Context) ApplicationAppSourceOutput

func (ApplicationAppSourceOutput) Type

The type of source to use. For example, "archive".

func (ApplicationAppSourceOutput) Url

The URL where the app resource can be found.

func (ApplicationAppSourceOutput) Username

Username to use when authenticating to the source.

type ApplicationArgs

type ApplicationArgs struct {
	// SCM configuration of the app as described below.
	AppSources ApplicationAppSourceArrayInput
	// Run bundle install when deploying for application of type `rails`.
	AutoBundleOnDeploy pulumi.StringPtrInput
	// Specify activity and workflow workers for your app using the aws-flow gem.
	AwsFlowRubySettings pulumi.StringPtrInput
	// The data source's ARN.
	DataSourceArn pulumi.StringPtrInput
	// The database name.
	DataSourceDatabaseName pulumi.StringPtrInput
	// The data source's type one of `AutoSelectOpsworksMysqlInstance`, `OpsworksMysqlInstance`, or `RdsDbInstance`.
	DataSourceType pulumi.StringPtrInput
	// A description of the app.
	Description pulumi.StringPtrInput
	// Subfolder for the document root for application of type `rails`.
	DocumentRoot pulumi.StringPtrInput
	// A list of virtual host alias.
	Domains pulumi.StringArrayInput
	// Whether to enable SSL for the app. This must be set in order to let `ssl_configuration.private_key`, `ssl_configuration.certificate` and `ssl_configuration.chain` take effect.
	EnableSsl pulumi.BoolPtrInput
	// Object to define environment variables.  Object is described below.
	Environments ApplicationEnvironmentArrayInput
	// A human-readable name for the application.
	Name pulumi.StringPtrInput
	// The name of the Rails environment for application of type `rails`.
	RailsEnv pulumi.StringPtrInput
	// A short, machine-readable name for the application. This can only be defined on resource creation and ignored on resource update.
	ShortName pulumi.StringPtrInput
	// The SSL configuration of the app. Object is described below.
	SslConfigurations ApplicationSslConfigurationArrayInput
	// The id of the stack the application will belong to.
	StackId pulumi.StringInput
	// Opsworks application type. One of `aws-flow-ruby`, `java`, `rails`, `php`, `nodejs`, `static` or `other`.
	Type pulumi.StringInput
}

The set of arguments for constructing a Application resource.

func (ApplicationArgs) ElementType

func (ApplicationArgs) ElementType() reflect.Type

type ApplicationArray

type ApplicationArray []ApplicationInput

func (ApplicationArray) ElementType

func (ApplicationArray) ElementType() reflect.Type

func (ApplicationArray) ToApplicationArrayOutput

func (i ApplicationArray) ToApplicationArrayOutput() ApplicationArrayOutput

func (ApplicationArray) ToApplicationArrayOutputWithContext

func (i ApplicationArray) ToApplicationArrayOutputWithContext(ctx context.Context) ApplicationArrayOutput

type ApplicationArrayInput

type ApplicationArrayInput interface {
	pulumi.Input

	ToApplicationArrayOutput() ApplicationArrayOutput
	ToApplicationArrayOutputWithContext(context.Context) ApplicationArrayOutput
}

ApplicationArrayInput is an input type that accepts ApplicationArray and ApplicationArrayOutput values. You can construct a concrete instance of `ApplicationArrayInput` via:

ApplicationArray{ ApplicationArgs{...} }

type ApplicationArrayOutput

type ApplicationArrayOutput struct{ *pulumi.OutputState }

func (ApplicationArrayOutput) ElementType

func (ApplicationArrayOutput) ElementType() reflect.Type

func (ApplicationArrayOutput) Index

func (ApplicationArrayOutput) ToApplicationArrayOutput

func (o ApplicationArrayOutput) ToApplicationArrayOutput() ApplicationArrayOutput

func (ApplicationArrayOutput) ToApplicationArrayOutputWithContext

func (o ApplicationArrayOutput) ToApplicationArrayOutputWithContext(ctx context.Context) ApplicationArrayOutput

type ApplicationEnvironment

type ApplicationEnvironment struct {
	// Variable name.
	Key string `pulumi:"key"`
	// Set visibility of the variable value to `true` or `false`.
	Secure *bool `pulumi:"secure"`
	// Variable value.
	Value string `pulumi:"value"`
}

type ApplicationEnvironmentArgs

type ApplicationEnvironmentArgs struct {
	// Variable name.
	Key pulumi.StringInput `pulumi:"key"`
	// Set visibility of the variable value to `true` or `false`.
	Secure pulumi.BoolPtrInput `pulumi:"secure"`
	// Variable value.
	Value pulumi.StringInput `pulumi:"value"`
}

func (ApplicationEnvironmentArgs) ElementType

func (ApplicationEnvironmentArgs) ElementType() reflect.Type

func (ApplicationEnvironmentArgs) ToApplicationEnvironmentOutput

func (i ApplicationEnvironmentArgs) ToApplicationEnvironmentOutput() ApplicationEnvironmentOutput

func (ApplicationEnvironmentArgs) ToApplicationEnvironmentOutputWithContext

func (i ApplicationEnvironmentArgs) ToApplicationEnvironmentOutputWithContext(ctx context.Context) ApplicationEnvironmentOutput

type ApplicationEnvironmentArray

type ApplicationEnvironmentArray []ApplicationEnvironmentInput

func (ApplicationEnvironmentArray) ElementType

func (ApplicationEnvironmentArray) ToApplicationEnvironmentArrayOutput

func (i ApplicationEnvironmentArray) ToApplicationEnvironmentArrayOutput() ApplicationEnvironmentArrayOutput

func (ApplicationEnvironmentArray) ToApplicationEnvironmentArrayOutputWithContext

func (i ApplicationEnvironmentArray) ToApplicationEnvironmentArrayOutputWithContext(ctx context.Context) ApplicationEnvironmentArrayOutput

type ApplicationEnvironmentArrayInput

type ApplicationEnvironmentArrayInput interface {
	pulumi.Input

	ToApplicationEnvironmentArrayOutput() ApplicationEnvironmentArrayOutput
	ToApplicationEnvironmentArrayOutputWithContext(context.Context) ApplicationEnvironmentArrayOutput
}

ApplicationEnvironmentArrayInput is an input type that accepts ApplicationEnvironmentArray and ApplicationEnvironmentArrayOutput values. You can construct a concrete instance of `ApplicationEnvironmentArrayInput` via:

ApplicationEnvironmentArray{ ApplicationEnvironmentArgs{...} }

type ApplicationEnvironmentArrayOutput

type ApplicationEnvironmentArrayOutput struct{ *pulumi.OutputState }

func (ApplicationEnvironmentArrayOutput) ElementType

func (ApplicationEnvironmentArrayOutput) Index

func (ApplicationEnvironmentArrayOutput) ToApplicationEnvironmentArrayOutput

func (o ApplicationEnvironmentArrayOutput) ToApplicationEnvironmentArrayOutput() ApplicationEnvironmentArrayOutput

func (ApplicationEnvironmentArrayOutput) ToApplicationEnvironmentArrayOutputWithContext

func (o ApplicationEnvironmentArrayOutput) ToApplicationEnvironmentArrayOutputWithContext(ctx context.Context) ApplicationEnvironmentArrayOutput

type ApplicationEnvironmentInput

type ApplicationEnvironmentInput interface {
	pulumi.Input

	ToApplicationEnvironmentOutput() ApplicationEnvironmentOutput
	ToApplicationEnvironmentOutputWithContext(context.Context) ApplicationEnvironmentOutput
}

ApplicationEnvironmentInput is an input type that accepts ApplicationEnvironmentArgs and ApplicationEnvironmentOutput values. You can construct a concrete instance of `ApplicationEnvironmentInput` via:

ApplicationEnvironmentArgs{...}

type ApplicationEnvironmentOutput

type ApplicationEnvironmentOutput struct{ *pulumi.OutputState }

func (ApplicationEnvironmentOutput) ElementType

func (ApplicationEnvironmentOutput) Key

Variable name.

func (ApplicationEnvironmentOutput) Secure

Set visibility of the variable value to `true` or `false`.

func (ApplicationEnvironmentOutput) ToApplicationEnvironmentOutput

func (o ApplicationEnvironmentOutput) ToApplicationEnvironmentOutput() ApplicationEnvironmentOutput

func (ApplicationEnvironmentOutput) ToApplicationEnvironmentOutputWithContext

func (o ApplicationEnvironmentOutput) ToApplicationEnvironmentOutputWithContext(ctx context.Context) ApplicationEnvironmentOutput

func (ApplicationEnvironmentOutput) Value

Variable value.

type ApplicationInput

type ApplicationInput interface {
	pulumi.Input

	ToApplicationOutput() ApplicationOutput
	ToApplicationOutputWithContext(ctx context.Context) ApplicationOutput
}

type ApplicationMap

type ApplicationMap map[string]ApplicationInput

func (ApplicationMap) ElementType

func (ApplicationMap) ElementType() reflect.Type

func (ApplicationMap) ToApplicationMapOutput

func (i ApplicationMap) ToApplicationMapOutput() ApplicationMapOutput

func (ApplicationMap) ToApplicationMapOutputWithContext

func (i ApplicationMap) ToApplicationMapOutputWithContext(ctx context.Context) ApplicationMapOutput

type ApplicationMapInput

type ApplicationMapInput interface {
	pulumi.Input

	ToApplicationMapOutput() ApplicationMapOutput
	ToApplicationMapOutputWithContext(context.Context) ApplicationMapOutput
}

ApplicationMapInput is an input type that accepts ApplicationMap and ApplicationMapOutput values. You can construct a concrete instance of `ApplicationMapInput` via:

ApplicationMap{ "key": ApplicationArgs{...} }

type ApplicationMapOutput

type ApplicationMapOutput struct{ *pulumi.OutputState }

func (ApplicationMapOutput) ElementType

func (ApplicationMapOutput) ElementType() reflect.Type

func (ApplicationMapOutput) MapIndex

func (ApplicationMapOutput) ToApplicationMapOutput

func (o ApplicationMapOutput) ToApplicationMapOutput() ApplicationMapOutput

func (ApplicationMapOutput) ToApplicationMapOutputWithContext

func (o ApplicationMapOutput) ToApplicationMapOutputWithContext(ctx context.Context) ApplicationMapOutput

type ApplicationOutput

type ApplicationOutput struct {
	*pulumi.OutputState
}

func (ApplicationOutput) ElementType

func (ApplicationOutput) ElementType() reflect.Type

func (ApplicationOutput) ToApplicationOutput

func (o ApplicationOutput) ToApplicationOutput() ApplicationOutput

func (ApplicationOutput) ToApplicationOutputWithContext

func (o ApplicationOutput) ToApplicationOutputWithContext(ctx context.Context) ApplicationOutput

func (ApplicationOutput) ToApplicationPtrOutput

func (o ApplicationOutput) ToApplicationPtrOutput() ApplicationPtrOutput

func (ApplicationOutput) ToApplicationPtrOutputWithContext

func (o ApplicationOutput) ToApplicationPtrOutputWithContext(ctx context.Context) ApplicationPtrOutput

type ApplicationPtrInput

type ApplicationPtrInput interface {
	pulumi.Input

	ToApplicationPtrOutput() ApplicationPtrOutput
	ToApplicationPtrOutputWithContext(ctx context.Context) ApplicationPtrOutput
}

type ApplicationPtrOutput

type ApplicationPtrOutput struct {
	*pulumi.OutputState
}

func (ApplicationPtrOutput) ElementType

func (ApplicationPtrOutput) ElementType() reflect.Type

func (ApplicationPtrOutput) ToApplicationPtrOutput

func (o ApplicationPtrOutput) ToApplicationPtrOutput() ApplicationPtrOutput

func (ApplicationPtrOutput) ToApplicationPtrOutputWithContext

func (o ApplicationPtrOutput) ToApplicationPtrOutputWithContext(ctx context.Context) ApplicationPtrOutput

type ApplicationSslConfiguration

type ApplicationSslConfiguration struct {
	// The contents of the certificate's domain.crt file.
	Certificate string `pulumi:"certificate"`
	// Can be used to specify an intermediate certificate authority key or client authentication.
	Chain *string `pulumi:"chain"`
	// The private key; the contents of the certificate's domain.key file.
	PrivateKey string `pulumi:"privateKey"`
}

type ApplicationSslConfigurationArgs

type ApplicationSslConfigurationArgs struct {
	// The contents of the certificate's domain.crt file.
	Certificate pulumi.StringInput `pulumi:"certificate"`
	// Can be used to specify an intermediate certificate authority key or client authentication.
	Chain pulumi.StringPtrInput `pulumi:"chain"`
	// The private key; the contents of the certificate's domain.key file.
	PrivateKey pulumi.StringInput `pulumi:"privateKey"`
}

func (ApplicationSslConfigurationArgs) ElementType

func (ApplicationSslConfigurationArgs) ToApplicationSslConfigurationOutput

func (i ApplicationSslConfigurationArgs) ToApplicationSslConfigurationOutput() ApplicationSslConfigurationOutput

func (ApplicationSslConfigurationArgs) ToApplicationSslConfigurationOutputWithContext

func (i ApplicationSslConfigurationArgs) ToApplicationSslConfigurationOutputWithContext(ctx context.Context) ApplicationSslConfigurationOutput

type ApplicationSslConfigurationArray

type ApplicationSslConfigurationArray []ApplicationSslConfigurationInput

func (ApplicationSslConfigurationArray) ElementType

func (ApplicationSslConfigurationArray) ToApplicationSslConfigurationArrayOutput

func (i ApplicationSslConfigurationArray) ToApplicationSslConfigurationArrayOutput() ApplicationSslConfigurationArrayOutput

func (ApplicationSslConfigurationArray) ToApplicationSslConfigurationArrayOutputWithContext

func (i ApplicationSslConfigurationArray) ToApplicationSslConfigurationArrayOutputWithContext(ctx context.Context) ApplicationSslConfigurationArrayOutput

type ApplicationSslConfigurationArrayInput

type ApplicationSslConfigurationArrayInput interface {
	pulumi.Input

	ToApplicationSslConfigurationArrayOutput() ApplicationSslConfigurationArrayOutput
	ToApplicationSslConfigurationArrayOutputWithContext(context.Context) ApplicationSslConfigurationArrayOutput
}

ApplicationSslConfigurationArrayInput is an input type that accepts ApplicationSslConfigurationArray and ApplicationSslConfigurationArrayOutput values. You can construct a concrete instance of `ApplicationSslConfigurationArrayInput` via:

ApplicationSslConfigurationArray{ ApplicationSslConfigurationArgs{...} }

type ApplicationSslConfigurationArrayOutput

type ApplicationSslConfigurationArrayOutput struct{ *pulumi.OutputState }

func (ApplicationSslConfigurationArrayOutput) ElementType

func (ApplicationSslConfigurationArrayOutput) Index

func (ApplicationSslConfigurationArrayOutput) ToApplicationSslConfigurationArrayOutput

func (o ApplicationSslConfigurationArrayOutput) ToApplicationSslConfigurationArrayOutput() ApplicationSslConfigurationArrayOutput

func (ApplicationSslConfigurationArrayOutput) ToApplicationSslConfigurationArrayOutputWithContext

func (o ApplicationSslConfigurationArrayOutput) ToApplicationSslConfigurationArrayOutputWithContext(ctx context.Context) ApplicationSslConfigurationArrayOutput

type ApplicationSslConfigurationInput

type ApplicationSslConfigurationInput interface {
	pulumi.Input

	ToApplicationSslConfigurationOutput() ApplicationSslConfigurationOutput
	ToApplicationSslConfigurationOutputWithContext(context.Context) ApplicationSslConfigurationOutput
}

ApplicationSslConfigurationInput is an input type that accepts ApplicationSslConfigurationArgs and ApplicationSslConfigurationOutput values. You can construct a concrete instance of `ApplicationSslConfigurationInput` via:

ApplicationSslConfigurationArgs{...}

type ApplicationSslConfigurationOutput

type ApplicationSslConfigurationOutput struct{ *pulumi.OutputState }

func (ApplicationSslConfigurationOutput) Certificate

The contents of the certificate's domain.crt file.

func (ApplicationSslConfigurationOutput) Chain

Can be used to specify an intermediate certificate authority key or client authentication.

func (ApplicationSslConfigurationOutput) ElementType

func (ApplicationSslConfigurationOutput) PrivateKey

The private key; the contents of the certificate's domain.key file.

func (ApplicationSslConfigurationOutput) ToApplicationSslConfigurationOutput

func (o ApplicationSslConfigurationOutput) ToApplicationSslConfigurationOutput() ApplicationSslConfigurationOutput

func (ApplicationSslConfigurationOutput) ToApplicationSslConfigurationOutputWithContext

func (o ApplicationSslConfigurationOutput) ToApplicationSslConfigurationOutputWithContext(ctx context.Context) ApplicationSslConfigurationOutput

type ApplicationState

type ApplicationState struct {
	// SCM configuration of the app as described below.
	AppSources ApplicationAppSourceArrayInput
	// Run bundle install when deploying for application of type `rails`.
	AutoBundleOnDeploy pulumi.StringPtrInput
	// Specify activity and workflow workers for your app using the aws-flow gem.
	AwsFlowRubySettings pulumi.StringPtrInput
	// The data source's ARN.
	DataSourceArn pulumi.StringPtrInput
	// The database name.
	DataSourceDatabaseName pulumi.StringPtrInput
	// The data source's type one of `AutoSelectOpsworksMysqlInstance`, `OpsworksMysqlInstance`, or `RdsDbInstance`.
	DataSourceType pulumi.StringPtrInput
	// A description of the app.
	Description pulumi.StringPtrInput
	// Subfolder for the document root for application of type `rails`.
	DocumentRoot pulumi.StringPtrInput
	// A list of virtual host alias.
	Domains pulumi.StringArrayInput
	// Whether to enable SSL for the app. This must be set in order to let `ssl_configuration.private_key`, `ssl_configuration.certificate` and `ssl_configuration.chain` take effect.
	EnableSsl pulumi.BoolPtrInput
	// Object to define environment variables.  Object is described below.
	Environments ApplicationEnvironmentArrayInput
	// A human-readable name for the application.
	Name pulumi.StringPtrInput
	// The name of the Rails environment for application of type `rails`.
	RailsEnv pulumi.StringPtrInput
	// A short, machine-readable name for the application. This can only be defined on resource creation and ignored on resource update.
	ShortName pulumi.StringPtrInput
	// The SSL configuration of the app. Object is described below.
	SslConfigurations ApplicationSslConfigurationArrayInput
	// The id of the stack the application will belong to.
	StackId pulumi.StringPtrInput
	// Opsworks application type. One of `aws-flow-ruby`, `java`, `rails`, `php`, `nodejs`, `static` or `other`.
	Type pulumi.StringPtrInput
}

func (ApplicationState) ElementType

func (ApplicationState) ElementType() reflect.Type

type CustomLayer

type CustomLayer struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrOutput `pulumi:"autoAssignElasticIps"`
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrOutput `pulumi:"autoAssignPublicIps"`
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrOutput     `pulumi:"autoHealing"`
	CustomConfigureRecipes pulumi.StringArrayOutput `pulumi:"customConfigureRecipes"`
	CustomDeployRecipes    pulumi.StringArrayOutput `pulumi:"customDeployRecipes"`
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrOutput `pulumi:"customInstanceProfileArn"`
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrOutput `pulumi:"customJson"`
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayOutput `pulumi:"customSecurityGroupIds"`
	CustomSetupRecipes     pulumi.StringArrayOutput `pulumi:"customSetupRecipes"`
	CustomShutdownRecipes  pulumi.StringArrayOutput `pulumi:"customShutdownRecipes"`
	CustomUndeployRecipes  pulumi.StringArrayOutput `pulumi:"customUndeployRecipes"`
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrOutput `pulumi:"drainElbOnShutdown"`
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes CustomLayerEbsVolumeArrayOutput `pulumi:"ebsVolumes"`
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrOutput `pulumi:"elasticLoadBalancer"`
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrOutput `pulumi:"installUpdatesOnBoot"`
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrOutput `pulumi:"instanceShutdownTimeout"`
	// A human-readable name for the layer.
	Name pulumi.StringOutput `pulumi:"name"`
	// A short, machine-readable name for the layer, which will be used to identify it in the Chef node JSON.
	ShortName pulumi.StringOutput `pulumi:"shortName"`
	// The id of the stack the layer will belong to.
	StackId pulumi.StringOutput `pulumi:"stackId"`
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayOutput `pulumi:"systemPackages"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrOutput `pulumi:"useEbsOptimizedInstances"`
}

Provides an OpsWorks custom layer resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/opsworks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := opsworks.NewCustomLayer(ctx, "custlayer", &opsworks.CustomLayerArgs{
			ShortName: pulumi.String("awesome"),
			StackId:   pulumi.Any(aws_opsworks_stack.Main.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

OpsWorks Custom Layers can be imported using the `id`, e.g.

```sh

$ pulumi import aws:opsworks/customLayer:CustomLayer bar 00000000-0000-0000-0000-000000000000

```

func GetCustomLayer

func GetCustomLayer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CustomLayerState, opts ...pulumi.ResourceOption) (*CustomLayer, error)

GetCustomLayer gets an existing CustomLayer 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 NewCustomLayer

func NewCustomLayer(ctx *pulumi.Context,
	name string, args *CustomLayerArgs, opts ...pulumi.ResourceOption) (*CustomLayer, error)

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

func (*CustomLayer) ElementType

func (*CustomLayer) ElementType() reflect.Type

func (*CustomLayer) ToCustomLayerOutput

func (i *CustomLayer) ToCustomLayerOutput() CustomLayerOutput

func (*CustomLayer) ToCustomLayerOutputWithContext

func (i *CustomLayer) ToCustomLayerOutputWithContext(ctx context.Context) CustomLayerOutput

func (*CustomLayer) ToCustomLayerPtrOutput

func (i *CustomLayer) ToCustomLayerPtrOutput() CustomLayerPtrOutput

func (*CustomLayer) ToCustomLayerPtrOutputWithContext

func (i *CustomLayer) ToCustomLayerPtrOutputWithContext(ctx context.Context) CustomLayerPtrOutput

type CustomLayerArgs

type CustomLayerArgs struct {
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes CustomLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// A short, machine-readable name for the layer, which will be used to identify it in the Chef node JSON.
	ShortName pulumi.StringInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

The set of arguments for constructing a CustomLayer resource.

func (CustomLayerArgs) ElementType

func (CustomLayerArgs) ElementType() reflect.Type

type CustomLayerArray

type CustomLayerArray []CustomLayerInput

func (CustomLayerArray) ElementType

func (CustomLayerArray) ElementType() reflect.Type

func (CustomLayerArray) ToCustomLayerArrayOutput

func (i CustomLayerArray) ToCustomLayerArrayOutput() CustomLayerArrayOutput

func (CustomLayerArray) ToCustomLayerArrayOutputWithContext

func (i CustomLayerArray) ToCustomLayerArrayOutputWithContext(ctx context.Context) CustomLayerArrayOutput

type CustomLayerArrayInput

type CustomLayerArrayInput interface {
	pulumi.Input

	ToCustomLayerArrayOutput() CustomLayerArrayOutput
	ToCustomLayerArrayOutputWithContext(context.Context) CustomLayerArrayOutput
}

CustomLayerArrayInput is an input type that accepts CustomLayerArray and CustomLayerArrayOutput values. You can construct a concrete instance of `CustomLayerArrayInput` via:

CustomLayerArray{ CustomLayerArgs{...} }

type CustomLayerArrayOutput

type CustomLayerArrayOutput struct{ *pulumi.OutputState }

func (CustomLayerArrayOutput) ElementType

func (CustomLayerArrayOutput) ElementType() reflect.Type

func (CustomLayerArrayOutput) Index

func (CustomLayerArrayOutput) ToCustomLayerArrayOutput

func (o CustomLayerArrayOutput) ToCustomLayerArrayOutput() CustomLayerArrayOutput

func (CustomLayerArrayOutput) ToCustomLayerArrayOutputWithContext

func (o CustomLayerArrayOutput) ToCustomLayerArrayOutputWithContext(ctx context.Context) CustomLayerArrayOutput

type CustomLayerEbsVolume

type CustomLayerEbsVolume struct {
	// Encrypt the volume.
	Encrypted *bool `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops *int `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint string `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks int `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel *string `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size int `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type *string `pulumi:"type"`
}

type CustomLayerEbsVolumeArgs

type CustomLayerEbsVolumeArgs struct {
	// Encrypt the volume.
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint pulumi.StringInput `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks pulumi.IntInput `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel pulumi.StringPtrInput `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size pulumi.IntInput `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (CustomLayerEbsVolumeArgs) ElementType

func (CustomLayerEbsVolumeArgs) ElementType() reflect.Type

func (CustomLayerEbsVolumeArgs) ToCustomLayerEbsVolumeOutput

func (i CustomLayerEbsVolumeArgs) ToCustomLayerEbsVolumeOutput() CustomLayerEbsVolumeOutput

func (CustomLayerEbsVolumeArgs) ToCustomLayerEbsVolumeOutputWithContext

func (i CustomLayerEbsVolumeArgs) ToCustomLayerEbsVolumeOutputWithContext(ctx context.Context) CustomLayerEbsVolumeOutput

type CustomLayerEbsVolumeArray

type CustomLayerEbsVolumeArray []CustomLayerEbsVolumeInput

func (CustomLayerEbsVolumeArray) ElementType

func (CustomLayerEbsVolumeArray) ElementType() reflect.Type

func (CustomLayerEbsVolumeArray) ToCustomLayerEbsVolumeArrayOutput

func (i CustomLayerEbsVolumeArray) ToCustomLayerEbsVolumeArrayOutput() CustomLayerEbsVolumeArrayOutput

func (CustomLayerEbsVolumeArray) ToCustomLayerEbsVolumeArrayOutputWithContext

func (i CustomLayerEbsVolumeArray) ToCustomLayerEbsVolumeArrayOutputWithContext(ctx context.Context) CustomLayerEbsVolumeArrayOutput

type CustomLayerEbsVolumeArrayInput

type CustomLayerEbsVolumeArrayInput interface {
	pulumi.Input

	ToCustomLayerEbsVolumeArrayOutput() CustomLayerEbsVolumeArrayOutput
	ToCustomLayerEbsVolumeArrayOutputWithContext(context.Context) CustomLayerEbsVolumeArrayOutput
}

CustomLayerEbsVolumeArrayInput is an input type that accepts CustomLayerEbsVolumeArray and CustomLayerEbsVolumeArrayOutput values. You can construct a concrete instance of `CustomLayerEbsVolumeArrayInput` via:

CustomLayerEbsVolumeArray{ CustomLayerEbsVolumeArgs{...} }

type CustomLayerEbsVolumeArrayOutput

type CustomLayerEbsVolumeArrayOutput struct{ *pulumi.OutputState }

func (CustomLayerEbsVolumeArrayOutput) ElementType

func (CustomLayerEbsVolumeArrayOutput) Index

func (CustomLayerEbsVolumeArrayOutput) ToCustomLayerEbsVolumeArrayOutput

func (o CustomLayerEbsVolumeArrayOutput) ToCustomLayerEbsVolumeArrayOutput() CustomLayerEbsVolumeArrayOutput

func (CustomLayerEbsVolumeArrayOutput) ToCustomLayerEbsVolumeArrayOutputWithContext

func (o CustomLayerEbsVolumeArrayOutput) ToCustomLayerEbsVolumeArrayOutputWithContext(ctx context.Context) CustomLayerEbsVolumeArrayOutput

type CustomLayerEbsVolumeInput

type CustomLayerEbsVolumeInput interface {
	pulumi.Input

	ToCustomLayerEbsVolumeOutput() CustomLayerEbsVolumeOutput
	ToCustomLayerEbsVolumeOutputWithContext(context.Context) CustomLayerEbsVolumeOutput
}

CustomLayerEbsVolumeInput is an input type that accepts CustomLayerEbsVolumeArgs and CustomLayerEbsVolumeOutput values. You can construct a concrete instance of `CustomLayerEbsVolumeInput` via:

CustomLayerEbsVolumeArgs{...}

type CustomLayerEbsVolumeOutput

type CustomLayerEbsVolumeOutput struct{ *pulumi.OutputState }

func (CustomLayerEbsVolumeOutput) ElementType

func (CustomLayerEbsVolumeOutput) ElementType() reflect.Type

func (CustomLayerEbsVolumeOutput) Encrypted

Encrypt the volume.

func (CustomLayerEbsVolumeOutput) Iops

For PIOPS volumes, the IOPS per disk.

func (CustomLayerEbsVolumeOutput) MountPoint

The path to mount the EBS volume on the layer's instances.

func (CustomLayerEbsVolumeOutput) NumberOfDisks

func (o CustomLayerEbsVolumeOutput) NumberOfDisks() pulumi.IntOutput

The number of disks to use for the EBS volume.

func (CustomLayerEbsVolumeOutput) RaidLevel

The RAID level to use for the volume.

func (CustomLayerEbsVolumeOutput) Size

The size of the volume in gigabytes.

func (CustomLayerEbsVolumeOutput) ToCustomLayerEbsVolumeOutput

func (o CustomLayerEbsVolumeOutput) ToCustomLayerEbsVolumeOutput() CustomLayerEbsVolumeOutput

func (CustomLayerEbsVolumeOutput) ToCustomLayerEbsVolumeOutputWithContext

func (o CustomLayerEbsVolumeOutput) ToCustomLayerEbsVolumeOutputWithContext(ctx context.Context) CustomLayerEbsVolumeOutput

func (CustomLayerEbsVolumeOutput) Type

The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.

type CustomLayerInput

type CustomLayerInput interface {
	pulumi.Input

	ToCustomLayerOutput() CustomLayerOutput
	ToCustomLayerOutputWithContext(ctx context.Context) CustomLayerOutput
}

type CustomLayerMap

type CustomLayerMap map[string]CustomLayerInput

func (CustomLayerMap) ElementType

func (CustomLayerMap) ElementType() reflect.Type

func (CustomLayerMap) ToCustomLayerMapOutput

func (i CustomLayerMap) ToCustomLayerMapOutput() CustomLayerMapOutput

func (CustomLayerMap) ToCustomLayerMapOutputWithContext

func (i CustomLayerMap) ToCustomLayerMapOutputWithContext(ctx context.Context) CustomLayerMapOutput

type CustomLayerMapInput

type CustomLayerMapInput interface {
	pulumi.Input

	ToCustomLayerMapOutput() CustomLayerMapOutput
	ToCustomLayerMapOutputWithContext(context.Context) CustomLayerMapOutput
}

CustomLayerMapInput is an input type that accepts CustomLayerMap and CustomLayerMapOutput values. You can construct a concrete instance of `CustomLayerMapInput` via:

CustomLayerMap{ "key": CustomLayerArgs{...} }

type CustomLayerMapOutput

type CustomLayerMapOutput struct{ *pulumi.OutputState }

func (CustomLayerMapOutput) ElementType

func (CustomLayerMapOutput) ElementType() reflect.Type

func (CustomLayerMapOutput) MapIndex

func (CustomLayerMapOutput) ToCustomLayerMapOutput

func (o CustomLayerMapOutput) ToCustomLayerMapOutput() CustomLayerMapOutput

func (CustomLayerMapOutput) ToCustomLayerMapOutputWithContext

func (o CustomLayerMapOutput) ToCustomLayerMapOutputWithContext(ctx context.Context) CustomLayerMapOutput

type CustomLayerOutput

type CustomLayerOutput struct {
	*pulumi.OutputState
}

func (CustomLayerOutput) ElementType

func (CustomLayerOutput) ElementType() reflect.Type

func (CustomLayerOutput) ToCustomLayerOutput

func (o CustomLayerOutput) ToCustomLayerOutput() CustomLayerOutput

func (CustomLayerOutput) ToCustomLayerOutputWithContext

func (o CustomLayerOutput) ToCustomLayerOutputWithContext(ctx context.Context) CustomLayerOutput

func (CustomLayerOutput) ToCustomLayerPtrOutput

func (o CustomLayerOutput) ToCustomLayerPtrOutput() CustomLayerPtrOutput

func (CustomLayerOutput) ToCustomLayerPtrOutputWithContext

func (o CustomLayerOutput) ToCustomLayerPtrOutputWithContext(ctx context.Context) CustomLayerPtrOutput

type CustomLayerPtrInput

type CustomLayerPtrInput interface {
	pulumi.Input

	ToCustomLayerPtrOutput() CustomLayerPtrOutput
	ToCustomLayerPtrOutputWithContext(ctx context.Context) CustomLayerPtrOutput
}

type CustomLayerPtrOutput

type CustomLayerPtrOutput struct {
	*pulumi.OutputState
}

func (CustomLayerPtrOutput) ElementType

func (CustomLayerPtrOutput) ElementType() reflect.Type

func (CustomLayerPtrOutput) ToCustomLayerPtrOutput

func (o CustomLayerPtrOutput) ToCustomLayerPtrOutput() CustomLayerPtrOutput

func (CustomLayerPtrOutput) ToCustomLayerPtrOutputWithContext

func (o CustomLayerPtrOutput) ToCustomLayerPtrOutputWithContext(ctx context.Context) CustomLayerPtrOutput

type CustomLayerState

type CustomLayerState struct {
	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringPtrInput
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes CustomLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// A short, machine-readable name for the layer, which will be used to identify it in the Chef node JSON.
	ShortName pulumi.StringPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringPtrInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

func (CustomLayerState) ElementType

func (CustomLayerState) ElementType() reflect.Type

type GangliaLayer

type GangliaLayer struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrOutput `pulumi:"autoAssignElasticIps"`
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrOutput `pulumi:"autoAssignPublicIps"`
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrOutput     `pulumi:"autoHealing"`
	CustomConfigureRecipes pulumi.StringArrayOutput `pulumi:"customConfigureRecipes"`
	CustomDeployRecipes    pulumi.StringArrayOutput `pulumi:"customDeployRecipes"`
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrOutput `pulumi:"customInstanceProfileArn"`
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrOutput `pulumi:"customJson"`
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayOutput `pulumi:"customSecurityGroupIds"`
	CustomSetupRecipes     pulumi.StringArrayOutput `pulumi:"customSetupRecipes"`
	CustomShutdownRecipes  pulumi.StringArrayOutput `pulumi:"customShutdownRecipes"`
	CustomUndeployRecipes  pulumi.StringArrayOutput `pulumi:"customUndeployRecipes"`
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrOutput `pulumi:"drainElbOnShutdown"`
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes GangliaLayerEbsVolumeArrayOutput `pulumi:"ebsVolumes"`
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrOutput `pulumi:"elasticLoadBalancer"`
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrOutput `pulumi:"installUpdatesOnBoot"`
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrOutput `pulumi:"instanceShutdownTimeout"`
	// A human-readable name for the layer.
	Name pulumi.StringOutput `pulumi:"name"`
	// The password to use for Ganglia.
	Password pulumi.StringOutput `pulumi:"password"`
	// The id of the stack the layer will belong to.
	StackId pulumi.StringOutput `pulumi:"stackId"`
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayOutput `pulumi:"systemPackages"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The URL path to use for Ganglia. Defaults to "/ganglia".
	Url pulumi.StringPtrOutput `pulumi:"url"`
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrOutput `pulumi:"useEbsOptimizedInstances"`
	// The username to use for Ganglia. Defaults to "opsworks".
	Username pulumi.StringPtrOutput `pulumi:"username"`
}

Provides an OpsWorks Ganglia layer resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/opsworks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := opsworks.NewGangliaLayer(ctx, "monitor", &opsworks.GangliaLayerArgs{
			StackId:  pulumi.Any(aws_opsworks_stack.Main.Id),
			Password: pulumi.String("foobarbaz"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetGangliaLayer

func GetGangliaLayer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GangliaLayerState, opts ...pulumi.ResourceOption) (*GangliaLayer, error)

GetGangliaLayer gets an existing GangliaLayer 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 NewGangliaLayer

func NewGangliaLayer(ctx *pulumi.Context,
	name string, args *GangliaLayerArgs, opts ...pulumi.ResourceOption) (*GangliaLayer, error)

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

func (*GangliaLayer) ElementType

func (*GangliaLayer) ElementType() reflect.Type

func (*GangliaLayer) ToGangliaLayerOutput

func (i *GangliaLayer) ToGangliaLayerOutput() GangliaLayerOutput

func (*GangliaLayer) ToGangliaLayerOutputWithContext

func (i *GangliaLayer) ToGangliaLayerOutputWithContext(ctx context.Context) GangliaLayerOutput

func (*GangliaLayer) ToGangliaLayerPtrOutput

func (i *GangliaLayer) ToGangliaLayerPtrOutput() GangliaLayerPtrOutput

func (*GangliaLayer) ToGangliaLayerPtrOutputWithContext

func (i *GangliaLayer) ToGangliaLayerPtrOutputWithContext(ctx context.Context) GangliaLayerPtrOutput

type GangliaLayerArgs

type GangliaLayerArgs struct {
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes GangliaLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// The password to use for Ganglia.
	Password pulumi.StringInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The URL path to use for Ganglia. Defaults to "/ganglia".
	Url pulumi.StringPtrInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
	// The username to use for Ganglia. Defaults to "opsworks".
	Username pulumi.StringPtrInput
}

The set of arguments for constructing a GangliaLayer resource.

func (GangliaLayerArgs) ElementType

func (GangliaLayerArgs) ElementType() reflect.Type

type GangliaLayerArray

type GangliaLayerArray []GangliaLayerInput

func (GangliaLayerArray) ElementType

func (GangliaLayerArray) ElementType() reflect.Type

func (GangliaLayerArray) ToGangliaLayerArrayOutput

func (i GangliaLayerArray) ToGangliaLayerArrayOutput() GangliaLayerArrayOutput

func (GangliaLayerArray) ToGangliaLayerArrayOutputWithContext

func (i GangliaLayerArray) ToGangliaLayerArrayOutputWithContext(ctx context.Context) GangliaLayerArrayOutput

type GangliaLayerArrayInput

type GangliaLayerArrayInput interface {
	pulumi.Input

	ToGangliaLayerArrayOutput() GangliaLayerArrayOutput
	ToGangliaLayerArrayOutputWithContext(context.Context) GangliaLayerArrayOutput
}

GangliaLayerArrayInput is an input type that accepts GangliaLayerArray and GangliaLayerArrayOutput values. You can construct a concrete instance of `GangliaLayerArrayInput` via:

GangliaLayerArray{ GangliaLayerArgs{...} }

type GangliaLayerArrayOutput

type GangliaLayerArrayOutput struct{ *pulumi.OutputState }

func (GangliaLayerArrayOutput) ElementType

func (GangliaLayerArrayOutput) ElementType() reflect.Type

func (GangliaLayerArrayOutput) Index

func (GangliaLayerArrayOutput) ToGangliaLayerArrayOutput

func (o GangliaLayerArrayOutput) ToGangliaLayerArrayOutput() GangliaLayerArrayOutput

func (GangliaLayerArrayOutput) ToGangliaLayerArrayOutputWithContext

func (o GangliaLayerArrayOutput) ToGangliaLayerArrayOutputWithContext(ctx context.Context) GangliaLayerArrayOutput

type GangliaLayerEbsVolume

type GangliaLayerEbsVolume struct {
	Encrypted *bool `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops *int `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint string `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks int `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel *string `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size int `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type *string `pulumi:"type"`
}

type GangliaLayerEbsVolumeArgs

type GangliaLayerEbsVolumeArgs struct {
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint pulumi.StringInput `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks pulumi.IntInput `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel pulumi.StringPtrInput `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size pulumi.IntInput `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (GangliaLayerEbsVolumeArgs) ElementType

func (GangliaLayerEbsVolumeArgs) ElementType() reflect.Type

func (GangliaLayerEbsVolumeArgs) ToGangliaLayerEbsVolumeOutput

func (i GangliaLayerEbsVolumeArgs) ToGangliaLayerEbsVolumeOutput() GangliaLayerEbsVolumeOutput

func (GangliaLayerEbsVolumeArgs) ToGangliaLayerEbsVolumeOutputWithContext

func (i GangliaLayerEbsVolumeArgs) ToGangliaLayerEbsVolumeOutputWithContext(ctx context.Context) GangliaLayerEbsVolumeOutput

type GangliaLayerEbsVolumeArray

type GangliaLayerEbsVolumeArray []GangliaLayerEbsVolumeInput

func (GangliaLayerEbsVolumeArray) ElementType

func (GangliaLayerEbsVolumeArray) ElementType() reflect.Type

func (GangliaLayerEbsVolumeArray) ToGangliaLayerEbsVolumeArrayOutput

func (i GangliaLayerEbsVolumeArray) ToGangliaLayerEbsVolumeArrayOutput() GangliaLayerEbsVolumeArrayOutput

func (GangliaLayerEbsVolumeArray) ToGangliaLayerEbsVolumeArrayOutputWithContext

func (i GangliaLayerEbsVolumeArray) ToGangliaLayerEbsVolumeArrayOutputWithContext(ctx context.Context) GangliaLayerEbsVolumeArrayOutput

type GangliaLayerEbsVolumeArrayInput

type GangliaLayerEbsVolumeArrayInput interface {
	pulumi.Input

	ToGangliaLayerEbsVolumeArrayOutput() GangliaLayerEbsVolumeArrayOutput
	ToGangliaLayerEbsVolumeArrayOutputWithContext(context.Context) GangliaLayerEbsVolumeArrayOutput
}

GangliaLayerEbsVolumeArrayInput is an input type that accepts GangliaLayerEbsVolumeArray and GangliaLayerEbsVolumeArrayOutput values. You can construct a concrete instance of `GangliaLayerEbsVolumeArrayInput` via:

GangliaLayerEbsVolumeArray{ GangliaLayerEbsVolumeArgs{...} }

type GangliaLayerEbsVolumeArrayOutput

type GangliaLayerEbsVolumeArrayOutput struct{ *pulumi.OutputState }

func (GangliaLayerEbsVolumeArrayOutput) ElementType

func (GangliaLayerEbsVolumeArrayOutput) Index

func (GangliaLayerEbsVolumeArrayOutput) ToGangliaLayerEbsVolumeArrayOutput

func (o GangliaLayerEbsVolumeArrayOutput) ToGangliaLayerEbsVolumeArrayOutput() GangliaLayerEbsVolumeArrayOutput

func (GangliaLayerEbsVolumeArrayOutput) ToGangliaLayerEbsVolumeArrayOutputWithContext

func (o GangliaLayerEbsVolumeArrayOutput) ToGangliaLayerEbsVolumeArrayOutputWithContext(ctx context.Context) GangliaLayerEbsVolumeArrayOutput

type GangliaLayerEbsVolumeInput

type GangliaLayerEbsVolumeInput interface {
	pulumi.Input

	ToGangliaLayerEbsVolumeOutput() GangliaLayerEbsVolumeOutput
	ToGangliaLayerEbsVolumeOutputWithContext(context.Context) GangliaLayerEbsVolumeOutput
}

GangliaLayerEbsVolumeInput is an input type that accepts GangliaLayerEbsVolumeArgs and GangliaLayerEbsVolumeOutput values. You can construct a concrete instance of `GangliaLayerEbsVolumeInput` via:

GangliaLayerEbsVolumeArgs{...}

type GangliaLayerEbsVolumeOutput

type GangliaLayerEbsVolumeOutput struct{ *pulumi.OutputState }

func (GangliaLayerEbsVolumeOutput) ElementType

func (GangliaLayerEbsVolumeOutput) Encrypted

func (GangliaLayerEbsVolumeOutput) Iops

For PIOPS volumes, the IOPS per disk.

func (GangliaLayerEbsVolumeOutput) MountPoint

The path to mount the EBS volume on the layer's instances.

func (GangliaLayerEbsVolumeOutput) NumberOfDisks

func (o GangliaLayerEbsVolumeOutput) NumberOfDisks() pulumi.IntOutput

The number of disks to use for the EBS volume.

func (GangliaLayerEbsVolumeOutput) RaidLevel

The RAID level to use for the volume.

func (GangliaLayerEbsVolumeOutput) Size

The size of the volume in gigabytes.

func (GangliaLayerEbsVolumeOutput) ToGangliaLayerEbsVolumeOutput

func (o GangliaLayerEbsVolumeOutput) ToGangliaLayerEbsVolumeOutput() GangliaLayerEbsVolumeOutput

func (GangliaLayerEbsVolumeOutput) ToGangliaLayerEbsVolumeOutputWithContext

func (o GangliaLayerEbsVolumeOutput) ToGangliaLayerEbsVolumeOutputWithContext(ctx context.Context) GangliaLayerEbsVolumeOutput

func (GangliaLayerEbsVolumeOutput) Type

The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.

type GangliaLayerInput

type GangliaLayerInput interface {
	pulumi.Input

	ToGangliaLayerOutput() GangliaLayerOutput
	ToGangliaLayerOutputWithContext(ctx context.Context) GangliaLayerOutput
}

type GangliaLayerMap

type GangliaLayerMap map[string]GangliaLayerInput

func (GangliaLayerMap) ElementType

func (GangliaLayerMap) ElementType() reflect.Type

func (GangliaLayerMap) ToGangliaLayerMapOutput

func (i GangliaLayerMap) ToGangliaLayerMapOutput() GangliaLayerMapOutput

func (GangliaLayerMap) ToGangliaLayerMapOutputWithContext

func (i GangliaLayerMap) ToGangliaLayerMapOutputWithContext(ctx context.Context) GangliaLayerMapOutput

type GangliaLayerMapInput

type GangliaLayerMapInput interface {
	pulumi.Input

	ToGangliaLayerMapOutput() GangliaLayerMapOutput
	ToGangliaLayerMapOutputWithContext(context.Context) GangliaLayerMapOutput
}

GangliaLayerMapInput is an input type that accepts GangliaLayerMap and GangliaLayerMapOutput values. You can construct a concrete instance of `GangliaLayerMapInput` via:

GangliaLayerMap{ "key": GangliaLayerArgs{...} }

type GangliaLayerMapOutput

type GangliaLayerMapOutput struct{ *pulumi.OutputState }

func (GangliaLayerMapOutput) ElementType

func (GangliaLayerMapOutput) ElementType() reflect.Type

func (GangliaLayerMapOutput) MapIndex

func (GangliaLayerMapOutput) ToGangliaLayerMapOutput

func (o GangliaLayerMapOutput) ToGangliaLayerMapOutput() GangliaLayerMapOutput

func (GangliaLayerMapOutput) ToGangliaLayerMapOutputWithContext

func (o GangliaLayerMapOutput) ToGangliaLayerMapOutputWithContext(ctx context.Context) GangliaLayerMapOutput

type GangliaLayerOutput

type GangliaLayerOutput struct {
	*pulumi.OutputState
}

func (GangliaLayerOutput) ElementType

func (GangliaLayerOutput) ElementType() reflect.Type

func (GangliaLayerOutput) ToGangliaLayerOutput

func (o GangliaLayerOutput) ToGangliaLayerOutput() GangliaLayerOutput

func (GangliaLayerOutput) ToGangliaLayerOutputWithContext

func (o GangliaLayerOutput) ToGangliaLayerOutputWithContext(ctx context.Context) GangliaLayerOutput

func (GangliaLayerOutput) ToGangliaLayerPtrOutput

func (o GangliaLayerOutput) ToGangliaLayerPtrOutput() GangliaLayerPtrOutput

func (GangliaLayerOutput) ToGangliaLayerPtrOutputWithContext

func (o GangliaLayerOutput) ToGangliaLayerPtrOutputWithContext(ctx context.Context) GangliaLayerPtrOutput

type GangliaLayerPtrInput

type GangliaLayerPtrInput interface {
	pulumi.Input

	ToGangliaLayerPtrOutput() GangliaLayerPtrOutput
	ToGangliaLayerPtrOutputWithContext(ctx context.Context) GangliaLayerPtrOutput
}

type GangliaLayerPtrOutput

type GangliaLayerPtrOutput struct {
	*pulumi.OutputState
}

func (GangliaLayerPtrOutput) ElementType

func (GangliaLayerPtrOutput) ElementType() reflect.Type

func (GangliaLayerPtrOutput) ToGangliaLayerPtrOutput

func (o GangliaLayerPtrOutput) ToGangliaLayerPtrOutput() GangliaLayerPtrOutput

func (GangliaLayerPtrOutput) ToGangliaLayerPtrOutputWithContext

func (o GangliaLayerPtrOutput) ToGangliaLayerPtrOutputWithContext(ctx context.Context) GangliaLayerPtrOutput

type GangliaLayerState

type GangliaLayerState struct {
	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringPtrInput
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes GangliaLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// The password to use for Ganglia.
	Password pulumi.StringPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringPtrInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The URL path to use for Ganglia. Defaults to "/ganglia".
	Url pulumi.StringPtrInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
	// The username to use for Ganglia. Defaults to "opsworks".
	Username pulumi.StringPtrInput
}

func (GangliaLayerState) ElementType

func (GangliaLayerState) ElementType() reflect.Type

type HaproxyLayer

type HaproxyLayer struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrOutput `pulumi:"autoAssignElasticIps"`
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrOutput `pulumi:"autoAssignPublicIps"`
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrOutput     `pulumi:"autoHealing"`
	CustomConfigureRecipes pulumi.StringArrayOutput `pulumi:"customConfigureRecipes"`
	CustomDeployRecipes    pulumi.StringArrayOutput `pulumi:"customDeployRecipes"`
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrOutput `pulumi:"customInstanceProfileArn"`
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrOutput `pulumi:"customJson"`
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayOutput `pulumi:"customSecurityGroupIds"`
	CustomSetupRecipes     pulumi.StringArrayOutput `pulumi:"customSetupRecipes"`
	CustomShutdownRecipes  pulumi.StringArrayOutput `pulumi:"customShutdownRecipes"`
	CustomUndeployRecipes  pulumi.StringArrayOutput `pulumi:"customUndeployRecipes"`
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrOutput `pulumi:"drainElbOnShutdown"`
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes HaproxyLayerEbsVolumeArrayOutput `pulumi:"ebsVolumes"`
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrOutput `pulumi:"elasticLoadBalancer"`
	// HTTP method to use for instance healthchecks. Defaults to "OPTIONS".
	HealthcheckMethod pulumi.StringPtrOutput `pulumi:"healthcheckMethod"`
	// URL path to use for instance healthchecks. Defaults to "/".
	HealthcheckUrl pulumi.StringPtrOutput `pulumi:"healthcheckUrl"`
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrOutput `pulumi:"installUpdatesOnBoot"`
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrOutput `pulumi:"instanceShutdownTimeout"`
	// A human-readable name for the layer.
	Name pulumi.StringOutput `pulumi:"name"`
	// The id of the stack the layer will belong to.
	StackId pulumi.StringOutput `pulumi:"stackId"`
	// Whether to enable HAProxy stats.
	StatsEnabled pulumi.BoolPtrOutput `pulumi:"statsEnabled"`
	// The password to use for HAProxy stats.
	StatsPassword pulumi.StringOutput `pulumi:"statsPassword"`
	// The HAProxy stats URL. Defaults to "/haproxy?stats".
	StatsUrl pulumi.StringPtrOutput `pulumi:"statsUrl"`
	// The username for HAProxy stats. Defaults to "opsworks".
	StatsUser pulumi.StringPtrOutput `pulumi:"statsUser"`
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayOutput `pulumi:"systemPackages"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrOutput `pulumi:"useEbsOptimizedInstances"`
}

Provides an OpsWorks haproxy layer resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/opsworks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := opsworks.NewHaproxyLayer(ctx, "lb", &opsworks.HaproxyLayerArgs{
			StackId:       pulumi.Any(aws_opsworks_stack.Main.Id),
			StatsPassword: pulumi.String("foobarbaz"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetHaproxyLayer

func GetHaproxyLayer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HaproxyLayerState, opts ...pulumi.ResourceOption) (*HaproxyLayer, error)

GetHaproxyLayer gets an existing HaproxyLayer 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 NewHaproxyLayer

func NewHaproxyLayer(ctx *pulumi.Context,
	name string, args *HaproxyLayerArgs, opts ...pulumi.ResourceOption) (*HaproxyLayer, error)

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

func (*HaproxyLayer) ElementType

func (*HaproxyLayer) ElementType() reflect.Type

func (*HaproxyLayer) ToHaproxyLayerOutput

func (i *HaproxyLayer) ToHaproxyLayerOutput() HaproxyLayerOutput

func (*HaproxyLayer) ToHaproxyLayerOutputWithContext

func (i *HaproxyLayer) ToHaproxyLayerOutputWithContext(ctx context.Context) HaproxyLayerOutput

func (*HaproxyLayer) ToHaproxyLayerPtrOutput

func (i *HaproxyLayer) ToHaproxyLayerPtrOutput() HaproxyLayerPtrOutput

func (*HaproxyLayer) ToHaproxyLayerPtrOutputWithContext

func (i *HaproxyLayer) ToHaproxyLayerPtrOutputWithContext(ctx context.Context) HaproxyLayerPtrOutput

type HaproxyLayerArgs

type HaproxyLayerArgs struct {
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes HaproxyLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// HTTP method to use for instance healthchecks. Defaults to "OPTIONS".
	HealthcheckMethod pulumi.StringPtrInput
	// URL path to use for instance healthchecks. Defaults to "/".
	HealthcheckUrl pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringInput
	// Whether to enable HAProxy stats.
	StatsEnabled pulumi.BoolPtrInput
	// The password to use for HAProxy stats.
	StatsPassword pulumi.StringInput
	// The HAProxy stats URL. Defaults to "/haproxy?stats".
	StatsUrl pulumi.StringPtrInput
	// The username for HAProxy stats. Defaults to "opsworks".
	StatsUser pulumi.StringPtrInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

The set of arguments for constructing a HaproxyLayer resource.

func (HaproxyLayerArgs) ElementType

func (HaproxyLayerArgs) ElementType() reflect.Type

type HaproxyLayerArray

type HaproxyLayerArray []HaproxyLayerInput

func (HaproxyLayerArray) ElementType

func (HaproxyLayerArray) ElementType() reflect.Type

func (HaproxyLayerArray) ToHaproxyLayerArrayOutput

func (i HaproxyLayerArray) ToHaproxyLayerArrayOutput() HaproxyLayerArrayOutput

func (HaproxyLayerArray) ToHaproxyLayerArrayOutputWithContext

func (i HaproxyLayerArray) ToHaproxyLayerArrayOutputWithContext(ctx context.Context) HaproxyLayerArrayOutput

type HaproxyLayerArrayInput

type HaproxyLayerArrayInput interface {
	pulumi.Input

	ToHaproxyLayerArrayOutput() HaproxyLayerArrayOutput
	ToHaproxyLayerArrayOutputWithContext(context.Context) HaproxyLayerArrayOutput
}

HaproxyLayerArrayInput is an input type that accepts HaproxyLayerArray and HaproxyLayerArrayOutput values. You can construct a concrete instance of `HaproxyLayerArrayInput` via:

HaproxyLayerArray{ HaproxyLayerArgs{...} }

type HaproxyLayerArrayOutput

type HaproxyLayerArrayOutput struct{ *pulumi.OutputState }

func (HaproxyLayerArrayOutput) ElementType

func (HaproxyLayerArrayOutput) ElementType() reflect.Type

func (HaproxyLayerArrayOutput) Index

func (HaproxyLayerArrayOutput) ToHaproxyLayerArrayOutput

func (o HaproxyLayerArrayOutput) ToHaproxyLayerArrayOutput() HaproxyLayerArrayOutput

func (HaproxyLayerArrayOutput) ToHaproxyLayerArrayOutputWithContext

func (o HaproxyLayerArrayOutput) ToHaproxyLayerArrayOutputWithContext(ctx context.Context) HaproxyLayerArrayOutput

type HaproxyLayerEbsVolume

type HaproxyLayerEbsVolume struct {
	Encrypted *bool `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops *int `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint string `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks int `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel *string `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size int `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type *string `pulumi:"type"`
}

type HaproxyLayerEbsVolumeArgs

type HaproxyLayerEbsVolumeArgs struct {
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint pulumi.StringInput `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks pulumi.IntInput `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel pulumi.StringPtrInput `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size pulumi.IntInput `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (HaproxyLayerEbsVolumeArgs) ElementType

func (HaproxyLayerEbsVolumeArgs) ElementType() reflect.Type

func (HaproxyLayerEbsVolumeArgs) ToHaproxyLayerEbsVolumeOutput

func (i HaproxyLayerEbsVolumeArgs) ToHaproxyLayerEbsVolumeOutput() HaproxyLayerEbsVolumeOutput

func (HaproxyLayerEbsVolumeArgs) ToHaproxyLayerEbsVolumeOutputWithContext

func (i HaproxyLayerEbsVolumeArgs) ToHaproxyLayerEbsVolumeOutputWithContext(ctx context.Context) HaproxyLayerEbsVolumeOutput

type HaproxyLayerEbsVolumeArray

type HaproxyLayerEbsVolumeArray []HaproxyLayerEbsVolumeInput

func (HaproxyLayerEbsVolumeArray) ElementType

func (HaproxyLayerEbsVolumeArray) ElementType() reflect.Type

func (HaproxyLayerEbsVolumeArray) ToHaproxyLayerEbsVolumeArrayOutput

func (i HaproxyLayerEbsVolumeArray) ToHaproxyLayerEbsVolumeArrayOutput() HaproxyLayerEbsVolumeArrayOutput

func (HaproxyLayerEbsVolumeArray) ToHaproxyLayerEbsVolumeArrayOutputWithContext

func (i HaproxyLayerEbsVolumeArray) ToHaproxyLayerEbsVolumeArrayOutputWithContext(ctx context.Context) HaproxyLayerEbsVolumeArrayOutput

type HaproxyLayerEbsVolumeArrayInput

type HaproxyLayerEbsVolumeArrayInput interface {
	pulumi.Input

	ToHaproxyLayerEbsVolumeArrayOutput() HaproxyLayerEbsVolumeArrayOutput
	ToHaproxyLayerEbsVolumeArrayOutputWithContext(context.Context) HaproxyLayerEbsVolumeArrayOutput
}

HaproxyLayerEbsVolumeArrayInput is an input type that accepts HaproxyLayerEbsVolumeArray and HaproxyLayerEbsVolumeArrayOutput values. You can construct a concrete instance of `HaproxyLayerEbsVolumeArrayInput` via:

HaproxyLayerEbsVolumeArray{ HaproxyLayerEbsVolumeArgs{...} }

type HaproxyLayerEbsVolumeArrayOutput

type HaproxyLayerEbsVolumeArrayOutput struct{ *pulumi.OutputState }

func (HaproxyLayerEbsVolumeArrayOutput) ElementType

func (HaproxyLayerEbsVolumeArrayOutput) Index

func (HaproxyLayerEbsVolumeArrayOutput) ToHaproxyLayerEbsVolumeArrayOutput

func (o HaproxyLayerEbsVolumeArrayOutput) ToHaproxyLayerEbsVolumeArrayOutput() HaproxyLayerEbsVolumeArrayOutput

func (HaproxyLayerEbsVolumeArrayOutput) ToHaproxyLayerEbsVolumeArrayOutputWithContext

func (o HaproxyLayerEbsVolumeArrayOutput) ToHaproxyLayerEbsVolumeArrayOutputWithContext(ctx context.Context) HaproxyLayerEbsVolumeArrayOutput

type HaproxyLayerEbsVolumeInput

type HaproxyLayerEbsVolumeInput interface {
	pulumi.Input

	ToHaproxyLayerEbsVolumeOutput() HaproxyLayerEbsVolumeOutput
	ToHaproxyLayerEbsVolumeOutputWithContext(context.Context) HaproxyLayerEbsVolumeOutput
}

HaproxyLayerEbsVolumeInput is an input type that accepts HaproxyLayerEbsVolumeArgs and HaproxyLayerEbsVolumeOutput values. You can construct a concrete instance of `HaproxyLayerEbsVolumeInput` via:

HaproxyLayerEbsVolumeArgs{...}

type HaproxyLayerEbsVolumeOutput

type HaproxyLayerEbsVolumeOutput struct{ *pulumi.OutputState }

func (HaproxyLayerEbsVolumeOutput) ElementType

func (HaproxyLayerEbsVolumeOutput) Encrypted

func (HaproxyLayerEbsVolumeOutput) Iops

For PIOPS volumes, the IOPS per disk.

func (HaproxyLayerEbsVolumeOutput) MountPoint

The path to mount the EBS volume on the layer's instances.

func (HaproxyLayerEbsVolumeOutput) NumberOfDisks

func (o HaproxyLayerEbsVolumeOutput) NumberOfDisks() pulumi.IntOutput

The number of disks to use for the EBS volume.

func (HaproxyLayerEbsVolumeOutput) RaidLevel

The RAID level to use for the volume.

func (HaproxyLayerEbsVolumeOutput) Size

The size of the volume in gigabytes.

func (HaproxyLayerEbsVolumeOutput) ToHaproxyLayerEbsVolumeOutput

func (o HaproxyLayerEbsVolumeOutput) ToHaproxyLayerEbsVolumeOutput() HaproxyLayerEbsVolumeOutput

func (HaproxyLayerEbsVolumeOutput) ToHaproxyLayerEbsVolumeOutputWithContext

func (o HaproxyLayerEbsVolumeOutput) ToHaproxyLayerEbsVolumeOutputWithContext(ctx context.Context) HaproxyLayerEbsVolumeOutput

func (HaproxyLayerEbsVolumeOutput) Type

The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.

type HaproxyLayerInput

type HaproxyLayerInput interface {
	pulumi.Input

	ToHaproxyLayerOutput() HaproxyLayerOutput
	ToHaproxyLayerOutputWithContext(ctx context.Context) HaproxyLayerOutput
}

type HaproxyLayerMap

type HaproxyLayerMap map[string]HaproxyLayerInput

func (HaproxyLayerMap) ElementType

func (HaproxyLayerMap) ElementType() reflect.Type

func (HaproxyLayerMap) ToHaproxyLayerMapOutput

func (i HaproxyLayerMap) ToHaproxyLayerMapOutput() HaproxyLayerMapOutput

func (HaproxyLayerMap) ToHaproxyLayerMapOutputWithContext

func (i HaproxyLayerMap) ToHaproxyLayerMapOutputWithContext(ctx context.Context) HaproxyLayerMapOutput

type HaproxyLayerMapInput

type HaproxyLayerMapInput interface {
	pulumi.Input

	ToHaproxyLayerMapOutput() HaproxyLayerMapOutput
	ToHaproxyLayerMapOutputWithContext(context.Context) HaproxyLayerMapOutput
}

HaproxyLayerMapInput is an input type that accepts HaproxyLayerMap and HaproxyLayerMapOutput values. You can construct a concrete instance of `HaproxyLayerMapInput` via:

HaproxyLayerMap{ "key": HaproxyLayerArgs{...} }

type HaproxyLayerMapOutput

type HaproxyLayerMapOutput struct{ *pulumi.OutputState }

func (HaproxyLayerMapOutput) ElementType

func (HaproxyLayerMapOutput) ElementType() reflect.Type

func (HaproxyLayerMapOutput) MapIndex

func (HaproxyLayerMapOutput) ToHaproxyLayerMapOutput

func (o HaproxyLayerMapOutput) ToHaproxyLayerMapOutput() HaproxyLayerMapOutput

func (HaproxyLayerMapOutput) ToHaproxyLayerMapOutputWithContext

func (o HaproxyLayerMapOutput) ToHaproxyLayerMapOutputWithContext(ctx context.Context) HaproxyLayerMapOutput

type HaproxyLayerOutput

type HaproxyLayerOutput struct {
	*pulumi.OutputState
}

func (HaproxyLayerOutput) ElementType

func (HaproxyLayerOutput) ElementType() reflect.Type

func (HaproxyLayerOutput) ToHaproxyLayerOutput

func (o HaproxyLayerOutput) ToHaproxyLayerOutput() HaproxyLayerOutput

func (HaproxyLayerOutput) ToHaproxyLayerOutputWithContext

func (o HaproxyLayerOutput) ToHaproxyLayerOutputWithContext(ctx context.Context) HaproxyLayerOutput

func (HaproxyLayerOutput) ToHaproxyLayerPtrOutput

func (o HaproxyLayerOutput) ToHaproxyLayerPtrOutput() HaproxyLayerPtrOutput

func (HaproxyLayerOutput) ToHaproxyLayerPtrOutputWithContext

func (o HaproxyLayerOutput) ToHaproxyLayerPtrOutputWithContext(ctx context.Context) HaproxyLayerPtrOutput

type HaproxyLayerPtrInput

type HaproxyLayerPtrInput interface {
	pulumi.Input

	ToHaproxyLayerPtrOutput() HaproxyLayerPtrOutput
	ToHaproxyLayerPtrOutputWithContext(ctx context.Context) HaproxyLayerPtrOutput
}

type HaproxyLayerPtrOutput

type HaproxyLayerPtrOutput struct {
	*pulumi.OutputState
}

func (HaproxyLayerPtrOutput) ElementType

func (HaproxyLayerPtrOutput) ElementType() reflect.Type

func (HaproxyLayerPtrOutput) ToHaproxyLayerPtrOutput

func (o HaproxyLayerPtrOutput) ToHaproxyLayerPtrOutput() HaproxyLayerPtrOutput

func (HaproxyLayerPtrOutput) ToHaproxyLayerPtrOutputWithContext

func (o HaproxyLayerPtrOutput) ToHaproxyLayerPtrOutputWithContext(ctx context.Context) HaproxyLayerPtrOutput

type HaproxyLayerState

type HaproxyLayerState struct {
	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringPtrInput
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes HaproxyLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// HTTP method to use for instance healthchecks. Defaults to "OPTIONS".
	HealthcheckMethod pulumi.StringPtrInput
	// URL path to use for instance healthchecks. Defaults to "/".
	HealthcheckUrl pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringPtrInput
	// Whether to enable HAProxy stats.
	StatsEnabled pulumi.BoolPtrInput
	// The password to use for HAProxy stats.
	StatsPassword pulumi.StringPtrInput
	// The HAProxy stats URL. Defaults to "/haproxy?stats".
	StatsUrl pulumi.StringPtrInput
	// The username for HAProxy stats. Defaults to "opsworks".
	StatsUser pulumi.StringPtrInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

func (HaproxyLayerState) ElementType

func (HaproxyLayerState) ElementType() reflect.Type

type Instance

type Instance struct {
	pulumi.CustomResourceState

	// The AWS OpsWorks agent to install.  Defaults to `"INHERIT"`.
	AgentVersion pulumi.StringPtrOutput `pulumi:"agentVersion"`
	// The AMI to use for the instance.  If an AMI is specified, `os` must be `"Custom"`.
	AmiId pulumi.StringOutput `pulumi:"amiId"`
	// Machine architecture for created instances.  Can be either `"x8664"` (the default) or `"i386"`
	Architecture pulumi.StringPtrOutput `pulumi:"architecture"`
	// Creates load-based or time-based instances.  If set, can be either: `"load"` or `"timer"`.
	AutoScalingType pulumi.StringPtrOutput `pulumi:"autoScalingType"`
	// Name of the availability zone where instances will be created
	// by default.
	AvailabilityZone pulumi.StringOutput  `pulumi:"availabilityZone"`
	CreatedAt        pulumi.StringOutput  `pulumi:"createdAt"`
	DeleteEbs        pulumi.BoolPtrOutput `pulumi:"deleteEbs"`
	DeleteEip        pulumi.BoolPtrOutput `pulumi:"deleteEip"`
	// Additional EBS block devices to attach to the
	// instance.  See Block Devices below for details.
	EbsBlockDevices InstanceEbsBlockDeviceArrayOutput `pulumi:"ebsBlockDevices"`
	// If true, the launched EC2 instance will be EBS-optimized.
	EbsOptimized pulumi.BoolPtrOutput `pulumi:"ebsOptimized"`
	// EC2 instance ID
	Ec2InstanceId pulumi.StringOutput `pulumi:"ec2InstanceId"`
	EcsClusterArn pulumi.StringOutput `pulumi:"ecsClusterArn"`
	ElasticIp     pulumi.StringOutput `pulumi:"elasticIp"`
	// Customize Ephemeral (also known as
	// "Instance Store") volumes on the instance. See Block Devices below for details.
	EphemeralBlockDevices InstanceEphemeralBlockDeviceArrayOutput `pulumi:"ephemeralBlockDevices"`
	// The instance's host name.
	Hostname            pulumi.StringOutput `pulumi:"hostname"`
	InfrastructureClass pulumi.StringOutput `pulumi:"infrastructureClass"`
	// Controls where to install OS and package updates when the instance boots.  Defaults to `true`.
	InstallUpdatesOnBoot pulumi.BoolPtrOutput `pulumi:"installUpdatesOnBoot"`
	InstanceProfileArn   pulumi.StringOutput  `pulumi:"instanceProfileArn"`
	// The type of instance to start
	InstanceType       pulumi.StringPtrOutput `pulumi:"instanceType"`
	LastServiceErrorId pulumi.StringOutput    `pulumi:"lastServiceErrorId"`
	// The ids of the layers the instance will belong to.
	LayerIds pulumi.StringArrayOutput `pulumi:"layerIds"`
	// Name of operating system that will be installed.
	Os       pulumi.StringOutput `pulumi:"os"`
	Platform pulumi.StringOutput `pulumi:"platform"`
	// The private DNS name assigned to the instance. Can only be
	// used inside the Amazon EC2, and only available if you've enabled DNS hostnames
	// for your VPC
	PrivateDns pulumi.StringOutput `pulumi:"privateDns"`
	// The private IP address assigned to the instance
	PrivateIp pulumi.StringOutput `pulumi:"privateIp"`
	// The public DNS name assigned to the instance. For EC2-VPC, this
	// is only available if you've enabled DNS hostnames for your VPC
	PublicDns pulumi.StringOutput `pulumi:"publicDns"`
	// The public IP address assigned to the instance, if applicable.
	PublicIp             pulumi.StringOutput `pulumi:"publicIp"`
	RegisteredBy         pulumi.StringOutput `pulumi:"registeredBy"`
	ReportedAgentVersion pulumi.StringOutput `pulumi:"reportedAgentVersion"`
	ReportedOsFamily     pulumi.StringOutput `pulumi:"reportedOsFamily"`
	ReportedOsName       pulumi.StringOutput `pulumi:"reportedOsName"`
	ReportedOsVersion    pulumi.StringOutput `pulumi:"reportedOsVersion"`
	// Customize details about the root block
	// device of the instance. See Block Devices below for details.
	RootBlockDevices InstanceRootBlockDeviceArrayOutput `pulumi:"rootBlockDevices"`
	// Name of the type of root device instances will have by default.  Can be either `"ebs"` or `"instance-store"`
	RootDeviceType     pulumi.StringOutput `pulumi:"rootDeviceType"`
	RootDeviceVolumeId pulumi.StringOutput `pulumi:"rootDeviceVolumeId"`
	// The associated security groups.
	SecurityGroupIds         pulumi.StringArrayOutput `pulumi:"securityGroupIds"`
	SshHostDsaKeyFingerprint pulumi.StringOutput      `pulumi:"sshHostDsaKeyFingerprint"`
	SshHostRsaKeyFingerprint pulumi.StringOutput      `pulumi:"sshHostRsaKeyFingerprint"`
	// Name of the SSH keypair that instances will have by default.
	SshKeyName pulumi.StringOutput `pulumi:"sshKeyName"`
	// The id of the stack the instance will belong to.
	StackId pulumi.StringOutput `pulumi:"stackId"`
	// The desired state of the instance.  Can be either `"running"` or `"stopped"`.
	State  pulumi.StringPtrOutput `pulumi:"state"`
	Status pulumi.StringOutput    `pulumi:"status"`
	// Subnet ID to attach to
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
	// Instance tenancy to use. Can be one of `"default"`, `"dedicated"` or `"host"`
	Tenancy pulumi.StringOutput `pulumi:"tenancy"`
	// Keyword to choose what virtualization mode created instances
	// will use. Can be either `"paravirtual"` or `"hvm"`.
	VirtualizationType pulumi.StringOutput `pulumi:"virtualizationType"`
}

Provides an OpsWorks instance resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/opsworks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := opsworks.NewInstance(ctx, "my_instance", &opsworks.InstanceArgs{
			StackId: pulumi.Any(aws_opsworks_stack.Main.Id),
			LayerIds: pulumi.StringArray{
				pulumi.Any(aws_opsworks_custom_layer.My - layer.Id),
			},
			InstanceType: pulumi.String("t2.micro"),
			Os:           pulumi.String("Amazon Linux 2015.09"),
			State:        pulumi.String("stopped"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## Block devices

Each of the `*_block_device` attributes controls a portion of the AWS Instance's "Block Device Mapping". It's a good idea to familiarize yourself with [AWS's Block Device Mapping docs](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html) to understand the implications of using these attributes.

The `rootBlockDevice` mapping supports the following:

  • `volumeType` - (Optional) The type of volume. Can be `"standard"`, `"gp2"`, or `"io1"`. (Default: `"standard"`).
  • `volumeSize` - (Optional) The size of the volume in gigabytes.
  • `iops` - (Optional) The amount of provisioned [IOPS](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). This must be set with a `volumeType` of `"io1"`.
  • `deleteOnTermination` - (Optional) Whether the volume should be destroyed on instance termination (Default: `true`).

Modifying any of the `rootBlockDevice` settings requires resource replacement.

Each `ebsBlockDevice` supports the following:

  • `deviceName` - The name of the device to mount.
  • `snapshotId` - (Optional) The Snapshot ID to mount.
  • `volumeType` - (Optional) The type of volume. Can be `"standard"`, `"gp2"`, or `"io1"`. (Default: `"standard"`).
  • `volumeSize` - (Optional) The size of the volume in gigabytes.
  • `iops` - (Optional) The amount of provisioned [IOPS](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). This must be set with a `volumeType` of `"io1"`.
  • `deleteOnTermination` - (Optional) Whether the volume should be destroyed on instance termination (Default: `true`).

Modifying any `ebsBlockDevice` currently requires resource replacement.

Each `ephemeralBlockDevice` supports the following:

Each AWS Instance type has a different set of Instance Store block devices available for attachment. AWS [publishes a list](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#StorageOnInstanceTypes) of which ephemeral devices are available on each type. The devices are always identified by the `virtualName` in the format `"ephemeral{0..N}"`.

> **NOTE:** Currently, changes to `*_block_device` configuration of _existing_ resources cannot be automatically detected by this provider. After making updates to block device configuration, resource recreation can be manually triggered by using the [`up` command with the --replace argument](https://www.pulumi.com/docs/reference/cli/pulumi_up/).

## Import

Opsworks Instances can be imported using the `instance id`, e.g.

```sh

$ pulumi import aws:opsworks/instance:Instance my_instance 4d6d1710-ded9-42a1-b08e-b043ad7af1e2

```

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

func (*Instance) ToInstancePtrOutput

func (i *Instance) ToInstancePtrOutput() InstancePtrOutput

func (*Instance) ToInstancePtrOutputWithContext

func (i *Instance) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstanceArgs

type InstanceArgs struct {
	// The AWS OpsWorks agent to install.  Defaults to `"INHERIT"`.
	AgentVersion pulumi.StringPtrInput
	// The AMI to use for the instance.  If an AMI is specified, `os` must be `"Custom"`.
	AmiId pulumi.StringPtrInput
	// Machine architecture for created instances.  Can be either `"x8664"` (the default) or `"i386"`
	Architecture pulumi.StringPtrInput
	// Creates load-based or time-based instances.  If set, can be either: `"load"` or `"timer"`.
	AutoScalingType pulumi.StringPtrInput
	// Name of the availability zone where instances will be created
	// by default.
	AvailabilityZone pulumi.StringPtrInput
	CreatedAt        pulumi.StringPtrInput
	DeleteEbs        pulumi.BoolPtrInput
	DeleteEip        pulumi.BoolPtrInput
	// Additional EBS block devices to attach to the
	// instance.  See Block Devices below for details.
	EbsBlockDevices InstanceEbsBlockDeviceArrayInput
	// If true, the launched EC2 instance will be EBS-optimized.
	EbsOptimized  pulumi.BoolPtrInput
	EcsClusterArn pulumi.StringPtrInput
	ElasticIp     pulumi.StringPtrInput
	// Customize Ephemeral (also known as
	// "Instance Store") volumes on the instance. See Block Devices below for details.
	EphemeralBlockDevices InstanceEphemeralBlockDeviceArrayInput
	// The instance's host name.
	Hostname            pulumi.StringPtrInput
	InfrastructureClass pulumi.StringPtrInput
	// Controls where to install OS and package updates when the instance boots.  Defaults to `true`.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	InstanceProfileArn   pulumi.StringPtrInput
	// The type of instance to start
	InstanceType       pulumi.StringPtrInput
	LastServiceErrorId pulumi.StringPtrInput
	// The ids of the layers the instance will belong to.
	LayerIds pulumi.StringArrayInput
	// Name of operating system that will be installed.
	Os       pulumi.StringPtrInput
	Platform pulumi.StringPtrInput
	// The private DNS name assigned to the instance. Can only be
	// used inside the Amazon EC2, and only available if you've enabled DNS hostnames
	// for your VPC
	PrivateDns pulumi.StringPtrInput
	// The private IP address assigned to the instance
	PrivateIp pulumi.StringPtrInput
	// The public DNS name assigned to the instance. For EC2-VPC, this
	// is only available if you've enabled DNS hostnames for your VPC
	PublicDns pulumi.StringPtrInput
	// The public IP address assigned to the instance, if applicable.
	PublicIp             pulumi.StringPtrInput
	RegisteredBy         pulumi.StringPtrInput
	ReportedAgentVersion pulumi.StringPtrInput
	ReportedOsFamily     pulumi.StringPtrInput
	ReportedOsName       pulumi.StringPtrInput
	ReportedOsVersion    pulumi.StringPtrInput
	// Customize details about the root block
	// device of the instance. See Block Devices below for details.
	RootBlockDevices InstanceRootBlockDeviceArrayInput
	// Name of the type of root device instances will have by default.  Can be either `"ebs"` or `"instance-store"`
	RootDeviceType     pulumi.StringPtrInput
	RootDeviceVolumeId pulumi.StringPtrInput
	// The associated security groups.
	SecurityGroupIds         pulumi.StringArrayInput
	SshHostDsaKeyFingerprint pulumi.StringPtrInput
	SshHostRsaKeyFingerprint pulumi.StringPtrInput
	// Name of the SSH keypair that instances will have by default.
	SshKeyName pulumi.StringPtrInput
	// The id of the stack the instance will belong to.
	StackId pulumi.StringInput
	// The desired state of the instance.  Can be either `"running"` or `"stopped"`.
	State  pulumi.StringPtrInput
	Status pulumi.StringPtrInput
	// Subnet ID to attach to
	SubnetId pulumi.StringPtrInput
	// Instance tenancy to use. Can be one of `"default"`, `"dedicated"` or `"host"`
	Tenancy pulumi.StringPtrInput
	// Keyword to choose what virtualization mode created instances
	// will use. Can be either `"paravirtual"` or `"hvm"`.
	VirtualizationType 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 InstanceEbsBlockDevice

type InstanceEbsBlockDevice struct {
	DeleteOnTermination *bool   `pulumi:"deleteOnTermination"`
	DeviceName          string  `pulumi:"deviceName"`
	Iops                *int    `pulumi:"iops"`
	SnapshotId          *string `pulumi:"snapshotId"`
	VolumeSize          *int    `pulumi:"volumeSize"`
	VolumeType          *string `pulumi:"volumeType"`
}

type InstanceEbsBlockDeviceArgs

type InstanceEbsBlockDeviceArgs struct {
	DeleteOnTermination pulumi.BoolPtrInput   `pulumi:"deleteOnTermination"`
	DeviceName          pulumi.StringInput    `pulumi:"deviceName"`
	Iops                pulumi.IntPtrInput    `pulumi:"iops"`
	SnapshotId          pulumi.StringPtrInput `pulumi:"snapshotId"`
	VolumeSize          pulumi.IntPtrInput    `pulumi:"volumeSize"`
	VolumeType          pulumi.StringPtrInput `pulumi:"volumeType"`
}

func (InstanceEbsBlockDeviceArgs) ElementType

func (InstanceEbsBlockDeviceArgs) ElementType() reflect.Type

func (InstanceEbsBlockDeviceArgs) ToInstanceEbsBlockDeviceOutput

func (i InstanceEbsBlockDeviceArgs) ToInstanceEbsBlockDeviceOutput() InstanceEbsBlockDeviceOutput

func (InstanceEbsBlockDeviceArgs) ToInstanceEbsBlockDeviceOutputWithContext

func (i InstanceEbsBlockDeviceArgs) ToInstanceEbsBlockDeviceOutputWithContext(ctx context.Context) InstanceEbsBlockDeviceOutput

type InstanceEbsBlockDeviceArray

type InstanceEbsBlockDeviceArray []InstanceEbsBlockDeviceInput

func (InstanceEbsBlockDeviceArray) ElementType

func (InstanceEbsBlockDeviceArray) ToInstanceEbsBlockDeviceArrayOutput

func (i InstanceEbsBlockDeviceArray) ToInstanceEbsBlockDeviceArrayOutput() InstanceEbsBlockDeviceArrayOutput

func (InstanceEbsBlockDeviceArray) ToInstanceEbsBlockDeviceArrayOutputWithContext

func (i InstanceEbsBlockDeviceArray) ToInstanceEbsBlockDeviceArrayOutputWithContext(ctx context.Context) InstanceEbsBlockDeviceArrayOutput

type InstanceEbsBlockDeviceArrayInput

type InstanceEbsBlockDeviceArrayInput interface {
	pulumi.Input

	ToInstanceEbsBlockDeviceArrayOutput() InstanceEbsBlockDeviceArrayOutput
	ToInstanceEbsBlockDeviceArrayOutputWithContext(context.Context) InstanceEbsBlockDeviceArrayOutput
}

InstanceEbsBlockDeviceArrayInput is an input type that accepts InstanceEbsBlockDeviceArray and InstanceEbsBlockDeviceArrayOutput values. You can construct a concrete instance of `InstanceEbsBlockDeviceArrayInput` via:

InstanceEbsBlockDeviceArray{ InstanceEbsBlockDeviceArgs{...} }

type InstanceEbsBlockDeviceArrayOutput

type InstanceEbsBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (InstanceEbsBlockDeviceArrayOutput) ElementType

func (InstanceEbsBlockDeviceArrayOutput) Index

func (InstanceEbsBlockDeviceArrayOutput) ToInstanceEbsBlockDeviceArrayOutput

func (o InstanceEbsBlockDeviceArrayOutput) ToInstanceEbsBlockDeviceArrayOutput() InstanceEbsBlockDeviceArrayOutput

func (InstanceEbsBlockDeviceArrayOutput) ToInstanceEbsBlockDeviceArrayOutputWithContext

func (o InstanceEbsBlockDeviceArrayOutput) ToInstanceEbsBlockDeviceArrayOutputWithContext(ctx context.Context) InstanceEbsBlockDeviceArrayOutput

type InstanceEbsBlockDeviceInput

type InstanceEbsBlockDeviceInput interface {
	pulumi.Input

	ToInstanceEbsBlockDeviceOutput() InstanceEbsBlockDeviceOutput
	ToInstanceEbsBlockDeviceOutputWithContext(context.Context) InstanceEbsBlockDeviceOutput
}

InstanceEbsBlockDeviceInput is an input type that accepts InstanceEbsBlockDeviceArgs and InstanceEbsBlockDeviceOutput values. You can construct a concrete instance of `InstanceEbsBlockDeviceInput` via:

InstanceEbsBlockDeviceArgs{...}

type InstanceEbsBlockDeviceOutput

type InstanceEbsBlockDeviceOutput struct{ *pulumi.OutputState }

func (InstanceEbsBlockDeviceOutput) DeleteOnTermination

func (o InstanceEbsBlockDeviceOutput) DeleteOnTermination() pulumi.BoolPtrOutput

func (InstanceEbsBlockDeviceOutput) DeviceName

func (InstanceEbsBlockDeviceOutput) ElementType

func (InstanceEbsBlockDeviceOutput) Iops

func (InstanceEbsBlockDeviceOutput) SnapshotId

func (InstanceEbsBlockDeviceOutput) ToInstanceEbsBlockDeviceOutput

func (o InstanceEbsBlockDeviceOutput) ToInstanceEbsBlockDeviceOutput() InstanceEbsBlockDeviceOutput

func (InstanceEbsBlockDeviceOutput) ToInstanceEbsBlockDeviceOutputWithContext

func (o InstanceEbsBlockDeviceOutput) ToInstanceEbsBlockDeviceOutputWithContext(ctx context.Context) InstanceEbsBlockDeviceOutput

func (InstanceEbsBlockDeviceOutput) VolumeSize

func (InstanceEbsBlockDeviceOutput) VolumeType

type InstanceEphemeralBlockDevice

type InstanceEphemeralBlockDevice struct {
	DeviceName  string `pulumi:"deviceName"`
	VirtualName string `pulumi:"virtualName"`
}

type InstanceEphemeralBlockDeviceArgs

type InstanceEphemeralBlockDeviceArgs struct {
	DeviceName  pulumi.StringInput `pulumi:"deviceName"`
	VirtualName pulumi.StringInput `pulumi:"virtualName"`
}

func (InstanceEphemeralBlockDeviceArgs) ElementType

func (InstanceEphemeralBlockDeviceArgs) ToInstanceEphemeralBlockDeviceOutput

func (i InstanceEphemeralBlockDeviceArgs) ToInstanceEphemeralBlockDeviceOutput() InstanceEphemeralBlockDeviceOutput

func (InstanceEphemeralBlockDeviceArgs) ToInstanceEphemeralBlockDeviceOutputWithContext

func (i InstanceEphemeralBlockDeviceArgs) ToInstanceEphemeralBlockDeviceOutputWithContext(ctx context.Context) InstanceEphemeralBlockDeviceOutput

type InstanceEphemeralBlockDeviceArray

type InstanceEphemeralBlockDeviceArray []InstanceEphemeralBlockDeviceInput

func (InstanceEphemeralBlockDeviceArray) ElementType

func (InstanceEphemeralBlockDeviceArray) ToInstanceEphemeralBlockDeviceArrayOutput

func (i InstanceEphemeralBlockDeviceArray) ToInstanceEphemeralBlockDeviceArrayOutput() InstanceEphemeralBlockDeviceArrayOutput

func (InstanceEphemeralBlockDeviceArray) ToInstanceEphemeralBlockDeviceArrayOutputWithContext

func (i InstanceEphemeralBlockDeviceArray) ToInstanceEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) InstanceEphemeralBlockDeviceArrayOutput

type InstanceEphemeralBlockDeviceArrayInput

type InstanceEphemeralBlockDeviceArrayInput interface {
	pulumi.Input

	ToInstanceEphemeralBlockDeviceArrayOutput() InstanceEphemeralBlockDeviceArrayOutput
	ToInstanceEphemeralBlockDeviceArrayOutputWithContext(context.Context) InstanceEphemeralBlockDeviceArrayOutput
}

InstanceEphemeralBlockDeviceArrayInput is an input type that accepts InstanceEphemeralBlockDeviceArray and InstanceEphemeralBlockDeviceArrayOutput values. You can construct a concrete instance of `InstanceEphemeralBlockDeviceArrayInput` via:

InstanceEphemeralBlockDeviceArray{ InstanceEphemeralBlockDeviceArgs{...} }

type InstanceEphemeralBlockDeviceArrayOutput

type InstanceEphemeralBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (InstanceEphemeralBlockDeviceArrayOutput) ElementType

func (InstanceEphemeralBlockDeviceArrayOutput) Index

func (InstanceEphemeralBlockDeviceArrayOutput) ToInstanceEphemeralBlockDeviceArrayOutput

func (o InstanceEphemeralBlockDeviceArrayOutput) ToInstanceEphemeralBlockDeviceArrayOutput() InstanceEphemeralBlockDeviceArrayOutput

func (InstanceEphemeralBlockDeviceArrayOutput) ToInstanceEphemeralBlockDeviceArrayOutputWithContext

func (o InstanceEphemeralBlockDeviceArrayOutput) ToInstanceEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) InstanceEphemeralBlockDeviceArrayOutput

type InstanceEphemeralBlockDeviceInput

type InstanceEphemeralBlockDeviceInput interface {
	pulumi.Input

	ToInstanceEphemeralBlockDeviceOutput() InstanceEphemeralBlockDeviceOutput
	ToInstanceEphemeralBlockDeviceOutputWithContext(context.Context) InstanceEphemeralBlockDeviceOutput
}

InstanceEphemeralBlockDeviceInput is an input type that accepts InstanceEphemeralBlockDeviceArgs and InstanceEphemeralBlockDeviceOutput values. You can construct a concrete instance of `InstanceEphemeralBlockDeviceInput` via:

InstanceEphemeralBlockDeviceArgs{...}

type InstanceEphemeralBlockDeviceOutput

type InstanceEphemeralBlockDeviceOutput struct{ *pulumi.OutputState }

func (InstanceEphemeralBlockDeviceOutput) DeviceName

func (InstanceEphemeralBlockDeviceOutput) ElementType

func (InstanceEphemeralBlockDeviceOutput) ToInstanceEphemeralBlockDeviceOutput

func (o InstanceEphemeralBlockDeviceOutput) ToInstanceEphemeralBlockDeviceOutput() InstanceEphemeralBlockDeviceOutput

func (InstanceEphemeralBlockDeviceOutput) ToInstanceEphemeralBlockDeviceOutputWithContext

func (o InstanceEphemeralBlockDeviceOutput) ToInstanceEphemeralBlockDeviceOutputWithContext(ctx context.Context) InstanceEphemeralBlockDeviceOutput

func (InstanceEphemeralBlockDeviceOutput) VirtualName

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) ElementType

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) ToInstanceOutput

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext

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

func (InstanceOutput) ToInstancePtrOutput

func (o InstanceOutput) ToInstancePtrOutput() InstancePtrOutput

func (InstanceOutput) ToInstancePtrOutputWithContext

func (o InstanceOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstancePtrInput

type InstancePtrInput interface {
	pulumi.Input

	ToInstancePtrOutput() InstancePtrOutput
	ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput
}

type InstancePtrOutput

type InstancePtrOutput struct {
	*pulumi.OutputState
}

func (InstancePtrOutput) ElementType

func (InstancePtrOutput) ElementType() reflect.Type

func (InstancePtrOutput) ToInstancePtrOutput

func (o InstancePtrOutput) ToInstancePtrOutput() InstancePtrOutput

func (InstancePtrOutput) ToInstancePtrOutputWithContext

func (o InstancePtrOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstanceRootBlockDevice

type InstanceRootBlockDevice struct {
	DeleteOnTermination *bool   `pulumi:"deleteOnTermination"`
	Iops                *int    `pulumi:"iops"`
	VolumeSize          *int    `pulumi:"volumeSize"`
	VolumeType          *string `pulumi:"volumeType"`
}

type InstanceRootBlockDeviceArgs

type InstanceRootBlockDeviceArgs struct {
	DeleteOnTermination pulumi.BoolPtrInput   `pulumi:"deleteOnTermination"`
	Iops                pulumi.IntPtrInput    `pulumi:"iops"`
	VolumeSize          pulumi.IntPtrInput    `pulumi:"volumeSize"`
	VolumeType          pulumi.StringPtrInput `pulumi:"volumeType"`
}

func (InstanceRootBlockDeviceArgs) ElementType

func (InstanceRootBlockDeviceArgs) ToInstanceRootBlockDeviceOutput

func (i InstanceRootBlockDeviceArgs) ToInstanceRootBlockDeviceOutput() InstanceRootBlockDeviceOutput

func (InstanceRootBlockDeviceArgs) ToInstanceRootBlockDeviceOutputWithContext

func (i InstanceRootBlockDeviceArgs) ToInstanceRootBlockDeviceOutputWithContext(ctx context.Context) InstanceRootBlockDeviceOutput

type InstanceRootBlockDeviceArray

type InstanceRootBlockDeviceArray []InstanceRootBlockDeviceInput

func (InstanceRootBlockDeviceArray) ElementType

func (InstanceRootBlockDeviceArray) ToInstanceRootBlockDeviceArrayOutput

func (i InstanceRootBlockDeviceArray) ToInstanceRootBlockDeviceArrayOutput() InstanceRootBlockDeviceArrayOutput

func (InstanceRootBlockDeviceArray) ToInstanceRootBlockDeviceArrayOutputWithContext

func (i InstanceRootBlockDeviceArray) ToInstanceRootBlockDeviceArrayOutputWithContext(ctx context.Context) InstanceRootBlockDeviceArrayOutput

type InstanceRootBlockDeviceArrayInput

type InstanceRootBlockDeviceArrayInput interface {
	pulumi.Input

	ToInstanceRootBlockDeviceArrayOutput() InstanceRootBlockDeviceArrayOutput
	ToInstanceRootBlockDeviceArrayOutputWithContext(context.Context) InstanceRootBlockDeviceArrayOutput
}

InstanceRootBlockDeviceArrayInput is an input type that accepts InstanceRootBlockDeviceArray and InstanceRootBlockDeviceArrayOutput values. You can construct a concrete instance of `InstanceRootBlockDeviceArrayInput` via:

InstanceRootBlockDeviceArray{ InstanceRootBlockDeviceArgs{...} }

type InstanceRootBlockDeviceArrayOutput

type InstanceRootBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (InstanceRootBlockDeviceArrayOutput) ElementType

func (InstanceRootBlockDeviceArrayOutput) Index

func (InstanceRootBlockDeviceArrayOutput) ToInstanceRootBlockDeviceArrayOutput

func (o InstanceRootBlockDeviceArrayOutput) ToInstanceRootBlockDeviceArrayOutput() InstanceRootBlockDeviceArrayOutput

func (InstanceRootBlockDeviceArrayOutput) ToInstanceRootBlockDeviceArrayOutputWithContext

func (o InstanceRootBlockDeviceArrayOutput) ToInstanceRootBlockDeviceArrayOutputWithContext(ctx context.Context) InstanceRootBlockDeviceArrayOutput

type InstanceRootBlockDeviceInput

type InstanceRootBlockDeviceInput interface {
	pulumi.Input

	ToInstanceRootBlockDeviceOutput() InstanceRootBlockDeviceOutput
	ToInstanceRootBlockDeviceOutputWithContext(context.Context) InstanceRootBlockDeviceOutput
}

InstanceRootBlockDeviceInput is an input type that accepts InstanceRootBlockDeviceArgs and InstanceRootBlockDeviceOutput values. You can construct a concrete instance of `InstanceRootBlockDeviceInput` via:

InstanceRootBlockDeviceArgs{...}

type InstanceRootBlockDeviceOutput

type InstanceRootBlockDeviceOutput struct{ *pulumi.OutputState }

func (InstanceRootBlockDeviceOutput) DeleteOnTermination

func (o InstanceRootBlockDeviceOutput) DeleteOnTermination() pulumi.BoolPtrOutput

func (InstanceRootBlockDeviceOutput) ElementType

func (InstanceRootBlockDeviceOutput) Iops

func (InstanceRootBlockDeviceOutput) ToInstanceRootBlockDeviceOutput

func (o InstanceRootBlockDeviceOutput) ToInstanceRootBlockDeviceOutput() InstanceRootBlockDeviceOutput

func (InstanceRootBlockDeviceOutput) ToInstanceRootBlockDeviceOutputWithContext

func (o InstanceRootBlockDeviceOutput) ToInstanceRootBlockDeviceOutputWithContext(ctx context.Context) InstanceRootBlockDeviceOutput

func (InstanceRootBlockDeviceOutput) VolumeSize

func (InstanceRootBlockDeviceOutput) VolumeType

type InstanceState

type InstanceState struct {
	// The AWS OpsWorks agent to install.  Defaults to `"INHERIT"`.
	AgentVersion pulumi.StringPtrInput
	// The AMI to use for the instance.  If an AMI is specified, `os` must be `"Custom"`.
	AmiId pulumi.StringPtrInput
	// Machine architecture for created instances.  Can be either `"x8664"` (the default) or `"i386"`
	Architecture pulumi.StringPtrInput
	// Creates load-based or time-based instances.  If set, can be either: `"load"` or `"timer"`.
	AutoScalingType pulumi.StringPtrInput
	// Name of the availability zone where instances will be created
	// by default.
	AvailabilityZone pulumi.StringPtrInput
	CreatedAt        pulumi.StringPtrInput
	DeleteEbs        pulumi.BoolPtrInput
	DeleteEip        pulumi.BoolPtrInput
	// Additional EBS block devices to attach to the
	// instance.  See Block Devices below for details.
	EbsBlockDevices InstanceEbsBlockDeviceArrayInput
	// If true, the launched EC2 instance will be EBS-optimized.
	EbsOptimized pulumi.BoolPtrInput
	// EC2 instance ID
	Ec2InstanceId pulumi.StringPtrInput
	EcsClusterArn pulumi.StringPtrInput
	ElasticIp     pulumi.StringPtrInput
	// Customize Ephemeral (also known as
	// "Instance Store") volumes on the instance. See Block Devices below for details.
	EphemeralBlockDevices InstanceEphemeralBlockDeviceArrayInput
	// The instance's host name.
	Hostname            pulumi.StringPtrInput
	InfrastructureClass pulumi.StringPtrInput
	// Controls where to install OS and package updates when the instance boots.  Defaults to `true`.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	InstanceProfileArn   pulumi.StringPtrInput
	// The type of instance to start
	InstanceType       pulumi.StringPtrInput
	LastServiceErrorId pulumi.StringPtrInput
	// The ids of the layers the instance will belong to.
	LayerIds pulumi.StringArrayInput
	// Name of operating system that will be installed.
	Os       pulumi.StringPtrInput
	Platform pulumi.StringPtrInput
	// The private DNS name assigned to the instance. Can only be
	// used inside the Amazon EC2, and only available if you've enabled DNS hostnames
	// for your VPC
	PrivateDns pulumi.StringPtrInput
	// The private IP address assigned to the instance
	PrivateIp pulumi.StringPtrInput
	// The public DNS name assigned to the instance. For EC2-VPC, this
	// is only available if you've enabled DNS hostnames for your VPC
	PublicDns pulumi.StringPtrInput
	// The public IP address assigned to the instance, if applicable.
	PublicIp             pulumi.StringPtrInput
	RegisteredBy         pulumi.StringPtrInput
	ReportedAgentVersion pulumi.StringPtrInput
	ReportedOsFamily     pulumi.StringPtrInput
	ReportedOsName       pulumi.StringPtrInput
	ReportedOsVersion    pulumi.StringPtrInput
	// Customize details about the root block
	// device of the instance. See Block Devices below for details.
	RootBlockDevices InstanceRootBlockDeviceArrayInput
	// Name of the type of root device instances will have by default.  Can be either `"ebs"` or `"instance-store"`
	RootDeviceType     pulumi.StringPtrInput
	RootDeviceVolumeId pulumi.StringPtrInput
	// The associated security groups.
	SecurityGroupIds         pulumi.StringArrayInput
	SshHostDsaKeyFingerprint pulumi.StringPtrInput
	SshHostRsaKeyFingerprint pulumi.StringPtrInput
	// Name of the SSH keypair that instances will have by default.
	SshKeyName pulumi.StringPtrInput
	// The id of the stack the instance will belong to.
	StackId pulumi.StringPtrInput
	// The desired state of the instance.  Can be either `"running"` or `"stopped"`.
	State  pulumi.StringPtrInput
	Status pulumi.StringPtrInput
	// Subnet ID to attach to
	SubnetId pulumi.StringPtrInput
	// Instance tenancy to use. Can be one of `"default"`, `"dedicated"` or `"host"`
	Tenancy pulumi.StringPtrInput
	// Keyword to choose what virtualization mode created instances
	// will use. Can be either `"paravirtual"` or `"hvm"`.
	VirtualizationType pulumi.StringPtrInput
}

func (InstanceState) ElementType

func (InstanceState) ElementType() reflect.Type

type JavaAppLayer

type JavaAppLayer struct {
	pulumi.CustomResourceState

	// Keyword for the application container to use. Defaults to "tomcat".
	AppServer pulumi.StringPtrOutput `pulumi:"appServer"`
	// Version of the selected application container to use. Defaults to "7".
	AppServerVersion pulumi.StringPtrOutput `pulumi:"appServerVersion"`
	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrOutput `pulumi:"autoAssignElasticIps"`
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrOutput `pulumi:"autoAssignPublicIps"`
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrOutput     `pulumi:"autoHealing"`
	CustomConfigureRecipes pulumi.StringArrayOutput `pulumi:"customConfigureRecipes"`
	CustomDeployRecipes    pulumi.StringArrayOutput `pulumi:"customDeployRecipes"`
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrOutput `pulumi:"customInstanceProfileArn"`
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrOutput `pulumi:"customJson"`
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayOutput `pulumi:"customSecurityGroupIds"`
	CustomSetupRecipes     pulumi.StringArrayOutput `pulumi:"customSetupRecipes"`
	CustomShutdownRecipes  pulumi.StringArrayOutput `pulumi:"customShutdownRecipes"`
	CustomUndeployRecipes  pulumi.StringArrayOutput `pulumi:"customUndeployRecipes"`
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrOutput `pulumi:"drainElbOnShutdown"`
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes JavaAppLayerEbsVolumeArrayOutput `pulumi:"ebsVolumes"`
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrOutput `pulumi:"elasticLoadBalancer"`
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrOutput `pulumi:"installUpdatesOnBoot"`
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrOutput `pulumi:"instanceShutdownTimeout"`
	// Options to set for the JVM.
	JvmOptions pulumi.StringPtrOutput `pulumi:"jvmOptions"`
	// Keyword for the type of JVM to use. Defaults to `openjdk`.
	JvmType pulumi.StringPtrOutput `pulumi:"jvmType"`
	// Version of JVM to use. Defaults to "7".
	JvmVersion pulumi.StringPtrOutput `pulumi:"jvmVersion"`
	// A human-readable name for the layer.
	Name pulumi.StringOutput `pulumi:"name"`
	// The id of the stack the layer will belong to.
	StackId pulumi.StringOutput `pulumi:"stackId"`
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayOutput `pulumi:"systemPackages"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrOutput `pulumi:"useEbsOptimizedInstances"`
}

Provides an OpsWorks Java application layer resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/opsworks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := opsworks.NewJavaAppLayer(ctx, "app", &opsworks.JavaAppLayerArgs{
			StackId: pulumi.Any(aws_opsworks_stack.Main.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetJavaAppLayer

func GetJavaAppLayer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *JavaAppLayerState, opts ...pulumi.ResourceOption) (*JavaAppLayer, error)

GetJavaAppLayer gets an existing JavaAppLayer 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 NewJavaAppLayer

func NewJavaAppLayer(ctx *pulumi.Context,
	name string, args *JavaAppLayerArgs, opts ...pulumi.ResourceOption) (*JavaAppLayer, error)

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

func (*JavaAppLayer) ElementType

func (*JavaAppLayer) ElementType() reflect.Type

func (*JavaAppLayer) ToJavaAppLayerOutput

func (i *JavaAppLayer) ToJavaAppLayerOutput() JavaAppLayerOutput

func (*JavaAppLayer) ToJavaAppLayerOutputWithContext

func (i *JavaAppLayer) ToJavaAppLayerOutputWithContext(ctx context.Context) JavaAppLayerOutput

func (*JavaAppLayer) ToJavaAppLayerPtrOutput

func (i *JavaAppLayer) ToJavaAppLayerPtrOutput() JavaAppLayerPtrOutput

func (*JavaAppLayer) ToJavaAppLayerPtrOutputWithContext

func (i *JavaAppLayer) ToJavaAppLayerPtrOutputWithContext(ctx context.Context) JavaAppLayerPtrOutput

type JavaAppLayerArgs

type JavaAppLayerArgs struct {
	// Keyword for the application container to use. Defaults to "tomcat".
	AppServer pulumi.StringPtrInput
	// Version of the selected application container to use. Defaults to "7".
	AppServerVersion pulumi.StringPtrInput
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes JavaAppLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// Options to set for the JVM.
	JvmOptions pulumi.StringPtrInput
	// Keyword for the type of JVM to use. Defaults to `openjdk`.
	JvmType pulumi.StringPtrInput
	// Version of JVM to use. Defaults to "7".
	JvmVersion pulumi.StringPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

The set of arguments for constructing a JavaAppLayer resource.

func (JavaAppLayerArgs) ElementType

func (JavaAppLayerArgs) ElementType() reflect.Type

type JavaAppLayerArray

type JavaAppLayerArray []JavaAppLayerInput

func (JavaAppLayerArray) ElementType

func (JavaAppLayerArray) ElementType() reflect.Type

func (JavaAppLayerArray) ToJavaAppLayerArrayOutput

func (i JavaAppLayerArray) ToJavaAppLayerArrayOutput() JavaAppLayerArrayOutput

func (JavaAppLayerArray) ToJavaAppLayerArrayOutputWithContext

func (i JavaAppLayerArray) ToJavaAppLayerArrayOutputWithContext(ctx context.Context) JavaAppLayerArrayOutput

type JavaAppLayerArrayInput

type JavaAppLayerArrayInput interface {
	pulumi.Input

	ToJavaAppLayerArrayOutput() JavaAppLayerArrayOutput
	ToJavaAppLayerArrayOutputWithContext(context.Context) JavaAppLayerArrayOutput
}

JavaAppLayerArrayInput is an input type that accepts JavaAppLayerArray and JavaAppLayerArrayOutput values. You can construct a concrete instance of `JavaAppLayerArrayInput` via:

JavaAppLayerArray{ JavaAppLayerArgs{...} }

type JavaAppLayerArrayOutput

type JavaAppLayerArrayOutput struct{ *pulumi.OutputState }

func (JavaAppLayerArrayOutput) ElementType

func (JavaAppLayerArrayOutput) ElementType() reflect.Type

func (JavaAppLayerArrayOutput) Index

func (JavaAppLayerArrayOutput) ToJavaAppLayerArrayOutput

func (o JavaAppLayerArrayOutput) ToJavaAppLayerArrayOutput() JavaAppLayerArrayOutput

func (JavaAppLayerArrayOutput) ToJavaAppLayerArrayOutputWithContext

func (o JavaAppLayerArrayOutput) ToJavaAppLayerArrayOutputWithContext(ctx context.Context) JavaAppLayerArrayOutput

type JavaAppLayerEbsVolume

type JavaAppLayerEbsVolume struct {
	Encrypted *bool `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops *int `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint string `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks int `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel *string `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size int `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type *string `pulumi:"type"`
}

type JavaAppLayerEbsVolumeArgs

type JavaAppLayerEbsVolumeArgs struct {
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint pulumi.StringInput `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks pulumi.IntInput `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel pulumi.StringPtrInput `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size pulumi.IntInput `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (JavaAppLayerEbsVolumeArgs) ElementType

func (JavaAppLayerEbsVolumeArgs) ElementType() reflect.Type

func (JavaAppLayerEbsVolumeArgs) ToJavaAppLayerEbsVolumeOutput

func (i JavaAppLayerEbsVolumeArgs) ToJavaAppLayerEbsVolumeOutput() JavaAppLayerEbsVolumeOutput

func (JavaAppLayerEbsVolumeArgs) ToJavaAppLayerEbsVolumeOutputWithContext

func (i JavaAppLayerEbsVolumeArgs) ToJavaAppLayerEbsVolumeOutputWithContext(ctx context.Context) JavaAppLayerEbsVolumeOutput

type JavaAppLayerEbsVolumeArray

type JavaAppLayerEbsVolumeArray []JavaAppLayerEbsVolumeInput

func (JavaAppLayerEbsVolumeArray) ElementType

func (JavaAppLayerEbsVolumeArray) ElementType() reflect.Type

func (JavaAppLayerEbsVolumeArray) ToJavaAppLayerEbsVolumeArrayOutput

func (i JavaAppLayerEbsVolumeArray) ToJavaAppLayerEbsVolumeArrayOutput() JavaAppLayerEbsVolumeArrayOutput

func (JavaAppLayerEbsVolumeArray) ToJavaAppLayerEbsVolumeArrayOutputWithContext

func (i JavaAppLayerEbsVolumeArray) ToJavaAppLayerEbsVolumeArrayOutputWithContext(ctx context.Context) JavaAppLayerEbsVolumeArrayOutput

type JavaAppLayerEbsVolumeArrayInput

type JavaAppLayerEbsVolumeArrayInput interface {
	pulumi.Input

	ToJavaAppLayerEbsVolumeArrayOutput() JavaAppLayerEbsVolumeArrayOutput
	ToJavaAppLayerEbsVolumeArrayOutputWithContext(context.Context) JavaAppLayerEbsVolumeArrayOutput
}

JavaAppLayerEbsVolumeArrayInput is an input type that accepts JavaAppLayerEbsVolumeArray and JavaAppLayerEbsVolumeArrayOutput values. You can construct a concrete instance of `JavaAppLayerEbsVolumeArrayInput` via:

JavaAppLayerEbsVolumeArray{ JavaAppLayerEbsVolumeArgs{...} }

type JavaAppLayerEbsVolumeArrayOutput

type JavaAppLayerEbsVolumeArrayOutput struct{ *pulumi.OutputState }

func (JavaAppLayerEbsVolumeArrayOutput) ElementType

func (JavaAppLayerEbsVolumeArrayOutput) Index

func (JavaAppLayerEbsVolumeArrayOutput) ToJavaAppLayerEbsVolumeArrayOutput

func (o JavaAppLayerEbsVolumeArrayOutput) ToJavaAppLayerEbsVolumeArrayOutput() JavaAppLayerEbsVolumeArrayOutput

func (JavaAppLayerEbsVolumeArrayOutput) ToJavaAppLayerEbsVolumeArrayOutputWithContext

func (o JavaAppLayerEbsVolumeArrayOutput) ToJavaAppLayerEbsVolumeArrayOutputWithContext(ctx context.Context) JavaAppLayerEbsVolumeArrayOutput

type JavaAppLayerEbsVolumeInput

type JavaAppLayerEbsVolumeInput interface {
	pulumi.Input

	ToJavaAppLayerEbsVolumeOutput() JavaAppLayerEbsVolumeOutput
	ToJavaAppLayerEbsVolumeOutputWithContext(context.Context) JavaAppLayerEbsVolumeOutput
}

JavaAppLayerEbsVolumeInput is an input type that accepts JavaAppLayerEbsVolumeArgs and JavaAppLayerEbsVolumeOutput values. You can construct a concrete instance of `JavaAppLayerEbsVolumeInput` via:

JavaAppLayerEbsVolumeArgs{...}

type JavaAppLayerEbsVolumeOutput

type JavaAppLayerEbsVolumeOutput struct{ *pulumi.OutputState }

func (JavaAppLayerEbsVolumeOutput) ElementType

func (JavaAppLayerEbsVolumeOutput) Encrypted

func (JavaAppLayerEbsVolumeOutput) Iops

For PIOPS volumes, the IOPS per disk.

func (JavaAppLayerEbsVolumeOutput) MountPoint

The path to mount the EBS volume on the layer's instances.

func (JavaAppLayerEbsVolumeOutput) NumberOfDisks

func (o JavaAppLayerEbsVolumeOutput) NumberOfDisks() pulumi.IntOutput

The number of disks to use for the EBS volume.

func (JavaAppLayerEbsVolumeOutput) RaidLevel

The RAID level to use for the volume.

func (JavaAppLayerEbsVolumeOutput) Size

The size of the volume in gigabytes.

func (JavaAppLayerEbsVolumeOutput) ToJavaAppLayerEbsVolumeOutput

func (o JavaAppLayerEbsVolumeOutput) ToJavaAppLayerEbsVolumeOutput() JavaAppLayerEbsVolumeOutput

func (JavaAppLayerEbsVolumeOutput) ToJavaAppLayerEbsVolumeOutputWithContext

func (o JavaAppLayerEbsVolumeOutput) ToJavaAppLayerEbsVolumeOutputWithContext(ctx context.Context) JavaAppLayerEbsVolumeOutput

func (JavaAppLayerEbsVolumeOutput) Type

The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.

type JavaAppLayerInput

type JavaAppLayerInput interface {
	pulumi.Input

	ToJavaAppLayerOutput() JavaAppLayerOutput
	ToJavaAppLayerOutputWithContext(ctx context.Context) JavaAppLayerOutput
}

type JavaAppLayerMap

type JavaAppLayerMap map[string]JavaAppLayerInput

func (JavaAppLayerMap) ElementType

func (JavaAppLayerMap) ElementType() reflect.Type

func (JavaAppLayerMap) ToJavaAppLayerMapOutput

func (i JavaAppLayerMap) ToJavaAppLayerMapOutput() JavaAppLayerMapOutput

func (JavaAppLayerMap) ToJavaAppLayerMapOutputWithContext

func (i JavaAppLayerMap) ToJavaAppLayerMapOutputWithContext(ctx context.Context) JavaAppLayerMapOutput

type JavaAppLayerMapInput

type JavaAppLayerMapInput interface {
	pulumi.Input

	ToJavaAppLayerMapOutput() JavaAppLayerMapOutput
	ToJavaAppLayerMapOutputWithContext(context.Context) JavaAppLayerMapOutput
}

JavaAppLayerMapInput is an input type that accepts JavaAppLayerMap and JavaAppLayerMapOutput values. You can construct a concrete instance of `JavaAppLayerMapInput` via:

JavaAppLayerMap{ "key": JavaAppLayerArgs{...} }

type JavaAppLayerMapOutput

type JavaAppLayerMapOutput struct{ *pulumi.OutputState }

func (JavaAppLayerMapOutput) ElementType

func (JavaAppLayerMapOutput) ElementType() reflect.Type

func (JavaAppLayerMapOutput) MapIndex

func (JavaAppLayerMapOutput) ToJavaAppLayerMapOutput

func (o JavaAppLayerMapOutput) ToJavaAppLayerMapOutput() JavaAppLayerMapOutput

func (JavaAppLayerMapOutput) ToJavaAppLayerMapOutputWithContext

func (o JavaAppLayerMapOutput) ToJavaAppLayerMapOutputWithContext(ctx context.Context) JavaAppLayerMapOutput

type JavaAppLayerOutput

type JavaAppLayerOutput struct {
	*pulumi.OutputState
}

func (JavaAppLayerOutput) ElementType

func (JavaAppLayerOutput) ElementType() reflect.Type

func (JavaAppLayerOutput) ToJavaAppLayerOutput

func (o JavaAppLayerOutput) ToJavaAppLayerOutput() JavaAppLayerOutput

func (JavaAppLayerOutput) ToJavaAppLayerOutputWithContext

func (o JavaAppLayerOutput) ToJavaAppLayerOutputWithContext(ctx context.Context) JavaAppLayerOutput

func (JavaAppLayerOutput) ToJavaAppLayerPtrOutput

func (o JavaAppLayerOutput) ToJavaAppLayerPtrOutput() JavaAppLayerPtrOutput

func (JavaAppLayerOutput) ToJavaAppLayerPtrOutputWithContext

func (o JavaAppLayerOutput) ToJavaAppLayerPtrOutputWithContext(ctx context.Context) JavaAppLayerPtrOutput

type JavaAppLayerPtrInput

type JavaAppLayerPtrInput interface {
	pulumi.Input

	ToJavaAppLayerPtrOutput() JavaAppLayerPtrOutput
	ToJavaAppLayerPtrOutputWithContext(ctx context.Context) JavaAppLayerPtrOutput
}

type JavaAppLayerPtrOutput

type JavaAppLayerPtrOutput struct {
	*pulumi.OutputState
}

func (JavaAppLayerPtrOutput) ElementType

func (JavaAppLayerPtrOutput) ElementType() reflect.Type

func (JavaAppLayerPtrOutput) ToJavaAppLayerPtrOutput

func (o JavaAppLayerPtrOutput) ToJavaAppLayerPtrOutput() JavaAppLayerPtrOutput

func (JavaAppLayerPtrOutput) ToJavaAppLayerPtrOutputWithContext

func (o JavaAppLayerPtrOutput) ToJavaAppLayerPtrOutputWithContext(ctx context.Context) JavaAppLayerPtrOutput

type JavaAppLayerState

type JavaAppLayerState struct {
	// Keyword for the application container to use. Defaults to "tomcat".
	AppServer pulumi.StringPtrInput
	// Version of the selected application container to use. Defaults to "7".
	AppServerVersion pulumi.StringPtrInput
	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringPtrInput
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes JavaAppLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// Options to set for the JVM.
	JvmOptions pulumi.StringPtrInput
	// Keyword for the type of JVM to use. Defaults to `openjdk`.
	JvmType pulumi.StringPtrInput
	// Version of JVM to use. Defaults to "7".
	JvmVersion pulumi.StringPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringPtrInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

func (JavaAppLayerState) ElementType

func (JavaAppLayerState) ElementType() reflect.Type

type MemcachedLayer

type MemcachedLayer struct {
	pulumi.CustomResourceState

	// Amount of memory to allocate for the cache on each instance, in megabytes. Defaults to 512MB.
	AllocatedMemory pulumi.IntPtrOutput `pulumi:"allocatedMemory"`
	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrOutput `pulumi:"autoAssignElasticIps"`
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrOutput `pulumi:"autoAssignPublicIps"`
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrOutput     `pulumi:"autoHealing"`
	CustomConfigureRecipes pulumi.StringArrayOutput `pulumi:"customConfigureRecipes"`
	CustomDeployRecipes    pulumi.StringArrayOutput `pulumi:"customDeployRecipes"`
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrOutput `pulumi:"customInstanceProfileArn"`
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrOutput `pulumi:"customJson"`
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayOutput `pulumi:"customSecurityGroupIds"`
	CustomSetupRecipes     pulumi.StringArrayOutput `pulumi:"customSetupRecipes"`
	CustomShutdownRecipes  pulumi.StringArrayOutput `pulumi:"customShutdownRecipes"`
	CustomUndeployRecipes  pulumi.StringArrayOutput `pulumi:"customUndeployRecipes"`
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrOutput `pulumi:"drainElbOnShutdown"`
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes MemcachedLayerEbsVolumeArrayOutput `pulumi:"ebsVolumes"`
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrOutput `pulumi:"elasticLoadBalancer"`
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrOutput `pulumi:"installUpdatesOnBoot"`
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrOutput `pulumi:"instanceShutdownTimeout"`
	// A human-readable name for the layer.
	Name pulumi.StringOutput `pulumi:"name"`
	// The id of the stack the layer will belong to.
	StackId pulumi.StringOutput `pulumi:"stackId"`
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayOutput `pulumi:"systemPackages"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrOutput `pulumi:"useEbsOptimizedInstances"`
}

Provides an OpsWorks memcached layer resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/opsworks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := opsworks.NewMemcachedLayer(ctx, "cache", &opsworks.MemcachedLayerArgs{
			StackId: pulumi.Any(aws_opsworks_stack.Main.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetMemcachedLayer

func GetMemcachedLayer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *MemcachedLayerState, opts ...pulumi.ResourceOption) (*MemcachedLayer, error)

GetMemcachedLayer gets an existing MemcachedLayer 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 NewMemcachedLayer

func NewMemcachedLayer(ctx *pulumi.Context,
	name string, args *MemcachedLayerArgs, opts ...pulumi.ResourceOption) (*MemcachedLayer, error)

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

func (*MemcachedLayer) ElementType

func (*MemcachedLayer) ElementType() reflect.Type

func (*MemcachedLayer) ToMemcachedLayerOutput

func (i *MemcachedLayer) ToMemcachedLayerOutput() MemcachedLayerOutput

func (*MemcachedLayer) ToMemcachedLayerOutputWithContext

func (i *MemcachedLayer) ToMemcachedLayerOutputWithContext(ctx context.Context) MemcachedLayerOutput

func (*MemcachedLayer) ToMemcachedLayerPtrOutput

func (i *MemcachedLayer) ToMemcachedLayerPtrOutput() MemcachedLayerPtrOutput

func (*MemcachedLayer) ToMemcachedLayerPtrOutputWithContext

func (i *MemcachedLayer) ToMemcachedLayerPtrOutputWithContext(ctx context.Context) MemcachedLayerPtrOutput

type MemcachedLayerArgs

type MemcachedLayerArgs struct {
	// Amount of memory to allocate for the cache on each instance, in megabytes. Defaults to 512MB.
	AllocatedMemory pulumi.IntPtrInput
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes MemcachedLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

The set of arguments for constructing a MemcachedLayer resource.

func (MemcachedLayerArgs) ElementType

func (MemcachedLayerArgs) ElementType() reflect.Type

type MemcachedLayerArray

type MemcachedLayerArray []MemcachedLayerInput

func (MemcachedLayerArray) ElementType

func (MemcachedLayerArray) ElementType() reflect.Type

func (MemcachedLayerArray) ToMemcachedLayerArrayOutput

func (i MemcachedLayerArray) ToMemcachedLayerArrayOutput() MemcachedLayerArrayOutput

func (MemcachedLayerArray) ToMemcachedLayerArrayOutputWithContext

func (i MemcachedLayerArray) ToMemcachedLayerArrayOutputWithContext(ctx context.Context) MemcachedLayerArrayOutput

type MemcachedLayerArrayInput

type MemcachedLayerArrayInput interface {
	pulumi.Input

	ToMemcachedLayerArrayOutput() MemcachedLayerArrayOutput
	ToMemcachedLayerArrayOutputWithContext(context.Context) MemcachedLayerArrayOutput
}

MemcachedLayerArrayInput is an input type that accepts MemcachedLayerArray and MemcachedLayerArrayOutput values. You can construct a concrete instance of `MemcachedLayerArrayInput` via:

MemcachedLayerArray{ MemcachedLayerArgs{...} }

type MemcachedLayerArrayOutput

type MemcachedLayerArrayOutput struct{ *pulumi.OutputState }

func (MemcachedLayerArrayOutput) ElementType

func (MemcachedLayerArrayOutput) ElementType() reflect.Type

func (MemcachedLayerArrayOutput) Index

func (MemcachedLayerArrayOutput) ToMemcachedLayerArrayOutput

func (o MemcachedLayerArrayOutput) ToMemcachedLayerArrayOutput() MemcachedLayerArrayOutput

func (MemcachedLayerArrayOutput) ToMemcachedLayerArrayOutputWithContext

func (o MemcachedLayerArrayOutput) ToMemcachedLayerArrayOutputWithContext(ctx context.Context) MemcachedLayerArrayOutput

type MemcachedLayerEbsVolume

type MemcachedLayerEbsVolume struct {
	Encrypted *bool `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops *int `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint string `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks int `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel *string `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size int `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type *string `pulumi:"type"`
}

type MemcachedLayerEbsVolumeArgs

type MemcachedLayerEbsVolumeArgs struct {
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint pulumi.StringInput `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks pulumi.IntInput `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel pulumi.StringPtrInput `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size pulumi.IntInput `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (MemcachedLayerEbsVolumeArgs) ElementType

func (MemcachedLayerEbsVolumeArgs) ToMemcachedLayerEbsVolumeOutput

func (i MemcachedLayerEbsVolumeArgs) ToMemcachedLayerEbsVolumeOutput() MemcachedLayerEbsVolumeOutput

func (MemcachedLayerEbsVolumeArgs) ToMemcachedLayerEbsVolumeOutputWithContext

func (i MemcachedLayerEbsVolumeArgs) ToMemcachedLayerEbsVolumeOutputWithContext(ctx context.Context) MemcachedLayerEbsVolumeOutput

type MemcachedLayerEbsVolumeArray

type MemcachedLayerEbsVolumeArray []MemcachedLayerEbsVolumeInput

func (MemcachedLayerEbsVolumeArray) ElementType

func (MemcachedLayerEbsVolumeArray) ToMemcachedLayerEbsVolumeArrayOutput

func (i MemcachedLayerEbsVolumeArray) ToMemcachedLayerEbsVolumeArrayOutput() MemcachedLayerEbsVolumeArrayOutput

func (MemcachedLayerEbsVolumeArray) ToMemcachedLayerEbsVolumeArrayOutputWithContext

func (i MemcachedLayerEbsVolumeArray) ToMemcachedLayerEbsVolumeArrayOutputWithContext(ctx context.Context) MemcachedLayerEbsVolumeArrayOutput

type MemcachedLayerEbsVolumeArrayInput

type MemcachedLayerEbsVolumeArrayInput interface {
	pulumi.Input

	ToMemcachedLayerEbsVolumeArrayOutput() MemcachedLayerEbsVolumeArrayOutput
	ToMemcachedLayerEbsVolumeArrayOutputWithContext(context.Context) MemcachedLayerEbsVolumeArrayOutput
}

MemcachedLayerEbsVolumeArrayInput is an input type that accepts MemcachedLayerEbsVolumeArray and MemcachedLayerEbsVolumeArrayOutput values. You can construct a concrete instance of `MemcachedLayerEbsVolumeArrayInput` via:

MemcachedLayerEbsVolumeArray{ MemcachedLayerEbsVolumeArgs{...} }

type MemcachedLayerEbsVolumeArrayOutput

type MemcachedLayerEbsVolumeArrayOutput struct{ *pulumi.OutputState }

func (MemcachedLayerEbsVolumeArrayOutput) ElementType

func (MemcachedLayerEbsVolumeArrayOutput) Index

func (MemcachedLayerEbsVolumeArrayOutput) ToMemcachedLayerEbsVolumeArrayOutput

func (o MemcachedLayerEbsVolumeArrayOutput) ToMemcachedLayerEbsVolumeArrayOutput() MemcachedLayerEbsVolumeArrayOutput

func (MemcachedLayerEbsVolumeArrayOutput) ToMemcachedLayerEbsVolumeArrayOutputWithContext

func (o MemcachedLayerEbsVolumeArrayOutput) ToMemcachedLayerEbsVolumeArrayOutputWithContext(ctx context.Context) MemcachedLayerEbsVolumeArrayOutput

type MemcachedLayerEbsVolumeInput

type MemcachedLayerEbsVolumeInput interface {
	pulumi.Input

	ToMemcachedLayerEbsVolumeOutput() MemcachedLayerEbsVolumeOutput
	ToMemcachedLayerEbsVolumeOutputWithContext(context.Context) MemcachedLayerEbsVolumeOutput
}

MemcachedLayerEbsVolumeInput is an input type that accepts MemcachedLayerEbsVolumeArgs and MemcachedLayerEbsVolumeOutput values. You can construct a concrete instance of `MemcachedLayerEbsVolumeInput` via:

MemcachedLayerEbsVolumeArgs{...}

type MemcachedLayerEbsVolumeOutput

type MemcachedLayerEbsVolumeOutput struct{ *pulumi.OutputState }

func (MemcachedLayerEbsVolumeOutput) ElementType

func (MemcachedLayerEbsVolumeOutput) Encrypted

func (MemcachedLayerEbsVolumeOutput) Iops

For PIOPS volumes, the IOPS per disk.

func (MemcachedLayerEbsVolumeOutput) MountPoint

The path to mount the EBS volume on the layer's instances.

func (MemcachedLayerEbsVolumeOutput) NumberOfDisks

The number of disks to use for the EBS volume.

func (MemcachedLayerEbsVolumeOutput) RaidLevel

The RAID level to use for the volume.

func (MemcachedLayerEbsVolumeOutput) Size

The size of the volume in gigabytes.

func (MemcachedLayerEbsVolumeOutput) ToMemcachedLayerEbsVolumeOutput

func (o MemcachedLayerEbsVolumeOutput) ToMemcachedLayerEbsVolumeOutput() MemcachedLayerEbsVolumeOutput

func (MemcachedLayerEbsVolumeOutput) ToMemcachedLayerEbsVolumeOutputWithContext

func (o MemcachedLayerEbsVolumeOutput) ToMemcachedLayerEbsVolumeOutputWithContext(ctx context.Context) MemcachedLayerEbsVolumeOutput

func (MemcachedLayerEbsVolumeOutput) Type

The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.

type MemcachedLayerInput

type MemcachedLayerInput interface {
	pulumi.Input

	ToMemcachedLayerOutput() MemcachedLayerOutput
	ToMemcachedLayerOutputWithContext(ctx context.Context) MemcachedLayerOutput
}

type MemcachedLayerMap

type MemcachedLayerMap map[string]MemcachedLayerInput

func (MemcachedLayerMap) ElementType

func (MemcachedLayerMap) ElementType() reflect.Type

func (MemcachedLayerMap) ToMemcachedLayerMapOutput

func (i MemcachedLayerMap) ToMemcachedLayerMapOutput() MemcachedLayerMapOutput

func (MemcachedLayerMap) ToMemcachedLayerMapOutputWithContext

func (i MemcachedLayerMap) ToMemcachedLayerMapOutputWithContext(ctx context.Context) MemcachedLayerMapOutput

type MemcachedLayerMapInput

type MemcachedLayerMapInput interface {
	pulumi.Input

	ToMemcachedLayerMapOutput() MemcachedLayerMapOutput
	ToMemcachedLayerMapOutputWithContext(context.Context) MemcachedLayerMapOutput
}

MemcachedLayerMapInput is an input type that accepts MemcachedLayerMap and MemcachedLayerMapOutput values. You can construct a concrete instance of `MemcachedLayerMapInput` via:

MemcachedLayerMap{ "key": MemcachedLayerArgs{...} }

type MemcachedLayerMapOutput

type MemcachedLayerMapOutput struct{ *pulumi.OutputState }

func (MemcachedLayerMapOutput) ElementType

func (MemcachedLayerMapOutput) ElementType() reflect.Type

func (MemcachedLayerMapOutput) MapIndex

func (MemcachedLayerMapOutput) ToMemcachedLayerMapOutput

func (o MemcachedLayerMapOutput) ToMemcachedLayerMapOutput() MemcachedLayerMapOutput

func (MemcachedLayerMapOutput) ToMemcachedLayerMapOutputWithContext

func (o MemcachedLayerMapOutput) ToMemcachedLayerMapOutputWithContext(ctx context.Context) MemcachedLayerMapOutput

type MemcachedLayerOutput

type MemcachedLayerOutput struct {
	*pulumi.OutputState
}

func (MemcachedLayerOutput) ElementType

func (MemcachedLayerOutput) ElementType() reflect.Type

func (MemcachedLayerOutput) ToMemcachedLayerOutput

func (o MemcachedLayerOutput) ToMemcachedLayerOutput() MemcachedLayerOutput

func (MemcachedLayerOutput) ToMemcachedLayerOutputWithContext

func (o MemcachedLayerOutput) ToMemcachedLayerOutputWithContext(ctx context.Context) MemcachedLayerOutput

func (MemcachedLayerOutput) ToMemcachedLayerPtrOutput

func (o MemcachedLayerOutput) ToMemcachedLayerPtrOutput() MemcachedLayerPtrOutput

func (MemcachedLayerOutput) ToMemcachedLayerPtrOutputWithContext

func (o MemcachedLayerOutput) ToMemcachedLayerPtrOutputWithContext(ctx context.Context) MemcachedLayerPtrOutput

type MemcachedLayerPtrInput

type MemcachedLayerPtrInput interface {
	pulumi.Input

	ToMemcachedLayerPtrOutput() MemcachedLayerPtrOutput
	ToMemcachedLayerPtrOutputWithContext(ctx context.Context) MemcachedLayerPtrOutput
}

type MemcachedLayerPtrOutput

type MemcachedLayerPtrOutput struct {
	*pulumi.OutputState
}

func (MemcachedLayerPtrOutput) ElementType

func (MemcachedLayerPtrOutput) ElementType() reflect.Type

func (MemcachedLayerPtrOutput) ToMemcachedLayerPtrOutput

func (o MemcachedLayerPtrOutput) ToMemcachedLayerPtrOutput() MemcachedLayerPtrOutput

func (MemcachedLayerPtrOutput) ToMemcachedLayerPtrOutputWithContext

func (o MemcachedLayerPtrOutput) ToMemcachedLayerPtrOutputWithContext(ctx context.Context) MemcachedLayerPtrOutput

type MemcachedLayerState

type MemcachedLayerState struct {
	// Amount of memory to allocate for the cache on each instance, in megabytes. Defaults to 512MB.
	AllocatedMemory pulumi.IntPtrInput
	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringPtrInput
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes MemcachedLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringPtrInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

func (MemcachedLayerState) ElementType

func (MemcachedLayerState) ElementType() reflect.Type

type MysqlLayer

type MysqlLayer struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrOutput `pulumi:"autoAssignElasticIps"`
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrOutput `pulumi:"autoAssignPublicIps"`
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrOutput     `pulumi:"autoHealing"`
	CustomConfigureRecipes pulumi.StringArrayOutput `pulumi:"customConfigureRecipes"`
	CustomDeployRecipes    pulumi.StringArrayOutput `pulumi:"customDeployRecipes"`
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrOutput `pulumi:"customInstanceProfileArn"`
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrOutput `pulumi:"customJson"`
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayOutput `pulumi:"customSecurityGroupIds"`
	CustomSetupRecipes     pulumi.StringArrayOutput `pulumi:"customSetupRecipes"`
	CustomShutdownRecipes  pulumi.StringArrayOutput `pulumi:"customShutdownRecipes"`
	CustomUndeployRecipes  pulumi.StringArrayOutput `pulumi:"customUndeployRecipes"`
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrOutput `pulumi:"drainElbOnShutdown"`
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes MysqlLayerEbsVolumeArrayOutput `pulumi:"ebsVolumes"`
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrOutput `pulumi:"elasticLoadBalancer"`
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrOutput `pulumi:"installUpdatesOnBoot"`
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrOutput `pulumi:"instanceShutdownTimeout"`
	// A human-readable name for the layer.
	Name pulumi.StringOutput `pulumi:"name"`
	// Root password to use for MySQL.
	RootPassword pulumi.StringPtrOutput `pulumi:"rootPassword"`
	// Whether to set the root user password to all instances in the stack so they can access the instances in this layer.
	RootPasswordOnAllInstances pulumi.BoolPtrOutput `pulumi:"rootPasswordOnAllInstances"`
	// The id of the stack the layer will belong to.
	StackId pulumi.StringOutput `pulumi:"stackId"`
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayOutput `pulumi:"systemPackages"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrOutput `pulumi:"useEbsOptimizedInstances"`
}

Provides an OpsWorks MySQL layer resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/opsworks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := opsworks.NewMysqlLayer(ctx, "db", &opsworks.MysqlLayerArgs{
			StackId: pulumi.Any(aws_opsworks_stack.Main.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetMysqlLayer

func GetMysqlLayer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *MysqlLayerState, opts ...pulumi.ResourceOption) (*MysqlLayer, error)

GetMysqlLayer gets an existing MysqlLayer 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 NewMysqlLayer

func NewMysqlLayer(ctx *pulumi.Context,
	name string, args *MysqlLayerArgs, opts ...pulumi.ResourceOption) (*MysqlLayer, error)

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

func (*MysqlLayer) ElementType

func (*MysqlLayer) ElementType() reflect.Type

func (*MysqlLayer) ToMysqlLayerOutput

func (i *MysqlLayer) ToMysqlLayerOutput() MysqlLayerOutput

func (*MysqlLayer) ToMysqlLayerOutputWithContext

func (i *MysqlLayer) ToMysqlLayerOutputWithContext(ctx context.Context) MysqlLayerOutput

func (*MysqlLayer) ToMysqlLayerPtrOutput

func (i *MysqlLayer) ToMysqlLayerPtrOutput() MysqlLayerPtrOutput

func (*MysqlLayer) ToMysqlLayerPtrOutputWithContext

func (i *MysqlLayer) ToMysqlLayerPtrOutputWithContext(ctx context.Context) MysqlLayerPtrOutput

type MysqlLayerArgs

type MysqlLayerArgs struct {
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes MysqlLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// Root password to use for MySQL.
	RootPassword pulumi.StringPtrInput
	// Whether to set the root user password to all instances in the stack so they can access the instances in this layer.
	RootPasswordOnAllInstances pulumi.BoolPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

The set of arguments for constructing a MysqlLayer resource.

func (MysqlLayerArgs) ElementType

func (MysqlLayerArgs) ElementType() reflect.Type

type MysqlLayerArray

type MysqlLayerArray []MysqlLayerInput

func (MysqlLayerArray) ElementType

func (MysqlLayerArray) ElementType() reflect.Type

func (MysqlLayerArray) ToMysqlLayerArrayOutput

func (i MysqlLayerArray) ToMysqlLayerArrayOutput() MysqlLayerArrayOutput

func (MysqlLayerArray) ToMysqlLayerArrayOutputWithContext

func (i MysqlLayerArray) ToMysqlLayerArrayOutputWithContext(ctx context.Context) MysqlLayerArrayOutput

type MysqlLayerArrayInput

type MysqlLayerArrayInput interface {
	pulumi.Input

	ToMysqlLayerArrayOutput() MysqlLayerArrayOutput
	ToMysqlLayerArrayOutputWithContext(context.Context) MysqlLayerArrayOutput
}

MysqlLayerArrayInput is an input type that accepts MysqlLayerArray and MysqlLayerArrayOutput values. You can construct a concrete instance of `MysqlLayerArrayInput` via:

MysqlLayerArray{ MysqlLayerArgs{...} }

type MysqlLayerArrayOutput

type MysqlLayerArrayOutput struct{ *pulumi.OutputState }

func (MysqlLayerArrayOutput) ElementType

func (MysqlLayerArrayOutput) ElementType() reflect.Type

func (MysqlLayerArrayOutput) Index

func (MysqlLayerArrayOutput) ToMysqlLayerArrayOutput

func (o MysqlLayerArrayOutput) ToMysqlLayerArrayOutput() MysqlLayerArrayOutput

func (MysqlLayerArrayOutput) ToMysqlLayerArrayOutputWithContext

func (o MysqlLayerArrayOutput) ToMysqlLayerArrayOutputWithContext(ctx context.Context) MysqlLayerArrayOutput

type MysqlLayerEbsVolume

type MysqlLayerEbsVolume struct {
	Encrypted *bool `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops *int `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint string `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks int `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel *string `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size int `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type *string `pulumi:"type"`
}

type MysqlLayerEbsVolumeArgs

type MysqlLayerEbsVolumeArgs struct {
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint pulumi.StringInput `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks pulumi.IntInput `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel pulumi.StringPtrInput `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size pulumi.IntInput `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (MysqlLayerEbsVolumeArgs) ElementType

func (MysqlLayerEbsVolumeArgs) ElementType() reflect.Type

func (MysqlLayerEbsVolumeArgs) ToMysqlLayerEbsVolumeOutput

func (i MysqlLayerEbsVolumeArgs) ToMysqlLayerEbsVolumeOutput() MysqlLayerEbsVolumeOutput

func (MysqlLayerEbsVolumeArgs) ToMysqlLayerEbsVolumeOutputWithContext

func (i MysqlLayerEbsVolumeArgs) ToMysqlLayerEbsVolumeOutputWithContext(ctx context.Context) MysqlLayerEbsVolumeOutput

type MysqlLayerEbsVolumeArray

type MysqlLayerEbsVolumeArray []MysqlLayerEbsVolumeInput

func (MysqlLayerEbsVolumeArray) ElementType

func (MysqlLayerEbsVolumeArray) ElementType() reflect.Type

func (MysqlLayerEbsVolumeArray) ToMysqlLayerEbsVolumeArrayOutput

func (i MysqlLayerEbsVolumeArray) ToMysqlLayerEbsVolumeArrayOutput() MysqlLayerEbsVolumeArrayOutput

func (MysqlLayerEbsVolumeArray) ToMysqlLayerEbsVolumeArrayOutputWithContext

func (i MysqlLayerEbsVolumeArray) ToMysqlLayerEbsVolumeArrayOutputWithContext(ctx context.Context) MysqlLayerEbsVolumeArrayOutput

type MysqlLayerEbsVolumeArrayInput

type MysqlLayerEbsVolumeArrayInput interface {
	pulumi.Input

	ToMysqlLayerEbsVolumeArrayOutput() MysqlLayerEbsVolumeArrayOutput
	ToMysqlLayerEbsVolumeArrayOutputWithContext(context.Context) MysqlLayerEbsVolumeArrayOutput
}

MysqlLayerEbsVolumeArrayInput is an input type that accepts MysqlLayerEbsVolumeArray and MysqlLayerEbsVolumeArrayOutput values. You can construct a concrete instance of `MysqlLayerEbsVolumeArrayInput` via:

MysqlLayerEbsVolumeArray{ MysqlLayerEbsVolumeArgs{...} }

type MysqlLayerEbsVolumeArrayOutput

type MysqlLayerEbsVolumeArrayOutput struct{ *pulumi.OutputState }

func (MysqlLayerEbsVolumeArrayOutput) ElementType

func (MysqlLayerEbsVolumeArrayOutput) Index

func (MysqlLayerEbsVolumeArrayOutput) ToMysqlLayerEbsVolumeArrayOutput

func (o MysqlLayerEbsVolumeArrayOutput) ToMysqlLayerEbsVolumeArrayOutput() MysqlLayerEbsVolumeArrayOutput

func (MysqlLayerEbsVolumeArrayOutput) ToMysqlLayerEbsVolumeArrayOutputWithContext

func (o MysqlLayerEbsVolumeArrayOutput) ToMysqlLayerEbsVolumeArrayOutputWithContext(ctx context.Context) MysqlLayerEbsVolumeArrayOutput

type MysqlLayerEbsVolumeInput

type MysqlLayerEbsVolumeInput interface {
	pulumi.Input

	ToMysqlLayerEbsVolumeOutput() MysqlLayerEbsVolumeOutput
	ToMysqlLayerEbsVolumeOutputWithContext(context.Context) MysqlLayerEbsVolumeOutput
}

MysqlLayerEbsVolumeInput is an input type that accepts MysqlLayerEbsVolumeArgs and MysqlLayerEbsVolumeOutput values. You can construct a concrete instance of `MysqlLayerEbsVolumeInput` via:

MysqlLayerEbsVolumeArgs{...}

type MysqlLayerEbsVolumeOutput

type MysqlLayerEbsVolumeOutput struct{ *pulumi.OutputState }

func (MysqlLayerEbsVolumeOutput) ElementType

func (MysqlLayerEbsVolumeOutput) ElementType() reflect.Type

func (MysqlLayerEbsVolumeOutput) Encrypted

func (MysqlLayerEbsVolumeOutput) Iops

For PIOPS volumes, the IOPS per disk.

func (MysqlLayerEbsVolumeOutput) MountPoint

The path to mount the EBS volume on the layer's instances.

func (MysqlLayerEbsVolumeOutput) NumberOfDisks

func (o MysqlLayerEbsVolumeOutput) NumberOfDisks() pulumi.IntOutput

The number of disks to use for the EBS volume.

func (MysqlLayerEbsVolumeOutput) RaidLevel

The RAID level to use for the volume.

func (MysqlLayerEbsVolumeOutput) Size

The size of the volume in gigabytes.

func (MysqlLayerEbsVolumeOutput) ToMysqlLayerEbsVolumeOutput

func (o MysqlLayerEbsVolumeOutput) ToMysqlLayerEbsVolumeOutput() MysqlLayerEbsVolumeOutput

func (MysqlLayerEbsVolumeOutput) ToMysqlLayerEbsVolumeOutputWithContext

func (o MysqlLayerEbsVolumeOutput) ToMysqlLayerEbsVolumeOutputWithContext(ctx context.Context) MysqlLayerEbsVolumeOutput

func (MysqlLayerEbsVolumeOutput) Type

The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.

type MysqlLayerInput

type MysqlLayerInput interface {
	pulumi.Input

	ToMysqlLayerOutput() MysqlLayerOutput
	ToMysqlLayerOutputWithContext(ctx context.Context) MysqlLayerOutput
}

type MysqlLayerMap

type MysqlLayerMap map[string]MysqlLayerInput

func (MysqlLayerMap) ElementType

func (MysqlLayerMap) ElementType() reflect.Type

func (MysqlLayerMap) ToMysqlLayerMapOutput

func (i MysqlLayerMap) ToMysqlLayerMapOutput() MysqlLayerMapOutput

func (MysqlLayerMap) ToMysqlLayerMapOutputWithContext

func (i MysqlLayerMap) ToMysqlLayerMapOutputWithContext(ctx context.Context) MysqlLayerMapOutput

type MysqlLayerMapInput

type MysqlLayerMapInput interface {
	pulumi.Input

	ToMysqlLayerMapOutput() MysqlLayerMapOutput
	ToMysqlLayerMapOutputWithContext(context.Context) MysqlLayerMapOutput
}

MysqlLayerMapInput is an input type that accepts MysqlLayerMap and MysqlLayerMapOutput values. You can construct a concrete instance of `MysqlLayerMapInput` via:

MysqlLayerMap{ "key": MysqlLayerArgs{...} }

type MysqlLayerMapOutput

type MysqlLayerMapOutput struct{ *pulumi.OutputState }

func (MysqlLayerMapOutput) ElementType

func (MysqlLayerMapOutput) ElementType() reflect.Type

func (MysqlLayerMapOutput) MapIndex

func (MysqlLayerMapOutput) ToMysqlLayerMapOutput

func (o MysqlLayerMapOutput) ToMysqlLayerMapOutput() MysqlLayerMapOutput

func (MysqlLayerMapOutput) ToMysqlLayerMapOutputWithContext

func (o MysqlLayerMapOutput) ToMysqlLayerMapOutputWithContext(ctx context.Context) MysqlLayerMapOutput

type MysqlLayerOutput

type MysqlLayerOutput struct {
	*pulumi.OutputState
}

func (MysqlLayerOutput) ElementType

func (MysqlLayerOutput) ElementType() reflect.Type

func (MysqlLayerOutput) ToMysqlLayerOutput

func (o MysqlLayerOutput) ToMysqlLayerOutput() MysqlLayerOutput

func (MysqlLayerOutput) ToMysqlLayerOutputWithContext

func (o MysqlLayerOutput) ToMysqlLayerOutputWithContext(ctx context.Context) MysqlLayerOutput

func (MysqlLayerOutput) ToMysqlLayerPtrOutput

func (o MysqlLayerOutput) ToMysqlLayerPtrOutput() MysqlLayerPtrOutput

func (MysqlLayerOutput) ToMysqlLayerPtrOutputWithContext

func (o MysqlLayerOutput) ToMysqlLayerPtrOutputWithContext(ctx context.Context) MysqlLayerPtrOutput

type MysqlLayerPtrInput

type MysqlLayerPtrInput interface {
	pulumi.Input

	ToMysqlLayerPtrOutput() MysqlLayerPtrOutput
	ToMysqlLayerPtrOutputWithContext(ctx context.Context) MysqlLayerPtrOutput
}

type MysqlLayerPtrOutput

type MysqlLayerPtrOutput struct {
	*pulumi.OutputState
}

func (MysqlLayerPtrOutput) ElementType

func (MysqlLayerPtrOutput) ElementType() reflect.Type

func (MysqlLayerPtrOutput) ToMysqlLayerPtrOutput

func (o MysqlLayerPtrOutput) ToMysqlLayerPtrOutput() MysqlLayerPtrOutput

func (MysqlLayerPtrOutput) ToMysqlLayerPtrOutputWithContext

func (o MysqlLayerPtrOutput) ToMysqlLayerPtrOutputWithContext(ctx context.Context) MysqlLayerPtrOutput

type MysqlLayerState

type MysqlLayerState struct {
	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringPtrInput
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes MysqlLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// Root password to use for MySQL.
	RootPassword pulumi.StringPtrInput
	// Whether to set the root user password to all instances in the stack so they can access the instances in this layer.
	RootPasswordOnAllInstances pulumi.BoolPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringPtrInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

func (MysqlLayerState) ElementType

func (MysqlLayerState) ElementType() reflect.Type

type NodejsAppLayer

type NodejsAppLayer struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrOutput `pulumi:"autoAssignElasticIps"`
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrOutput `pulumi:"autoAssignPublicIps"`
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrOutput     `pulumi:"autoHealing"`
	CustomConfigureRecipes pulumi.StringArrayOutput `pulumi:"customConfigureRecipes"`
	CustomDeployRecipes    pulumi.StringArrayOutput `pulumi:"customDeployRecipes"`
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrOutput `pulumi:"customInstanceProfileArn"`
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrOutput `pulumi:"customJson"`
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayOutput `pulumi:"customSecurityGroupIds"`
	CustomSetupRecipes     pulumi.StringArrayOutput `pulumi:"customSetupRecipes"`
	CustomShutdownRecipes  pulumi.StringArrayOutput `pulumi:"customShutdownRecipes"`
	CustomUndeployRecipes  pulumi.StringArrayOutput `pulumi:"customUndeployRecipes"`
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrOutput `pulumi:"drainElbOnShutdown"`
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes NodejsAppLayerEbsVolumeArrayOutput `pulumi:"ebsVolumes"`
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrOutput `pulumi:"elasticLoadBalancer"`
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrOutput `pulumi:"installUpdatesOnBoot"`
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrOutput `pulumi:"instanceShutdownTimeout"`
	// A human-readable name for the layer.
	Name pulumi.StringOutput `pulumi:"name"`
	// The version of NodeJS to use. Defaults to "0.10.38".
	NodejsVersion pulumi.StringPtrOutput `pulumi:"nodejsVersion"`
	// The id of the stack the layer will belong to.
	StackId pulumi.StringOutput `pulumi:"stackId"`
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayOutput `pulumi:"systemPackages"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrOutput `pulumi:"useEbsOptimizedInstances"`
}

Provides an OpsWorks NodeJS application layer resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/opsworks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := opsworks.NewNodejsAppLayer(ctx, "app", &opsworks.NodejsAppLayerArgs{
			StackId: pulumi.Any(aws_opsworks_stack.Main.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetNodejsAppLayer

func GetNodejsAppLayer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NodejsAppLayerState, opts ...pulumi.ResourceOption) (*NodejsAppLayer, error)

GetNodejsAppLayer gets an existing NodejsAppLayer 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 NewNodejsAppLayer

func NewNodejsAppLayer(ctx *pulumi.Context,
	name string, args *NodejsAppLayerArgs, opts ...pulumi.ResourceOption) (*NodejsAppLayer, error)

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

func (*NodejsAppLayer) ElementType

func (*NodejsAppLayer) ElementType() reflect.Type

func (*NodejsAppLayer) ToNodejsAppLayerOutput

func (i *NodejsAppLayer) ToNodejsAppLayerOutput() NodejsAppLayerOutput

func (*NodejsAppLayer) ToNodejsAppLayerOutputWithContext

func (i *NodejsAppLayer) ToNodejsAppLayerOutputWithContext(ctx context.Context) NodejsAppLayerOutput

func (*NodejsAppLayer) ToNodejsAppLayerPtrOutput

func (i *NodejsAppLayer) ToNodejsAppLayerPtrOutput() NodejsAppLayerPtrOutput

func (*NodejsAppLayer) ToNodejsAppLayerPtrOutputWithContext

func (i *NodejsAppLayer) ToNodejsAppLayerPtrOutputWithContext(ctx context.Context) NodejsAppLayerPtrOutput

type NodejsAppLayerArgs

type NodejsAppLayerArgs struct {
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes NodejsAppLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// The version of NodeJS to use. Defaults to "0.10.38".
	NodejsVersion pulumi.StringPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

The set of arguments for constructing a NodejsAppLayer resource.

func (NodejsAppLayerArgs) ElementType

func (NodejsAppLayerArgs) ElementType() reflect.Type

type NodejsAppLayerArray

type NodejsAppLayerArray []NodejsAppLayerInput

func (NodejsAppLayerArray) ElementType

func (NodejsAppLayerArray) ElementType() reflect.Type

func (NodejsAppLayerArray) ToNodejsAppLayerArrayOutput

func (i NodejsAppLayerArray) ToNodejsAppLayerArrayOutput() NodejsAppLayerArrayOutput

func (NodejsAppLayerArray) ToNodejsAppLayerArrayOutputWithContext

func (i NodejsAppLayerArray) ToNodejsAppLayerArrayOutputWithContext(ctx context.Context) NodejsAppLayerArrayOutput

type NodejsAppLayerArrayInput

type NodejsAppLayerArrayInput interface {
	pulumi.Input

	ToNodejsAppLayerArrayOutput() NodejsAppLayerArrayOutput
	ToNodejsAppLayerArrayOutputWithContext(context.Context) NodejsAppLayerArrayOutput
}

NodejsAppLayerArrayInput is an input type that accepts NodejsAppLayerArray and NodejsAppLayerArrayOutput values. You can construct a concrete instance of `NodejsAppLayerArrayInput` via:

NodejsAppLayerArray{ NodejsAppLayerArgs{...} }

type NodejsAppLayerArrayOutput

type NodejsAppLayerArrayOutput struct{ *pulumi.OutputState }

func (NodejsAppLayerArrayOutput) ElementType

func (NodejsAppLayerArrayOutput) ElementType() reflect.Type

func (NodejsAppLayerArrayOutput) Index

func (NodejsAppLayerArrayOutput) ToNodejsAppLayerArrayOutput

func (o NodejsAppLayerArrayOutput) ToNodejsAppLayerArrayOutput() NodejsAppLayerArrayOutput

func (NodejsAppLayerArrayOutput) ToNodejsAppLayerArrayOutputWithContext

func (o NodejsAppLayerArrayOutput) ToNodejsAppLayerArrayOutputWithContext(ctx context.Context) NodejsAppLayerArrayOutput

type NodejsAppLayerEbsVolume

type NodejsAppLayerEbsVolume struct {
	Encrypted *bool `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops *int `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint string `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks int `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel *string `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size int `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type *string `pulumi:"type"`
}

type NodejsAppLayerEbsVolumeArgs

type NodejsAppLayerEbsVolumeArgs struct {
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint pulumi.StringInput `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks pulumi.IntInput `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel pulumi.StringPtrInput `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size pulumi.IntInput `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (NodejsAppLayerEbsVolumeArgs) ElementType

func (NodejsAppLayerEbsVolumeArgs) ToNodejsAppLayerEbsVolumeOutput

func (i NodejsAppLayerEbsVolumeArgs) ToNodejsAppLayerEbsVolumeOutput() NodejsAppLayerEbsVolumeOutput

func (NodejsAppLayerEbsVolumeArgs) ToNodejsAppLayerEbsVolumeOutputWithContext

func (i NodejsAppLayerEbsVolumeArgs) ToNodejsAppLayerEbsVolumeOutputWithContext(ctx context.Context) NodejsAppLayerEbsVolumeOutput

type NodejsAppLayerEbsVolumeArray

type NodejsAppLayerEbsVolumeArray []NodejsAppLayerEbsVolumeInput

func (NodejsAppLayerEbsVolumeArray) ElementType

func (NodejsAppLayerEbsVolumeArray) ToNodejsAppLayerEbsVolumeArrayOutput

func (i NodejsAppLayerEbsVolumeArray) ToNodejsAppLayerEbsVolumeArrayOutput() NodejsAppLayerEbsVolumeArrayOutput

func (NodejsAppLayerEbsVolumeArray) ToNodejsAppLayerEbsVolumeArrayOutputWithContext

func (i NodejsAppLayerEbsVolumeArray) ToNodejsAppLayerEbsVolumeArrayOutputWithContext(ctx context.Context) NodejsAppLayerEbsVolumeArrayOutput

type NodejsAppLayerEbsVolumeArrayInput

type NodejsAppLayerEbsVolumeArrayInput interface {
	pulumi.Input

	ToNodejsAppLayerEbsVolumeArrayOutput() NodejsAppLayerEbsVolumeArrayOutput
	ToNodejsAppLayerEbsVolumeArrayOutputWithContext(context.Context) NodejsAppLayerEbsVolumeArrayOutput
}

NodejsAppLayerEbsVolumeArrayInput is an input type that accepts NodejsAppLayerEbsVolumeArray and NodejsAppLayerEbsVolumeArrayOutput values. You can construct a concrete instance of `NodejsAppLayerEbsVolumeArrayInput` via:

NodejsAppLayerEbsVolumeArray{ NodejsAppLayerEbsVolumeArgs{...} }

type NodejsAppLayerEbsVolumeArrayOutput

type NodejsAppLayerEbsVolumeArrayOutput struct{ *pulumi.OutputState }

func (NodejsAppLayerEbsVolumeArrayOutput) ElementType

func (NodejsAppLayerEbsVolumeArrayOutput) Index

func (NodejsAppLayerEbsVolumeArrayOutput) ToNodejsAppLayerEbsVolumeArrayOutput

func (o NodejsAppLayerEbsVolumeArrayOutput) ToNodejsAppLayerEbsVolumeArrayOutput() NodejsAppLayerEbsVolumeArrayOutput

func (NodejsAppLayerEbsVolumeArrayOutput) ToNodejsAppLayerEbsVolumeArrayOutputWithContext

func (o NodejsAppLayerEbsVolumeArrayOutput) ToNodejsAppLayerEbsVolumeArrayOutputWithContext(ctx context.Context) NodejsAppLayerEbsVolumeArrayOutput

type NodejsAppLayerEbsVolumeInput

type NodejsAppLayerEbsVolumeInput interface {
	pulumi.Input

	ToNodejsAppLayerEbsVolumeOutput() NodejsAppLayerEbsVolumeOutput
	ToNodejsAppLayerEbsVolumeOutputWithContext(context.Context) NodejsAppLayerEbsVolumeOutput
}

NodejsAppLayerEbsVolumeInput is an input type that accepts NodejsAppLayerEbsVolumeArgs and NodejsAppLayerEbsVolumeOutput values. You can construct a concrete instance of `NodejsAppLayerEbsVolumeInput` via:

NodejsAppLayerEbsVolumeArgs{...}

type NodejsAppLayerEbsVolumeOutput

type NodejsAppLayerEbsVolumeOutput struct{ *pulumi.OutputState }

func (NodejsAppLayerEbsVolumeOutput) ElementType

func (NodejsAppLayerEbsVolumeOutput) Encrypted

func (NodejsAppLayerEbsVolumeOutput) Iops

For PIOPS volumes, the IOPS per disk.

func (NodejsAppLayerEbsVolumeOutput) MountPoint

The path to mount the EBS volume on the layer's instances.

func (NodejsAppLayerEbsVolumeOutput) NumberOfDisks

The number of disks to use for the EBS volume.

func (NodejsAppLayerEbsVolumeOutput) RaidLevel

The RAID level to use for the volume.

func (NodejsAppLayerEbsVolumeOutput) Size

The size of the volume in gigabytes.

func (NodejsAppLayerEbsVolumeOutput) ToNodejsAppLayerEbsVolumeOutput

func (o NodejsAppLayerEbsVolumeOutput) ToNodejsAppLayerEbsVolumeOutput() NodejsAppLayerEbsVolumeOutput

func (NodejsAppLayerEbsVolumeOutput) ToNodejsAppLayerEbsVolumeOutputWithContext

func (o NodejsAppLayerEbsVolumeOutput) ToNodejsAppLayerEbsVolumeOutputWithContext(ctx context.Context) NodejsAppLayerEbsVolumeOutput

func (NodejsAppLayerEbsVolumeOutput) Type

The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.

type NodejsAppLayerInput

type NodejsAppLayerInput interface {
	pulumi.Input

	ToNodejsAppLayerOutput() NodejsAppLayerOutput
	ToNodejsAppLayerOutputWithContext(ctx context.Context) NodejsAppLayerOutput
}

type NodejsAppLayerMap

type NodejsAppLayerMap map[string]NodejsAppLayerInput

func (NodejsAppLayerMap) ElementType

func (NodejsAppLayerMap) ElementType() reflect.Type

func (NodejsAppLayerMap) ToNodejsAppLayerMapOutput

func (i NodejsAppLayerMap) ToNodejsAppLayerMapOutput() NodejsAppLayerMapOutput

func (NodejsAppLayerMap) ToNodejsAppLayerMapOutputWithContext

func (i NodejsAppLayerMap) ToNodejsAppLayerMapOutputWithContext(ctx context.Context) NodejsAppLayerMapOutput

type NodejsAppLayerMapInput

type NodejsAppLayerMapInput interface {
	pulumi.Input

	ToNodejsAppLayerMapOutput() NodejsAppLayerMapOutput
	ToNodejsAppLayerMapOutputWithContext(context.Context) NodejsAppLayerMapOutput
}

NodejsAppLayerMapInput is an input type that accepts NodejsAppLayerMap and NodejsAppLayerMapOutput values. You can construct a concrete instance of `NodejsAppLayerMapInput` via:

NodejsAppLayerMap{ "key": NodejsAppLayerArgs{...} }

type NodejsAppLayerMapOutput

type NodejsAppLayerMapOutput struct{ *pulumi.OutputState }

func (NodejsAppLayerMapOutput) ElementType

func (NodejsAppLayerMapOutput) ElementType() reflect.Type

func (NodejsAppLayerMapOutput) MapIndex

func (NodejsAppLayerMapOutput) ToNodejsAppLayerMapOutput

func (o NodejsAppLayerMapOutput) ToNodejsAppLayerMapOutput() NodejsAppLayerMapOutput

func (NodejsAppLayerMapOutput) ToNodejsAppLayerMapOutputWithContext

func (o NodejsAppLayerMapOutput) ToNodejsAppLayerMapOutputWithContext(ctx context.Context) NodejsAppLayerMapOutput

type NodejsAppLayerOutput

type NodejsAppLayerOutput struct {
	*pulumi.OutputState
}

func (NodejsAppLayerOutput) ElementType

func (NodejsAppLayerOutput) ElementType() reflect.Type

func (NodejsAppLayerOutput) ToNodejsAppLayerOutput

func (o NodejsAppLayerOutput) ToNodejsAppLayerOutput() NodejsAppLayerOutput

func (NodejsAppLayerOutput) ToNodejsAppLayerOutputWithContext

func (o NodejsAppLayerOutput) ToNodejsAppLayerOutputWithContext(ctx context.Context) NodejsAppLayerOutput

func (NodejsAppLayerOutput) ToNodejsAppLayerPtrOutput

func (o NodejsAppLayerOutput) ToNodejsAppLayerPtrOutput() NodejsAppLayerPtrOutput

func (NodejsAppLayerOutput) ToNodejsAppLayerPtrOutputWithContext

func (o NodejsAppLayerOutput) ToNodejsAppLayerPtrOutputWithContext(ctx context.Context) NodejsAppLayerPtrOutput

type NodejsAppLayerPtrInput

type NodejsAppLayerPtrInput interface {
	pulumi.Input

	ToNodejsAppLayerPtrOutput() NodejsAppLayerPtrOutput
	ToNodejsAppLayerPtrOutputWithContext(ctx context.Context) NodejsAppLayerPtrOutput
}

type NodejsAppLayerPtrOutput

type NodejsAppLayerPtrOutput struct {
	*pulumi.OutputState
}

func (NodejsAppLayerPtrOutput) ElementType

func (NodejsAppLayerPtrOutput) ElementType() reflect.Type

func (NodejsAppLayerPtrOutput) ToNodejsAppLayerPtrOutput

func (o NodejsAppLayerPtrOutput) ToNodejsAppLayerPtrOutput() NodejsAppLayerPtrOutput

func (NodejsAppLayerPtrOutput) ToNodejsAppLayerPtrOutputWithContext

func (o NodejsAppLayerPtrOutput) ToNodejsAppLayerPtrOutputWithContext(ctx context.Context) NodejsAppLayerPtrOutput

type NodejsAppLayerState

type NodejsAppLayerState struct {
	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringPtrInput
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes NodejsAppLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// The version of NodeJS to use. Defaults to "0.10.38".
	NodejsVersion pulumi.StringPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringPtrInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

func (NodejsAppLayerState) ElementType

func (NodejsAppLayerState) ElementType() reflect.Type

type Permission

type Permission struct {
	pulumi.CustomResourceState

	// Whether the user is allowed to use SSH to communicate with the instance
	AllowSsh pulumi.BoolOutput `pulumi:"allowSsh"`
	// Whether the user is allowed to use sudo to elevate privileges
	AllowSudo pulumi.BoolOutput `pulumi:"allowSudo"`
	// The users permission level. Mus be one of `deny`, `show`, `deploy`, `manage`, `iamOnly`
	Level pulumi.StringOutput `pulumi:"level"`
	// The stack to set the permissions for
	StackId pulumi.StringOutput `pulumi:"stackId"`
	// The user's IAM ARN to set permissions for
	UserArn pulumi.StringOutput `pulumi:"userArn"`
}

Provides an OpsWorks permission resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/opsworks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := opsworks.NewPermission(ctx, "myStackPermission", &opsworks.PermissionArgs{
			AllowSsh:  pulumi.Bool(true),
			AllowSudo: pulumi.Bool(true),
			Level:     pulumi.String("iam_only"),
			UserArn:   pulumi.Any(aws_iam_user.User.Arn),
			StackId:   pulumi.Any(aws_opsworks_stack.Stack.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetPermission

func GetPermission(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PermissionState, opts ...pulumi.ResourceOption) (*Permission, error)

GetPermission gets an existing Permission 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 NewPermission

func NewPermission(ctx *pulumi.Context,
	name string, args *PermissionArgs, opts ...pulumi.ResourceOption) (*Permission, error)

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

func (*Permission) ElementType

func (*Permission) ElementType() reflect.Type

func (*Permission) ToPermissionOutput

func (i *Permission) ToPermissionOutput() PermissionOutput

func (*Permission) ToPermissionOutputWithContext

func (i *Permission) ToPermissionOutputWithContext(ctx context.Context) PermissionOutput

func (*Permission) ToPermissionPtrOutput

func (i *Permission) ToPermissionPtrOutput() PermissionPtrOutput

func (*Permission) ToPermissionPtrOutputWithContext

func (i *Permission) ToPermissionPtrOutputWithContext(ctx context.Context) PermissionPtrOutput

type PermissionArgs

type PermissionArgs struct {
	// Whether the user is allowed to use SSH to communicate with the instance
	AllowSsh pulumi.BoolPtrInput
	// Whether the user is allowed to use sudo to elevate privileges
	AllowSudo pulumi.BoolPtrInput
	// The users permission level. Mus be one of `deny`, `show`, `deploy`, `manage`, `iamOnly`
	Level pulumi.StringPtrInput
	// The stack to set the permissions for
	StackId pulumi.StringPtrInput
	// The user's IAM ARN to set permissions for
	UserArn pulumi.StringInput
}

The set of arguments for constructing a Permission resource.

func (PermissionArgs) ElementType

func (PermissionArgs) ElementType() reflect.Type

type PermissionArray

type PermissionArray []PermissionInput

func (PermissionArray) ElementType

func (PermissionArray) ElementType() reflect.Type

func (PermissionArray) ToPermissionArrayOutput

func (i PermissionArray) ToPermissionArrayOutput() PermissionArrayOutput

func (PermissionArray) ToPermissionArrayOutputWithContext

func (i PermissionArray) ToPermissionArrayOutputWithContext(ctx context.Context) PermissionArrayOutput

type PermissionArrayInput

type PermissionArrayInput interface {
	pulumi.Input

	ToPermissionArrayOutput() PermissionArrayOutput
	ToPermissionArrayOutputWithContext(context.Context) PermissionArrayOutput
}

PermissionArrayInput is an input type that accepts PermissionArray and PermissionArrayOutput values. You can construct a concrete instance of `PermissionArrayInput` via:

PermissionArray{ PermissionArgs{...} }

type PermissionArrayOutput

type PermissionArrayOutput struct{ *pulumi.OutputState }

func (PermissionArrayOutput) ElementType

func (PermissionArrayOutput) ElementType() reflect.Type

func (PermissionArrayOutput) Index

func (PermissionArrayOutput) ToPermissionArrayOutput

func (o PermissionArrayOutput) ToPermissionArrayOutput() PermissionArrayOutput

func (PermissionArrayOutput) ToPermissionArrayOutputWithContext

func (o PermissionArrayOutput) ToPermissionArrayOutputWithContext(ctx context.Context) PermissionArrayOutput

type PermissionInput

type PermissionInput interface {
	pulumi.Input

	ToPermissionOutput() PermissionOutput
	ToPermissionOutputWithContext(ctx context.Context) PermissionOutput
}

type PermissionMap

type PermissionMap map[string]PermissionInput

func (PermissionMap) ElementType

func (PermissionMap) ElementType() reflect.Type

func (PermissionMap) ToPermissionMapOutput

func (i PermissionMap) ToPermissionMapOutput() PermissionMapOutput

func (PermissionMap) ToPermissionMapOutputWithContext

func (i PermissionMap) ToPermissionMapOutputWithContext(ctx context.Context) PermissionMapOutput

type PermissionMapInput

type PermissionMapInput interface {
	pulumi.Input

	ToPermissionMapOutput() PermissionMapOutput
	ToPermissionMapOutputWithContext(context.Context) PermissionMapOutput
}

PermissionMapInput is an input type that accepts PermissionMap and PermissionMapOutput values. You can construct a concrete instance of `PermissionMapInput` via:

PermissionMap{ "key": PermissionArgs{...} }

type PermissionMapOutput

type PermissionMapOutput struct{ *pulumi.OutputState }

func (PermissionMapOutput) ElementType

func (PermissionMapOutput) ElementType() reflect.Type

func (PermissionMapOutput) MapIndex

func (PermissionMapOutput) ToPermissionMapOutput

func (o PermissionMapOutput) ToPermissionMapOutput() PermissionMapOutput

func (PermissionMapOutput) ToPermissionMapOutputWithContext

func (o PermissionMapOutput) ToPermissionMapOutputWithContext(ctx context.Context) PermissionMapOutput

type PermissionOutput

type PermissionOutput struct {
	*pulumi.OutputState
}

func (PermissionOutput) ElementType

func (PermissionOutput) ElementType() reflect.Type

func (PermissionOutput) ToPermissionOutput

func (o PermissionOutput) ToPermissionOutput() PermissionOutput

func (PermissionOutput) ToPermissionOutputWithContext

func (o PermissionOutput) ToPermissionOutputWithContext(ctx context.Context) PermissionOutput

func (PermissionOutput) ToPermissionPtrOutput

func (o PermissionOutput) ToPermissionPtrOutput() PermissionPtrOutput

func (PermissionOutput) ToPermissionPtrOutputWithContext

func (o PermissionOutput) ToPermissionPtrOutputWithContext(ctx context.Context) PermissionPtrOutput

type PermissionPtrInput

type PermissionPtrInput interface {
	pulumi.Input

	ToPermissionPtrOutput() PermissionPtrOutput
	ToPermissionPtrOutputWithContext(ctx context.Context) PermissionPtrOutput
}

type PermissionPtrOutput

type PermissionPtrOutput struct {
	*pulumi.OutputState
}

func (PermissionPtrOutput) ElementType

func (PermissionPtrOutput) ElementType() reflect.Type

func (PermissionPtrOutput) ToPermissionPtrOutput

func (o PermissionPtrOutput) ToPermissionPtrOutput() PermissionPtrOutput

func (PermissionPtrOutput) ToPermissionPtrOutputWithContext

func (o PermissionPtrOutput) ToPermissionPtrOutputWithContext(ctx context.Context) PermissionPtrOutput

type PermissionState

type PermissionState struct {
	// Whether the user is allowed to use SSH to communicate with the instance
	AllowSsh pulumi.BoolPtrInput
	// Whether the user is allowed to use sudo to elevate privileges
	AllowSudo pulumi.BoolPtrInput
	// The users permission level. Mus be one of `deny`, `show`, `deploy`, `manage`, `iamOnly`
	Level pulumi.StringPtrInput
	// The stack to set the permissions for
	StackId pulumi.StringPtrInput
	// The user's IAM ARN to set permissions for
	UserArn pulumi.StringPtrInput
}

func (PermissionState) ElementType

func (PermissionState) ElementType() reflect.Type

type PhpAppLayer

type PhpAppLayer struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrOutput `pulumi:"autoAssignElasticIps"`
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrOutput `pulumi:"autoAssignPublicIps"`
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrOutput     `pulumi:"autoHealing"`
	CustomConfigureRecipes pulumi.StringArrayOutput `pulumi:"customConfigureRecipes"`
	CustomDeployRecipes    pulumi.StringArrayOutput `pulumi:"customDeployRecipes"`
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrOutput `pulumi:"customInstanceProfileArn"`
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrOutput `pulumi:"customJson"`
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayOutput `pulumi:"customSecurityGroupIds"`
	CustomSetupRecipes     pulumi.StringArrayOutput `pulumi:"customSetupRecipes"`
	CustomShutdownRecipes  pulumi.StringArrayOutput `pulumi:"customShutdownRecipes"`
	CustomUndeployRecipes  pulumi.StringArrayOutput `pulumi:"customUndeployRecipes"`
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrOutput `pulumi:"drainElbOnShutdown"`
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes PhpAppLayerEbsVolumeArrayOutput `pulumi:"ebsVolumes"`
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrOutput `pulumi:"elasticLoadBalancer"`
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrOutput `pulumi:"installUpdatesOnBoot"`
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrOutput `pulumi:"instanceShutdownTimeout"`
	// A human-readable name for the layer.
	Name pulumi.StringOutput `pulumi:"name"`
	// The id of the stack the layer will belong to.
	StackId pulumi.StringOutput `pulumi:"stackId"`
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayOutput `pulumi:"systemPackages"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrOutput `pulumi:"useEbsOptimizedInstances"`
}

Provides an OpsWorks PHP application layer resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/opsworks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := opsworks.NewPhpAppLayer(ctx, "app", &opsworks.PhpAppLayerArgs{
			StackId: pulumi.Any(aws_opsworks_stack.Main.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

OpsWorks PHP Application Layers can be imported using the `id`, e.g.

```sh

$ pulumi import aws:opsworks/phpAppLayer:PhpAppLayer bar 00000000-0000-0000-0000-000000000000

```

func GetPhpAppLayer

func GetPhpAppLayer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PhpAppLayerState, opts ...pulumi.ResourceOption) (*PhpAppLayer, error)

GetPhpAppLayer gets an existing PhpAppLayer 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 NewPhpAppLayer

func NewPhpAppLayer(ctx *pulumi.Context,
	name string, args *PhpAppLayerArgs, opts ...pulumi.ResourceOption) (*PhpAppLayer, error)

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

func (*PhpAppLayer) ElementType

func (*PhpAppLayer) ElementType() reflect.Type

func (*PhpAppLayer) ToPhpAppLayerOutput

func (i *PhpAppLayer) ToPhpAppLayerOutput() PhpAppLayerOutput

func (*PhpAppLayer) ToPhpAppLayerOutputWithContext

func (i *PhpAppLayer) ToPhpAppLayerOutputWithContext(ctx context.Context) PhpAppLayerOutput

func (*PhpAppLayer) ToPhpAppLayerPtrOutput

func (i *PhpAppLayer) ToPhpAppLayerPtrOutput() PhpAppLayerPtrOutput

func (*PhpAppLayer) ToPhpAppLayerPtrOutputWithContext

func (i *PhpAppLayer) ToPhpAppLayerPtrOutputWithContext(ctx context.Context) PhpAppLayerPtrOutput

type PhpAppLayerArgs

type PhpAppLayerArgs struct {
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes PhpAppLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

The set of arguments for constructing a PhpAppLayer resource.

func (PhpAppLayerArgs) ElementType

func (PhpAppLayerArgs) ElementType() reflect.Type

type PhpAppLayerArray

type PhpAppLayerArray []PhpAppLayerInput

func (PhpAppLayerArray) ElementType

func (PhpAppLayerArray) ElementType() reflect.Type

func (PhpAppLayerArray) ToPhpAppLayerArrayOutput

func (i PhpAppLayerArray) ToPhpAppLayerArrayOutput() PhpAppLayerArrayOutput

func (PhpAppLayerArray) ToPhpAppLayerArrayOutputWithContext

func (i PhpAppLayerArray) ToPhpAppLayerArrayOutputWithContext(ctx context.Context) PhpAppLayerArrayOutput

type PhpAppLayerArrayInput

type PhpAppLayerArrayInput interface {
	pulumi.Input

	ToPhpAppLayerArrayOutput() PhpAppLayerArrayOutput
	ToPhpAppLayerArrayOutputWithContext(context.Context) PhpAppLayerArrayOutput
}

PhpAppLayerArrayInput is an input type that accepts PhpAppLayerArray and PhpAppLayerArrayOutput values. You can construct a concrete instance of `PhpAppLayerArrayInput` via:

PhpAppLayerArray{ PhpAppLayerArgs{...} }

type PhpAppLayerArrayOutput

type PhpAppLayerArrayOutput struct{ *pulumi.OutputState }

func (PhpAppLayerArrayOutput) ElementType

func (PhpAppLayerArrayOutput) ElementType() reflect.Type

func (PhpAppLayerArrayOutput) Index

func (PhpAppLayerArrayOutput) ToPhpAppLayerArrayOutput

func (o PhpAppLayerArrayOutput) ToPhpAppLayerArrayOutput() PhpAppLayerArrayOutput

func (PhpAppLayerArrayOutput) ToPhpAppLayerArrayOutputWithContext

func (o PhpAppLayerArrayOutput) ToPhpAppLayerArrayOutputWithContext(ctx context.Context) PhpAppLayerArrayOutput

type PhpAppLayerEbsVolume

type PhpAppLayerEbsVolume struct {
	Encrypted *bool `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops *int `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint string `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks int `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel *string `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size int `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type *string `pulumi:"type"`
}

type PhpAppLayerEbsVolumeArgs

type PhpAppLayerEbsVolumeArgs struct {
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint pulumi.StringInput `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks pulumi.IntInput `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel pulumi.StringPtrInput `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size pulumi.IntInput `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (PhpAppLayerEbsVolumeArgs) ElementType

func (PhpAppLayerEbsVolumeArgs) ElementType() reflect.Type

func (PhpAppLayerEbsVolumeArgs) ToPhpAppLayerEbsVolumeOutput

func (i PhpAppLayerEbsVolumeArgs) ToPhpAppLayerEbsVolumeOutput() PhpAppLayerEbsVolumeOutput

func (PhpAppLayerEbsVolumeArgs) ToPhpAppLayerEbsVolumeOutputWithContext

func (i PhpAppLayerEbsVolumeArgs) ToPhpAppLayerEbsVolumeOutputWithContext(ctx context.Context) PhpAppLayerEbsVolumeOutput

type PhpAppLayerEbsVolumeArray

type PhpAppLayerEbsVolumeArray []PhpAppLayerEbsVolumeInput

func (PhpAppLayerEbsVolumeArray) ElementType

func (PhpAppLayerEbsVolumeArray) ElementType() reflect.Type

func (PhpAppLayerEbsVolumeArray) ToPhpAppLayerEbsVolumeArrayOutput

func (i PhpAppLayerEbsVolumeArray) ToPhpAppLayerEbsVolumeArrayOutput() PhpAppLayerEbsVolumeArrayOutput

func (PhpAppLayerEbsVolumeArray) ToPhpAppLayerEbsVolumeArrayOutputWithContext

func (i PhpAppLayerEbsVolumeArray) ToPhpAppLayerEbsVolumeArrayOutputWithContext(ctx context.Context) PhpAppLayerEbsVolumeArrayOutput

type PhpAppLayerEbsVolumeArrayInput

type PhpAppLayerEbsVolumeArrayInput interface {
	pulumi.Input

	ToPhpAppLayerEbsVolumeArrayOutput() PhpAppLayerEbsVolumeArrayOutput
	ToPhpAppLayerEbsVolumeArrayOutputWithContext(context.Context) PhpAppLayerEbsVolumeArrayOutput
}

PhpAppLayerEbsVolumeArrayInput is an input type that accepts PhpAppLayerEbsVolumeArray and PhpAppLayerEbsVolumeArrayOutput values. You can construct a concrete instance of `PhpAppLayerEbsVolumeArrayInput` via:

PhpAppLayerEbsVolumeArray{ PhpAppLayerEbsVolumeArgs{...} }

type PhpAppLayerEbsVolumeArrayOutput

type PhpAppLayerEbsVolumeArrayOutput struct{ *pulumi.OutputState }

func (PhpAppLayerEbsVolumeArrayOutput) ElementType

func (PhpAppLayerEbsVolumeArrayOutput) Index

func (PhpAppLayerEbsVolumeArrayOutput) ToPhpAppLayerEbsVolumeArrayOutput

func (o PhpAppLayerEbsVolumeArrayOutput) ToPhpAppLayerEbsVolumeArrayOutput() PhpAppLayerEbsVolumeArrayOutput

func (PhpAppLayerEbsVolumeArrayOutput) ToPhpAppLayerEbsVolumeArrayOutputWithContext

func (o PhpAppLayerEbsVolumeArrayOutput) ToPhpAppLayerEbsVolumeArrayOutputWithContext(ctx context.Context) PhpAppLayerEbsVolumeArrayOutput

type PhpAppLayerEbsVolumeInput

type PhpAppLayerEbsVolumeInput interface {
	pulumi.Input

	ToPhpAppLayerEbsVolumeOutput() PhpAppLayerEbsVolumeOutput
	ToPhpAppLayerEbsVolumeOutputWithContext(context.Context) PhpAppLayerEbsVolumeOutput
}

PhpAppLayerEbsVolumeInput is an input type that accepts PhpAppLayerEbsVolumeArgs and PhpAppLayerEbsVolumeOutput values. You can construct a concrete instance of `PhpAppLayerEbsVolumeInput` via:

PhpAppLayerEbsVolumeArgs{...}

type PhpAppLayerEbsVolumeOutput

type PhpAppLayerEbsVolumeOutput struct{ *pulumi.OutputState }

func (PhpAppLayerEbsVolumeOutput) ElementType

func (PhpAppLayerEbsVolumeOutput) ElementType() reflect.Type

func (PhpAppLayerEbsVolumeOutput) Encrypted

func (PhpAppLayerEbsVolumeOutput) Iops

For PIOPS volumes, the IOPS per disk.

func (PhpAppLayerEbsVolumeOutput) MountPoint

The path to mount the EBS volume on the layer's instances.

func (PhpAppLayerEbsVolumeOutput) NumberOfDisks

func (o PhpAppLayerEbsVolumeOutput) NumberOfDisks() pulumi.IntOutput

The number of disks to use for the EBS volume.

func (PhpAppLayerEbsVolumeOutput) RaidLevel

The RAID level to use for the volume.

func (PhpAppLayerEbsVolumeOutput) Size

The size of the volume in gigabytes.

func (PhpAppLayerEbsVolumeOutput) ToPhpAppLayerEbsVolumeOutput

func (o PhpAppLayerEbsVolumeOutput) ToPhpAppLayerEbsVolumeOutput() PhpAppLayerEbsVolumeOutput

func (PhpAppLayerEbsVolumeOutput) ToPhpAppLayerEbsVolumeOutputWithContext

func (o PhpAppLayerEbsVolumeOutput) ToPhpAppLayerEbsVolumeOutputWithContext(ctx context.Context) PhpAppLayerEbsVolumeOutput

func (PhpAppLayerEbsVolumeOutput) Type

The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.

type PhpAppLayerInput

type PhpAppLayerInput interface {
	pulumi.Input

	ToPhpAppLayerOutput() PhpAppLayerOutput
	ToPhpAppLayerOutputWithContext(ctx context.Context) PhpAppLayerOutput
}

type PhpAppLayerMap

type PhpAppLayerMap map[string]PhpAppLayerInput

func (PhpAppLayerMap) ElementType

func (PhpAppLayerMap) ElementType() reflect.Type

func (PhpAppLayerMap) ToPhpAppLayerMapOutput

func (i PhpAppLayerMap) ToPhpAppLayerMapOutput() PhpAppLayerMapOutput

func (PhpAppLayerMap) ToPhpAppLayerMapOutputWithContext

func (i PhpAppLayerMap) ToPhpAppLayerMapOutputWithContext(ctx context.Context) PhpAppLayerMapOutput

type PhpAppLayerMapInput

type PhpAppLayerMapInput interface {
	pulumi.Input

	ToPhpAppLayerMapOutput() PhpAppLayerMapOutput
	ToPhpAppLayerMapOutputWithContext(context.Context) PhpAppLayerMapOutput
}

PhpAppLayerMapInput is an input type that accepts PhpAppLayerMap and PhpAppLayerMapOutput values. You can construct a concrete instance of `PhpAppLayerMapInput` via:

PhpAppLayerMap{ "key": PhpAppLayerArgs{...} }

type PhpAppLayerMapOutput

type PhpAppLayerMapOutput struct{ *pulumi.OutputState }

func (PhpAppLayerMapOutput) ElementType

func (PhpAppLayerMapOutput) ElementType() reflect.Type

func (PhpAppLayerMapOutput) MapIndex

func (PhpAppLayerMapOutput) ToPhpAppLayerMapOutput

func (o PhpAppLayerMapOutput) ToPhpAppLayerMapOutput() PhpAppLayerMapOutput

func (PhpAppLayerMapOutput) ToPhpAppLayerMapOutputWithContext

func (o PhpAppLayerMapOutput) ToPhpAppLayerMapOutputWithContext(ctx context.Context) PhpAppLayerMapOutput

type PhpAppLayerOutput

type PhpAppLayerOutput struct {
	*pulumi.OutputState
}

func (PhpAppLayerOutput) ElementType

func (PhpAppLayerOutput) ElementType() reflect.Type

func (PhpAppLayerOutput) ToPhpAppLayerOutput

func (o PhpAppLayerOutput) ToPhpAppLayerOutput() PhpAppLayerOutput

func (PhpAppLayerOutput) ToPhpAppLayerOutputWithContext

func (o PhpAppLayerOutput) ToPhpAppLayerOutputWithContext(ctx context.Context) PhpAppLayerOutput

func (PhpAppLayerOutput) ToPhpAppLayerPtrOutput

func (o PhpAppLayerOutput) ToPhpAppLayerPtrOutput() PhpAppLayerPtrOutput

func (PhpAppLayerOutput) ToPhpAppLayerPtrOutputWithContext

func (o PhpAppLayerOutput) ToPhpAppLayerPtrOutputWithContext(ctx context.Context) PhpAppLayerPtrOutput

type PhpAppLayerPtrInput

type PhpAppLayerPtrInput interface {
	pulumi.Input

	ToPhpAppLayerPtrOutput() PhpAppLayerPtrOutput
	ToPhpAppLayerPtrOutputWithContext(ctx context.Context) PhpAppLayerPtrOutput
}

type PhpAppLayerPtrOutput

type PhpAppLayerPtrOutput struct {
	*pulumi.OutputState
}

func (PhpAppLayerPtrOutput) ElementType

func (PhpAppLayerPtrOutput) ElementType() reflect.Type

func (PhpAppLayerPtrOutput) ToPhpAppLayerPtrOutput

func (o PhpAppLayerPtrOutput) ToPhpAppLayerPtrOutput() PhpAppLayerPtrOutput

func (PhpAppLayerPtrOutput) ToPhpAppLayerPtrOutputWithContext

func (o PhpAppLayerPtrOutput) ToPhpAppLayerPtrOutputWithContext(ctx context.Context) PhpAppLayerPtrOutput

type PhpAppLayerState

type PhpAppLayerState struct {
	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringPtrInput
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes PhpAppLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringPtrInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

func (PhpAppLayerState) ElementType

func (PhpAppLayerState) ElementType() reflect.Type

type RailsAppLayer

type RailsAppLayer struct {
	pulumi.CustomResourceState

	// Keyword for the app server to use. Defaults to "apachePassenger".
	AppServer pulumi.StringPtrOutput `pulumi:"appServer"`
	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrOutput `pulumi:"autoAssignElasticIps"`
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrOutput `pulumi:"autoAssignPublicIps"`
	// Whether to enable auto-healing for the layer.
	AutoHealing pulumi.BoolPtrOutput `pulumi:"autoHealing"`
	// When OpsWorks is managing Bundler, which version to use. Defaults to "1.5.3".
	BundlerVersion         pulumi.StringPtrOutput   `pulumi:"bundlerVersion"`
	CustomConfigureRecipes pulumi.StringArrayOutput `pulumi:"customConfigureRecipes"`
	CustomDeployRecipes    pulumi.StringArrayOutput `pulumi:"customDeployRecipes"`
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrOutput `pulumi:"customInstanceProfileArn"`
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrOutput `pulumi:"customJson"`
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayOutput `pulumi:"customSecurityGroupIds"`
	CustomSetupRecipes     pulumi.StringArrayOutput `pulumi:"customSetupRecipes"`
	CustomShutdownRecipes  pulumi.StringArrayOutput `pulumi:"customShutdownRecipes"`
	CustomUndeployRecipes  pulumi.StringArrayOutput `pulumi:"customUndeployRecipes"`
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrOutput `pulumi:"drainElbOnShutdown"`
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes RailsAppLayerEbsVolumeArrayOutput `pulumi:"ebsVolumes"`
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrOutput `pulumi:"elasticLoadBalancer"`
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrOutput `pulumi:"installUpdatesOnBoot"`
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrOutput `pulumi:"instanceShutdownTimeout"`
	// Whether OpsWorks should manage bundler. On by default.
	ManageBundler pulumi.BoolPtrOutput `pulumi:"manageBundler"`
	// A human-readable name for the layer.
	Name pulumi.StringOutput `pulumi:"name"`
	// The version of Passenger to use. Defaults to "4.0.46".
	PassengerVersion pulumi.StringPtrOutput `pulumi:"passengerVersion"`
	// The version of Ruby to use. Defaults to "2.0.0".
	RubyVersion pulumi.StringPtrOutput `pulumi:"rubyVersion"`
	// The version of RubyGems to use. Defaults to "2.2.2".
	RubygemsVersion pulumi.StringPtrOutput `pulumi:"rubygemsVersion"`
	// The id of the stack the layer will belong to.
	StackId pulumi.StringOutput `pulumi:"stackId"`
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayOutput `pulumi:"systemPackages"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrOutput `pulumi:"useEbsOptimizedInstances"`
}

Provides an OpsWorks Ruby on Rails application layer resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/opsworks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := opsworks.NewRailsAppLayer(ctx, "app", &opsworks.RailsAppLayerArgs{
			StackId: pulumi.Any(aws_opsworks_stack.Main.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetRailsAppLayer

func GetRailsAppLayer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RailsAppLayerState, opts ...pulumi.ResourceOption) (*RailsAppLayer, error)

GetRailsAppLayer gets an existing RailsAppLayer 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 NewRailsAppLayer

func NewRailsAppLayer(ctx *pulumi.Context,
	name string, args *RailsAppLayerArgs, opts ...pulumi.ResourceOption) (*RailsAppLayer, error)

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

func (*RailsAppLayer) ElementType

func (*RailsAppLayer) ElementType() reflect.Type

func (*RailsAppLayer) ToRailsAppLayerOutput

func (i *RailsAppLayer) ToRailsAppLayerOutput() RailsAppLayerOutput

func (*RailsAppLayer) ToRailsAppLayerOutputWithContext

func (i *RailsAppLayer) ToRailsAppLayerOutputWithContext(ctx context.Context) RailsAppLayerOutput

func (*RailsAppLayer) ToRailsAppLayerPtrOutput

func (i *RailsAppLayer) ToRailsAppLayerPtrOutput() RailsAppLayerPtrOutput

func (*RailsAppLayer) ToRailsAppLayerPtrOutputWithContext

func (i *RailsAppLayer) ToRailsAppLayerPtrOutputWithContext(ctx context.Context) RailsAppLayerPtrOutput

type RailsAppLayerArgs

type RailsAppLayerArgs struct {
	// Keyword for the app server to use. Defaults to "apachePassenger".
	AppServer pulumi.StringPtrInput
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing pulumi.BoolPtrInput
	// When OpsWorks is managing Bundler, which version to use. Defaults to "1.5.3".
	BundlerVersion         pulumi.StringPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes RailsAppLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// Whether OpsWorks should manage bundler. On by default.
	ManageBundler pulumi.BoolPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// The version of Passenger to use. Defaults to "4.0.46".
	PassengerVersion pulumi.StringPtrInput
	// The version of Ruby to use. Defaults to "2.0.0".
	RubyVersion pulumi.StringPtrInput
	// The version of RubyGems to use. Defaults to "2.2.2".
	RubygemsVersion pulumi.StringPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

The set of arguments for constructing a RailsAppLayer resource.

func (RailsAppLayerArgs) ElementType

func (RailsAppLayerArgs) ElementType() reflect.Type

type RailsAppLayerArray

type RailsAppLayerArray []RailsAppLayerInput

func (RailsAppLayerArray) ElementType

func (RailsAppLayerArray) ElementType() reflect.Type

func (RailsAppLayerArray) ToRailsAppLayerArrayOutput

func (i RailsAppLayerArray) ToRailsAppLayerArrayOutput() RailsAppLayerArrayOutput

func (RailsAppLayerArray) ToRailsAppLayerArrayOutputWithContext

func (i RailsAppLayerArray) ToRailsAppLayerArrayOutputWithContext(ctx context.Context) RailsAppLayerArrayOutput

type RailsAppLayerArrayInput

type RailsAppLayerArrayInput interface {
	pulumi.Input

	ToRailsAppLayerArrayOutput() RailsAppLayerArrayOutput
	ToRailsAppLayerArrayOutputWithContext(context.Context) RailsAppLayerArrayOutput
}

RailsAppLayerArrayInput is an input type that accepts RailsAppLayerArray and RailsAppLayerArrayOutput values. You can construct a concrete instance of `RailsAppLayerArrayInput` via:

RailsAppLayerArray{ RailsAppLayerArgs{...} }

type RailsAppLayerArrayOutput

type RailsAppLayerArrayOutput struct{ *pulumi.OutputState }

func (RailsAppLayerArrayOutput) ElementType

func (RailsAppLayerArrayOutput) ElementType() reflect.Type

func (RailsAppLayerArrayOutput) Index

func (RailsAppLayerArrayOutput) ToRailsAppLayerArrayOutput

func (o RailsAppLayerArrayOutput) ToRailsAppLayerArrayOutput() RailsAppLayerArrayOutput

func (RailsAppLayerArrayOutput) ToRailsAppLayerArrayOutputWithContext

func (o RailsAppLayerArrayOutput) ToRailsAppLayerArrayOutputWithContext(ctx context.Context) RailsAppLayerArrayOutput

type RailsAppLayerEbsVolume

type RailsAppLayerEbsVolume struct {
	Encrypted *bool `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops *int `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint string `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks int `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel *string `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size int `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type *string `pulumi:"type"`
}

type RailsAppLayerEbsVolumeArgs

type RailsAppLayerEbsVolumeArgs struct {
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint pulumi.StringInput `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks pulumi.IntInput `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel pulumi.StringPtrInput `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size pulumi.IntInput `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (RailsAppLayerEbsVolumeArgs) ElementType

func (RailsAppLayerEbsVolumeArgs) ElementType() reflect.Type

func (RailsAppLayerEbsVolumeArgs) ToRailsAppLayerEbsVolumeOutput

func (i RailsAppLayerEbsVolumeArgs) ToRailsAppLayerEbsVolumeOutput() RailsAppLayerEbsVolumeOutput

func (RailsAppLayerEbsVolumeArgs) ToRailsAppLayerEbsVolumeOutputWithContext

func (i RailsAppLayerEbsVolumeArgs) ToRailsAppLayerEbsVolumeOutputWithContext(ctx context.Context) RailsAppLayerEbsVolumeOutput

type RailsAppLayerEbsVolumeArray

type RailsAppLayerEbsVolumeArray []RailsAppLayerEbsVolumeInput

func (RailsAppLayerEbsVolumeArray) ElementType

func (RailsAppLayerEbsVolumeArray) ToRailsAppLayerEbsVolumeArrayOutput

func (i RailsAppLayerEbsVolumeArray) ToRailsAppLayerEbsVolumeArrayOutput() RailsAppLayerEbsVolumeArrayOutput

func (RailsAppLayerEbsVolumeArray) ToRailsAppLayerEbsVolumeArrayOutputWithContext

func (i RailsAppLayerEbsVolumeArray) ToRailsAppLayerEbsVolumeArrayOutputWithContext(ctx context.Context) RailsAppLayerEbsVolumeArrayOutput

type RailsAppLayerEbsVolumeArrayInput

type RailsAppLayerEbsVolumeArrayInput interface {
	pulumi.Input

	ToRailsAppLayerEbsVolumeArrayOutput() RailsAppLayerEbsVolumeArrayOutput
	ToRailsAppLayerEbsVolumeArrayOutputWithContext(context.Context) RailsAppLayerEbsVolumeArrayOutput
}

RailsAppLayerEbsVolumeArrayInput is an input type that accepts RailsAppLayerEbsVolumeArray and RailsAppLayerEbsVolumeArrayOutput values. You can construct a concrete instance of `RailsAppLayerEbsVolumeArrayInput` via:

RailsAppLayerEbsVolumeArray{ RailsAppLayerEbsVolumeArgs{...} }

type RailsAppLayerEbsVolumeArrayOutput

type RailsAppLayerEbsVolumeArrayOutput struct{ *pulumi.OutputState }

func (RailsAppLayerEbsVolumeArrayOutput) ElementType

func (RailsAppLayerEbsVolumeArrayOutput) Index

func (RailsAppLayerEbsVolumeArrayOutput) ToRailsAppLayerEbsVolumeArrayOutput

func (o RailsAppLayerEbsVolumeArrayOutput) ToRailsAppLayerEbsVolumeArrayOutput() RailsAppLayerEbsVolumeArrayOutput

func (RailsAppLayerEbsVolumeArrayOutput) ToRailsAppLayerEbsVolumeArrayOutputWithContext

func (o RailsAppLayerEbsVolumeArrayOutput) ToRailsAppLayerEbsVolumeArrayOutputWithContext(ctx context.Context) RailsAppLayerEbsVolumeArrayOutput

type RailsAppLayerEbsVolumeInput

type RailsAppLayerEbsVolumeInput interface {
	pulumi.Input

	ToRailsAppLayerEbsVolumeOutput() RailsAppLayerEbsVolumeOutput
	ToRailsAppLayerEbsVolumeOutputWithContext(context.Context) RailsAppLayerEbsVolumeOutput
}

RailsAppLayerEbsVolumeInput is an input type that accepts RailsAppLayerEbsVolumeArgs and RailsAppLayerEbsVolumeOutput values. You can construct a concrete instance of `RailsAppLayerEbsVolumeInput` via:

RailsAppLayerEbsVolumeArgs{...}

type RailsAppLayerEbsVolumeOutput

type RailsAppLayerEbsVolumeOutput struct{ *pulumi.OutputState }

func (RailsAppLayerEbsVolumeOutput) ElementType

func (RailsAppLayerEbsVolumeOutput) Encrypted

func (RailsAppLayerEbsVolumeOutput) Iops

For PIOPS volumes, the IOPS per disk.

func (RailsAppLayerEbsVolumeOutput) MountPoint

The path to mount the EBS volume on the layer's instances.

func (RailsAppLayerEbsVolumeOutput) NumberOfDisks

func (o RailsAppLayerEbsVolumeOutput) NumberOfDisks() pulumi.IntOutput

The number of disks to use for the EBS volume.

func (RailsAppLayerEbsVolumeOutput) RaidLevel

The RAID level to use for the volume.

func (RailsAppLayerEbsVolumeOutput) Size

The size of the volume in gigabytes.

func (RailsAppLayerEbsVolumeOutput) ToRailsAppLayerEbsVolumeOutput

func (o RailsAppLayerEbsVolumeOutput) ToRailsAppLayerEbsVolumeOutput() RailsAppLayerEbsVolumeOutput

func (RailsAppLayerEbsVolumeOutput) ToRailsAppLayerEbsVolumeOutputWithContext

func (o RailsAppLayerEbsVolumeOutput) ToRailsAppLayerEbsVolumeOutputWithContext(ctx context.Context) RailsAppLayerEbsVolumeOutput

func (RailsAppLayerEbsVolumeOutput) Type

The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.

type RailsAppLayerInput

type RailsAppLayerInput interface {
	pulumi.Input

	ToRailsAppLayerOutput() RailsAppLayerOutput
	ToRailsAppLayerOutputWithContext(ctx context.Context) RailsAppLayerOutput
}

type RailsAppLayerMap

type RailsAppLayerMap map[string]RailsAppLayerInput

func (RailsAppLayerMap) ElementType

func (RailsAppLayerMap) ElementType() reflect.Type

func (RailsAppLayerMap) ToRailsAppLayerMapOutput

func (i RailsAppLayerMap) ToRailsAppLayerMapOutput() RailsAppLayerMapOutput

func (RailsAppLayerMap) ToRailsAppLayerMapOutputWithContext

func (i RailsAppLayerMap) ToRailsAppLayerMapOutputWithContext(ctx context.Context) RailsAppLayerMapOutput

type RailsAppLayerMapInput

type RailsAppLayerMapInput interface {
	pulumi.Input

	ToRailsAppLayerMapOutput() RailsAppLayerMapOutput
	ToRailsAppLayerMapOutputWithContext(context.Context) RailsAppLayerMapOutput
}

RailsAppLayerMapInput is an input type that accepts RailsAppLayerMap and RailsAppLayerMapOutput values. You can construct a concrete instance of `RailsAppLayerMapInput` via:

RailsAppLayerMap{ "key": RailsAppLayerArgs{...} }

type RailsAppLayerMapOutput

type RailsAppLayerMapOutput struct{ *pulumi.OutputState }

func (RailsAppLayerMapOutput) ElementType

func (RailsAppLayerMapOutput) ElementType() reflect.Type

func (RailsAppLayerMapOutput) MapIndex

func (RailsAppLayerMapOutput) ToRailsAppLayerMapOutput

func (o RailsAppLayerMapOutput) ToRailsAppLayerMapOutput() RailsAppLayerMapOutput

func (RailsAppLayerMapOutput) ToRailsAppLayerMapOutputWithContext

func (o RailsAppLayerMapOutput) ToRailsAppLayerMapOutputWithContext(ctx context.Context) RailsAppLayerMapOutput

type RailsAppLayerOutput

type RailsAppLayerOutput struct {
	*pulumi.OutputState
}

func (RailsAppLayerOutput) ElementType

func (RailsAppLayerOutput) ElementType() reflect.Type

func (RailsAppLayerOutput) ToRailsAppLayerOutput

func (o RailsAppLayerOutput) ToRailsAppLayerOutput() RailsAppLayerOutput

func (RailsAppLayerOutput) ToRailsAppLayerOutputWithContext

func (o RailsAppLayerOutput) ToRailsAppLayerOutputWithContext(ctx context.Context) RailsAppLayerOutput

func (RailsAppLayerOutput) ToRailsAppLayerPtrOutput

func (o RailsAppLayerOutput) ToRailsAppLayerPtrOutput() RailsAppLayerPtrOutput

func (RailsAppLayerOutput) ToRailsAppLayerPtrOutputWithContext

func (o RailsAppLayerOutput) ToRailsAppLayerPtrOutputWithContext(ctx context.Context) RailsAppLayerPtrOutput

type RailsAppLayerPtrInput

type RailsAppLayerPtrInput interface {
	pulumi.Input

	ToRailsAppLayerPtrOutput() RailsAppLayerPtrOutput
	ToRailsAppLayerPtrOutputWithContext(ctx context.Context) RailsAppLayerPtrOutput
}

type RailsAppLayerPtrOutput

type RailsAppLayerPtrOutput struct {
	*pulumi.OutputState
}

func (RailsAppLayerPtrOutput) ElementType

func (RailsAppLayerPtrOutput) ElementType() reflect.Type

func (RailsAppLayerPtrOutput) ToRailsAppLayerPtrOutput

func (o RailsAppLayerPtrOutput) ToRailsAppLayerPtrOutput() RailsAppLayerPtrOutput

func (RailsAppLayerPtrOutput) ToRailsAppLayerPtrOutputWithContext

func (o RailsAppLayerPtrOutput) ToRailsAppLayerPtrOutputWithContext(ctx context.Context) RailsAppLayerPtrOutput

type RailsAppLayerState

type RailsAppLayerState struct {
	// Keyword for the app server to use. Defaults to "apachePassenger".
	AppServer pulumi.StringPtrInput
	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringPtrInput
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing pulumi.BoolPtrInput
	// When OpsWorks is managing Bundler, which version to use. Defaults to "1.5.3".
	BundlerVersion         pulumi.StringPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	// Custom JSON attributes to apply to the layer.
	CustomJson pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes RailsAppLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// Whether OpsWorks should manage bundler. On by default.
	ManageBundler pulumi.BoolPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// The version of Passenger to use. Defaults to "4.0.46".
	PassengerVersion pulumi.StringPtrInput
	// The version of Ruby to use. Defaults to "2.0.0".
	RubyVersion pulumi.StringPtrInput
	// The version of RubyGems to use. Defaults to "2.2.2".
	RubygemsVersion pulumi.StringPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringPtrInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

func (RailsAppLayerState) ElementType

func (RailsAppLayerState) ElementType() reflect.Type

type RdsDbInstance

type RdsDbInstance struct {
	pulumi.CustomResourceState

	// A db password
	DbPassword pulumi.StringOutput `pulumi:"dbPassword"`
	// A db username
	DbUser pulumi.StringOutput `pulumi:"dbUser"`
	// The db instance to register for this stack. Changing this will force a new resource.
	RdsDbInstanceArn pulumi.StringOutput `pulumi:"rdsDbInstanceArn"`
	// The stack to register a db instance for. Changing this will force a new resource.
	StackId pulumi.StringOutput `pulumi:"stackId"`
}

Provides an OpsWorks RDS DB Instance resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/opsworks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := opsworks.NewRdsDbInstance(ctx, "myInstance", &opsworks.RdsDbInstanceArgs{
			StackId:          pulumi.Any(aws_opsworks_stack.My_stack.Id),
			RdsDbInstanceArn: pulumi.Any(aws_db_instance.My_instance.Arn),
			DbUser:           pulumi.String("someUser"),
			DbPassword:       pulumi.String("somePass"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetRdsDbInstance

func GetRdsDbInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RdsDbInstanceState, opts ...pulumi.ResourceOption) (*RdsDbInstance, error)

GetRdsDbInstance gets an existing RdsDbInstance 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 NewRdsDbInstance

func NewRdsDbInstance(ctx *pulumi.Context,
	name string, args *RdsDbInstanceArgs, opts ...pulumi.ResourceOption) (*RdsDbInstance, error)

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

func (*RdsDbInstance) ElementType

func (*RdsDbInstance) ElementType() reflect.Type

func (*RdsDbInstance) ToRdsDbInstanceOutput

func (i *RdsDbInstance) ToRdsDbInstanceOutput() RdsDbInstanceOutput

func (*RdsDbInstance) ToRdsDbInstanceOutputWithContext

func (i *RdsDbInstance) ToRdsDbInstanceOutputWithContext(ctx context.Context) RdsDbInstanceOutput

func (*RdsDbInstance) ToRdsDbInstancePtrOutput

func (i *RdsDbInstance) ToRdsDbInstancePtrOutput() RdsDbInstancePtrOutput

func (*RdsDbInstance) ToRdsDbInstancePtrOutputWithContext

func (i *RdsDbInstance) ToRdsDbInstancePtrOutputWithContext(ctx context.Context) RdsDbInstancePtrOutput

type RdsDbInstanceArgs

type RdsDbInstanceArgs struct {
	// A db password
	DbPassword pulumi.StringInput
	// A db username
	DbUser pulumi.StringInput
	// The db instance to register for this stack. Changing this will force a new resource.
	RdsDbInstanceArn pulumi.StringInput
	// The stack to register a db instance for. Changing this will force a new resource.
	StackId pulumi.StringInput
}

The set of arguments for constructing a RdsDbInstance resource.

func (RdsDbInstanceArgs) ElementType

func (RdsDbInstanceArgs) ElementType() reflect.Type

type RdsDbInstanceArray

type RdsDbInstanceArray []RdsDbInstanceInput

func (RdsDbInstanceArray) ElementType

func (RdsDbInstanceArray) ElementType() reflect.Type

func (RdsDbInstanceArray) ToRdsDbInstanceArrayOutput

func (i RdsDbInstanceArray) ToRdsDbInstanceArrayOutput() RdsDbInstanceArrayOutput

func (RdsDbInstanceArray) ToRdsDbInstanceArrayOutputWithContext

func (i RdsDbInstanceArray) ToRdsDbInstanceArrayOutputWithContext(ctx context.Context) RdsDbInstanceArrayOutput

type RdsDbInstanceArrayInput

type RdsDbInstanceArrayInput interface {
	pulumi.Input

	ToRdsDbInstanceArrayOutput() RdsDbInstanceArrayOutput
	ToRdsDbInstanceArrayOutputWithContext(context.Context) RdsDbInstanceArrayOutput
}

RdsDbInstanceArrayInput is an input type that accepts RdsDbInstanceArray and RdsDbInstanceArrayOutput values. You can construct a concrete instance of `RdsDbInstanceArrayInput` via:

RdsDbInstanceArray{ RdsDbInstanceArgs{...} }

type RdsDbInstanceArrayOutput

type RdsDbInstanceArrayOutput struct{ *pulumi.OutputState }

func (RdsDbInstanceArrayOutput) ElementType

func (RdsDbInstanceArrayOutput) ElementType() reflect.Type

func (RdsDbInstanceArrayOutput) Index

func (RdsDbInstanceArrayOutput) ToRdsDbInstanceArrayOutput

func (o RdsDbInstanceArrayOutput) ToRdsDbInstanceArrayOutput() RdsDbInstanceArrayOutput

func (RdsDbInstanceArrayOutput) ToRdsDbInstanceArrayOutputWithContext

func (o RdsDbInstanceArrayOutput) ToRdsDbInstanceArrayOutputWithContext(ctx context.Context) RdsDbInstanceArrayOutput

type RdsDbInstanceInput

type RdsDbInstanceInput interface {
	pulumi.Input

	ToRdsDbInstanceOutput() RdsDbInstanceOutput
	ToRdsDbInstanceOutputWithContext(ctx context.Context) RdsDbInstanceOutput
}

type RdsDbInstanceMap

type RdsDbInstanceMap map[string]RdsDbInstanceInput

func (RdsDbInstanceMap) ElementType

func (RdsDbInstanceMap) ElementType() reflect.Type

func (RdsDbInstanceMap) ToRdsDbInstanceMapOutput

func (i RdsDbInstanceMap) ToRdsDbInstanceMapOutput() RdsDbInstanceMapOutput

func (RdsDbInstanceMap) ToRdsDbInstanceMapOutputWithContext

func (i RdsDbInstanceMap) ToRdsDbInstanceMapOutputWithContext(ctx context.Context) RdsDbInstanceMapOutput

type RdsDbInstanceMapInput

type RdsDbInstanceMapInput interface {
	pulumi.Input

	ToRdsDbInstanceMapOutput() RdsDbInstanceMapOutput
	ToRdsDbInstanceMapOutputWithContext(context.Context) RdsDbInstanceMapOutput
}

RdsDbInstanceMapInput is an input type that accepts RdsDbInstanceMap and RdsDbInstanceMapOutput values. You can construct a concrete instance of `RdsDbInstanceMapInput` via:

RdsDbInstanceMap{ "key": RdsDbInstanceArgs{...} }

type RdsDbInstanceMapOutput

type RdsDbInstanceMapOutput struct{ *pulumi.OutputState }

func (RdsDbInstanceMapOutput) ElementType

func (RdsDbInstanceMapOutput) ElementType() reflect.Type

func (RdsDbInstanceMapOutput) MapIndex

func (RdsDbInstanceMapOutput) ToRdsDbInstanceMapOutput

func (o RdsDbInstanceMapOutput) ToRdsDbInstanceMapOutput() RdsDbInstanceMapOutput

func (RdsDbInstanceMapOutput) ToRdsDbInstanceMapOutputWithContext

func (o RdsDbInstanceMapOutput) ToRdsDbInstanceMapOutputWithContext(ctx context.Context) RdsDbInstanceMapOutput

type RdsDbInstanceOutput

type RdsDbInstanceOutput struct {
	*pulumi.OutputState
}

func (RdsDbInstanceOutput) ElementType

func (RdsDbInstanceOutput) ElementType() reflect.Type

func (RdsDbInstanceOutput) ToRdsDbInstanceOutput

func (o RdsDbInstanceOutput) ToRdsDbInstanceOutput() RdsDbInstanceOutput

func (RdsDbInstanceOutput) ToRdsDbInstanceOutputWithContext

func (o RdsDbInstanceOutput) ToRdsDbInstanceOutputWithContext(ctx context.Context) RdsDbInstanceOutput

func (RdsDbInstanceOutput) ToRdsDbInstancePtrOutput

func (o RdsDbInstanceOutput) ToRdsDbInstancePtrOutput() RdsDbInstancePtrOutput

func (RdsDbInstanceOutput) ToRdsDbInstancePtrOutputWithContext

func (o RdsDbInstanceOutput) ToRdsDbInstancePtrOutputWithContext(ctx context.Context) RdsDbInstancePtrOutput

type RdsDbInstancePtrInput

type RdsDbInstancePtrInput interface {
	pulumi.Input

	ToRdsDbInstancePtrOutput() RdsDbInstancePtrOutput
	ToRdsDbInstancePtrOutputWithContext(ctx context.Context) RdsDbInstancePtrOutput
}

type RdsDbInstancePtrOutput

type RdsDbInstancePtrOutput struct {
	*pulumi.OutputState
}

func (RdsDbInstancePtrOutput) ElementType

func (RdsDbInstancePtrOutput) ElementType() reflect.Type

func (RdsDbInstancePtrOutput) ToRdsDbInstancePtrOutput

func (o RdsDbInstancePtrOutput) ToRdsDbInstancePtrOutput() RdsDbInstancePtrOutput

func (RdsDbInstancePtrOutput) ToRdsDbInstancePtrOutputWithContext

func (o RdsDbInstancePtrOutput) ToRdsDbInstancePtrOutputWithContext(ctx context.Context) RdsDbInstancePtrOutput

type RdsDbInstanceState

type RdsDbInstanceState struct {
	// A db password
	DbPassword pulumi.StringPtrInput
	// A db username
	DbUser pulumi.StringPtrInput
	// The db instance to register for this stack. Changing this will force a new resource.
	RdsDbInstanceArn pulumi.StringPtrInput
	// The stack to register a db instance for. Changing this will force a new resource.
	StackId pulumi.StringPtrInput
}

func (RdsDbInstanceState) ElementType

func (RdsDbInstanceState) ElementType() reflect.Type

type Stack

type Stack struct {
	pulumi.CustomResourceState

	// If set to `"LATEST"`, OpsWorks will automatically install the latest version.
	AgentVersion pulumi.StringOutput `pulumi:"agentVersion"`
	Arn          pulumi.StringOutput `pulumi:"arn"`
	// If `manageBerkshelf` is enabled, the version of Berkshelf to use.
	BerkshelfVersion pulumi.StringPtrOutput `pulumi:"berkshelfVersion"`
	// Color to paint next to the stack's resources in the OpsWorks console.
	Color pulumi.StringPtrOutput `pulumi:"color"`
	// Name of the configuration manager to use. Defaults to "Chef".
	ConfigurationManagerName pulumi.StringPtrOutput `pulumi:"configurationManagerName"`
	// Version of the configuration manager to use. Defaults to "11.4".
	ConfigurationManagerVersion pulumi.StringPtrOutput `pulumi:"configurationManagerVersion"`
	// When `useCustomCookbooks` is set, provide this sub-object as
	// described below.
	CustomCookbooksSources StackCustomCookbooksSourceArrayOutput `pulumi:"customCookbooksSources"`
	// Custom JSON attributes to apply to the entire stack.
	CustomJson pulumi.StringPtrOutput `pulumi:"customJson"`
	// Name of the availability zone where instances will be created
	// by default. This is required unless you set `vpcId`.
	DefaultAvailabilityZone pulumi.StringOutput `pulumi:"defaultAvailabilityZone"`
	// The ARN of an IAM Instance Profile that created instances
	// will have by default.
	DefaultInstanceProfileArn pulumi.StringOutput `pulumi:"defaultInstanceProfileArn"`
	// Name of OS that will be installed on instances by default.
	DefaultOs pulumi.StringPtrOutput `pulumi:"defaultOs"`
	// Name of the type of root device instances will have by default.
	DefaultRootDeviceType pulumi.StringPtrOutput `pulumi:"defaultRootDeviceType"`
	// Name of the SSH keypair that instances will have by default.
	DefaultSshKeyName pulumi.StringPtrOutput `pulumi:"defaultSshKeyName"`
	// Id of the subnet in which instances will be created by default. Mandatory
	// if `vpcId` is set, and forbidden if it isn't.
	DefaultSubnetId pulumi.StringOutput `pulumi:"defaultSubnetId"`
	// Keyword representing the naming scheme that will be used for instance hostnames
	// within this stack.
	HostnameTheme pulumi.StringPtrOutput `pulumi:"hostnameTheme"`
	// Boolean value controlling whether Opsworks will run Berkshelf for this stack.
	ManageBerkshelf pulumi.BoolPtrOutput `pulumi:"manageBerkshelf"`
	// The name of the stack.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the region where the stack will exist.
	Region pulumi.StringOutput `pulumi:"region"`
	// The ARN of an IAM role that the OpsWorks service will act as.
	ServiceRoleArn pulumi.StringOutput `pulumi:"serviceRoleArn"`
	StackEndpoint  pulumi.StringOutput `pulumi:"stackEndpoint"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Boolean value controlling whether the custom cookbook settings are
	// enabled.
	UseCustomCookbooks pulumi.BoolPtrOutput `pulumi:"useCustomCookbooks"`
	// Boolean value controlling whether the standard OpsWorks
	// security groups apply to created instances.
	UseOpsworksSecurityGroups pulumi.BoolPtrOutput `pulumi:"useOpsworksSecurityGroups"`
	// The id of the VPC that this stack belongs to.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides an OpsWorks stack resource.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/opsworks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := opsworks.NewStack(ctx, "main", &opsworks.StackArgs{
			Region:                    pulumi.String("us-west-1"),
			ServiceRoleArn:            pulumi.Any(aws_iam_role.Opsworks.Arn),
			DefaultInstanceProfileArn: pulumi.Any(aws_iam_instance_profile.Opsworks.Arn),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("foobar-stack"),
			},
			CustomJson: pulumi.String(fmt.Sprintf("%v%v%v%v%v", "{\n", " \"foobar\": {\n", "    \"version\": \"1.0.0\"\n", "  }\n", "}\n")),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

OpsWorks stacks can be imported using the `id`, e.g.

```sh

$ pulumi import aws:opsworks/stack:Stack bar 00000000-0000-0000-0000-000000000000

```

func GetStack

func GetStack(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *StackState, opts ...pulumi.ResourceOption) (*Stack, error)

GetStack gets an existing Stack 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 NewStack

func NewStack(ctx *pulumi.Context,
	name string, args *StackArgs, opts ...pulumi.ResourceOption) (*Stack, error)

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

func (*Stack) ElementType

func (*Stack) ElementType() reflect.Type

func (*Stack) ToStackOutput

func (i *Stack) ToStackOutput() StackOutput

func (*Stack) ToStackOutputWithContext

func (i *Stack) ToStackOutputWithContext(ctx context.Context) StackOutput

func (*Stack) ToStackPtrOutput

func (i *Stack) ToStackPtrOutput() StackPtrOutput

func (*Stack) ToStackPtrOutputWithContext

func (i *Stack) ToStackPtrOutputWithContext(ctx context.Context) StackPtrOutput

type StackArgs

type StackArgs struct {
	// If set to `"LATEST"`, OpsWorks will automatically install the latest version.
	AgentVersion pulumi.StringPtrInput
	// If `manageBerkshelf` is enabled, the version of Berkshelf to use.
	BerkshelfVersion pulumi.StringPtrInput
	// Color to paint next to the stack's resources in the OpsWorks console.
	Color pulumi.StringPtrInput
	// Name of the configuration manager to use. Defaults to "Chef".
	ConfigurationManagerName pulumi.StringPtrInput
	// Version of the configuration manager to use. Defaults to "11.4".
	ConfigurationManagerVersion pulumi.StringPtrInput
	// When `useCustomCookbooks` is set, provide this sub-object as
	// described below.
	CustomCookbooksSources StackCustomCookbooksSourceArrayInput
	// Custom JSON attributes to apply to the entire stack.
	CustomJson pulumi.StringPtrInput
	// Name of the availability zone where instances will be created
	// by default. This is required unless you set `vpcId`.
	DefaultAvailabilityZone pulumi.StringPtrInput
	// The ARN of an IAM Instance Profile that created instances
	// will have by default.
	DefaultInstanceProfileArn pulumi.StringInput
	// Name of OS that will be installed on instances by default.
	DefaultOs pulumi.StringPtrInput
	// Name of the type of root device instances will have by default.
	DefaultRootDeviceType pulumi.StringPtrInput
	// Name of the SSH keypair that instances will have by default.
	DefaultSshKeyName pulumi.StringPtrInput
	// Id of the subnet in which instances will be created by default. Mandatory
	// if `vpcId` is set, and forbidden if it isn't.
	DefaultSubnetId pulumi.StringPtrInput
	// Keyword representing the naming scheme that will be used for instance hostnames
	// within this stack.
	HostnameTheme pulumi.StringPtrInput
	// Boolean value controlling whether Opsworks will run Berkshelf for this stack.
	ManageBerkshelf pulumi.BoolPtrInput
	// The name of the stack.
	Name pulumi.StringPtrInput
	// The name of the region where the stack will exist.
	Region pulumi.StringInput
	// The ARN of an IAM role that the OpsWorks service will act as.
	ServiceRoleArn pulumi.StringInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Boolean value controlling whether the custom cookbook settings are
	// enabled.
	UseCustomCookbooks pulumi.BoolPtrInput
	// Boolean value controlling whether the standard OpsWorks
	// security groups apply to created instances.
	UseOpsworksSecurityGroups pulumi.BoolPtrInput
	// The id of the VPC that this stack belongs to.
	VpcId pulumi.StringPtrInput
}

The set of arguments for constructing a Stack resource.

func (StackArgs) ElementType

func (StackArgs) ElementType() reflect.Type

type StackArray

type StackArray []StackInput

func (StackArray) ElementType

func (StackArray) ElementType() reflect.Type

func (StackArray) ToStackArrayOutput

func (i StackArray) ToStackArrayOutput() StackArrayOutput

func (StackArray) ToStackArrayOutputWithContext

func (i StackArray) ToStackArrayOutputWithContext(ctx context.Context) StackArrayOutput

type StackArrayInput

type StackArrayInput interface {
	pulumi.Input

	ToStackArrayOutput() StackArrayOutput
	ToStackArrayOutputWithContext(context.Context) StackArrayOutput
}

StackArrayInput is an input type that accepts StackArray and StackArrayOutput values. You can construct a concrete instance of `StackArrayInput` via:

StackArray{ StackArgs{...} }

type StackArrayOutput

type StackArrayOutput struct{ *pulumi.OutputState }

func (StackArrayOutput) ElementType

func (StackArrayOutput) ElementType() reflect.Type

func (StackArrayOutput) Index

func (StackArrayOutput) ToStackArrayOutput

func (o StackArrayOutput) ToStackArrayOutput() StackArrayOutput

func (StackArrayOutput) ToStackArrayOutputWithContext

func (o StackArrayOutput) ToStackArrayOutputWithContext(ctx context.Context) StackArrayOutput

type StackCustomCookbooksSource

type StackCustomCookbooksSource struct {
	// Password to use when authenticating to the source. The provider cannot perform drift detection of this configuration.
	Password *string `pulumi:"password"`
	// For sources that are version-aware, the revision to use.
	Revision *string `pulumi:"revision"`
	// SSH key to use when authenticating to the source. The provider cannot perform drift detection of this configuration.
	SshKey *string `pulumi:"sshKey"`
	// The type of source to use. For example, "archive".
	Type string `pulumi:"type"`
	// The URL where the cookbooks resource can be found.
	Url string `pulumi:"url"`
	// Username to use when authenticating to the source.
	Username *string `pulumi:"username"`
}

type StackCustomCookbooksSourceArgs

type StackCustomCookbooksSourceArgs struct {
	// Password to use when authenticating to the source. The provider cannot perform drift detection of this configuration.
	Password pulumi.StringPtrInput `pulumi:"password"`
	// For sources that are version-aware, the revision to use.
	Revision pulumi.StringPtrInput `pulumi:"revision"`
	// SSH key to use when authenticating to the source. The provider cannot perform drift detection of this configuration.
	SshKey pulumi.StringPtrInput `pulumi:"sshKey"`
	// The type of source to use. For example, "archive".
	Type pulumi.StringInput `pulumi:"type"`
	// The URL where the cookbooks resource can be found.
	Url pulumi.StringInput `pulumi:"url"`
	// Username to use when authenticating to the source.
	Username pulumi.StringPtrInput `pulumi:"username"`
}

func (StackCustomCookbooksSourceArgs) ElementType

func (StackCustomCookbooksSourceArgs) ToStackCustomCookbooksSourceOutput

func (i StackCustomCookbooksSourceArgs) ToStackCustomCookbooksSourceOutput() StackCustomCookbooksSourceOutput

func (StackCustomCookbooksSourceArgs) ToStackCustomCookbooksSourceOutputWithContext

func (i StackCustomCookbooksSourceArgs) ToStackCustomCookbooksSourceOutputWithContext(ctx context.Context) StackCustomCookbooksSourceOutput

type StackCustomCookbooksSourceArray

type StackCustomCookbooksSourceArray []StackCustomCookbooksSourceInput

func (StackCustomCookbooksSourceArray) ElementType

func (StackCustomCookbooksSourceArray) ToStackCustomCookbooksSourceArrayOutput

func (i StackCustomCookbooksSourceArray) ToStackCustomCookbooksSourceArrayOutput() StackCustomCookbooksSourceArrayOutput

func (StackCustomCookbooksSourceArray) ToStackCustomCookbooksSourceArrayOutputWithContext

func (i StackCustomCookbooksSourceArray) ToStackCustomCookbooksSourceArrayOutputWithContext(ctx context.Context) StackCustomCookbooksSourceArrayOutput

type StackCustomCookbooksSourceArrayInput

type StackCustomCookbooksSourceArrayInput interface {
	pulumi.Input

	ToStackCustomCookbooksSourceArrayOutput() StackCustomCookbooksSourceArrayOutput
	ToStackCustomCookbooksSourceArrayOutputWithContext(context.Context) StackCustomCookbooksSourceArrayOutput
}

StackCustomCookbooksSourceArrayInput is an input type that accepts StackCustomCookbooksSourceArray and StackCustomCookbooksSourceArrayOutput values. You can construct a concrete instance of `StackCustomCookbooksSourceArrayInput` via:

StackCustomCookbooksSourceArray{ StackCustomCookbooksSourceArgs{...} }

type StackCustomCookbooksSourceArrayOutput

type StackCustomCookbooksSourceArrayOutput struct{ *pulumi.OutputState }

func (StackCustomCookbooksSourceArrayOutput) ElementType

func (StackCustomCookbooksSourceArrayOutput) Index

func (StackCustomCookbooksSourceArrayOutput) ToStackCustomCookbooksSourceArrayOutput

func (o StackCustomCookbooksSourceArrayOutput) ToStackCustomCookbooksSourceArrayOutput() StackCustomCookbooksSourceArrayOutput

func (StackCustomCookbooksSourceArrayOutput) ToStackCustomCookbooksSourceArrayOutputWithContext

func (o StackCustomCookbooksSourceArrayOutput) ToStackCustomCookbooksSourceArrayOutputWithContext(ctx context.Context) StackCustomCookbooksSourceArrayOutput

type StackCustomCookbooksSourceInput

type StackCustomCookbooksSourceInput interface {
	pulumi.Input

	ToStackCustomCookbooksSourceOutput() StackCustomCookbooksSourceOutput
	ToStackCustomCookbooksSourceOutputWithContext(context.Context) StackCustomCookbooksSourceOutput
}

StackCustomCookbooksSourceInput is an input type that accepts StackCustomCookbooksSourceArgs and StackCustomCookbooksSourceOutput values. You can construct a concrete instance of `StackCustomCookbooksSourceInput` via:

StackCustomCookbooksSourceArgs{...}

type StackCustomCookbooksSourceOutput

type StackCustomCookbooksSourceOutput struct{ *pulumi.OutputState }

func (StackCustomCookbooksSourceOutput) ElementType

func (StackCustomCookbooksSourceOutput) Password

Password to use when authenticating to the source. The provider cannot perform drift detection of this configuration.

func (StackCustomCookbooksSourceOutput) Revision

For sources that are version-aware, the revision to use.

func (StackCustomCookbooksSourceOutput) SshKey

SSH key to use when authenticating to the source. The provider cannot perform drift detection of this configuration.

func (StackCustomCookbooksSourceOutput) ToStackCustomCookbooksSourceOutput

func (o StackCustomCookbooksSourceOutput) ToStackCustomCookbooksSourceOutput() StackCustomCookbooksSourceOutput

func (StackCustomCookbooksSourceOutput) ToStackCustomCookbooksSourceOutputWithContext

func (o StackCustomCookbooksSourceOutput) ToStackCustomCookbooksSourceOutputWithContext(ctx context.Context) StackCustomCookbooksSourceOutput

func (StackCustomCookbooksSourceOutput) Type

The type of source to use. For example, "archive".

func (StackCustomCookbooksSourceOutput) Url

The URL where the cookbooks resource can be found.

func (StackCustomCookbooksSourceOutput) Username

Username to use when authenticating to the source.

type StackInput

type StackInput interface {
	pulumi.Input

	ToStackOutput() StackOutput
	ToStackOutputWithContext(ctx context.Context) StackOutput
}

type StackMap

type StackMap map[string]StackInput

func (StackMap) ElementType

func (StackMap) ElementType() reflect.Type

func (StackMap) ToStackMapOutput

func (i StackMap) ToStackMapOutput() StackMapOutput

func (StackMap) ToStackMapOutputWithContext

func (i StackMap) ToStackMapOutputWithContext(ctx context.Context) StackMapOutput

type StackMapInput

type StackMapInput interface {
	pulumi.Input

	ToStackMapOutput() StackMapOutput
	ToStackMapOutputWithContext(context.Context) StackMapOutput
}

StackMapInput is an input type that accepts StackMap and StackMapOutput values. You can construct a concrete instance of `StackMapInput` via:

StackMap{ "key": StackArgs{...} }

type StackMapOutput

type StackMapOutput struct{ *pulumi.OutputState }

func (StackMapOutput) ElementType

func (StackMapOutput) ElementType() reflect.Type

func (StackMapOutput) MapIndex

func (StackMapOutput) ToStackMapOutput

func (o StackMapOutput) ToStackMapOutput() StackMapOutput

func (StackMapOutput) ToStackMapOutputWithContext

func (o StackMapOutput) ToStackMapOutputWithContext(ctx context.Context) StackMapOutput

type StackOutput

type StackOutput struct {
	*pulumi.OutputState
}

func (StackOutput) ElementType

func (StackOutput) ElementType() reflect.Type

func (StackOutput) ToStackOutput

func (o StackOutput) ToStackOutput() StackOutput

func (StackOutput) ToStackOutputWithContext

func (o StackOutput) ToStackOutputWithContext(ctx context.Context) StackOutput

func (StackOutput) ToStackPtrOutput

func (o StackOutput) ToStackPtrOutput() StackPtrOutput

func (StackOutput) ToStackPtrOutputWithContext

func (o StackOutput) ToStackPtrOutputWithContext(ctx context.Context) StackPtrOutput

type StackPtrInput

type StackPtrInput interface {
	pulumi.Input

	ToStackPtrOutput() StackPtrOutput
	ToStackPtrOutputWithContext(ctx context.Context) StackPtrOutput
}

type StackPtrOutput

type StackPtrOutput struct {
	*pulumi.OutputState
}

func (StackPtrOutput) ElementType

func (StackPtrOutput) ElementType() reflect.Type

func (StackPtrOutput) ToStackPtrOutput

func (o StackPtrOutput) ToStackPtrOutput() StackPtrOutput

func (StackPtrOutput) ToStackPtrOutputWithContext

func (o StackPtrOutput) ToStackPtrOutputWithContext(ctx context.Context) StackPtrOutput

type StackState

type StackState struct {
	// If set to `"LATEST"`, OpsWorks will automatically install the latest version.
	AgentVersion pulumi.StringPtrInput
	Arn          pulumi.StringPtrInput
	// If `manageBerkshelf` is enabled, the version of Berkshelf to use.
	BerkshelfVersion pulumi.StringPtrInput
	// Color to paint next to the stack's resources in the OpsWorks console.
	Color pulumi.StringPtrInput
	// Name of the configuration manager to use. Defaults to "Chef".
	ConfigurationManagerName pulumi.StringPtrInput
	// Version of the configuration manager to use. Defaults to "11.4".
	ConfigurationManagerVersion pulumi.StringPtrInput
	// When `useCustomCookbooks` is set, provide this sub-object as
	// described below.
	CustomCookbooksSources StackCustomCookbooksSourceArrayInput
	// Custom JSON attributes to apply to the entire stack.
	CustomJson pulumi.StringPtrInput
	// Name of the availability zone where instances will be created
	// by default. This is required unless you set `vpcId`.
	DefaultAvailabilityZone pulumi.StringPtrInput
	// The ARN of an IAM Instance Profile that created instances
	// will have by default.
	DefaultInstanceProfileArn pulumi.StringPtrInput
	// Name of OS that will be installed on instances by default.
	DefaultOs pulumi.StringPtrInput
	// Name of the type of root device instances will have by default.
	DefaultRootDeviceType pulumi.StringPtrInput
	// Name of the SSH keypair that instances will have by default.
	DefaultSshKeyName pulumi.StringPtrInput
	// Id of the subnet in which instances will be created by default. Mandatory
	// if `vpcId` is set, and forbidden if it isn't.
	DefaultSubnetId pulumi.StringPtrInput
	// Keyword representing the naming scheme that will be used for instance hostnames
	// within this stack.
	HostnameTheme pulumi.StringPtrInput
	// Boolean value controlling whether Opsworks will run Berkshelf for this stack.
	ManageBerkshelf pulumi.BoolPtrInput
	// The name of the stack.
	Name pulumi.StringPtrInput
	// The name of the region where the stack will exist.
	Region pulumi.StringPtrInput
	// The ARN of an IAM role that the OpsWorks service will act as.
	ServiceRoleArn pulumi.StringPtrInput
	StackEndpoint  pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Boolean value controlling whether the custom cookbook settings are
	// enabled.
	UseCustomCookbooks pulumi.BoolPtrInput
	// Boolean value controlling whether the standard OpsWorks
	// security groups apply to created instances.
	UseOpsworksSecurityGroups pulumi.BoolPtrInput
	// The id of the VPC that this stack belongs to.
	VpcId pulumi.StringPtrInput
}

func (StackState) ElementType

func (StackState) ElementType() reflect.Type

type StaticWebLayer

type StaticWebLayer struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrOutput `pulumi:"autoAssignElasticIps"`
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrOutput `pulumi:"autoAssignPublicIps"`
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrOutput     `pulumi:"autoHealing"`
	CustomConfigureRecipes pulumi.StringArrayOutput `pulumi:"customConfigureRecipes"`
	CustomDeployRecipes    pulumi.StringArrayOutput `pulumi:"customDeployRecipes"`
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrOutput `pulumi:"customInstanceProfileArn"`
	CustomJson               pulumi.StringPtrOutput `pulumi:"customJson"`
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayOutput `pulumi:"customSecurityGroupIds"`
	CustomSetupRecipes     pulumi.StringArrayOutput `pulumi:"customSetupRecipes"`
	CustomShutdownRecipes  pulumi.StringArrayOutput `pulumi:"customShutdownRecipes"`
	CustomUndeployRecipes  pulumi.StringArrayOutput `pulumi:"customUndeployRecipes"`
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrOutput `pulumi:"drainElbOnShutdown"`
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes StaticWebLayerEbsVolumeArrayOutput `pulumi:"ebsVolumes"`
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrOutput `pulumi:"elasticLoadBalancer"`
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrOutput `pulumi:"installUpdatesOnBoot"`
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrOutput `pulumi:"instanceShutdownTimeout"`
	// A human-readable name for the layer.
	Name pulumi.StringOutput `pulumi:"name"`
	// The id of the stack the layer will belong to.
	StackId pulumi.StringOutput `pulumi:"stackId"`
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayOutput `pulumi:"systemPackages"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrOutput `pulumi:"useEbsOptimizedInstances"`
}

Provides an OpsWorks static web server layer resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/opsworks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := opsworks.NewStaticWebLayer(ctx, "web", &opsworks.StaticWebLayerArgs{
			StackId: pulumi.Any(aws_opsworks_stack.Main.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

OpsWorks static web server Layers can be imported using the `id`, e.g.

```sh

$ pulumi import aws:opsworks/staticWebLayer:StaticWebLayer bar 00000000-0000-0000-0000-000000000000

```

func GetStaticWebLayer

func GetStaticWebLayer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *StaticWebLayerState, opts ...pulumi.ResourceOption) (*StaticWebLayer, error)

GetStaticWebLayer gets an existing StaticWebLayer 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 NewStaticWebLayer

func NewStaticWebLayer(ctx *pulumi.Context,
	name string, args *StaticWebLayerArgs, opts ...pulumi.ResourceOption) (*StaticWebLayer, error)

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

func (*StaticWebLayer) ElementType

func (*StaticWebLayer) ElementType() reflect.Type

func (*StaticWebLayer) ToStaticWebLayerOutput

func (i *StaticWebLayer) ToStaticWebLayerOutput() StaticWebLayerOutput

func (*StaticWebLayer) ToStaticWebLayerOutputWithContext

func (i *StaticWebLayer) ToStaticWebLayerOutputWithContext(ctx context.Context) StaticWebLayerOutput

func (*StaticWebLayer) ToStaticWebLayerPtrOutput

func (i *StaticWebLayer) ToStaticWebLayerPtrOutput() StaticWebLayerPtrOutput

func (*StaticWebLayer) ToStaticWebLayerPtrOutputWithContext

func (i *StaticWebLayer) ToStaticWebLayerPtrOutputWithContext(ctx context.Context) StaticWebLayerPtrOutput

type StaticWebLayerArgs

type StaticWebLayerArgs struct {
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	CustomJson               pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes StaticWebLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

The set of arguments for constructing a StaticWebLayer resource.

func (StaticWebLayerArgs) ElementType

func (StaticWebLayerArgs) ElementType() reflect.Type

type StaticWebLayerArray

type StaticWebLayerArray []StaticWebLayerInput

func (StaticWebLayerArray) ElementType

func (StaticWebLayerArray) ElementType() reflect.Type

func (StaticWebLayerArray) ToStaticWebLayerArrayOutput

func (i StaticWebLayerArray) ToStaticWebLayerArrayOutput() StaticWebLayerArrayOutput

func (StaticWebLayerArray) ToStaticWebLayerArrayOutputWithContext

func (i StaticWebLayerArray) ToStaticWebLayerArrayOutputWithContext(ctx context.Context) StaticWebLayerArrayOutput

type StaticWebLayerArrayInput

type StaticWebLayerArrayInput interface {
	pulumi.Input

	ToStaticWebLayerArrayOutput() StaticWebLayerArrayOutput
	ToStaticWebLayerArrayOutputWithContext(context.Context) StaticWebLayerArrayOutput
}

StaticWebLayerArrayInput is an input type that accepts StaticWebLayerArray and StaticWebLayerArrayOutput values. You can construct a concrete instance of `StaticWebLayerArrayInput` via:

StaticWebLayerArray{ StaticWebLayerArgs{...} }

type StaticWebLayerArrayOutput

type StaticWebLayerArrayOutput struct{ *pulumi.OutputState }

func (StaticWebLayerArrayOutput) ElementType

func (StaticWebLayerArrayOutput) ElementType() reflect.Type

func (StaticWebLayerArrayOutput) Index

func (StaticWebLayerArrayOutput) ToStaticWebLayerArrayOutput

func (o StaticWebLayerArrayOutput) ToStaticWebLayerArrayOutput() StaticWebLayerArrayOutput

func (StaticWebLayerArrayOutput) ToStaticWebLayerArrayOutputWithContext

func (o StaticWebLayerArrayOutput) ToStaticWebLayerArrayOutputWithContext(ctx context.Context) StaticWebLayerArrayOutput

type StaticWebLayerEbsVolume

type StaticWebLayerEbsVolume struct {
	Encrypted *bool `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops *int `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint string `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks int `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel *string `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size int `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type *string `pulumi:"type"`
}

type StaticWebLayerEbsVolumeArgs

type StaticWebLayerEbsVolumeArgs struct {
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// For PIOPS volumes, the IOPS per disk.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// The path to mount the EBS volume on the layer's instances.
	MountPoint pulumi.StringInput `pulumi:"mountPoint"`
	// The number of disks to use for the EBS volume.
	NumberOfDisks pulumi.IntInput `pulumi:"numberOfDisks"`
	// The RAID level to use for the volume.
	RaidLevel pulumi.StringPtrInput `pulumi:"raidLevel"`
	// The size of the volume in gigabytes.
	Size pulumi.IntInput `pulumi:"size"`
	// The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (StaticWebLayerEbsVolumeArgs) ElementType

func (StaticWebLayerEbsVolumeArgs) ToStaticWebLayerEbsVolumeOutput

func (i StaticWebLayerEbsVolumeArgs) ToStaticWebLayerEbsVolumeOutput() StaticWebLayerEbsVolumeOutput

func (StaticWebLayerEbsVolumeArgs) ToStaticWebLayerEbsVolumeOutputWithContext

func (i StaticWebLayerEbsVolumeArgs) ToStaticWebLayerEbsVolumeOutputWithContext(ctx context.Context) StaticWebLayerEbsVolumeOutput

type StaticWebLayerEbsVolumeArray

type StaticWebLayerEbsVolumeArray []StaticWebLayerEbsVolumeInput

func (StaticWebLayerEbsVolumeArray) ElementType

func (StaticWebLayerEbsVolumeArray) ToStaticWebLayerEbsVolumeArrayOutput

func (i StaticWebLayerEbsVolumeArray) ToStaticWebLayerEbsVolumeArrayOutput() StaticWebLayerEbsVolumeArrayOutput

func (StaticWebLayerEbsVolumeArray) ToStaticWebLayerEbsVolumeArrayOutputWithContext

func (i StaticWebLayerEbsVolumeArray) ToStaticWebLayerEbsVolumeArrayOutputWithContext(ctx context.Context) StaticWebLayerEbsVolumeArrayOutput

type StaticWebLayerEbsVolumeArrayInput

type StaticWebLayerEbsVolumeArrayInput interface {
	pulumi.Input

	ToStaticWebLayerEbsVolumeArrayOutput() StaticWebLayerEbsVolumeArrayOutput
	ToStaticWebLayerEbsVolumeArrayOutputWithContext(context.Context) StaticWebLayerEbsVolumeArrayOutput
}

StaticWebLayerEbsVolumeArrayInput is an input type that accepts StaticWebLayerEbsVolumeArray and StaticWebLayerEbsVolumeArrayOutput values. You can construct a concrete instance of `StaticWebLayerEbsVolumeArrayInput` via:

StaticWebLayerEbsVolumeArray{ StaticWebLayerEbsVolumeArgs{...} }

type StaticWebLayerEbsVolumeArrayOutput

type StaticWebLayerEbsVolumeArrayOutput struct{ *pulumi.OutputState }

func (StaticWebLayerEbsVolumeArrayOutput) ElementType

func (StaticWebLayerEbsVolumeArrayOutput) Index

func (StaticWebLayerEbsVolumeArrayOutput) ToStaticWebLayerEbsVolumeArrayOutput

func (o StaticWebLayerEbsVolumeArrayOutput) ToStaticWebLayerEbsVolumeArrayOutput() StaticWebLayerEbsVolumeArrayOutput

func (StaticWebLayerEbsVolumeArrayOutput) ToStaticWebLayerEbsVolumeArrayOutputWithContext

func (o StaticWebLayerEbsVolumeArrayOutput) ToStaticWebLayerEbsVolumeArrayOutputWithContext(ctx context.Context) StaticWebLayerEbsVolumeArrayOutput

type StaticWebLayerEbsVolumeInput

type StaticWebLayerEbsVolumeInput interface {
	pulumi.Input

	ToStaticWebLayerEbsVolumeOutput() StaticWebLayerEbsVolumeOutput
	ToStaticWebLayerEbsVolumeOutputWithContext(context.Context) StaticWebLayerEbsVolumeOutput
}

StaticWebLayerEbsVolumeInput is an input type that accepts StaticWebLayerEbsVolumeArgs and StaticWebLayerEbsVolumeOutput values. You can construct a concrete instance of `StaticWebLayerEbsVolumeInput` via:

StaticWebLayerEbsVolumeArgs{...}

type StaticWebLayerEbsVolumeOutput

type StaticWebLayerEbsVolumeOutput struct{ *pulumi.OutputState }

func (StaticWebLayerEbsVolumeOutput) ElementType

func (StaticWebLayerEbsVolumeOutput) Encrypted

func (StaticWebLayerEbsVolumeOutput) Iops

For PIOPS volumes, the IOPS per disk.

func (StaticWebLayerEbsVolumeOutput) MountPoint

The path to mount the EBS volume on the layer's instances.

func (StaticWebLayerEbsVolumeOutput) NumberOfDisks

The number of disks to use for the EBS volume.

func (StaticWebLayerEbsVolumeOutput) RaidLevel

The RAID level to use for the volume.

func (StaticWebLayerEbsVolumeOutput) Size

The size of the volume in gigabytes.

func (StaticWebLayerEbsVolumeOutput) ToStaticWebLayerEbsVolumeOutput

func (o StaticWebLayerEbsVolumeOutput) ToStaticWebLayerEbsVolumeOutput() StaticWebLayerEbsVolumeOutput

func (StaticWebLayerEbsVolumeOutput) ToStaticWebLayerEbsVolumeOutputWithContext

func (o StaticWebLayerEbsVolumeOutput) ToStaticWebLayerEbsVolumeOutputWithContext(ctx context.Context) StaticWebLayerEbsVolumeOutput

func (StaticWebLayerEbsVolumeOutput) Type

The type of volume to create. This may be `standard` (the default), `io1` or `gp2`.

type StaticWebLayerInput

type StaticWebLayerInput interface {
	pulumi.Input

	ToStaticWebLayerOutput() StaticWebLayerOutput
	ToStaticWebLayerOutputWithContext(ctx context.Context) StaticWebLayerOutput
}

type StaticWebLayerMap

type StaticWebLayerMap map[string]StaticWebLayerInput

func (StaticWebLayerMap) ElementType

func (StaticWebLayerMap) ElementType() reflect.Type

func (StaticWebLayerMap) ToStaticWebLayerMapOutput

func (i StaticWebLayerMap) ToStaticWebLayerMapOutput() StaticWebLayerMapOutput

func (StaticWebLayerMap) ToStaticWebLayerMapOutputWithContext

func (i StaticWebLayerMap) ToStaticWebLayerMapOutputWithContext(ctx context.Context) StaticWebLayerMapOutput

type StaticWebLayerMapInput

type StaticWebLayerMapInput interface {
	pulumi.Input

	ToStaticWebLayerMapOutput() StaticWebLayerMapOutput
	ToStaticWebLayerMapOutputWithContext(context.Context) StaticWebLayerMapOutput
}

StaticWebLayerMapInput is an input type that accepts StaticWebLayerMap and StaticWebLayerMapOutput values. You can construct a concrete instance of `StaticWebLayerMapInput` via:

StaticWebLayerMap{ "key": StaticWebLayerArgs{...} }

type StaticWebLayerMapOutput

type StaticWebLayerMapOutput struct{ *pulumi.OutputState }

func (StaticWebLayerMapOutput) ElementType

func (StaticWebLayerMapOutput) ElementType() reflect.Type

func (StaticWebLayerMapOutput) MapIndex

func (StaticWebLayerMapOutput) ToStaticWebLayerMapOutput

func (o StaticWebLayerMapOutput) ToStaticWebLayerMapOutput() StaticWebLayerMapOutput

func (StaticWebLayerMapOutput) ToStaticWebLayerMapOutputWithContext

func (o StaticWebLayerMapOutput) ToStaticWebLayerMapOutputWithContext(ctx context.Context) StaticWebLayerMapOutput

type StaticWebLayerOutput

type StaticWebLayerOutput struct {
	*pulumi.OutputState
}

func (StaticWebLayerOutput) ElementType

func (StaticWebLayerOutput) ElementType() reflect.Type

func (StaticWebLayerOutput) ToStaticWebLayerOutput

func (o StaticWebLayerOutput) ToStaticWebLayerOutput() StaticWebLayerOutput

func (StaticWebLayerOutput) ToStaticWebLayerOutputWithContext

func (o StaticWebLayerOutput) ToStaticWebLayerOutputWithContext(ctx context.Context) StaticWebLayerOutput

func (StaticWebLayerOutput) ToStaticWebLayerPtrOutput

func (o StaticWebLayerOutput) ToStaticWebLayerPtrOutput() StaticWebLayerPtrOutput

func (StaticWebLayerOutput) ToStaticWebLayerPtrOutputWithContext

func (o StaticWebLayerOutput) ToStaticWebLayerPtrOutputWithContext(ctx context.Context) StaticWebLayerPtrOutput

type StaticWebLayerPtrInput

type StaticWebLayerPtrInput interface {
	pulumi.Input

	ToStaticWebLayerPtrOutput() StaticWebLayerPtrOutput
	ToStaticWebLayerPtrOutputWithContext(ctx context.Context) StaticWebLayerPtrOutput
}

type StaticWebLayerPtrOutput

type StaticWebLayerPtrOutput struct {
	*pulumi.OutputState
}

func (StaticWebLayerPtrOutput) ElementType

func (StaticWebLayerPtrOutput) ElementType() reflect.Type

func (StaticWebLayerPtrOutput) ToStaticWebLayerPtrOutput

func (o StaticWebLayerPtrOutput) ToStaticWebLayerPtrOutput() StaticWebLayerPtrOutput

func (StaticWebLayerPtrOutput) ToStaticWebLayerPtrOutputWithContext

func (o StaticWebLayerPtrOutput) ToStaticWebLayerPtrOutputWithContext(ctx context.Context) StaticWebLayerPtrOutput

type StaticWebLayerState

type StaticWebLayerState struct {
	// The Amazon Resource Name(ARN) of the layer.
	Arn pulumi.StringPtrInput
	// Whether to automatically assign an elastic IP address to the layer's instances.
	AutoAssignElasticIps pulumi.BoolPtrInput
	// For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances.
	AutoAssignPublicIps pulumi.BoolPtrInput
	// Whether to enable auto-healing for the layer.
	AutoHealing            pulumi.BoolPtrInput
	CustomConfigureRecipes pulumi.StringArrayInput
	CustomDeployRecipes    pulumi.StringArrayInput
	// The ARN of an IAM profile that will be used for the layer's instances.
	CustomInstanceProfileArn pulumi.StringPtrInput
	CustomJson               pulumi.StringPtrInput
	// Ids for a set of security groups to apply to the layer's instances.
	CustomSecurityGroupIds pulumi.StringArrayInput
	CustomSetupRecipes     pulumi.StringArrayInput
	CustomShutdownRecipes  pulumi.StringArrayInput
	CustomUndeployRecipes  pulumi.StringArrayInput
	// Whether to enable Elastic Load Balancing connection draining.
	DrainElbOnShutdown pulumi.BoolPtrInput
	// `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances.
	EbsVolumes StaticWebLayerEbsVolumeArrayInput
	// Name of an Elastic Load Balancer to attach to this layer
	ElasticLoadBalancer pulumi.StringPtrInput
	// Whether to install OS and package updates on each instance when it boots.
	InstallUpdatesOnBoot pulumi.BoolPtrInput
	// The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event.
	InstanceShutdownTimeout pulumi.IntPtrInput
	// A human-readable name for the layer.
	Name pulumi.StringPtrInput
	// The id of the stack the layer will belong to.
	StackId pulumi.StringPtrInput
	// Names of a set of system packages to install on the layer's instances.
	SystemPackages pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to use EBS-optimized instances.
	UseEbsOptimizedInstances pulumi.BoolPtrInput
}

func (StaticWebLayerState) ElementType

func (StaticWebLayerState) ElementType() reflect.Type

type UserProfile

type UserProfile struct {
	pulumi.CustomResourceState

	// Whether users can specify their own SSH public key through the My Settings page
	AllowSelfManagement pulumi.BoolPtrOutput `pulumi:"allowSelfManagement"`
	// The users public key
	SshPublicKey pulumi.StringPtrOutput `pulumi:"sshPublicKey"`
	// The ssh username, with witch this user wants to log in
	SshUsername pulumi.StringOutput `pulumi:"sshUsername"`
	// The user's IAM ARN
	UserArn pulumi.StringOutput `pulumi:"userArn"`
}

Provides an OpsWorks User Profile resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/opsworks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := opsworks.NewUserProfile(ctx, "myProfile", &opsworks.UserProfileArgs{
			UserArn:     pulumi.Any(aws_iam_user.User.Arn),
			SshUsername: pulumi.String("my_user"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetUserProfile

func GetUserProfile(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *UserProfileState, opts ...pulumi.ResourceOption) (*UserProfile, error)

GetUserProfile gets an existing UserProfile 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 NewUserProfile

func NewUserProfile(ctx *pulumi.Context,
	name string, args *UserProfileArgs, opts ...pulumi.ResourceOption) (*UserProfile, error)

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

func (*UserProfile) ElementType

func (*UserProfile) ElementType() reflect.Type

func (*UserProfile) ToUserProfileOutput

func (i *UserProfile) ToUserProfileOutput() UserProfileOutput

func (*UserProfile) ToUserProfileOutputWithContext

func (i *UserProfile) ToUserProfileOutputWithContext(ctx context.Context) UserProfileOutput

func (*UserProfile) ToUserProfilePtrOutput

func (i *UserProfile) ToUserProfilePtrOutput() UserProfilePtrOutput

func (*UserProfile) ToUserProfilePtrOutputWithContext

func (i *UserProfile) ToUserProfilePtrOutputWithContext(ctx context.Context) UserProfilePtrOutput

type UserProfileArgs

type UserProfileArgs struct {
	// Whether users can specify their own SSH public key through the My Settings page
	AllowSelfManagement pulumi.BoolPtrInput
	// The users public key
	SshPublicKey pulumi.StringPtrInput
	// The ssh username, with witch this user wants to log in
	SshUsername pulumi.StringInput
	// The user's IAM ARN
	UserArn pulumi.StringInput
}

The set of arguments for constructing a UserProfile resource.

func (UserProfileArgs) ElementType

func (UserProfileArgs) ElementType() reflect.Type

type UserProfileArray

type UserProfileArray []UserProfileInput

func (UserProfileArray) ElementType

func (UserProfileArray) ElementType() reflect.Type

func (UserProfileArray) ToUserProfileArrayOutput

func (i UserProfileArray) ToUserProfileArrayOutput() UserProfileArrayOutput

func (UserProfileArray) ToUserProfileArrayOutputWithContext

func (i UserProfileArray) ToUserProfileArrayOutputWithContext(ctx context.Context) UserProfileArrayOutput

type UserProfileArrayInput

type UserProfileArrayInput interface {
	pulumi.Input

	ToUserProfileArrayOutput() UserProfileArrayOutput
	ToUserProfileArrayOutputWithContext(context.Context) UserProfileArrayOutput
}

UserProfileArrayInput is an input type that accepts UserProfileArray and UserProfileArrayOutput values. You can construct a concrete instance of `UserProfileArrayInput` via:

UserProfileArray{ UserProfileArgs{...} }

type UserProfileArrayOutput

type UserProfileArrayOutput struct{ *pulumi.OutputState }

func (UserProfileArrayOutput) ElementType

func (UserProfileArrayOutput) ElementType() reflect.Type

func (UserProfileArrayOutput) Index

func (UserProfileArrayOutput) ToUserProfileArrayOutput

func (o UserProfileArrayOutput) ToUserProfileArrayOutput() UserProfileArrayOutput

func (UserProfileArrayOutput) ToUserProfileArrayOutputWithContext

func (o UserProfileArrayOutput) ToUserProfileArrayOutputWithContext(ctx context.Context) UserProfileArrayOutput

type UserProfileInput

type UserProfileInput interface {
	pulumi.Input

	ToUserProfileOutput() UserProfileOutput
	ToUserProfileOutputWithContext(ctx context.Context) UserProfileOutput
}

type UserProfileMap

type UserProfileMap map[string]UserProfileInput

func (UserProfileMap) ElementType

func (UserProfileMap) ElementType() reflect.Type

func (UserProfileMap) ToUserProfileMapOutput

func (i UserProfileMap) ToUserProfileMapOutput() UserProfileMapOutput

func (UserProfileMap) ToUserProfileMapOutputWithContext

func (i UserProfileMap) ToUserProfileMapOutputWithContext(ctx context.Context) UserProfileMapOutput

type UserProfileMapInput

type UserProfileMapInput interface {
	pulumi.Input

	ToUserProfileMapOutput() UserProfileMapOutput
	ToUserProfileMapOutputWithContext(context.Context) UserProfileMapOutput
}

UserProfileMapInput is an input type that accepts UserProfileMap and UserProfileMapOutput values. You can construct a concrete instance of `UserProfileMapInput` via:

UserProfileMap{ "key": UserProfileArgs{...} }

type UserProfileMapOutput

type UserProfileMapOutput struct{ *pulumi.OutputState }

func (UserProfileMapOutput) ElementType

func (UserProfileMapOutput) ElementType() reflect.Type

func (UserProfileMapOutput) MapIndex

func (UserProfileMapOutput) ToUserProfileMapOutput

func (o UserProfileMapOutput) ToUserProfileMapOutput() UserProfileMapOutput

func (UserProfileMapOutput) ToUserProfileMapOutputWithContext

func (o UserProfileMapOutput) ToUserProfileMapOutputWithContext(ctx context.Context) UserProfileMapOutput

type UserProfileOutput

type UserProfileOutput struct {
	*pulumi.OutputState
}

func (UserProfileOutput) ElementType

func (UserProfileOutput) ElementType() reflect.Type

func (UserProfileOutput) ToUserProfileOutput

func (o UserProfileOutput) ToUserProfileOutput() UserProfileOutput

func (UserProfileOutput) ToUserProfileOutputWithContext

func (o UserProfileOutput) ToUserProfileOutputWithContext(ctx context.Context) UserProfileOutput

func (UserProfileOutput) ToUserProfilePtrOutput

func (o UserProfileOutput) ToUserProfilePtrOutput() UserProfilePtrOutput

func (UserProfileOutput) ToUserProfilePtrOutputWithContext

func (o UserProfileOutput) ToUserProfilePtrOutputWithContext(ctx context.Context) UserProfilePtrOutput

type UserProfilePtrInput

type UserProfilePtrInput interface {
	pulumi.Input

	ToUserProfilePtrOutput() UserProfilePtrOutput
	ToUserProfilePtrOutputWithContext(ctx context.Context) UserProfilePtrOutput
}

type UserProfilePtrOutput

type UserProfilePtrOutput struct {
	*pulumi.OutputState
}

func (UserProfilePtrOutput) ElementType

func (UserProfilePtrOutput) ElementType() reflect.Type

func (UserProfilePtrOutput) ToUserProfilePtrOutput

func (o UserProfilePtrOutput) ToUserProfilePtrOutput() UserProfilePtrOutput

func (UserProfilePtrOutput) ToUserProfilePtrOutputWithContext

func (o UserProfilePtrOutput) ToUserProfilePtrOutputWithContext(ctx context.Context) UserProfilePtrOutput

type UserProfileState

type UserProfileState struct {
	// Whether users can specify their own SSH public key through the My Settings page
	AllowSelfManagement pulumi.BoolPtrInput
	// The users public key
	SshPublicKey pulumi.StringPtrInput
	// The ssh username, with witch this user wants to log in
	SshUsername pulumi.StringPtrInput
	// The user's IAM ARN
	UserArn pulumi.StringPtrInput
}

func (UserProfileState) ElementType

func (UserProfileState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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