搭建平台目的: k8s中搭建jenkins master/slave架构,解决单jenkins执行效率低,资源不足等问题(jenkins master 调度任务到 slave上,并发执行任务,提升任务执行的效率) CI/CD环境特点: Slave弹性伸缩 基于镜像隔离构建环境 流水线发布,易维护 一.环境准备 服务名 地址 版本 k8s-master 10.48.14.100 v1.22.3 k8s-node1 10.48.14.50 v1.22.3 k8s-node2 10.48.14.51…
<构建之法> & Git+ & CI/CD 个人阅读作业#2 项目 内容 本作业所属课程 2020春季软件工程(罗杰 任健) 本作业要求 个人阅读作业#2 我的课程目标 具备一个软件工程师所需要的素质 本作业帮助 整体上软件工程,熟悉版本控制以及CI/CD工具 一.阅读提问 单元测试 (P26)单元测试的运行/通过/失败/不依赖于别的测试,可以人为构造数据,以保持单元测试的独立性. 面对需要处理大量数据的模块,人为构造数据就最造成很大的重复性工作.比如上学期写编译器的时候,为了…
从0开始构建一条完成的CI CD流水线 前文中已经讲述了静态.动态增加agent节点,以动态的k8s cloud为例,下面就以Maven构建Java程序为例,开始构建出一条完整的CI CD流水线. 实现功能目标: 1.分别可以根据分支和tag从源码仓库clone代码 2.拿到源码后开始编译 3.构建image,并push到镜像仓库 4.部署到对应k8s集群 5.部署成功后,钉钉告警 以上是此pipeline实现的功能,后续计划: 1.通过webhooks实现源码仓库push代码后,自动出发pip…
请移步 基于Gogs+Drone搭建的私有CI/CD平台…
项目 内容 这个作业属于哪个课程 2021春季软件工程(罗杰 任健) 这个作业的要求在哪里 作业要求 我在这个课程的目标是 积累软件开发经验,提高工程能力 这个作业在哪个具体方面帮助我实现目标 通读课本,了解基本教学方向:初试CI/CD,为以后的项目做准备 一.阅读提问 对于书中4.4代码复审部分提到的 复审者有权提出很多看似吹毛求疵的问题,复审者不必亲自调查每一件事,开发者有义务给出详尽的回答. 我不反对复审者需要随时向开发者提问关于代码实现方面的问题,毕竟这可以大大节约复审者的时间,方便他更…
1.Docker安装Gitlab,地址:https://www.cnblogs.com/sanduzxcvbnm/p/13814730.html 2.Docker安装Gitlab-runner,地址:https://www.cnblogs.com/sanduzxcvbnm/p/13815594.html 3.使用Gitlab CI/CD功能在本地部署 Spring Boot 项目,地址:https://www.cnblogs.com/sanduzxcvbnm/p/13820198.html…
说明 这里先介绍下两个东西 CI/CD.GitLab Runner,当然在此之前你需要对 git 有所了解,关于 git 这里不做说明,可以自行百度. 首先介绍 CI/CD :随着我们开发方式的转变,程序的发布变得非常频繁,而其这些发布操作都是重复的.CI/CD 就是为了使这些操作能变得自动化,那它是怎么实现自动化的呢?其实它做的就是当我们使用 git push(推送)代码的时候会执行 任务(task) 而这个 任务 里面其实又包含多个 作业(job),如对代码进行单元测试.部署项目等等,这些…
在服务器中可以直接使用命令行登录,推送docker镜像等 但是在使用Gitlab的CI/CD功能中,gitlab-ci.yml文件执行过程中出现如下错误: 原因分析: 服务器上之前使用命令行登陆过Nexus仓库,保存的有相关凭证,因此可以直接操作 但是用Gitlab的CI/CD功能就不行了 解决办法: 在.gitlab-ci.yml文件中添加上登录Nexus仓库的账号密码即可解决 延伸操作: docker仓库的账号密码直接明文写在文件中,不安全,改用变量的方法进行操作 操作 gitlab上项目设…
概述 Github在被微软收购后,不忘初心,且更大力度的造福开发者们,推出了免费私有仓库等大更新.近期又开放了packages和actions两个大招,经笔者试用后感觉这两个功能配合起来简直无敌. GitHub Packages 是一个和每一个代码仓库关联的软件包仓库.通俗来说就是代码仓库中存放的是源码,软件包仓库中存放的是编译输出后的可以被各个语言生态的依赖管理工具直接依赖的lib.类似的我们熟知的有maven中央仓库和nmp仓库. GitHub Actions 是一个Github原生的持续集…
Gogs 是由 Go 语言编写的 Git 服务器,由中国人主导开发的一款开源项目,搭建方便并且拥有完善的中文文档,配合 Drone 可以实现持续集成/持续部署.本文介绍如何通过 Docker 搭建 Gogs+Drone 环境. 环境 MacOS Docker && docker-compose 部署 1. 创建目录(不是必须的,可以放在任何目录里面) mkdir cicd cd cicd mkdir gogs drone # 存放相关数据 2. 编写 docker-compose.yaml…