持续集成

为GitLab项目配置CI/CD持续集成

匿名 (未验证) 提交于 2019-12-02 23:34:01
为GitLab项目配置CI/CD持续集成 前提 1.已经安装好了Gitlab服务 2.准备一台linux服务器(示例以CentOS7) 3.这里以安装配置Gitlab-Runner,并且为Gitlab上某一项目配置Runner为例 4.安装的Runner以基于Linux为例,对应的Executor以docker为例 相关说明:Gitlab的CI/CD需要在项目下增加一个.gitlab-ci.yml文件,而该文件中定义的任务(job)是由Gitlab-Runner来调度的, 而真正执行任务是注册Gitlab-Runner时指定的Executor。可以根据项目实际情况,注册多个Gitlab-Runner对应多个Executor,每一个Executor都是独立环境。 准备工作 由于安装过程中,会使用到sudo命令,因此确保sudo命令可以执行。 编辑/etc/sudoers文件,找到 Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin 修改为: Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin 开始安装GitLab-Runner (Linux,root用户模式下) 下载gitlab-runner 二进制安装文件 # Linux x86-64 sudo

CentOS配置持续集成(.net core/jenkins/rancher/docker)

匿名 (未验证) 提交于 2019-12-02 22:06:11
1、配置代理 1、 开发机开启 Shadowsocks,允许其他设备连入 2、 临时开代理命令 (根据实际修改IP和端口) export http_proxy="http:// 10.5.21.127 : 1080 " export http s _proxy="http://10.5.21.127:1080" export ftp_proxy="http://10.5.21.127:1080" 3、 测试:curl google.com 2、安装Docker 1、卸载旧版 $ sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine 2、安装依赖包 yum install -y yum-utils \ device-mapper-persistent-data \ lvm2 3、安装repository yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos

devops持续集成,Centos7.6下gitlab+jenkins(pipeline)实现代码自动上线

匿名 (未验证) 提交于 2019-12-02 21:56:30
持续集成 gitlab+jenkins(pipeline)实现代码自动上线 环境准备: Centos7.6版本 ip:192.168.0.13 主机名:git ip:192.168.0.23 主机名:jenkins ip:192.168.0.15 主机名:web01 关闭防火墙 关闭selinux 分发公钥使两两主机间可以免密码连通 192.168.0.13主机上 1.安装gitlab   #安装gitlab要先安装如下依赖包   [root@git git_data]# yum install -y curl policycoreutils-python openssh-server   #再安装gitlab软件包   [root@git git_data]# rpm -ivh gitlab-ce-10.2.0-ce.0.el7.x86_64.rpm 2.修改gitlab的配置文件   [root@git git_data]# vim /etc/gitlab/gitlab.rb   ...   external_url 'http://192.168.0.13'        #在13行位置,修改url地址为本机的ip地址 3.重新配置gitlab   [root@git ~]# gitlab-ctl reconfigure 4.查看gitlab的状态   [root@git

高德引擎构建及持续集成技术演进之路

匿名 (未验证) 提交于 2019-12-02 20:32:16
01 背景 由于导航应用中的地图渲染、导航等核心功能对性能要求很高,所以高德地图客户端中大量功能采用 C++ 实现。随着业务的飞速发展,仅地图引擎库就有40多个模块,工程配置极其复杂,原有的构建及持续集成技术已无法满足日益增长的需求变化。 除了以百万计的代码行数带来的复杂度外,高德地图客户端中的 C++ 引擎库工程(以下简称引擎库)的构建和持续集成还面临以下几个挑战: 支持多团队协作:多团队意味着多操作系统多 IDE ,降低不同操作系统和不同 IDE 下的工程配置的难度是重点要解决的难题之一; 支持多业务线定制:引擎库为手机、车机、开放平台等业务线提供支持,而各个业务线的诉求不同,所以需要具备按功能构建的能力; 支持车机环境:在诸多业务线中,高德地图有一个非常特殊的业务线,即车机(AMAP AUTO)。车机直接面对各大车厂和众多设备商,环境多为定制化,构建工具链各式各样。如果针对每个车机环境都定制一套构建配置文件,那么其维护成本将非常高,所以如何用一套构建配置满足车机的多样化构建需求成为亟需解决的问题; 此外,由于历史原因,引擎库中源码和依赖库混杂,都存放于 Git 仓库中,这样会带来两个问题: 随着构建次数不断增加,Git 仓库越来越大,代码与依赖库检出越来越慢,极大影响本地开发以及打包效率; 缺乏统一管理,依赖关系混乱,经常出现因为依赖问题而导致的构建失败

Jenkins持续集成环境搭建

僤鯓⒐⒋嵵緔 提交于 2019-12-02 16:39:34
1部署Jenkins Jenkins部署很简单,只需建立一个新应用,将Jenkins的war包部署进去,再分配好权限就可以了。 1.1创建应用 建立一个新Nginx应用:jenkins.com 1.2部署war包 上传jenkins.war到/jenkins.com,解压并赋权限: jar –xvf jenkins.war chown -Radmin:admin jenkins.com/ 1.3重启服务 启动Tomcat服务:tomcat restart 重启Nginx服务:nginx-s reload 2配置Jenkins 2.1全局配置 在全局配置中需要制定JDK和Maven的HOME目录: 如果没有安装Maven,可以将Maven上传到apache-maven-2.2.1,并修改文件夹权限: chown -R admin:admin apache-maven-2.2.1/ 2.2项目配置 在Jenkins首页新建一个Job,类型为Maven构建。之后配置项目的SVN地址和Root pom.xml路径: 输入SVN地址后,可能会提示还没有配置SVN的验证方式: 点击红色部分的enter credential配置SVN的验证方式。选择用户名/密码验证方式,输入用户名和密码。 2.3开始构建 回到Jenkins首页,在项目右侧点击立即开始构建,测试一下是否有何错误

17.持续集成与容器管理

a 夏天 提交于 2019-12-02 14:34:02
Docker version 19.03.2 CentOS7.6.1810 IntelliJ IDEA 2019.2 学习目标: 掌握 DockerMaven 插件的使用 掌握持续集成工具 Jenkins 的安装与使用 掌握容器管理工具 Rancher 的安装与使用 1 DockerMaven插件 对于数量众多的微服务,企业实际开发中使用的方法就是 采用 DockerMaven 插件自动部署。 实现maven插件自动部署,需要先修改Docker的配置文件,在pom.xml里引入插件,最后通过cmd命令行将镜像上传。 Maven 插件自动部署步骤: ( 1 ) 修改宿主机的 docker 配置,让其可以远程访问 备份Docker配置文件 cp /lib/systemd/system/docker.service /lib/systemd/system/docker.service.bak 编辑Docker配置文件 vi /lib/systemd/system/docker.service 修改daemon.json vi /etc/docker/daemon.json 添加键值对 "hosts": ["0.0.0.0:2375","unix:///var/run/docker.sock"] ( 2 )刷新配置,重启服务 systemctl daemon‐reload

GitHub Actions 持续集成 - 0. 入门

亡梦爱人 提交于 2019-12-02 10:36:22
GitHub Actions 持续集成 - 0. 入门教程 本文地址:https://blog.lucien.ink/archives/468/ 0. 前言 之前挖了一个 坑 ,今天开始抽空来补上。 以前也写过一篇关于持续集成的文: GitHub 快速接入 Travis ,随后拿到了 GitHub Actions 的内测资格,鉴于使用 GitHub 自家的 CI 整合度会更高,而且 GitHub Actions 本身也足够好用,遂决定将所有项目逐渐从 travis 和 drone 迁移至 GitHub Actions。 经过几天的尝试,PasteMe 从提交 commits, pull request 时的自动测试,到自动 release,配合 webhook 实现自动 deploy,真正意义上实现了持续集成与持续交付,我将这一实战过程复现并记录下来,以备不时之需。 本文章旨在介绍 GitHub Actions 的基础操作,随后通过一个项目来演示 GitHub Actions 的实际效果。 本篇文章参考了阮一峰老师的 GitHub Actions 入门教程 ,感谢阮一峰老师 Orz。 1. 什么是 GitHub Actions 持续集成由很多操作组成,比如抓取代码、运行测试、登录远程服务器,发布到第三方服务等等。GitHub 把这些操作就称为 actions。 GitHub

jmeter脚本开发:持续集成(六)

筅森魡賤 提交于 2019-12-02 07:03:31
一. jenkins + ant + jmeter jenkins:持续集成的领导者 ant:代码的编译、测试、部署 jmeter:性能工具、脚本 二. ant安装配置 1. 下载,解压 2. 配置环境变量:ANT_HOME PATH=%ANT_HOME%\bin 3. 修改jmeter.properties jmeter.save.saveservice.output_format-xml 4. 拷贝:jmeter的extras中的ant-jmeter.**.jar放到ant的lib文件夹中(用于邮件)   验证:在jmeter的extras文件夹中cmd,输入ant.bat-file build.xml -Dtest=Test 5. 修改build.xml   进入jmeter的extras文件夹,找到build.xml文件 来源: https://www.cnblogs.com/my_captain/p/11735772.html

持续集成JenkinsAPI常见用法

做~自己de王妃 提交于 2019-12-02 04:17:33
【背景】:部门在搞持续集成,使用jenkins作为核心调度,要再其基础上进行二次封装,所以需要研究下jenkins的api。 笔者主要负责搭建平台,在研究用法也花费了些时间,本文主要做个简要的记录,希望能为各位朋友节省时间。 【环境】:( 默认读者已经具备了基本的持续集成经验和jenkins用法 ) 1. Jenkins1.455 2. 系统Suse 3. Tomcat 6.0.37 4. Java 1.6.0_26 5. patch-parameter 【API介绍】 Jenkins提供了html、json、python API,实质都是以http get/post方式调用的。查看 http:// www.xxx.xxx /jenkins/api/ 即可得到相应的说明,如图: 【API实践】 1.创建 curl -X POST http://www.xxx.xxx/jenkins/createItem?name=JavaStd --user peterguo:peterguo --data-binary "@javastd.config.xml" -H "Content-Type: text/xml" 2.禁用 curl -X POST http://www.xxx.xxx/jenkins/job/JavaStd/disable --user peterguo:peterguo

CI Weekly #3 | 关于微服务、Docker 实践与 DevOps 指南

|▌冷眼眸甩不掉的悲伤 提交于 2019-12-01 21:51:47
CI Weekly 围绕『 软件工程效率提升』 进行一系列技术内容分享,包括国内外持续集成、持续交付,持续部署、自动化测试、 DevOps 等实践教程、工具与资源,以及一些工程师文化相关的程序员 Tips 。同步于 flow.ci Blog、微信公众号、 官方微博 , 知乎专栏 , 简书 ,欢迎关注或投稿:) 逝者如斯夫,不舍昼夜。一晃几个月的时光已逝,我们在秋冬交界忙碌中做了许多事情: flow.ci 开启公测; 呼声较高的中文版正式上线; 全面支持 iOS 项目的持续集成(需内测邀请). 相关的更新日志见 这里 。也许,还有些许 Bug 等你发觉,欢迎来 flow.ci官方Gitter群 提出反馈 :) 下面,一起看看本期的 CI Weekly ~ 『 微服务、Docker相关实践 』 构建微服务体系结构的最佳实践 作者在使用 Enchant 搭建微服务架构时,总结出一套适用于现代化Web和云技术的实战经验,英文原文 链接 。(via: Vinay Sahni ) 用 Docker 快速配置前端开发环境 作者用清晰的语言再现了用 Docker 快速配置前端开发环境的过程,看完也许你也可以从零开始几分钟搭建完毕。 (via : 梁杰_numbbbbb ) 恒生金融交易系统的Docker化实践 本次分享介绍了恒生电子运用Docker技术,加上自研配套工具,实现金融交易系统配置、部署