目前角色是维护人员,之前使用过Jenkins、coding、建木等工具,对CI/CD工具目前就是要求高效,便捷的部署。
从目前使用上来看flow在新人上手方便还是比较简单。
从目前使用看flow如果没有与云效捆绑在一起,几乎只有少量的使用,主要是与codeup的关联性非常强,因为使用了云效才选择flow使用的。
同时对flow有如下的一些建议。
- 建议YMAL化编排与可视化编排直接可以进行转换
- 建议同一个流水线部署时可以根据参数确定部署在那个主机组下面
比如默认某个主机组,但是手动运行选择某个主机组,或者Webhook传递某个参数确定使用那个主机组进行部署,简单点就是脚本在不同的环境变量下部署不同的主机组
比如预发环境部署A主机组(默认),正式环境部署B主机组。
3. 建议流水线触发设置中Webhook触发可以修改或者重置(随机生成)触发地址
因为目前webhook无法修改,这个就涉及到如果有人事变动等情况发生,可能需要新建一个流水线,之前的流水线只能作废。
4. 加强流水线部署脚本的执行或者编译,目前就遇到一个疑惑,比如在主机有个test.sh 脚本包含如下代码
脚本方法中 如果不加上#!/bin/bash这一行通过部署脚本执行,就不能创建文件夹,但是去掉这一行,直接在主机上运行 sh test.sh rename 却可以创建文件夹
source /etc/profile path=$(cd `dirname $0`; pwd) rename(){ #!/bin/bash 如果不加这一行通过部署脚本执行,就不能创建文件夹,但是去掉这一行,直接在主机上运行 sh test.sh rename 却可以创建文件夹 mkdir -p $path/backup ymd=$(date +%F_%H%M) jar_name=$(find . -maxdepth 1 -name *.jar) sudo -u www mv ${jar_name} $path/backup/${jar_name}."${ymd}" } case "$1" in rename) rename ;; *) echo "Usage: $0 {start|stop|restart|status|rename}" RETVAL=1 esac
- 加强部署脚本模板,或者提供模板市场。同时可以新增部署检查模板市场,比如部署脚本执行后,程序是否如期运行检查通知等。
- 目前有时会出现node.js打包异常问题,比如package.json 未更改,偶尔打包会出现如下异常,只编辑工作目录后,就可以正常打包部署(其他未做任何更改,包括代码)