浅尝CI/CD,真香

前言:

大家都在关注devops,关注如何来做持续集成,持续交付,如何来做CI/CD。Jenkins作为持续集成的工具,他其实只是一个平台或者是一个大的框架,它的工作完全就是依靠插件,也就是说你想使用什么功能,你就找到什么样的插件。(别的地方抄来的一段话...)

1. gitte pages使用

不知道大家在干一些本地开发而没有服务器的情况下,想部署一个静态网页是怎么做的?
很多代码平台都有其对应的page功能,类似部署成一个静态网站,比如github的pages或者之前的preview功能,不过github最近貌似很容易连接不上,这时候我把目光放在了gitte pages功能。

因为只是简单演示,所以我选了一个很早之前的项目 静态页面demo
这个大家基本都会,我说一下注意点:

我选择了某个分支(dev)用来部署静态页面,指向这个目录下的index.html,路径要对,不然可能导致访问项目是空的之类
比如要是打包项目的部署也可以用gitee pages

仔细看上图就可以看见在引入打包后的js和css是/...这就导致引用路径不对,相对路径同级是./... 所以可以在打包配置那里修改一下
当然了 这要根据你实际项目去修改,你也可以打包成功手动修改上传 然后重新部署。

2.jenkins安装

Linux安装jenkins:
  1. 下载jdk java-1.8.0
    yum install java-1.8.0-openjdk.x86_64
  1. 下载yum install jenkins
    Ps : 这里的jenkins版本过低 所以安装的话推荐另外的方法:
    安装参考链接

wget https://pkg.jenkins.io/redhat-stable/jenkins-2.176.3-1.1.noarch.rpm

  1. 安装jenkins
    rpm -ih jenkins-2.176.3-1.1.noarch.rpm
到这安装完成,我用的都是默认配置 改端口之类的我就不说了

PS:补充一下,我这里安装版本过低 所以导致很多插件下载安装失败,

yum upgrade jenkins或者yum update jenkins升级一下

  1. 运行jenkins
    systemctl start jenkins.service
    然后打开地址访问jenkins,根据提示下一步就行,输入密码那步查看对应目录下文件内容,按默认插件安装也行,自己进去再安装也是可以。

清华大学镜像地址:https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

只需要在访问jenkins的网站后面加上exi(退出)/restart(重启)/reload(重新加载)

3. 简单CI/CD

需求:创建个钩子去监听deploy分支的push行为,然后自动打包并部署。

开始jenkins配置,下载好了gitee插件

添加凭据
生成wenbhock,等等配置gitee的webhock有用
这时候可以可以点击gitee的webhock测试
发现触发构建说明两者联系成功。
这里我从网上搜了一份自动登录gitee的脚本和自动点击更新gitee pages的脚本,参考一下改成自己对应的

自动化部署gitee pages脚本
我在服务器上新建了个文件 发这个脚本代码

添加构建脚本,执行node test.js

现在可以push一下代码 看看html页面是否有改变。

当然咯 以上说的是gitee pages的自动更新部署的思路,pages适合静态网页,比如放一些html的页面的项目。如果是项目部署其实只是把构建脚本改成你对应的,比如我另一个部署在服务器的项目,执行自动打包并部署,接下来有时间说一下服务器项目部署项目和自动打包部署。

小结

持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。

其实我想说 亲自动手试试!亲自动手试试!亲自动手试试!
自己去试试 多试几次就会了

posted @ 2021-04-12 16:22  进军的王小二  阅读(87)  评论(0编辑  收藏  举报