Be公用事业
sermos-utils的Python项目详细描述
塞尔莫斯乌蒂斯
与Sermos交互的实用程序。在
部署
先决条件
要将应用程序部署到Sermos,有几个先决条件:
- 已创建和配置部署环境
- 已为该部署发出
access key
- 你的应用程序是一个具有标准结构的有效Python包(见下文)
- 您有一个
sermos.yaml
文件,其中包含定义的API端点、worker等 - 您的应用程序将
sermos-utils
作为依赖项,并已安装。在
部署
可以通过两种方式启动Sermos部署:以编程方式或使用 CLI工具。在
建议将访问密钥保留在环境中,并设置 环境中的客户端包目录也是为了方便。在
SERMOS_ACCESS_KEY=abc123
SERMOS_CLIENT_PKG_NAME=your_package
编程部署
以编程方式调用管道(例如,作为构建管道的一部分)可以 如下所示(假设访问密钥/客户端包目录 可在环境中按上述说明提供)。在
^{pr2}$CLI部署
对于基于cli的部署,安装了sermos_deploy
命令
作为sermos-utils包的一部分。在
honcho run -e .env sermos_deploy
部署状态
假设您的环境是按照上面Deployment
部分中的注释设置的:
程序状态检查
from sermos_utils.deploy import SermosDeploy
sd = SermosDeploy()
status = sd.get_deployment_status()
print(status)
CLI状态检查
honcho run -e .env sermos_status
正确的Python包结构
假设您的软件包名为“我的客户”:
/path/to/codebase/
my-sermos-client/
setup.py
my_sermos_client/
__init__.py
sermos.yaml
my_sermos_client/__init__.py
只有一个要求,即包含
指定为变量__version__
的应用程序版本,例如:
__version__ = '0.1.0'
通常的做法是在setup.py
文件中使用该值,例如
_version_re = re.compile(r'__version__\s+=\s+(.*)')
with open('my_sermos_client/__init__.py', 'rb') as f:
__version__ = str(ast.literal_eval(_version_re.search(
f.read().decode('utf-8')).group(1)))
地方发展
Sermos以两种方式提供本地开发环境:
- 本地“沙盒”环境
- 代理到部署数据库的云连接环境
有关详细信息,请参见sermos-utils/dev/README.md
。在
测试
要运行测试,您需要在您的系统上运行pyenv
,并且tox
在
你的环境。在
有关正确安装pyenv
的说明,请参阅RhoAI文档。在
安装pyenv
后,安装tox
$ pip install tox
然后在pyenv
中安装不同的python版本
$ pyenv install 3.7.4
现在,运行测试:
$ tox
- 项目
标签: