将路径53 ptr记录关联到特定vpc。

r53-ptr-vpc-associator的Python项目详细描述


R53_ptr_vpc_associator

这是一个将反向区域关联到专有网络的程序。它与https://github.com/aws-samples/aws-lambda-ddns-function

先决条件

强烈建议您在python虚拟环境中运行此包,因此 您不会影响您的台式机/笔记本电脑。要设置python虚拟环境,您应该 请确保已安装python3,然后执行以下操作。

注:我为什么要这样做。使用python虚拟环境,可以创建 许多虚拟环境都是您所希望的,并且有不同的python版本。这些 虚拟环境被隔离在一个目录中,不会影响 你的电脑。这样,你就可以测试并确保一切正常。

首先,找出安装在机器上的python版本的路径。

which python3
/usr/local/bin/python3

接下来,您应该pip安装virtualenv包

pip install virtualenv

接下来,您应该创建一个目录,在其中保存虚拟环境, 并使用上面找到的python版本的路径创建一个新的virtualenv。

mkdir ~/virtual_environments
cd virtual_environments
virtualenv -p /usr/local/bin/python3 my_python3_virtualenv

激活虚拟环境

source ~/virtual_environments/my_python3_virutalenv/bin/activate

注意:要停用虚拟环境

deactivate

安装

一般用法:

pip install r53_ptr_vpc_associator

当地发展:

git clone https://github.com/rubelw/r53_ptr_vpc_associator
cd r53_ptr_vpc_associator
pip install --editable .  # Install the local dir as a package, including the 'dev' extras

示例

获取帮助

$ associator --help
Usage: associator [OPTIONS] COMMAND [ARGS]...

Options:
  --version  Show the version and exit.
  --help     Show this message and exit.

Commands:
  associate  Associated hosted zones to vpc
  zone-list  List vpcs for hosted zones

列出当前区域/vpc关联

$ associator zone-list --profile-name default
{
        '/hostedzone/Z1H1CDD4PZKKPB': [
        {
            'VPCRegion': 'us-east-1',
            'VPCId': 'vpc-99999999'
        },
        {
            'VPCRegion': 'us-east-2',
            'VPCId': 'vpc-99999999'
        }
    ]
}

关联区域

$ associator associate --profile-name default --vpc-id vpc-99999999  --vpc-region us-east-2
[
    'Successfully associated zone: /hostedzone/A3G1CDD4PZKKPB with vpc: vpc-99999999',
    'Successfully associated zone: /hostedzone/HR2F2BVHDW5UD with vpc: vpc-99999999',
    'Successfully associated zone: /hostedzone/V6B06KVZ0ZL9U5 with vpc: vpc-99999999',
    'Successfully associated zone: /hostedzone/D7JTQ7EDFFYOWN with vpc: vpc-99999999'
]

以lambda的身份运行

运行make_lambda-zip命令。这将利用/tmp目录 创建包。

associator make-lambda-zip

################################################################################
Zip package located at: /tmp/r53_ptr_vpc_associator/LambdaDeploymentPackage.zip
################################################################################

部署lambda,您可以使用任何其他lambda包,但请确保 设置环境变量。

PROFILE_NAME = lambda
VPC_ID       = vpc-xxxxxxx
VPC_REGION   = us-east-1

一旦部署,就可以通过在控制台中创建任何测试来测试lambda。 lambda不使用事件消息,因此任何事件消息都将用于 触发lambda。

测试

在提交更改之前,请确保运行测试套件:

tox

python 3兼容性

此工具与python 3.5+兼容。

tox库用于运行多个python版本的测试。要运行这些测试,首先确保所有受支持的python版本都在本地安装。然后,只需运行:

tox

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Android Action_Edit Intent无法像以前一样调用App Gallery来编辑图片   确保JRE兼容性的java适当程序(32或64位)   java JSONArray。for循环中的add(JSONObject)正在替换for循环中的旧值,数组由循环中的最后一个值组成   java需要帮助创建一个返回数组的方法,该数组的元素是另一个数组的平方   使用SmbFile w/groovy XmlSluper()创建xml。解析()Java   检查大小后的java ArrayIndexOutOfBoundsException   乘法表中的第k个最小元素   java 401 on请求,其中指定了'permitAll()'   java如何附加ORC文件   java hibernate类模型   java IDEA没有看到由自定义注释处理器生成的方法   Servlet中未声明java SerialVersionId   java linkedlist到达列表末尾时   java如何正确对齐EditText光标?   java 6编译器1.6上的eclipse重写方法错误   java如何在基于Jersey的RESTful Web服务中读取post数据   java如何在活动中正确使用接口?   Java的JIT编译器的工作速度有多快?