Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.aws.opsworks.kotlin
import com.pulumi.aws.opsworks.StackArgs.builder
import com.pulumi.aws.opsworks.kotlin.inputs.StackCustomCookbooksSourceArgs
import com.pulumi.aws.opsworks.kotlin.inputs.StackCustomCookbooksSourceArgsBuilder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.collections.Map
import kotlin.jvm.JvmName
/**
* Provides an OpsWorks stack resource.
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
* const main = new aws.opsworks.Stack("main", {
* name: "awesome-stack",
* region: "us-west-1",
* serviceRoleArn: opsworksAwsIamRole.arn,
* defaultInstanceProfileArn: opsworks.arn,
* tags: {
* Name: "foobar-stack",
* },
* customJson: `{
* "foobar": {
* "version": "1.0.0"
* }
* }
* `,
* });
* ```
* ```python
* import pulumi
* import pulumi_aws as aws
* main = aws.opsworks.Stack("main",
* name="awesome-stack",
* region="us-west-1",
* service_role_arn=opsworks_aws_iam_role["arn"],
* default_instance_profile_arn=opsworks["arn"],
* tags={
* "Name": "foobar-stack",
* },
* custom_json="""{
* "foobar": {
* "version": "1.0.0"
* }
* }
* """)
* ```
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using Aws = Pulumi.Aws;
* return await Deployment.RunAsync(() =>
* {
* var main = new Aws.OpsWorks.Stack("main", new()
* {
* Name = "awesome-stack",
* Region = "us-west-1",
* ServiceRoleArn = opsworksAwsIamRole.Arn,
* DefaultInstanceProfileArn = opsworks.Arn,
* Tags =
* {
* { "Name", "foobar-stack" },
* },
* CustomJson = @"{
* ""foobar"": {
* ""version"": ""1.0.0""
* }
* }
* ",
* });
* });
* ```
* ```go
* package main
* import (
* "github.com/pulumi/pulumi-aws/sdk/v6/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{
* Name: pulumi.String("awesome-stack"),
* Region: pulumi.String("us-west-1"),
* ServiceRoleArn: pulumi.Any(opsworksAwsIamRole.Arn),
* DefaultInstanceProfileArn: pulumi.Any(opsworks.Arn),
* Tags: pulumi.StringMap{
* "Name": pulumi.String("foobar-stack"),
* },
* CustomJson: pulumi.String("{\n \"foobar\": {\n \"version\": \"1.0.0\"\n }\n}\n"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.aws.opsworks.Stack;
* import com.pulumi.aws.opsworks.StackArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
* import java.nio.file.Paths;
* public class App {
* public static void main(String[] args) {
* Pulumi.run(App::stack);
* }
* public static void stack(Context ctx) {
* var main = new Stack("main", StackArgs.builder()
* .name("awesome-stack")
* .region("us-west-1")
* .serviceRoleArn(opsworksAwsIamRole.arn())
* .defaultInstanceProfileArn(opsworks.arn())
* .tags(Map.of("Name", "foobar-stack"))
* .customJson("""
* {
* "foobar": {
* "version": "1.0.0"
* }
* }
* """)
* .build());
* }
* }
* ```
* ```yaml
* resources:
* main:
* type: aws:opsworks:Stack
* properties:
* name: awesome-stack
* region: us-west-1
* serviceRoleArn: ${opsworksAwsIamRole.arn}
* defaultInstanceProfileArn: ${opsworks.arn}
* tags:
* Name: foobar-stack
* customJson: |
* {
* "foobar": {
* "version": "1.0.0"
* }
* }
* ```
*
* ## Import
* Using `pulumi import`, import OpsWorks stacks using the `id`. For example:
* ```sh
* $ pulumi import aws:opsworks/stack:Stack bar 00000000-0000-0000-0000-000000000000
* ```
* @property agentVersion If set to `"LATEST"`, OpsWorks will automatically install the latest version.
* @property berkshelfVersion If `manage_berkshelf` is enabled, the version of Berkshelf to use.
* @property color Color to paint next to the stack's resources in the OpsWorks console.
* @property configurationManagerName Name of the configuration manager to use. Defaults to "Chef".
* @property configurationManagerVersion Version of the configuration manager to use. Defaults to "11.4".
* @property customCookbooksSources When `use_custom_cookbooks` is set, provide this sub-object as described below.
* @property customJson Custom JSON attributes to apply to the entire stack.
* @property defaultAvailabilityZone Name of the availability zone where instances will be created by default.
* Cannot be set when `vpc_id` is set.
* @property defaultInstanceProfileArn The ARN of an IAM Instance Profile that created instances will have by default.
* @property defaultOs Name of OS that will be installed on instances by default.
* @property defaultRootDeviceType Name of the type of root device instances will have by default.
* @property defaultSshKeyName Name of the SSH keypair that instances will have by default.
* @property defaultSubnetId ID of the subnet in which instances will be created by default.
* Required if `vpc_id` is set to a VPC other than the default VPC, and forbidden if it isn't.
* @property hostnameTheme Keyword representing the naming scheme that will be used for instance hostnames within this stack.
* @property manageBerkshelf Boolean value controlling whether Opsworks will run Berkshelf for this stack.
* @property name The name of the stack.
* @property region The name of the region where the stack will exist.
* @property serviceRoleArn The ARN of an IAM role that the OpsWorks service will act as.
* @property tags A map of tags to assign to the resource.
* If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
* @property useCustomCookbooks Boolean value controlling whether the custom cookbook settings are enabled.
* @property useOpsworksSecurityGroups Boolean value controlling whether the standard OpsWorks security groups apply to created instances.
* @property vpcId ID of the VPC that this stack belongs to.
* Defaults to the region's default VPC.
*/
public data class StackArgs(
public val agentVersion: Output? = null,
public val berkshelfVersion: Output? = null,
public val color: Output? = null,
public val configurationManagerName: Output? = null,
public val configurationManagerVersion: Output? = null,
public val customCookbooksSources: Output>? = null,
public val customJson: Output? = null,
public val defaultAvailabilityZone: Output? = null,
public val defaultInstanceProfileArn: Output? = null,
public val defaultOs: Output? = null,
public val defaultRootDeviceType: Output? = null,
public val defaultSshKeyName: Output? = null,
public val defaultSubnetId: Output? = null,
public val hostnameTheme: Output? = null,
public val manageBerkshelf: Output? = null,
public val name: Output? = null,
public val region: Output? = null,
public val serviceRoleArn: Output? = null,
public val tags: Output