背景 最近入职了一家新公司,公司各个方面都让我非常的满意,我也怀着紧张与兴奋的心情入职后,在第一天接到了领导给我的第一个任务——把整个项目的依赖引用重新整理并实施项目的CI/CD. 本篇的重点主要分享这次在Windows平台使用Jenkins做.Net Framework的自动化,真是所谓一波N折. 有关注过我的博客的朋友们,应该知道我之前都是在Linux上实施.Net Core,好不容易把Linux技能点起来,现在玩回Windows+.Net Framework感觉有一种回到钻木取火的年代.…
原创文章,转载请务必将下面这段话置于文章开头处. 本文转发自技术世界,原文链接 http://www.jasongj.com/spark/ci_cd/ 本文所述内容基于某顶级互联网公司数万节点下 Spark 的 CI 与 CD & CD 实践.为了提高本文内容的可借鉴性,隐去了公司特有内容,只保留通用部分 Spark CI 持续集成实践 CI 介绍 持续集成是指,及时地将最新开发的且经过测试的代码集成到主干分支中. 持续集成的优点 快速发现错误 每次更新都及时集成到主干分支中,并进行测试,可以快…
本文演示如何通过Jenkins创建CI/CD任务,部署一整套微服务体系结构,并运行在之前搭建的mini云平台上. 如果是初始尝试实践,可能需要参考 快速搭建云原生架构的实践环境 和 Jhipster技术实践 等相关文章. 1 整体规划 1.1 拓扑架构 1.2 基础设置 编号 IP OS 主机名 角色 环境 说明 A 192.168.1.101 CentOS7.4 ddc_node01 Manager Global 运行UCP和Jenkins的节点 B 192.168.1.102 CentOS7…
使用 Jenkins 搭建 CI/CD All In One https://ci.jenkins.io/ https://www.jenkins.io/zh/ jobs pipelines refs Java https://github.com/jenkinsci https://github.com/jenkinsci/jenkins xgqfrms 2012-2020 www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!…
一.前言 Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建.测试和部署软件. Jenkins 支持各种运行方式,可通过系统包.Docker 或者通过一个独立的 Java 程序. 了解更多可参考Jenkins官方文档:https://jenkins.io/zh/doc/ 二.基本环境 windows-x64 apache-tomcat-8.5.41 jdk1.8 maven3.3.9 三.安装 Jenkins 1.官网下载Jenkins:https://jenkins.io…
第1章 大纲 CI/CD, DevOps介绍 Git安装与使用 Jenkins安装与使用 权限管理 参数化构建 Master-Slave 流水线(Pipeline) 邮件通知 应用案例 自动发布PHP项目 自动发布JAVA项目 第2章 环境 操作系统:CentOS7.4 第3章  CI/CD, DevOps介绍 持续集成(Continuous Integration, CI) : 代码合并. 构建. 部署. 测试都在一起, 不断地执行这个过程, 并对结果反馈. 持续部署(Continuous D…
目录 网站 域名 K8S DevOps 集群 私有 Gitlab 使用 Docker 编译站点 * Dockerfile * 构建编译 Image * 测试编译 Image * 推送镜像到 Aliyun K8S 集群设置 * 创建 namespace * 查看集群中的 namespace * Cert-Manager 自动签发 TLS 证书 * ClusterIssuer * Certificate * 查看证书 Helm 部署 Nginx * 添加 bitnami 仓库 * 配置 PVC *…
1 环境说明 主机名称 IP cpu核数/内存/硬盘 安装软件 用途 controlnode 172.16.1.120 2/2/60 git 代码仓库 slavenode1 172.16.1.121 2/2/60 jenkins.jdk jenkins主节点 slavenode2 172.16.1.122 2/2/60 jdk.maven.tomcat jenkins从节点2(用于构建和部署java程序) slavenode3 172.16.1.123 2/2/60 jdk.lnmp环境 jen…
一.摘要 本篇文章笔者将详细介绍Jenkins和Github如何实现CICD的,文章将以Jenkins的使用为主线,伴随着介绍Git的使用,加上一些python代码的执行,最终生成测试报告 二.Jenkins安装 Jenkins官方下载地址为:https://jenkins.io/download/  会有几个列表分别列出几个版本的下载链接,下载windows版即可 下载完后,解压,双击.exe文件安装,一路下一步即可,安装完成后会启动jenkins服务,浏览器会打开http://localho…
一.介绍 jenkins的Master-slave分布式架构主要是为了解决jenkins单点构建任务多.负载较高.性能不足的场景. Master/Slave相当于Server和agent的概念.Master提供web接口让用户来管理job和slave,job可以运行在master本机或者被分配到slave上运行构建.一个master(jenkins服务所在机器)可以关联多个slave用来为不同的job或相同的job的不同配置来服务. 二.安装 前提:slave所在服务器必须有java环境 jen…
整个项目的框架为: gitlab的安装与使用(Centos7) gitlab的安装 新建yum源 vim /etc/yum.repos.d/gitlab-ce.repo [gitlab-ce] name=gitlab-ce baseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7 repo_gpgcheck=0 gpgcheck=0 enabled=1 gpgkey=https://packages.gitlab.com/gpg.…
一.概览 二.安装 在对jenkins进行初始化安装时,默认已经安装了jenkins的相关插件,如下图所示: 三.实操 新建任务: 编写pipeline脚本: 我们可以借助流水线语法去做. test流水线脚本: node { def mvnHome stage('git checkout') { // for display purposes checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmodu…
一. 背景 如果只是简单的构建,jenkins自己默认的插件可以做,但是如果我们想要在构建过程中有更多功能,比如说:选择性构建.传参.项目指定变量等等其他功能,基础的参数化构建可以实现一些简单功能,但是要想使用更多功能这时候我们就需要借助参数化构建来实现交互的功能.此处我们来借助以下插件来进行实现: 1)Extended Choice Parameter(更丰富的参数化构建插件) 2)Git Parameter 二.Extended Choice Parameter 首先还是安装该插件,去管理插…
pipeline是基于groove进行实现的,不过从jenkins官方的说明中,pipeline分为脚本式和声明式,参见链接.经过对两种的比较,个人比较偏向脚本式的方法.也就是 Jenkinsfile (Scripted Pipeline) node { stage('Build') { // } stage('Test') { // } stage('Deploy') { // } } 因为声明式的方法用起来不方便,还有就是语句执行的结果不知道怎么赋值到变量中去. 如下简单介绍下现有的jenk…
如何搭建持续集成/持续交付平台?? 如何使用jenkins搭建持续交付流水线,以及和其他工具(如artifactory)集成?如何使用元数据,记录软件发布过程的构建信息,测试结果,并用rest Api完全自动化发布软件? 一.Jenkins 1.Jenkins 是 Continous Integration Server,是 Hadson 的继续. 类似的产品: CruiseControl, BuildBot,TeamCity,BuildForge 等. Jenkins 的突出特点: 开源免费;…
一.前提 插件:Maven Integration plugin 环境: maven.tomcat 用的博客系统代码: git clone https://github.com/b3log/solo.git 远端git服务器: [git@git repos]$ mkdir -p solo [git@git repos]$ cd solo/ [git@git solo]$ git --bare init Initialized empty Git repository in /home/git/r…
一.前提 环境为:lnmp PHP项目:wordpress(此处我们下载一个wordpress的源码.将其模拟为我们的代码上传到我们的git仓库) 二.配置 1)创建job 2)参数化构建 3)配置pipeline脚本(此处采用git仓库获取脚本) 4)最后,保存 三.编写jenkinsfile 接下里编写jenkinsfile文件: jenkinsfile-PHP: 源码文件: node ("slave01-172.16.1.2") { stage('git checkout') {…
一. 背景 针对开发.运维.测试针对不同角色进行不同权限划分, 基于插件: Role-based Authorization Strategy来实现. 一. 安装 安装该插件: 系统管理->管理插件-可选插件->搜索该插件选中直接安装即可. 二. 开启该插件功能 系统管理->全局安全设置-授权策略->选中该插件功能即可->保存 三. 实践 我们可以先将该功能关闭来进行实践测试. 1.策略改回原来的(全局安全配置) 2.开启允许用户注册(全局安全配置) 3.注册一个新用户 登录…
所需Jenkins插件: Maven Integration pluginPublish Over SSHSSH plugin 1.配置全局工具 配置JDK: 配置Git: 配置maven: 2.创建一个maven项目 配置git路径: 配置构建命令: 配置构建成功后部署脚本: DATE=$(date +%Y%m%d) export JAVA_HOME PATH CLASSPATH JAVA_HOME=/usr/local/java/jdk1..0_161 PATH=$JAVA_HOME/bin…
gitlab+jenkins+docker 计算机网络大全…
一. 前提 前提: 服务器开启邮箱服务: 二. 基础配置 需要安装一个插件: 插件: Email Extension Plugin 进行配置: 系统管理->系统设置-> 相关配置如下图: 图1: 图2: 可以在此处进行测试发送!!!!检验配置是否正确 三. 配置到项目中 步骤1: 在项目的配置中选择构建后操作 步骤中选择我们对应的插件: 填写发件人信息 此处配置构建成功发送邮件: 可以观察到控制台也有邮件发送成功输出: 检查实际是否接收到邮件:…
前言 什么是持续集成呢?Continuous integration(CI).持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也就意味着每天可能会发生多次集成.每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误.许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件. 如果没有持续集成会有哪一些问题呢?模块项目接口部署不及时,接口不通.每次需要手动打包最新的代码进行部署.发布代码.线上部署都是纯手工.…
一.windows上安装Jenkins 1.官网下载Jenkins安装包Jenkins.msi ,进入安装模式,选择默认配置,安装完成之后,就会默认打开浏览器 http://localhost:8080,显示 Jenkins正在启动,请稍后... 2.在安装过程中会自动生成密码,存储在Jenkins安装位置下的一个文件里,输入密码后才能继续 3.输入管理员密码后,点击继续,等待系统初始化,出现自定义Jenkins界面,可以选择安装推荐的插件, 或者选择需要的插件来安装,也可以不选择安装,直接点击…
Jenkins CI&CD 自动化发布项目实战(上篇) 作者 刘畅 时间 2020-11-28 实验环境 centos7.5 主机名 ip 服务配置 软件 gitlab 172.16.1.71 2核/4G/60G docker.gitlab jenkins-master 172.16.1.72 2核/4G/60G docker.jdk.maven.jenkins jenkins-slave01 172.16.1.73 2核/2G/60G jdk.maven.ansible java-web01…
在windows下使用jenkins部署docker容器最近在学习jenkins,docker部署来实现集成部署,所以想在windows下面实现测试,但是发现在windows下docker支持不是很好,docker一般在linux下面支持很好,但是经过很多问题的解决,最终还是在windows上部署成功,并且达到了自己想要的效果. 想要达到的持续集成的组成构建 关键点 1.github与本地jenkins怎么建立钩子关系:可以使用使用内网穿透工具NATAPP:可以自己注册免费的穿透地址,并且在本地…
在windows上安装Jenkins有两种方式: (1)jar流 在命令行中运行:java -jar jenkins.war 浏览器访问 localhost:8080,创建初始管理员帐号即可. (2)tomcat流 本文主要介绍第二种方式tomcat流 1.下载所需的包 安装jdk, 最好1.8 安装tomcat服务器, 推荐tomcat 9 下载jenkins最新版本,直接点击下载 2.配置 将下载好的jenkins.war包放到tomcat的webapps目录下 3.修改Tomcat的HTT…
前言 Gitea 是一个用于代码托管的轻量级单体程序,它能与现有的经典应用集成,诸如代码分析工具 SonarQube.持续集成工具 Drone.Jenkins 以及用于工单管理的客户端插件(VSCode.Jenkins IDE). 不久之后,Gitea 也将迎来自身集成的一体化 CI/CD 功能. 今天要介绍的是 Gitea 与 Jenkins CI/CD 的集成. 关于 Jenkins Jenkins 是一款开源的.提供友好操作界面的持续集成(CI)工具,在国内外都有众多的使用者.Jenkin…
实际开发中我们需要对一些公共类库进行开发,并基于Jenkins进行CI/CD(CI:持续集成,CD:持续部署),其他项目通过NuGet引用.上文讲述了如何搭建本地NuGet服务器并发布NuGet包,这里不再赘述. CI/CD流程如下图: 首先公共类库代码通过Git管理,编辑完代码后上传到Git服务器. 配置Jenkins Job,按设定的触发条件进行构建任务. 构建开始,删除Workspace中旧文件,从Git服务器下载最新代码,执行编译,生成NuGet包,上传到NuGet服务器. 这样,别人就…
背景知识 通过以往几节课程的学习,相信大家对于 SAE 平台已经有了一定的了解.SAE 为客户免除了很多复杂的运维工作,开箱即用.按用量付费:与此同时 SAE 提供了丰富的 Open API,可以很容易地与其他平台做集成:类似云效以及 Jenkins 的 CI/CD 工具是敏捷软件研发实践中的重要一环,可以自动化地将客户的代码编译.测试.打包并部署至各个环境,从而提升团队的研发效率. 本篇文章分为两个部分,首先介绍使用云效平台实现从源码到 SAE 环境的持续集成,然后介绍使用 Jenkins 的…
Eolink 前端负责人黎芷君进行了<工程化- CI / CD>的主题演讲,围绕 CI/CD 管道安全的实践,分享自己在搭建 CI/CD 管道过程中所总结的重要经验,与开发者深入讨论 "前后端" 那些事儿. 随着互联网越来越受重视,前端开发不再是简单的实现一个界面,使用 Javascript 让页面有一定的交互特效. 在同一个时期的迭代里,我们可能需要同时开发浏览器应用.桌面端,甚至是 App.小程序等等.导致了我们迫切的需要考虑一种新的方式,优化我们前端的开发工作.而 C…