本地开发的服务管理工具。

mms-stack的Python项目详细描述


堆叠pipeline status

本地开发的服务管理工具。

要求

  • python 3
  • pipenv

安装

发展

git clone git@gitlab.com:mega-mac-slice/stacky.git
cd stacky
make install

stacky --help

啤酒

brew tap mega-mac-slice/tap && brew install stacky

配置

“stacky文件”是项目目录中的json文件,通常名为.stacky.json,看起来像:

{"name":"dev-application","commands":{"start":"make start","status":"make status"},"stack":["git@gitlab.com:mega-mac-slice/dev-postgres.git","git@gitlab.com:mega-mac-slice/dev-redis.git","git@gitlab.com:mega-mac-slice/dev-elasticsearch.git"],"extra":{"kafka":["git@gitlab.com:mega-mac-slice/dev-fast-data-dev.git"]}}

在这里,我们为项目本身以及项目对postgres、redis和elasticsearch的依赖性定义了一些命令。

用法

开始

stacky start

这将执行以下操作:

    迭代栈中定义的每个依赖项,如果本地不存在,则检索它。
  • 对于每个依赖项,检查它是否也有一个.stacky.json,并在本地检索在stack中定义的那些依赖项。
  • 对于每个依赖项,检查它的状态并在需要时启动它。

对于我们的示例stacky.json,我们将从:

dev-application \
    .stacky.json
    Makefile

在运行stacky start之后,将在项目附近的本地签出依赖项。

dev-application \
    .stacky.json
    Makefile
dev-postgres \
    .stacky.json
dev-redis \
    .stacky.json
dev-elasticsearch \ 
    .stacky.json

状态

stacky status

这将遍历依赖项并检查其状态。让您知道应用程序的堆栈是否正在运行。

> stacky status
[INFO] dev-application - ok
[INFO] dev-postgres - ok
[INFO] dev-redis - ok
[INFO] dev-elasticsearch - ok

停止

stacky stop

这将遍历依赖项并停止它们。

> stacky stop
[INFO] stopping | dev-elasticsearch
[INFO] stopping | dev-redis
[INFO] stopping | dev-postgres

运行

stacky run command-name

其他命令可以在commands中定义,并通过run调用。

> stacky run reset
[INFO] dev-postgres - ok
[INFO] dev-redis - ok
[INFO] dev-elasticsearch - ok

可能的结果如下:

  • ^ {CD4}}命令存在并成功运行。
  • ^ {CD5}}命令存在且运行失败。
  • ^ {CD6}}命令不存在。

路径

stacky paths

提供要与外部工具一起使用的依赖路径的瓷器输出。

> stacky paths
/dev/src/dev-elasticsearch
/dev/src/dev-redis
/dev/src/dev-postgres

> stacky paths | xargs rm -rf

命令生命周期

安装-todo

开始

状态

停止

支持的依赖项

git ssh/https

局部

http/https-todo

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

推荐PyPI第三方库


热门话题
Java泛型和基类   ProcessBuilder或DefaultExecutor启动的“RunAs”子进程的java读取标准输出   java应用程序在尝试登录时突然停止   Java:神秘的Java未捕获异常处理程序[带代码]   java JavaFX NumberAxis自动范围无限循环   最新版本和旧版本冲突的java双Maven依赖关系   java如何导入带有部署变量类名的静态函数?   编译器构造不同的JDK更新会产生不同的Java字节码吗?   java无法在struts 1.1中上载任何超过250 MB大小的文件   java调整jcombobox下拉菜单的宽度   java如何在某些情况下忽略@SQLDelete注释   在Eclipse for Java EE developers edition中禁用HTML警告   java HttpUrlConnection重置请求属性   java@Provider资源未在rest应用程序中注册   java TOP N使用JPA连接   java在使用反射调用方法时区分int和Integer参数