Skip to content

Commit

Permalink
python ssm follow
Browse files Browse the repository at this point in the history
  • Loading branch information
meyertst-aws committed Jun 24, 2024
1 parent a639497 commit 8cf127e
Show file tree
Hide file tree
Showing 15 changed files with 1,663 additions and 15 deletions.
145 changes: 145 additions & 0 deletions .doc_gen/metadata/ssm_metadata.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,15 @@ ssm_Hello:
- description:
snippet_tags:
- ssm.java2.hello.main
Python:
versions:
- sdk_version: 3
github: python/example_code/ssm
sdkguide:
excerpts:
- description:
snippet_tags:
- python.example_code.ssm.Hello
services:
ssm: {listThings}
ssm_DescribeParameters:
Expand Down Expand Up @@ -68,6 +77,16 @@ ssm_CreateOpsItem:
- description:
snippet_tags:
- ssm.java2.create_ops.main
Python:
versions:
- sdk_version: 3
github: python/example_code/ssm
sdkguide:
excerpts:
- description:
snippet_tags:
- python.example_code.ssm.OpsItemWrapper.decl
- python.example_code.ssm.CreateOpsItem
services:
ssm: {CreateOpsItem}
ssm_UpdateMaintenanceWindow:
Expand All @@ -81,6 +100,16 @@ ssm_UpdateMaintenanceWindow:
- description:
snippet_tags:
- ssm.java2.update_window.main
Python:
versions:
- sdk_version: 3
github: python/example_code/ssm
sdkguide:
excerpts:
- description:
snippet_tags:
- python.example_code.ssm.MaintenanceWindowWrapper.decl
- python.example_code.ssm.UpdateMaintenanceWindow
services:
ssm: {UpdateMaintenanceWindow}
ssm_CreateMaintenanceWindow:
Expand All @@ -94,6 +123,16 @@ ssm_CreateMaintenanceWindow:
- description:
snippet_tags:
- ssm.java2.create_window.main
Python:
versions:
- sdk_version: 3
github: python/example_code/ssm
sdkguide:
excerpts:
- description:
snippet_tags:
- python.example_code.ssm.MaintenanceWindowWrapper.decl
- python.example_code.ssm.CreateMaintenanceWindow
services:
ssm: {CreateMaintenanceWindow}
ssm_SendCommand:
Expand All @@ -107,8 +146,32 @@ ssm_SendCommand:
- description:
snippet_tags:
- ssm.Java2.send_command.main
Python:
versions:
- sdk_version: 3
github: python/example_code/ssm
sdkguide:
excerpts:
- description:
snippet_tags:
- python.example_code.ssm.DocumentWrapper.decl
- python.example_code.ssm.SendCommand
services:
ssm: {SendCommand}
ssm_ListCommands:
languages:
Python:
versions:
- sdk_version: 3
github: python/example_code/ssm
sdkguide:
excerpts:
- description:
snippet_tags:
- python.example_code.ssm.DocumentWrapper.decl
- python.example_code.ssm.ListCommands
services:
ssm: {ListCommands}
ssm_CreateDocument:
languages:
Java:
Expand All @@ -120,6 +183,16 @@ ssm_CreateDocument:
- description:
snippet_tags:
- ssm.java2.create_doc.main
Python:
versions:
- sdk_version: 3
github: python/example_code/ssm
sdkguide:
excerpts:
- description:
snippet_tags:
- python.example_code.ssm.DocumentWrapper.decl
- python.example_code.ssm.CreateDocument
services:
ssm: {CreateDocument}
ssm_DescribeOpsItems:
Expand All @@ -133,8 +206,32 @@ ssm_DescribeOpsItems:
- description:
snippet_tags:
- ssm.java2.describe_ops.main
Python:
versions:
- sdk_version: 3
github: python/example_code/ssm
sdkguide:
excerpts:
- description:
snippet_tags:
- python.example_code.ssm.OpsItemWrapper.decl
- python.example_code.ssm.DescribeOpsItem
services:
ssm: {DescribeOpsItems}
ssm_DeleteOpsItems:
languages:
Python:
versions:
- sdk_version: 3
github: python/example_code/ssm
sdkguide:
excerpts:
- description:
snippet_tags:
- python.example_code.ssm.OpsItemWrapper.decl
- python.example_code.ssm.DeleteOpsItem
services:
ssm: {DeleteOpsItem}
ssm_DeleteMaintenanceWindow:
languages:
Java:
Expand All @@ -146,6 +243,16 @@ ssm_DeleteMaintenanceWindow:
- description:
snippet_tags:
- ssm.java2.delete_window.main
Python:
versions:
- sdk_version: 3
github: python/example_code/ssm
sdkguide:
excerpts:
- description:
snippet_tags:
- python.example_code.ssm.MaintenanceWindowWrapper.decl
- python.example_code.ssm.DeleteMaintenanceWindow
services:
ssm: {DeleteMaintenanceWindow}
ssm_DeleteDocument:
Expand All @@ -159,6 +266,16 @@ ssm_DeleteDocument:
- description:
snippet_tags:
- ssm.Java2.delete_doc.main
Python:
versions:
- sdk_version: 3
github: python/example_code/ssm
sdkguide:
excerpts:
- description:
snippet_tags:
- python.example_code.ssm.DocumentWrapper.decl
- python.example_code.ssm.DeleteDocument
services:
ssm: {DeleteDocument}
ssm_UpdateOpsItem:
Expand All @@ -172,6 +289,16 @@ ssm_UpdateOpsItem:
- description:
snippet_tags:
- ssm.Java2.resolve_ops.main
Python:
versions:
- sdk_version: 3
github: python/example_code/ssm
sdkguide:
excerpts:
- description:
snippet_tags:
- python.example_code.ssm.OpsItemWrapper.decl
- python.example_code.ssm.UpdateOpsItem
services:
ssm: {UpdateOpsItem}
ssm_Scenario:
Expand All @@ -189,6 +316,24 @@ ssm_Scenario:
- description:
snippet_tags:
- ssm.java2.scenario.main
Python:
versions:
- sdk_version: 3
github: python/example_code/ssm
sdkguide:
excerpts:
- description: Run an interactive scenario at a command prompt.
snippet_tags:
- python.example_code.ssm.Scenario_GetStartedSSM
- description: Define a class that wraps document and command actions.
snippet_tags:
- python.example_code.ssm.DocumentWrapper.class
- description: Define a class that wraps ops item actions.
snippet_tags:
- python.example_code.ssm.OpsItemWrapper.class
- description: Define a class that wraps maintenance window actions.
snippet_tags:
- python.example_code.ssm.MaintenanceWindowWrapper.class
services:
ssm: {CreateOpsItem, CreateMaintenanceWindow, CreateDocument, SendCommand, CommandInvocations, DeleteMaintenanceWindow,
UpdateOpsItem}
6 changes: 3 additions & 3 deletions python/example_code/emr/test/test_install_libraries.py
Original file line number Diff line number Diff line change
Expand Up @@ -48,11 +48,11 @@ def test_install_libraries_on_core_nodes(
runner.add(emr_stubber.stub_list_instances, cluster_id, ["CORE"], instance_ids)
for command in commands:
runner.add(
ssm_stubber.stub_send_command, instance_ids, [command], command_id
ssm_stubber.stub_send_command, instance_ids, commands=[command], command_id=command_id
)
runner.add(ssm_stubber.stub_list_commands, command_id, status_details)
runner.add(ssm_stubber.stub_list_commands, command_id=command_id, status_details=status_details)
if status_details == "InProgress":
runner.add(ssm_stubber.stub_list_commands, command_id, "Success")
runner.add(ssm_stubber.stub_list_commands, command_id=command_id, status_details="Success")
elif status_details == "Failed":
break

Expand Down
130 changes: 130 additions & 0 deletions python/example_code/ssm/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@
# Systems Manager code examples for the SDK for Python

## Overview

Shows how to use the AWS SDK for Python (Boto3) to work with AWS Systems Manager.

<!--custom.overview.start-->
<!--custom.overview.end-->

_Systems Manager organizes, monitors, and automates management tasks on your AWS resources._

## ⚠ Important

* Running this code might result in charges to your AWS account. For more details, see [AWS Pricing](https://aws.amazon.com/pricing/) and [Free Tier](https://aws.amazon.com/free/).
* Running the tests might result in charges to your AWS account.
* We recommend that you grant your code least privilege. At most, grant only the minimum permissions required to perform the task. For more information, see [Grant least privilege](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege).
* This code is not tested in every AWS Region. For more information, see [AWS Regional Services](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services).

<!--custom.important.start-->
<!--custom.important.end-->

## Code examples

### Prerequisites

For prerequisites, see the [README](../../README.md#Prerequisites) in the `python` folder.

Install the packages required by these examples by running the following in a virtual environment:

```
python -m pip install -r requirements.txt
```

<!--custom.prerequisites.start-->
<!--custom.prerequisites.end-->

### Get started

- [Hello Systems Manager](hello.py#L4) (`listThings`)


### Single actions

Code excerpts that show you how to call individual service functions.

- [CreateDocument](document.py#L32)
- [CreateMaintenanceWindow](maintenance_window.py#L32)
- [CreateOpsItem](ops_item.py#L34)
- [DeleteDocument](document.py#L56)
- [DeleteMaintenanceWindow](maintenance_window.py#L66)
- [DeleteOpsItem](ops_item.py#L65)
- [DescribeOpsItems](ops_item.py#L13)
- [ListCommands](document.py#L155)
- [SendCommand](document.py#L78)
- [UpdateMaintenanceWindow](maintenance_window.py#L89)
- [UpdateOpsItem](ops_item.py#L117)

### Scenarios

Code examples that show you how to accomplish a specific task by calling multiple
functions within the same service.

- [Get started with Systems Manager](ssm_getting_started.py)


<!--custom.examples.start-->
<!--custom.examples.end-->

## Run the examples

### Instructions


<!--custom.instructions.start-->
<!--custom.instructions.end-->

#### Hello Systems Manager

This example shows you how to get started using Systems Manager.

```
python hello.py
```


#### Get started with Systems Manager

This example shows you how to work with Systems Manager maintenance windows, documents, and OpsItems.


<!--custom.scenario_prereqs.ssm_Scenario.start-->
<!--custom.scenario_prereqs.ssm_Scenario.end-->

Start the example by running the following at a command prompt:

```
python ssm_getting_started.py
```


<!--custom.scenarios.ssm_Scenario.start-->
<!--custom.scenarios.ssm_Scenario.end-->

### Tests

⚠ Running tests might result in charges to your AWS account.


To find instructions for running these tests, see the [README](../../README.md#Tests)
in the `python` folder.



<!--custom.tests.start-->
<!--custom.tests.end-->

## Additional resources

- [Systems Manager User Guide](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html)
- [Systems Manager API Reference](https://docs.aws.amazon.com/systems-manager/latest/APIReference/Welcome.html)
- [SDK for Python Systems Manager reference](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ssm.html)

<!--custom.resources.start-->
<!--custom.resources.end-->

---

Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.

SPDX-License-Identifier: Apache-2.0
Loading

0 comments on commit 8cf127e

Please sign in to comment.