管理snpaas

snpaas-cli的Python项目详细描述


#ee snpaas cli

snpaas命令行程序基于docker。这个命令只是一个python
包装器,docker可以执行:

````
docker run--rm-v$(pwd):/data-it platformengineering/snpaas tools"${@}"
````

pip可以很容易地作为客户机分发给每个人。所有重要的事情都是在容器中完成的。


通过安装Docker客户端命令行并将执行委托给一个运行Docker后台程序的框(通过定义适当的环境变量),它可能会在Windows上运行,例如:堡垒主机。

默认值为"platformengineering/snpaas tools:latest"。
*`snpaas_suppress_info_regex`:默认值为`^ `。正则表达式,用于删除运行当前文件夹的.envrc文件时由映像生成的motd。
*`snpaas_extra_env`:定义要在运行容器中导出的额外变量,再加上上面定义的默认脚本。



脚本没有任何要求,它应该在所有平台上运行,在这些平台上可以使用
python(2.7-3.x)和docker cli。在Windows中,应该可以通过设置适当的环境变量将Docker的执行委托给第三方服务器。





完成脚本'publish dockers dockerhub.sh`
,该脚本接受所有文件夹(它们必须有一个'dockerfile`),并用每个文件夹的名称创建一个docker映像
。创建图像后,将使用*platformengineering*帐户自动将
推送到dockerhub.com。您必须使用"docker login"登录
才能发布图像。

***图像是公共可用的。请不要在其中包含机密**
***图像是公开的。请不要在其中包含机密**
***图像是公开的。请不要在其中包含机密**
***图像是公开的。请不要在其中包含机密**
***图像是公开的。请不要在其中包含机密**
***图像是公开的。请不要在其中包含机密**
***图像是公开的。请不要在其中包含机密**
***图像是公开的。请不要在其中包含机密**
***图像是公开的。请不要在其中包含机密**
***图像是公开的。请不要在其中包含机密**
***图像是公开的。请不要在其中包含机密**
***图像是公开的。请不要在其中包含机密**
***图像是公开的。不要在那里包含机密**

如果包含机密,下一个任务将是在任何地方旋转所有机密!,没有休息!
不管怎样,**如果你包含了秘密,那你就做错了。Docker图片不是用来储存秘密的!**



上传到pypi

1。创建一个".pypirc"配置文件。此文件保存用于使用PYPI进行身份验证的信息。

```
[distutils]
index servers=PYPI

[PYPI]
repository=https://pypi.python.org/pypi
username=your戥username
password=your戥password
```
2。登录并上传到pypi

```
python setup.py register-r pypi
python setup.py sdist upload-r pypi
````




1.` dockerfile`包括所有软件(具有特定版本)。
2.docker读取"entrypoint["/bin/bash","/run.sh"]`,它将始终执行。
3.Docker将把当前文件夹提供给`/data`中正在运行的容器,所有程序和脚本都将在那里执行。
4."run.sh"脚本读取".envrc"文件,并根据需要显示用法(帮助)。
5.根据第一个参数,它将执行一个命令就像"波什","克里杜布"…或者运行"manage deployment.sh"脚本



它非常冗长,总是用颜色显示它在做什么,您可以复制复制蓝色命令的所有内容。


您可以直接复制并运行它,方法是调用程序
`snpaas.py`而不是'snpaas'。



输入'snpaas`

``
$snpaas

**docker image:platformengineering/snpaas tools***

它包括cf、bosh、credhub的客户端…



在当前文件夹中,您可以定义一个".envrc"文件
,其中包含要在运行容器中设置的所有环境变量。
如果您没有".envrc"文件,但您的环境中有以下环境变量
,然后bosh cli和credhub cli将自动登录:

"bosh_client"
"bosh_client_secret"
"bosh_environment"
"bosh_ca_cert"
"credhub_server"
"credhub_client"
"credhub_secret"
"credhub ca_cert"
"gcp_project"
"gcp_zone"
"gcp_region"

然后您就可以管理部署了,使用此子命令和选项:



-m选项:
-m指定清单文件,而不是生成随机的
-p部署路径。默认值为
-h显示用法帮助


子命令:
help显示用法帮助
插值为环境创建清单
应用云/运行时配置后部署[-f]更新或升级部署
销毁[-f]删除部署(不删除云/运行时配置)
云配置从控制器云配置应用云配置操作文件
运行时配置从控制器运行时配置应用运行时配置操作文件
从<;导入credhub中的机密集机密;部署文件夹>;/file
列出credhub的机密列表<;部署文件夹>;
导出机密从credhub下载机密到<;部署文件夹>;/


boshrelease git子模块文件夹>;
——base.yml->;<;boshrelease git子模块文件夹>;/manifest/logstash.yml
——操作
——10-operation.yml->;。/<;boshrelease git子模块文件夹>;/清单/操作/操作.yml
/清单/操作/操作2.yml
variables-provided.yml->;../<;boshrelease git submodule folder>;/manifest/vars.yml



credhub secrets必须是"value"类型,并且它们将在
"secrets.yml"文件中导入/导出,如果它退出,脚本将读取。



../cf日志boshrelease/manifest/operations/pipelines/cf apps es throttling.yml
g-boshrelease/manifest/operations/add throttle param.yml
../cf日志记录boshrelease/manifest/operations/add es xpack.yml
../cf日志boshrelease/manifest/operations/add release version.yml
../cf日志boshrelease/manifest/operations/add iaas parameters.yml
——secrets.yml
——变量
——iaas.yml
——节流参数yml
——vars-release-version.yml->;../cf日志记录bosh release/manifest/vars release version.yml



*若要部署或更新名为"应用日志记录"的部署,请执行:"部署应用日志记录"。
如果不想在bosh运行时回答"是/否"问题,只需使用'-f'选项:
'部署应用程序日志记录-f'
*列出credhub的部署机密:'list secrets app logging'
*将credhub的部署机密导出到文件'app logging/secrets.yml'
使用'export secrets app logging'完成。只支持凭据类型值。
*从文件"app logging/secrets.yml"导入部署到credhub的机密:
"import secrets app logging"。所有凭据都将作为类型值导入。
*为了将文件夹的名称应用于部署,您需要为此操作提供
操作文件。

-type:replace
path:/name
value:((deployment_name))



*避免编写有关每个部署的文档。每个文件夹都有一个特定的
结构,脚本只遍历文件夹结构并生成
并将操作应用于基本清单。
*使管理bosh部署变得容易。如果部署文件夹正确
完成,则出于测试目的复制它就像关闭文件夹
然后重新部署一样简单。
*在部署中轻松管理credhub机密。可以从文件导入、导出和
将机密列表到credhub(只有机密类型值,其他的
通过清单中的"变量"部分进行管理!).
*显示它每次运行的命令,带有彩色输出,以便在出现错误时突出显示。
*松耦合。sript是bosh和credhub客户机的包装器。如果您不喜欢这个脚本,就不必使用它。文件夹结构是自记录的,因此您只需要从这些文件中构建bosh和credhub参数即可。




只需输入then作为参数即可。


spiff:1.0.8
credhub:1.7.7
gcloud-sdk:220.0.0
cf-cli:6.40.0
bosh-cli:5.2.1
certstrap:1.1.1
jq:1.5
bbr:1.2.2
spruce:1.18.0
terraform:0.11.8
fly:3.14.1
````



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

推荐PyPI第三方库


热门话题
java使用ContentExchange设置请求属性   java Spark/Hdfs/Hdfsclient兼容性   java springcloudstreamkafka配置:instanceCount和instanceIndex   Java中web服务序列化日期   java用动态数据替换占位符   java git gc似乎覆盖了一个packfile,留下了一个打开的文件描述符,其中包含对“oldxxx.pack”的引用   为什么Apache项目对Java版本敏感?   java Anylogic帮助如何在导入的3dobject通过输送机上的多个“站”时更改其颜色?   JavaEclipseNeonM2E可以导入一个大型项目,但似乎不能自动解决依赖关系   java@FindBy搜索具有满足条件的子元素的元素   java如何将ActionEvent e与键绑定一起使用?   java转换以集中方式从外部库抛出的异常   java中用户文件/数据文件与系统/程序文件的区别   java使用变量字符串或字符作为对象名   字体使用Java图形操纵字符串中每个字符的形状   JavaFX图表移动数据   java RandomAccessFile:将所有项设置为相同的字节数?   java Google Play inapp Billing onPurchasesUpdated()错误响应代码1   java在不知道属性名和属性数的情况下处理json对象   java是否可以一次从HazelcastInstance(映射和列表)中删除所有数据?