Show / Hide Table of Contents

Namespace Pulumi.Aws.OpsWorks

Classes

Application

Provides an OpsWorks application resource.

Example Usage

using System.IO;
using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var foo_app = new Aws.OpsWorks.Application("foo-app", new Aws.OpsWorks.ApplicationArgs
    {
        AppSources = 
        {
            new Aws.OpsWorks.Inputs.ApplicationAppSourceArgs
            {
                Revision = "master",
                Type = "git",
                Url = "https://github.com/example.git",
            },
        },
        AutoBundleOnDeploy = true,
        Description = "This is a Rails application",
        DocumentRoot = "public",
        Domains = 
        {
            "example.com",
            "sub.example.com",
        },
        EnableSsl = true,
        Environments = 
        {
            new Aws.OpsWorks.Inputs.ApplicationEnvironmentArgs
            {
                Key = "key",
                Secure = false,
                Value = "value",
            },
        },
        RailsEnv = "staging",
        ShortName = "foobar",
        SslConfigurations = 
        {
            new Aws.OpsWorks.Inputs.ApplicationSslConfigurationArgs
            {
                Certificate = File.ReadAllText("./foobar.crt"),
                PrivateKey = File.ReadAllText("./foobar.key"),
            },
        },
        StackId = aws_opsworks_stack.Main.Id,
        Type = "rails",
    });
}

}

ApplicationArgs

ApplicationState

CustomLayer

Provides an OpsWorks custom layer resource.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var custlayer = new Aws.OpsWorks.CustomLayer("custlayer", new Aws.OpsWorks.CustomLayerArgs
    {
        ShortName = "awesome",
        StackId = aws_opsworks_stack.Main.Id,
    });
}

}

CustomLayerArgs

CustomLayerState

GangliaLayer

Provides an OpsWorks Ganglia layer resource.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var monitor = new Aws.OpsWorks.GangliaLayer("monitor", new Aws.OpsWorks.GangliaLayerArgs
    {
        Password = "foobarbaz",
        StackId = aws_opsworks_stack.Main.Id,
    });
}

}

GangliaLayerArgs

GangliaLayerState

HaproxyLayer

Provides an OpsWorks haproxy layer resource.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var lb = new Aws.OpsWorks.HaproxyLayer("lb", new Aws.OpsWorks.HaproxyLayerArgs
    {
        StackId = aws_opsworks_stack.Main.Id,
        StatsPassword = "foobarbaz",
    });
}

}

HaproxyLayerArgs

HaproxyLayerState

Instance

Provides an OpsWorks instance resource.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var my_instance = new Aws.OpsWorks.Instance("my-instance", new Aws.OpsWorks.InstanceArgs
    {
        InstanceType = "t2.micro",
        LayerIds = 
        {
            aws_opsworks_custom_layer.My_layer.Id,
        },
        Os = "Amazon Linux 2015.09",
        StackId = aws_opsworks_stack.Main.Id,
        State = "stopped",
    });
}

}

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 to understand the implications of using these attributes.

The root_block_device mapping supports the following:

  • volume_type - (Optional) The type of volume. Can be "standard", "gp2", or "io1". (Default: "standard").
  • volume_size - (Optional) The size of the volume in gigabytes.
  • iops - (Optional) The amount of provisioned IOPS. This must be set with a volume_type of "io1".
  • delete_on_termination - (Optional) Whether the volume should be destroyed on instance termination (Default: true).

Modifying any of the root_block_device settings requires resource replacement.

Each ebs_block_device supports the following:

  • device_name - The name of the device to mount.
  • snapshot_id - (Optional) The Snapshot ID to mount.
  • volume_type - (Optional) The type of volume. Can be "standard", "gp2", or "io1". (Default: "standard").
  • volume_size - (Optional) The size of the volume in gigabytes.
  • iops - (Optional) The amount of provisioned IOPS. This must be set with a volume_type of "io1".
  • delete_on_termination - (Optional) Whether the volume should be destroyed on instance termination (Default: true).

Modifying any ebs_block_device currently requires resource replacement.

Each ephemeral_block_device supports the following:

  • device_name - The name of the block device to mount on the instance.
  • virtual_name - The Instance Store Device Name (e.g. "ephemeral0")

Each AWS Instance type has a different set of Instance Store block devices available for attachment. AWS publishes a list of which ephemeral devices are available on each type. The devices are always identified by the virtual_name 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.

InstanceArgs

InstanceState

JavaAppLayer

Provides an OpsWorks Java application layer resource.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var app = new Aws.OpsWorks.JavaAppLayer("app", new Aws.OpsWorks.JavaAppLayerArgs
    {
        StackId = aws_opsworks_stack.Main.Id,
    });
}

}

JavaAppLayerArgs

JavaAppLayerState

MemcachedLayer

Provides an OpsWorks memcached layer resource.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var cache = new Aws.OpsWorks.MemcachedLayer("cache", new Aws.OpsWorks.MemcachedLayerArgs
    {
        StackId = aws_opsworks_stack.Main.Id,
    });
}

}

MemcachedLayerArgs

MemcachedLayerState

MysqlLayer

Provides an OpsWorks MySQL layer resource.

Note: All arguments including the root password will be stored in the raw state as plain-text. Read more about sensitive data in state.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var db = new Aws.OpsWorks.MysqlLayer("db", new Aws.OpsWorks.MysqlLayerArgs
    {
        StackId = aws_opsworks_stack.Main.Id,
    });
}

}

MysqlLayerArgs

MysqlLayerState

NodejsAppLayer

Provides an OpsWorks NodeJS application layer resource.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var app = new Aws.OpsWorks.NodejsAppLayer("app", new Aws.OpsWorks.NodejsAppLayerArgs
    {
        StackId = aws_opsworks_stack.Main.Id,
    });
}

}

NodejsAppLayerArgs

NodejsAppLayerState

Permission

Provides an OpsWorks permission resource.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var myStackPermission = new Aws.OpsWorks.Permission("myStackPermission", new Aws.OpsWorks.PermissionArgs
    {
        AllowSsh = true,
        AllowSudo = true,
        Level = "iam_only",
        StackId = aws_opsworks_stack.Stack.Id,
        UserArn = aws_iam_user.User.Arn,
    });
}

}

PermissionArgs

PermissionState

PhpAppLayer

Provides an OpsWorks PHP application layer resource.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var app = new Aws.OpsWorks.PhpAppLayer("app", new Aws.OpsWorks.PhpAppLayerArgs
    {
        StackId = aws_opsworks_stack.Main.Id,
    });
}

}

PhpAppLayerArgs

PhpAppLayerState

RailsAppLayer

Provides an OpsWorks Ruby on Rails application layer resource.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var app = new Aws.OpsWorks.RailsAppLayer("app", new Aws.OpsWorks.RailsAppLayerArgs
    {
        StackId = aws_opsworks_stack.Main.Id,
    });
}

}

RailsAppLayerArgs

RailsAppLayerState

RdsDbInstance

Provides an OpsWorks RDS DB Instance resource.

Note: All arguments including the username and password will be stored in the raw state as plain-text. Read more about sensitive data in state.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var myInstance = new Aws.OpsWorks.RdsDbInstance("myInstance", new Aws.OpsWorks.RdsDbInstanceArgs
    {
        DbPassword = "somePass",
        DbUser = "someUser",
        RdsDbInstanceArn = aws_db_instance.My_instance.Arn,
        StackId = aws_opsworks_stack.My_stack.Id,
    });
}

}

RdsDbInstanceArgs

RdsDbInstanceState

Stack

Provides an OpsWorks stack resource.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var main = new Aws.OpsWorks.Stack("main", new Aws.OpsWorks.StackArgs
    {
        CustomJson = @"{
""foobar"": {
""version"": ""1.0.0""
}
}

",
        DefaultInstanceProfileArn = aws_iam_instance_profile.Opsworks.Arn,
        Region = "us-west-1",
        ServiceRoleArn = aws_iam_role.Opsworks.Arn,
        Tags = 
        {
            { "Name", "foobar-stack" },
        },
    });
}

}

StackArgs

StackState

StaticWebLayer

Provides an OpsWorks static web server layer resource.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var web = new Aws.OpsWorks.StaticWebLayer("web", new Aws.OpsWorks.StaticWebLayerArgs
    {
        StackId = aws_opsworks_stack.Main.Id,
    });
}

}

StaticWebLayerArgs

StaticWebLayerState

UserProfile

Provides an OpsWorks User Profile resource.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var myProfile = new Aws.OpsWorks.UserProfile("myProfile", new Aws.OpsWorks.UserProfileArgs
    {
        SshUsername = "my_user",
        UserArn = aws_iam_user.User.Arn,
    });
}

}

UserProfileArgs

UserProfileState

Back to top Copyright 2016-2020, Pulumi Corporation.