00:00
嗨,同学们,上节课呢,我们把这个脚本已经开发完了,那么接下来我们测试一下啊。那先检查一下我们之前的这个配置。在这个任务里边啊,我们的这个pere step里,我们需要去调用这个x.SH这个脚本,那么同学们一定要注意啊,我们现在这个脚本呢,是需要接参数的才可以,不然的话呢,嗯,它会这个呃,它会报错,就是在执行脚本的时候,如果我现在比如说点SH x.SH啊,它会报错,为什么呢?是因为它需要接收一个参数啊,这个参数就是我们现在进程的这个名称。啊,那我们需要在调用的时候呢,在这儿也要把这个参数给加上,就我用,呃,我想要清理这个DEMO这个项目,那这是呃,我们这个进程的关键字,然后再保存一下。保存完之后呢,我们测试一下。来让它运行来走。
01:01
来看一下这个任务在执行这个,呃,测试的时候呢,我们主要是看一下这个他有没有帮我们把进程杀死,大家看啊,进程已经把我们杀死了,然后现在这个代码还没传过来。再稍微等一等啊,OK,这代码也传过来了,我们看这勾,哎,是不是也启动了,现在这个进程的ID是3220对吧?啊,然后这个DEMO点这,然后现在如果要是用我们的浏览器的话,访问我们这台主机能应该能够访问到我们最新版本的代码了。啊,这就是我们使用呃这个shell脚本来做呃自动化的清理,那么接下来再试一下,再测试一下,我们去提交一份新的代码,它能不能够正常给我们显示出来,那我们现在访问一下。我们这个测试机的,呃,这个。服务现在呢,显示的是hello对吧,那么接下来我们提交一些新的代码上去,让他再帮我们去一下。
02:08
在这呢,我用的是sts啊啊,这在spring的官方站点就能下载到。呃,你用其他的工具其实也是一样,那我们在这呢,就简单改一改,Hello word啊,然后at。硅谷。然后CTRLS保存,我们把这这个。Controller提交上去。Commit。直接commit and push,这是提交到本地的地的仓库,并且提交到远程仓库。OK,提示我们现在提交成功,那么现在get上已经有了,我们现在直接刷新肯定是不行的,对吧,因为他没有帮我们构建啊,重新去构建一下。来,走。
03:04
注意看这个任务。就是如果我们不执行那个上节课咱们开发的清理脚本的话,它打包完成之后,它也是启动不起来的,因为端口被占用了嘛,对吧。OK,现在全部都执行完了,那我们看一下。来刷新。嗯,现在这个新的好像没出来是吧,那我们。这点F12看看是不是有缓存。嗯,刷新了也没好使那么简单来分析一下,它可能是代码提交上去之后没生效,因为我们在提交代码的时候呢,他没有报错对吧。呃,我们再登一下GI,这可能是咱们的这个分支的问题。服务器是103,因为我们现在提交上之后,这个分支是master。
04:03
现在get上的主分支啊,它是。它是闷对吧。啊,需要我们去合并一下这个代码。我们登上去把代码再合并一下,那我们代码确实已经提交上来了,但是是在master上。然后我们去创建一个合并请求。把master上的代码呢,合并到men的这个主分支上,当然如果你要想省事一点的话,你可以直接给它提交到主分支上,那具体配置呢,就在我们这个gate上,在配置的时候直接给它提交到men的那个分支上啊。来,然后我们批准一下,但是在真正的这个工作当中啊。一般来说并不允许我们直接提交到现在的这个主分支上啊,这稍微的做一下这个审核啊。嗯,现在已经合并了,OK,那么我们再去重新执行一下构建。
05:11
来看这个任务执行。稍微等一下,好,OK,执行完成了,那么我们这会儿再看看这个代码。诶,最新版的测试服务器上的这个数据就已经给我们展示出来了,那么在这啊,呃,我们可以呃手动的去完成整个从开发。到这个构建,然后最后部署到测试服务器,完整的一套流程了。那么有的时候我们想要让它,呃,构建的时候啊,嗯,你别这个。这个这个手动去构建了,还是想要去节省一下我们构建的这个成本,那么我就可以让他去自动构建,那么这会儿我们就不能再用这种多分支了啊,我们现在是多个分支,需要把它合并到主分支上,那么可以让它自动化的,一旦我的代码提交上去啊,然后让它自动化的去构建,比如说我现在有一旦要是有,呃,有这个这个代码提交了啊,然后就让他让这个jacks帮我们去执行一次构建。
06:28
啊,当然这种情况啊,并不多见,或者说并不常用,因为我们项目组里边可能人比较多,那你提交一次代码,那你去构建一次,那我提交一次呢,它也会构建一次,对吧,那其实这个并不是特别使用啊,这容易出问题,而且很有可能你的代码并没有经过你严格的这种这种检查,就已经提交上来了,那完成构建之后呢,他一定会报错。是吧,所以呃,通常来说还是要执行一次这个手动合并的,那么呃,想要让他完成自动化的提交代码来帮我们构建的话,那就可以利用GI的钩子机制啊,一旦GI上提交了这个代码,然后去回调一下jackins,让jackins啊帮我们去。
07:15
完成构建,那这步怎么做呢?我在这儿呢,就不带大家来演示了,跟大家来说一下,我们可以看这个配置,配置选项里边,这里边有构建触发器,在这构建触发器里边可以去选择啊,我们在什么条件下去构建我们的项目,那我们看这个构建触发器啊,在这里边儿呢,我们可以勾一下这儿啊触发。远程构建,比如说使用脚本,那这儿呢,就可以提供一个URL,让它来调用我们啊,这是在咱们的这个jacks上啊,一旦要是。呃,我们的这个这个这个get lab上发生代码变动了,代码变更了,那么就可以让他去调用呃这个URL啊,那么这种代码变动,比如说我提交代码啊,这就可以去发起一个呃这个回调的钩子来调用这个URL啊,那么我们在这个提交代码之后啊,是在这儿我们的git lab上下边有个设置,其中呢有这个web hook,这web hook呢,其实就是我们这个回调钩子,我们可以去利用它的事件机制来触发啊这个一个新的事件,然后来回调我们。
08:26
这个呃,这个这个jacks上的这个接口,让它去执行构建啊,这就是我们最基本的这个使用,那么接下来呢,我们带着大家来实验一下如何来让它完成合并分支之后的自动构建,如果提交代码就让它自动构建的话,这样实在是有点儿太频繁了,对吧。
我来说两句