随笔分类 -  持续集成CI/CD

两个操作系统中的脚本语言,方法自动化,PowerShell,bash,jenkins等
摘要:jenkins上管理的任务比较多,这时需要有一定的权限管控机制,我们选择了插件`Role-based Authorization Strategy`来做这事,它支持按着项目前缀去控制你的任务,主要思想还是rbac的模式,通过角色绑定权限,通过用户来绑定角色。 # 安装之后 ![](https://i 阅读全文
posted @ 2023-06-07 14:07 张占岭 阅读(361) 评论(0) 推荐(0) 编辑
摘要:这与jenkins关系不大,但在jenkins使用中出现的场景,你的构建服务器是192.168.1.2,而真实运行的服务器是192.168.1.3,当我们权限之后,需要把文件发送到1.3去,并执行1.3上的运行命令,当然你可以使用ssh publisher来实现,也可以通过本文章的linux指定来实 阅读全文
posted @ 2022-06-17 11:03 张占岭 阅读(424) 评论(0) 推荐(0) 编辑
摘要:之前写过关于jenkins-nodes来实现的分布式构建的文章,并在实际工作中得到了运用,确实加快的构建的速度;而如果你的项目分布在不同的服务器上,在jenkins构建完成之后,就需要将代码推到目标服务器上运行了,这就用到了Publish Over SSH插件。 配置 在jenkins配置里-》系统 阅读全文
posted @ 2020-12-24 14:45 张占岭 阅读(300) 评论(0) 推荐(0) 编辑
摘要:通过jenkins实现CICD是很容易的,当你使用jenkins pipeline之后可以使用你的代码复用性更高,它使用groovy作为脚本语言,你可以把公用的方法写到var文件夹里,在其它jenkinsfiles文件里去引用它们即可。 对于jenkins构建的镜像来说,像docker,k8s-he 阅读全文
posted @ 2020-11-18 20:27 张占岭 阅读(1856) 评论(0) 推荐(0) 编辑
摘要:由于jenkins默认存放数据的目录是/var/lib/jenkins,一般这个var目录的磁盘空间很小的,就几十G,所以需要修改jenkins的默认工作空间workspace 环境 查看jenkins安装路径 [root@localhost jenkins_old_data]# rpm -ql j 阅读全文
posted @ 2020-07-16 14:29 张占岭 阅读(3034) 评论(0) 推荐(0) 编辑
摘要:事情的起因 对于maven项目来说,它可以包含很多子模块,比如你在一个maven项目里做了微服务的开发,很多服务都在一个大项目里(当然,我本人不建议这样设计,建议一个服务是一个项目),这时在jenkins构建时,由于要启动注册中心,配置中心和其它所有服务,在每次部署 时都需要消耗很长的时间,做了很多 阅读全文
posted @ 2020-05-27 11:26 张占岭 阅读(3239) 评论(0) 推荐(0) 编辑
摘要:地址:https://docs.gitlab.com/runner/install/linux manually.html Simply download one of the binaries for your system: 下载安装 包 Linux x86 64 sudo curl L out 阅读全文
posted @ 2020-05-01 21:15 张占岭 阅读(1127) 评论(0) 推荐(0) 编辑
摘要:在使用jenkins进行自动化构建项目过程中,我们的快速迭代会使用不同的分支,而测试环境可能 就那么一个,这时我们如何去按着分支去构建一个项目呢?答案就是jenkins的参数化构建。 一 添加git parameters插件 二 配置项目的参数化构建 三 在构建的分支选择上,填写上面的名称,注意要加 阅读全文
posted @ 2020-04-24 13:32 张占岭 阅读(4100) 评论(0) 推荐(0) 编辑
摘要:对于容器编排工具k8s来说,你可以使用它规定的yaml格式的脚本,使用客户端kubectl来与k8s进行通讯,将你定义好的yaml部署脚本应用到k8s集群上,而这对yaml脚本一般来说都是很像的,就是说,你需要反复的使用同样结构的代码,这对于开发人员来说不是一个好的信号,所以helm出现了,它是一种 阅读全文
posted @ 2020-04-18 16:12 张占岭 阅读(2775) 评论(0) 推荐(0) 编辑
摘要:一 全局配置项设置 需要添加全局变量项,例如名称docker,路径/usr/local 添加一个jenkinsfile文件,用于运行docker命令 注意:我们需要把docker的路径添加到env环境变量里才可以使用docker命令,这个我试了很多次。 二 添加jenkins用户到docker组 上 阅读全文
posted @ 2019-09-03 17:54 张占岭 阅读(3499) 评论(0) 推荐(0) 编辑
摘要:在jenkins的pipeline里,就是jenkinsfile文件里,如果希望调用docker来构建镜像,需要进行以下配置! tools{}里添加docker是失败的,这个我找了很多资料,最后需要env环境变量解决了问题. 需要添加全局变量项,例如名称docker,路径/usr/local 添加一 阅读全文
posted @ 2019-09-02 17:06 张占岭 阅读(6522) 评论(0) 推荐(0) 编辑
摘要:jenkins实现持续集成 搭建jenkins环境,安装插件 建立pipeline公用类库,文件夹vars,默认的 添加.groovy文件,可以由以下几个类库组成 dockerImageBuild 负责构建项目镜像 dockerImageDeploy 负责将镜像推到仓库 dockerServiceS 阅读全文
posted @ 2018-07-10 13:49 张占岭 阅读(2850) 评论(0) 推荐(0) 编辑
摘要:项目的持续集成分享 源代码管理 项目仓库 配置仓库 发布仓库 ci/cd相关 gitlab,管理版本,测试流水线 jenkins,对项目进行持续集成 各模块的关系 jenkins pipe集成项目的过程 一般我们都是按着上面部署进行项目构建的,像这个JOB执行过程一般由运维人员负责,所以我们会将pi 阅读全文
posted @ 2018-07-09 13:57 张占岭 阅读(1542) 评论(0) 推荐(0) 编辑
摘要:打开你的vs online,选择build and release标签,进行自动化编译的开发。 一 新建,选择对应的源代码管理,我们以VSTS-GIT为例 二 选择你的项目所应对的开发框架,如.net,.net core,go,android等等,我们选择asp.net core 三 选择build 阅读全文
posted @ 2018-05-10 11:32 张占岭 阅读(977) 评论(0) 推荐(0) 编辑
摘要:nuget包也要自动化部署了,想想确实挺好,在实施过程中我们要解决的问题有版本自动控制,nuget自动打包,nuget自动上传到服务端等。 一 参数化构建 二 环境变量的k/v参数,存储类库的初始版本,当根目录version.txt生成后,这个k/v就不需要了 三 这个构建跳转到哪台节点服务器 四 阅读全文
posted @ 2018-01-03 18:36 张占岭 阅读(812) 评论(0) 推荐(0) 编辑
摘要:回到目录 当我们进行软件开发时,一般会写单元测试,而对于业务情景来说,一般是测试它的业务逻辑准确性,对于你的测试数据是否来自数据库还是文件,是否为真实还是模拟,并不是很关心!我关心的就是我的业务逻辑是否正确! 所以我们的单元测试在调用底层接口时,尤其是数据持久层的接口时,一般可以使用mock的方式, 阅读全文
posted @ 2017-12-28 17:26 张占岭 阅读(1139) 评论(0) 推荐(0) 编辑
摘要:回到目录 单元测试大叔认为有几下两个必要的作用,也是为什么要上单元测试的原因 目前添加了组件正确性的测试,在组件进行升级和优化之后,需要走一篇测试流程,以它的正确! 有条件的同学,可以在自己的源代码管理上添加pipeline,在你的新项目修改迁入后,让它自动进行测试,这样也可以保证项目的质量! 这应 阅读全文
posted @ 2017-12-28 10:17 张占岭 阅读(532) 评论(0) 推荐(0) 编辑
摘要:回到目录 之前写了关于自动化测试的相关文章,包括gitlab,unittest,jenkins pipeline等,基于都是功能点的测试,当我们的框架或者业务修改之后,需要走一篇自动化测试,以此来保证我们的修改过的功能是正确的,而今天主要说一下流程测试,从api网站的入口,从一个请求开始到结束这个过 阅读全文
posted @ 2017-12-26 10:12 张占岭 阅读(1352) 评论(2) 推荐(3) 编辑
摘要:在CI/CD流行至极的今天,你的项目没有自动化测试绝对是不可以接受的,在进行自动化部署和持续集成时,我们的dotnet core项目也是可以实现自动化的,之前说过gitlab,jenkins对持续集成的影响,而今天说一下微观点的概念,“单元测试”,这个早已不是什么新东西了,像dotnet平台也有自己 阅读全文
posted @ 2017-12-22 22:40 张占岭 阅读(1275) 评论(0) 推荐(0) 编辑
摘要:Pipeline在Jenkins里的作用 最近一直在使用jenkins进行自动化部署的工作,开始觉得很爽,省去了很多重复的工作,它帮助我自动拉服务器的代码,自动还原包包,自动编译项目,自动发布项目,自动打包镜像,自动上传仓库,自动启动docker服务,这一系列动作都是自动化的,听起来确实很绚,但是, 阅读全文
posted @ 2017-11-23 22:53 张占岭 阅读(6049) 评论(0) 推荐(0) 编辑