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",
        });
    }

}

Coming soon!

import pulumi
import pulumi_aws as aws

foo_app = aws.opsworks.Application("foo-app",
    app_sources=[{
        "revision": "master",
        "type": "git",
        "url": "https://github.com/example.git",
    }],
    auto_bundle_on_deploy=True,
    description="This is a Rails application",
    document_root="public",
    domains=[
        "example.com",
        "sub.example.com",
    ],
    enable_ssl=True,
    environments=[{
        "key": "key",
        "secure": False,
        "value": "value",
    }],
    rails_env="staging",
    short_name="foobar",
    ssl_configurations=[{
        "certificate": (lambda path: open(path).read())("./foobar.crt"),
        "private_key": (lambda path: open(path).read())("./foobar.key"),
    }],
    stack_id=aws_opsworks_stack["main"]["id"],
    type="rails")
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
import * as fs from "fs";

const foo_app = new aws.opsworks.Application("foo-app", {
    appSources: [{
        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: [{
        key: "key",
        secure: false,
        value: "value",
    }],
    railsEnv: "staging",
    shortName: "foobar",
    sslConfigurations: [{
        certificate: fs.readFileSync("./foobar.crt", "utf-8"),
        privateKey: fs.readFileSync("./foobar.key", "utf-8"),
    }],
    stackId: aws_opsworks_stack_main.id,
    type: "rails",
});

Create a Application Resource

def Application(resource_name, opts=None, app_sources=None, auto_bundle_on_deploy=None, aws_flow_ruby_settings=None, data_source_arn=None, data_source_database_name=None, data_source_type=None, description=None, document_root=None, domains=None, enable_ssl=None, environments=None, name=None, rails_env=None, short_name=None, ssl_configurations=None, stack_id=None, type=None, __props__=None);
func NewApplication(ctx *Context, name string, args ApplicationArgs, opts ...ResourceOption) (*Application, error)
public Application(string name, ApplicationArgs args, CustomResourceOptions? opts = null)
name string
The unique name of the resource.
args ApplicationArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
opts ResourceOptions
A bag of options that control this resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args ApplicationArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args ApplicationArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

Application Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Programming Model docs.

Inputs

The Application resource accepts the following input properties:

StackId string

The id of the stack the application will belong to.

Type string

Opsworks application type. One of aws-flow-ruby, java, rails, php, nodejs, static or other.

AppSources List<ApplicationAppSourceArgs>

SCM configuration of the app as described below.

AutoBundleOnDeploy string

Run bundle install when deploying for application of type rails.

AwsFlowRubySettings string

Specify activity and workflow workers for your app using the aws-flow gem.

DataSourceArn string

The data source’s ARN.

DataSourceDatabaseName string

The database name.

DataSourceType string

The data source’s type one of AutoSelectOpsworksMysqlInstance, OpsworksMysqlInstance, or RdsDbInstance.

Description string

A description of the app.

DocumentRoot string

Subfolder for the document root for application of type rails.

Domains List<string>

A list of virtual host alias.

EnableSsl bool

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.

Environments List<ApplicationEnvironmentArgs>

Object to define environment variables. Object is described below.

Name string

A human-readable name for the application.

RailsEnv string

The name of the Rails environment for application of type rails.

ShortName string

A short, machine-readable name for the application. This can only be defined on resource creation and ignored on resource update.

SslConfigurations List<ApplicationSslConfigurationArgs>

The SSL configuration of the app. Object is described below.

StackId string

The id of the stack the application will belong to.

Type string

Opsworks application type. One of aws-flow-ruby, java, rails, php, nodejs, static or other.

AppSources []ApplicationAppSource

SCM configuration of the app as described below.

AutoBundleOnDeploy string

Run bundle install when deploying for application of type rails.

AwsFlowRubySettings string

Specify activity and workflow workers for your app using the aws-flow gem.

DataSourceArn string

The data source’s ARN.

DataSourceDatabaseName string

The database name.

DataSourceType string

The data source’s type one of AutoSelectOpsworksMysqlInstance, OpsworksMysqlInstance, or RdsDbInstance.

Description string

A description of the app.

DocumentRoot string

Subfolder for the document root for application of type rails.

Domains []string

A list of virtual host alias.

EnableSsl bool

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.

Environments []ApplicationEnvironment

Object to define environment variables. Object is described below.

Name string

A human-readable name for the application.

RailsEnv string

The name of the Rails environment for application of type rails.

ShortName string

A short, machine-readable name for the application. This can only be defined on resource creation and ignored on resource update.

SslConfigurations []ApplicationSslConfiguration

The SSL configuration of the app. Object is described below.

stackId string

The id of the stack the application will belong to.

type string

Opsworks application type. One of aws-flow-ruby, java, rails, php, nodejs, static or other.

appSources ApplicationAppSource[]

SCM configuration of the app as described below.

autoBundleOnDeploy string

Run bundle install when deploying for application of type rails.

awsFlowRubySettings string

Specify activity and workflow workers for your app using the aws-flow gem.

dataSourceArn string

The data source’s ARN.

dataSourceDatabaseName string

The database name.

dataSourceType string

The data source’s type one of AutoSelectOpsworksMysqlInstance, OpsworksMysqlInstance, or RdsDbInstance.

description string

A description of the app.

documentRoot string

Subfolder for the document root for application of type rails.

domains string[]

A list of virtual host alias.

enableSsl boolean

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.

environments ApplicationEnvironment[]

Object to define environment variables. Object is described below.

name string

A human-readable name for the application.

railsEnv string

The name of the Rails environment for application of type rails.

shortName string

A short, machine-readable name for the application. This can only be defined on resource creation and ignored on resource update.

sslConfigurations ApplicationSslConfiguration[]

The SSL configuration of the app. Object is described below.

stack_id str

The id of the stack the application will belong to.

type str

Opsworks application type. One of aws-flow-ruby, java, rails, php, nodejs, static or other.

app_sources List[ApplicationAppSource]

SCM configuration of the app as described below.

auto_bundle_on_deploy str

Run bundle install when deploying for application of type rails.

aws_flow_ruby_settings str

Specify activity and workflow workers for your app using the aws-flow gem.

data_source_arn str

The data source’s ARN.

data_source_database_name str

The database name.

data_source_type str

The data source’s type one of AutoSelectOpsworksMysqlInstance, OpsworksMysqlInstance, or RdsDbInstance.

description str

A description of the app.

document_root str

Subfolder for the document root for application of type rails.

domains List[str]

A list of virtual host alias.

enable_ssl bool

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.

environments List[ApplicationEnvironment]

Object to define environment variables. Object is described below.

name str

A human-readable name for the application.

rails_env str

The name of the Rails environment for application of type rails.

short_name str

A short, machine-readable name for the application. This can only be defined on resource creation and ignored on resource update.

ssl_configurations List[ApplicationSslConfiguration]

The SSL configuration of the app. Object is described below.

Outputs

All input properties are implicitly available as output properties. Additionally, the Application resource produces the following output properties:

Id string
The provider-assigned unique ID for this managed resource.
Id string
The provider-assigned unique ID for this managed resource.
id string
The provider-assigned unique ID for this managed resource.
id str
The provider-assigned unique ID for this managed resource.

Look up an Existing Application Resource

Get an existing Application resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: ApplicationState, opts?: CustomResourceOptions): Application
static get(resource_name, id, opts=None, app_sources=None, auto_bundle_on_deploy=None, aws_flow_ruby_settings=None, data_source_arn=None, data_source_database_name=None, data_source_type=None, description=None, document_root=None, domains=None, enable_ssl=None, environments=None, name=None, rails_env=None, short_name=None, ssl_configurations=None, stack_id=None, type=None, __props__=None);
func GetApplication(ctx *Context, name string, id IDInput, state *ApplicationState, opts ...ResourceOption) (*Application, error)
public static Application Get(string name, Input<string> id, ApplicationState? state, CustomResourceOptions? opts = null)
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.

The following state arguments are supported:

AppSources List<ApplicationAppSourceArgs>

SCM configuration of the app as described below.

AutoBundleOnDeploy string

Run bundle install when deploying for application of type rails.

AwsFlowRubySettings string

Specify activity and workflow workers for your app using the aws-flow gem.

DataSourceArn string

The data source’s ARN.

DataSourceDatabaseName string

The database name.

DataSourceType string

The data source’s type one of AutoSelectOpsworksMysqlInstance, OpsworksMysqlInstance, or RdsDbInstance.

Description string

A description of the app.

DocumentRoot string

Subfolder for the document root for application of type rails.

Domains List<string>

A list of virtual host alias.

EnableSsl bool

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.

Environments List<ApplicationEnvironmentArgs>

Object to define environment variables. Object is described below.

Name string

A human-readable name for the application.

RailsEnv string

The name of the Rails environment for application of type rails.

ShortName string

A short, machine-readable name for the application. This can only be defined on resource creation and ignored on resource update.

SslConfigurations List<ApplicationSslConfigurationArgs>

The SSL configuration of the app. Object is described below.

StackId string

The id of the stack the application will belong to.

Type string

Opsworks application type. One of aws-flow-ruby, java, rails, php, nodejs, static or other.

AppSources []ApplicationAppSource

SCM configuration of the app as described below.

AutoBundleOnDeploy string

Run bundle install when deploying for application of type rails.

AwsFlowRubySettings string

Specify activity and workflow workers for your app using the aws-flow gem.

DataSourceArn string

The data source’s ARN.

DataSourceDatabaseName string

The database name.

DataSourceType string

The data source’s type one of AutoSelectOpsworksMysqlInstance, OpsworksMysqlInstance, or RdsDbInstance.

Description string

A description of the app.

DocumentRoot string

Subfolder for the document root for application of type rails.

Domains []string

A list of virtual host alias.

EnableSsl bool

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.

Environments []ApplicationEnvironment

Object to define environment variables. Object is described below.

Name string

A human-readable name for the application.

RailsEnv string

The name of the Rails environment for application of type rails.

ShortName string

A short, machine-readable name for the application. This can only be defined on resource creation and ignored on resource update.

SslConfigurations []ApplicationSslConfiguration

The SSL configuration of the app. Object is described below.

StackId string

The id of the stack the application will belong to.

Type string

Opsworks application type. One of aws-flow-ruby, java, rails, php, nodejs, static or other.

appSources ApplicationAppSource[]

SCM configuration of the app as described below.

autoBundleOnDeploy string

Run bundle install when deploying for application of type rails.

awsFlowRubySettings string

Specify activity and workflow workers for your app using the aws-flow gem.

dataSourceArn string

The data source’s ARN.

dataSourceDatabaseName string

The database name.

dataSourceType string

The data source’s type one of AutoSelectOpsworksMysqlInstance, OpsworksMysqlInstance, or RdsDbInstance.

description string

A description of the app.

documentRoot string

Subfolder for the document root for application of type rails.

domains string[]

A list of virtual host alias.

enableSsl boolean

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.

environments ApplicationEnvironment[]

Object to define environment variables. Object is described below.

name string

A human-readable name for the application.

railsEnv string

The name of the Rails environment for application of type rails.

shortName string

A short, machine-readable name for the application. This can only be defined on resource creation and ignored on resource update.

sslConfigurations ApplicationSslConfiguration[]

The SSL configuration of the app. Object is described below.

stackId string

The id of the stack the application will belong to.

type string

Opsworks application type. One of aws-flow-ruby, java, rails, php, nodejs, static or other.

app_sources List[ApplicationAppSource]

SCM configuration of the app as described below.

auto_bundle_on_deploy str

Run bundle install when deploying for application of type rails.

aws_flow_ruby_settings str

Specify activity and workflow workers for your app using the aws-flow gem.

data_source_arn str

The data source’s ARN.

data_source_database_name str

The database name.

data_source_type str

The data source’s type one of AutoSelectOpsworksMysqlInstance, OpsworksMysqlInstance, or RdsDbInstance.

description str

A description of the app.

document_root str

Subfolder for the document root for application of type rails.

domains List[str]

A list of virtual host alias.

enable_ssl bool

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.

environments List[ApplicationEnvironment]

Object to define environment variables. Object is described below.

name str

A human-readable name for the application.

rails_env str

The name of the Rails environment for application of type rails.

short_name str

A short, machine-readable name for the application. This can only be defined on resource creation and ignored on resource update.

ssl_configurations List[ApplicationSslConfiguration]

The SSL configuration of the app. Object is described below.

stack_id str

The id of the stack the application will belong to.

type str

Opsworks application type. One of aws-flow-ruby, java, rails, php, nodejs, static or other.

Supporting Types

ApplicationAppSource

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Type string

The type of source to use. For example, “archive”.

Password string

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

Revision string

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

SshKey string

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

Url string

The URL where the app resource can be found.

Username string

Username to use when authenticating to the source.

Type string

The type of source to use. For example, “archive”.

Password string

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

Revision string

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

SshKey string

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

Url string

The URL where the app resource can be found.

Username string

Username to use when authenticating to the source.

type string

The type of source to use. For example, “archive”.

password string

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

revision string

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

sshKey string

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

url string

The URL where the app resource can be found.

username string

Username to use when authenticating to the source.

type str

The type of source to use. For example, “archive”.

password str

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

revision str

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

sshKey str

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

url str

The URL where the app resource can be found.

username str

Username to use when authenticating to the source.

ApplicationEnvironment

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Key string

Variable name.

Value string

Variable value.

Secure bool

Set visibility of the variable value to true or false.

Key string

Variable name.

Value string

Variable value.

Secure bool

Set visibility of the variable value to true or false.

key string

Variable name.

value string

Variable value.

secure boolean

Set visibility of the variable value to true or false.

key str

Variable name.

value str

Variable value.

secure bool

Set visibility of the variable value to true or false.

ApplicationSslConfiguration

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Certificate string

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

PrivateKey string

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

Chain string

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

Certificate string

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

PrivateKey string

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

Chain string

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

certificate string

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

privateKey string

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

chain string

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

certificate str

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

private_key str

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

chain str

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

Package Details

Repository
https://github.com/pulumi/pulumi-aws
License
Apache-2.0
Notes
This Pulumi package is based on the aws Terraform Provider.