如何使用boto3调用put_parameter上传文件类型参数值
使用Boto3实现AWS CLI的SSM参数创建操作(读取文件内容作为参数值)
要实现和你提供的AWS CLI命令相同的效果,在Boto3中需要分两步操作:先读取目标文件的内容,再调用SSM客户端的put_parameter方法完成参数创建。
具体实现代码
import boto3 # 创建SSM客户端 ssm_client = boto3.client('ssm') # 读取文件内容(模拟CLI中file://的行为) with open('my-file.txt', 'r', encoding='utf-8') as file: parameter_value = file.read() # 调用SSM的put_parameter方法 response = ssm_client.put_parameter( Name='my-param', Value=parameter_value, Type='String', # 如果需要覆盖已存在的同名参数,添加以下参数 # Overwrite=True ) # 打印返回结果 print(response)
关键说明
- 读取文件时,使用
open函数以文本模式('r')读取,确保和CLI中file://读取文本文件的行为一致;如果是二进制文件,可改用'rb'模式,但注意SSM的String类型仅支持文本内容。 - CLI命令默认不会覆盖已存在的参数,如果需要覆盖,需在Boto3的调用中添加
Overwrite=True参数,这和CLI中添加--overwrite选项的效果一致。 - 请确保运行代码的环境已配置好AWS凭证(比如通过环境变量、~/.aws/credentials文件等),否则SSM客户端会无法正常调用AWS服务。
内容的提问来源于stack exchange,提问作者alltej
相关产品推荐
相关产品推荐

