光子晶体光纤
pcf的Python项目详细描述
粒子云框架
粒子云框架是一个完全可定制和扩展的云资源供应框架,可通过代码调用,不需要手动维护资源状态。粒子云框架能够标准化建模分层云基础设施、自动化部署和管理云资源的生命周期。
文档
Docs包括快速启动和开发人员指南
安装
要安装粒子云框架,请打开一个交互式外壳并运行:
pip install pcf
导入并使用PCF粒子
首先导入要使用的粒子。这些可以是核心粒子,也可以是您创建的自定义粒子。 如果需要创建配置的帮助,请参阅示例。
from pcf.core.ec2.ec2_instance import EC2Instance
接下来,我们需要将所需的状态定义传递给粒子。
ec2_example_definition = {
"pcf_name": "ec2_example",
"flavor":"ec2",
"aws_resource": {
"ImageId": "ami-xxxxx",
"InstanceType": "t2.micro",
"KeyName": "secret-key-xxx",
"SecurityGroupIds": [
"sg-xxxxxx",
],
"SubnetId": "subnet-xxx",
"userdata_template_file": "userdata-script-xxxxx.sh",
"userdata_params": {},
"IamInstanceProfile": {
"Arn": "arn:aws:iam::xxxxxxxxx"
},
"InstanceInitiatedShutdownBehavior": "stop",
"tags": {
"NAME":"Value"
},
"BlockDeviceMappings": [
{
"DeviceName": "/dev/sda1",
"Ebs": {
"DeleteOnTermination": true,
"VolumeSize": 20,
"VolumeType": "gp2"
}
}
]
}
}
现在要使用pcf启动ec2实例,只需初始化粒子并将所需状态设置为running和apply。
particle = EC2Instance(ec2_example_definition)
particle.set_desired_state('running')
particle.apply()
若要终止,只需将所需状态更改为“终止并应用”。
particle.set_desired_state('terminated')
particle.apply()
发布内容
支持的云服务
开发设置
要在本地开发,请克隆此项目并确保通过pip
或conda
全局安装了invoke包:
$ pip install invoke
或
$ conda install invoke
然后可以通过invoke
cli使用tasks.py
中定义的项目管理任务:
$ invoke --list
Available tasks:
build Build PCF with the PCF_TAG value given or the VERSION in pcf/__init__.py
docs-add Run sphinx-apidoc on pcf and pcf/test
lint Run pylint on pcf directory
publish Publish package to Pypi
setup Setup a virtualenv, activate it, and install requirements
test Run pytest on pcf directory, generating a coverage report
$ invoke setup && source venv/bin/activate
$ invoke test
路线图
贡献者
我们欢迎您对Capital One的开源项目(the “项目”)。项目的任何参与者都必须接受并签署 表示同意以下许可条款的协议。除了 本协议授予Capital One和接收方的许可 对于Capital One发行的软件,您保留所有权利,所有权, 以及对您的贡献的兴趣;本协议不 影响您将自己的捐款用于任何其他目的的权利。
行为准则
这个项目遵循Open Code of Conduct 通过参与,你是 希望遵守这个准则。