/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace OpsWorks { namespace Model { /** *

Used to specify a stack or deployment command.

See Also:

AWS * API Reference

*/ class DeploymentCommand { public: AWS_OPSWORKS_API DeploymentCommand(); AWS_OPSWORKS_API DeploymentCommand(Aws::Utils::Json::JsonView jsonValue); AWS_OPSWORKS_API DeploymentCommand& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_OPSWORKS_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

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.

*/ inline const DeploymentCommandName& GetName() const{ return m_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.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

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.

*/ inline void SetName(const DeploymentCommandName& value) { m_nameHasBeenSet = true; m_name = value; } /** *

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.

*/ inline void SetName(DeploymentCommandName&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

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.

*/ inline DeploymentCommand& WithName(const DeploymentCommandName& value) { SetName(value); return *this;} /** *

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.

*/ inline DeploymentCommand& WithName(DeploymentCommandName&& value) { SetName(std::move(value)); return *this;} /** *

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"] }

*/ inline const Aws::Map>& GetArgs() const{ return m_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"] }

*/ inline bool ArgsHasBeenSet() const { return m_argsHasBeenSet; } /** *

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"] }

*/ inline void SetArgs(const Aws::Map>& value) { m_argsHasBeenSet = true; m_args = value; } /** *

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"] }

*/ inline void SetArgs(Aws::Map>&& value) { m_argsHasBeenSet = true; m_args = std::move(value); } /** *

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"] }

*/ inline DeploymentCommand& WithArgs(const Aws::Map>& value) { SetArgs(value); return *this;} /** *

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"] }

*/ inline DeploymentCommand& WithArgs(Aws::Map>&& value) { SetArgs(std::move(value)); return *this;} /** *

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"] }

*/ inline DeploymentCommand& AddArgs(const Aws::String& key, const Aws::Vector& value) { m_argsHasBeenSet = true; m_args.emplace(key, value); return *this; } /** *

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"] }

*/ inline DeploymentCommand& AddArgs(Aws::String&& key, const Aws::Vector& value) { m_argsHasBeenSet = true; m_args.emplace(std::move(key), value); return *this; } /** *

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"] }

*/ inline DeploymentCommand& AddArgs(const Aws::String& key, Aws::Vector&& value) { m_argsHasBeenSet = true; m_args.emplace(key, std::move(value)); return *this; } /** *

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"] }

*/ inline DeploymentCommand& AddArgs(Aws::String&& key, Aws::Vector&& value) { m_argsHasBeenSet = true; m_args.emplace(std::move(key), std::move(value)); return *this; } /** *

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"] }

*/ inline DeploymentCommand& AddArgs(const char* key, Aws::Vector&& value) { m_argsHasBeenSet = true; m_args.emplace(key, std::move(value)); return *this; } /** *

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"] }

*/ inline DeploymentCommand& AddArgs(const char* key, const Aws::Vector& value) { m_argsHasBeenSet = true; m_args.emplace(key, value); return *this; } private: DeploymentCommandName m_name; bool m_nameHasBeenSet = false; Aws::Map> m_args; bool m_argsHasBeenSet = false; }; } // namespace Model } // namespace OpsWorks } // namespace Aws