awscli/customizations/dlm/constants.py (30 lines of code) (raw):
# Copyright 2018 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.
# Declare all the constants used by Lifecycle in this file
# Lifecycle role names
LIFECYCLE_DEFAULT_ROLE_NAME = "AWSDataLifecycleManagerDefaultRole"
LIFECYCLE_DEFAULT_ROLE_NAME_AMI = \
"AWSDataLifecycleManagerDefaultRoleForAMIManagement"
# Lifecycle role arn names
LIFECYCLE_DEFAULT_MANAGED_POLICY_NAME = "AWSDataLifecycleManagerServiceRole"
LIFECYCLE_DEFAULT_MANAGED_POLICY_NAME_AMI = \
"AWSDataLifecycleManagerServiceRoleForAMIManagement"
POLICY_ARN_PATTERN = "arn:{0}:iam::aws:policy/service-role/{1}"
# Assume Role Policy definitions for roles
LIFECYCLE_DEFAULT_ROLE_ASSUME_POLICY = {
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {"Service": "dlm.amazonaws.com"},
"Action": "sts:AssumeRole"
}
]
}
RESOURCE_TYPE_SNAPSHOT = "snapshot"
RESOURCE_TYPE_IMAGE = "image"
RESOURCES = {
RESOURCE_TYPE_SNAPSHOT: {
'default_role_name': LIFECYCLE_DEFAULT_ROLE_NAME,
'default_policy_name': LIFECYCLE_DEFAULT_MANAGED_POLICY_NAME
},
RESOURCE_TYPE_IMAGE: {
'default_role_name': LIFECYCLE_DEFAULT_ROLE_NAME_AMI,
'default_policy_name': LIFECYCLE_DEFAULT_MANAGED_POLICY_NAME_AMI
}
}