这个脚本没有给出任何错误,它只是在控制台上显示yaml代码
Python脚本:
testrongns_topic.py
import boto3
import yaml
client = boto3.resource(
's3',
aws_access_key_id = '',
aws_secret_access_key = '',
aws_session_token = '',
region_name = 'us-west-2'
)
sns = boto3.client('sns')
with open('sns.yaml') as f:
data = yaml.load(f,Loader= yaml.FullLoader)
print(data)
sns.yaml
Type: AWS::SNS::Topic
Properties:
DisplayName: Test
KmsMasterKeyID: 7fba2279-673-73878748343
TopicName: test_sns_topic
我正在尝试使用python脚本创建一个主题,该脚本将yaml文件作为输入。
输出:
它现在正在读取yaml文件,但没有在aws中创建任何主题,只是在控制台上显示yaml代码。
这段代码看起来像是属于CloudFormation模板:
Type: AWS::SNS::Topic
Properties:
DisplayName: Test
KmsMasterKeyID: 7fba2279-673-73878748343
TopicName: test_sns_topic
(它是模板的部分,而不是完整的模板。(
AWS CloudFormation可以根据模板中的定义部署基础设施。对于这个片段,它将创建一个具有给定名称和KMS密钥的AmazonSNS主题。它应该作为更完整的CloudFormation模板的一部分进行部署。正如所写的,它不会从Python中执行任何操作。
如果您希望从Python(而不是CloudFormation(创建AmazonSNS主题,那么您应该使用create_topic()
命令。