i2vm
v1.0.5
Published
ingtube version manager
Downloads
4
Readme
i2vm
i2vm (ingtube version manager) 映兔版本管理工具
install
# 先安装 node
$ brew install node
# 全局安装 i2vm
$ sudo npm i i2vm -g
usage
申请使用时先将 ~/.ssh/id_rsa.pub
发给 liminghang 同志,开通功能。
初始化版本服务
# 命令行方式
$ i2vm init v1.0.0 nodeapi ...
# 返回结果
✔ i2vm home init
✔ update services meta data
✔ ver: v1.0.0 init succeed
-null
+{
+ "nodeapi": ""
+}
# 文件方式导入依赖
$ i2vm init -f dep.yaml
配置文件支持 json 和 yaml 格式, 如 dep.yaml
:
ver: v2.6.0
svcs:
- sx-cp-user-server
- private_share_order_rpc_server
- ...
版本校验
$ i2vm check -t v1.0.0
# 输出结果
✔ fetch tag commits of github succeed
✔ get image commits of k8s deployment
✔ get stats of k8s deployment
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE GIT_COMMIT K8S_COMMIT
nodeapi 1 1 1 1 243d 7b27e9be1d25845272bfe2715ec58e1a55d8824c 7b27e9be1d25845272bfe2715ec58e1a55d8824c
版本发布
# 按 tag 发布
$ ./i2vm deploy -t v1.0.0
# 输出结果
✔ backup services v1.0.0: nodeapi
✔ deploy nodeapi#7b27e9be1d25845272bfe2715ec58e1a55d8824c on DEV succeed
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
nodeapi 1 1 1 1 243d
# 发布 dev 环境的 node-crawler-job-server 服务,使用 4342bd5971fdada86590b735ce48dd6b6dc3c9cd commit 作为镜像
$ i2vm deploy dev node-crawler-job-server 4342bd5971fdada86590b735ce48dd6b6dc3c9cd
# 发布 node-crawler-job-server 服务对应的仓库的 master 分支上的最新 commit
$ i2vm deploy dev node-crawler-job-server
# 当前工程当前分支的最新 commit 发布到 dev 环境
$ i2vm deploy dev
# 当前工程当前分支的最新 commit 发布到 dev 环境(默认发布到 dev 环境)
$ i2vm deploy