新项目抛弃了jenkins,把持续集成也放到了coding上管理,第一次在coding上配构建计划,作为一个非专业运维,心里还是有点慌的。
好在经过一番折腾,最终还是在一天之内把前后端的构建计划都创建好了,✿✿ヽ(°▽°)ノ✿
coding构建计划和jenkins都是可以用pipeline语法,coding比较好的是可以有一台免费的云服务器作为中转服务器,执行编译和推送代码的任务,但是这样带来的问题也不少,比如服务器软件环境不能自定义,只能用统一的初始环境。
我的接口代码用的是1.17的go版本,但是coding云服务器只有1.14,这样安装依赖的时候是会报错的,就很烦。
只要思想不滑坡,办法总比困难多~
我想到一个办法就是在构建计划里升级go的版本,但是编译的时候还是会报错,因为服务器同时有两个go版本会有冲突,通过查看go env看到go是安装在/root/prgrams/go目录的,在安装之前还需要先把低版本的文件删除掉,最后终于编译成功了!
代码如下:
中转服务器上打包好之后,就要部署到自己的服务器上了,我们需要先在coding上配置登录凭据,然后通过ssh进行代码推送。
因为go开发的项目可执行文件是被进程占用的,无法覆盖,所以在推送代码之前,需要先把服务器上的进程kill掉,再覆盖文件,接着启动进程,代码如下:
coding有一个比较好的地方,就是可以设置目录缓存,节省每次构建的时间,比如go的mod文件,vue项目的node_modules文件,用起来非常舒服。
整个过程看起来简单,实际上并不轻松,主要是coding的帮助文档不是很清晰,很多配置不是常年使用pipeline构建项目的话,还是挺难理解的。
希望这套配置不要出什么问题,作为一名非专业运维,每次搞这种东西都是战战兢兢的,以后去新公司的话,还是不要暴露自己的运维技能好了  ̄□ ̄||