/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the opsworks-2013-02-18.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.OpsWorks.Model
{
///
/// Used to specify a stack or deployment command.
///
public partial class DeploymentCommand
{
private Dictionary> _args = new Dictionary>();
private DeploymentCommandName _name;
///
/// Gets and sets the property Args.
///
/// The arguments of those commands that take arguments. It should be set to a JSON object
/// with the following format:
///
///
///
/// {"arg_name1" : ["value1", "value2", ...], "arg_name2" : ["value1", "value2",
/// ...], ...}
///
///
///
/// The update_dependencies
command takes two arguments:
///
/// -
///
///
upgrade_os_to
- Specifies the desired Amazon Linux version for instances
/// whose OS you want to upgrade, such as Amazon Linux 2016.09
. You must
/// also set the allow_reboot
argument to true.
///
/// -
///
///
allow_reboot
- Specifies whether to allow AWS OpsWorks Stacks to reboot
/// the instances if necessary, after installing the updates. This argument can be set
/// to either true
or false
. The default value is false
.
///
///
///
/// For example, to upgrade an instance to Amazon Linux 2016.09, set Args
/// to the following.
///
///
///
/// { "upgrade_os_to":["Amazon Linux 2016.09"], "allow_reboot":["true"] }
///
///
///
public Dictionary> Args
{
get { return this._args; }
set { this._args = value; }
}
// Check to see if Args property is set
internal bool IsSetArgs()
{
return this._args != null && this._args.Count > 0;
}
///
/// Gets and sets the property Name.
///
/// Specifies the operation. You can specify only one command.
///
///
///
/// For stacks, the following commands are available:
///
/// -
///
///
execute_recipes
: Execute one or more recipes. To specify the recipes,
/// set an Args
parameter named recipes
to the list of recipes
/// to be executed. For example, to execute phpapp::appsetup
, set Args
/// to {"recipes":["phpapp::appsetup"]}
.
///
/// -
///
///
install_dependencies
: Install the stack's dependencies.
///
/// -
///
///
update_custom_cookbooks
: Update the stack's custom cookbooks.
///
/// -
///
///
update_dependencies
: Update the stack's dependencies.
///
///
///
/// The update_dependencies and install_dependencies commands are supported only for Linux
/// instances. You can run the commands successfully on Windows instances, but they do
/// nothing.
///
///
///
/// For apps, the following commands are available:
///
/// -
///
///
deploy
: Deploy an app. Ruby on Rails apps have an optional Args
/// parameter named migrate
. Set Args
to {"migrate":["true"]}
/// to migrate the database. The default setting is {"migrate":["false"]}.
///
/// -
///
///
rollback
Roll the app back to the previous version. When you update
/// an app, AWS OpsWorks Stacks stores the previous version, up to a maximum of five versions.
/// You can use this command to roll an app back as many as four versions.
///
/// -
///
///
start
: Start the app's web or application server.
///
/// -
///
///
stop
: Stop the app's web or application server.
///
/// -
///
///
restart
: Restart the app's web or application server.
///
/// -
///
///
undeploy
: Undeploy the app.
///
///
///
[AWSProperty(Required=true)]
public DeploymentCommandName Name
{
get { return this._name; }
set { this._name = value; }
}
// Check to see if Name property is set
internal bool IsSetName()
{
return this._name != null;
}
}
}