繁体   English   中英

如何从 Python 脚本创建和管理 Lambda Function?

[英]How can I create and manage a Lambda Function from Python Script?

我想通过 Python 脚本管理我的 AWS Lambda 函数,而无需使用 AWS 网站控制台。 这个想法是能够快速将我的应用程序对象(表、函数等)重新创建/迁移/设置到新的 AWS 云账户或区域中。

使用 DynamoDB 表很容易做到这一点,例如:

import boto3
resource = boto3.resource(service_name='dynamodb', region_name='region', ...)
resource.create_table(
                TableName='table_name',
                KeySchema=[...],
                AttributeDefinitions={...},
                ProvisionedThroughput={...}
            )

完毕。 我刚刚从 Python 脚本创建了一个新的 DynamoDB 表? 如何对 Lambda 函数执行相同操作。 说..,新建一个function,配置‘Function Name’和‘Runtime’。 也许设置一个“角色”并从文件上传一个脚本。 那真的很有帮助。

提前致谢。

要使用 boto3 创建 lambda function,您可以使用create_function

AWS 文档还提供了如何使用create_function的示例:

response = client.create_function(
    Code={
        'S3Bucket': 'my-bucket-1xpuxmplzrlbh',
        'S3Key': 'function.zip',
    },
    Description='Process image objects from Amazon S3.',
    Environment={
        'Variables': {
            'BUCKET': 'my-bucket-1xpuxmplzrlbh',
            'PREFIX': 'inbound',
        },
    },
    FunctionName='my-function',
    Handler='index.handler',
    KMSKeyArn='arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966',
    MemorySize=256,
    Publish=True,
    Role='arn:aws:iam::123456789012:role/lambda-role',
    Runtime='nodejs12.x',
    Tags={
        'DEPARTMENT': 'Assets',
    },
    Timeout=15,
    TracingConfig={
        'Mode': 'Active',
    },
)

print(response)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM