1. Jenkins
1.1. centos 安装
1.1.1. yum 方式安装
sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo
sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
sudo yum install jenkins
Start/Stop
sudo service jenkins start/stop/restart sudo chkconfig jenkins on
1.1.2. docker 方式安装
docker pull jenkins:latest
docker run -d --name jenkins -p 8080:8080 -v /srv/docker/jenkins -t jenkins:latest
1.2. mac 安装
1.2.1. 方法一:
mac最新版下载 http://mirrors.jenkins-ci.org/osx-stable/latest
1.2.2. 方法二:
$ brew install jenkins
1.3. Mac 环境自启动
# 停止 Jenkins
$ sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
# 开启 Jenkins
$ sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist
1.4. 启动
$ nohup jenkins > ~/.jenkins/run.log 2>&1 &
登录 http://localhost:8080/ 访问jenkins
.
1.5. 账户
1.5.1. 开启用户注册
系统管理 > Configure Global Security(全局安全配置) > 启用安全 > jenkins 专有用户数据库 > 允许用户注册。 任何用户可以做任何事(没有任何限制)
保存
1.5.2. 注册用户
系统管理 > 管理用户 > 新建用户
1.5.3. 设置权限
系统管理 > Configure Global Security(全局安全配置) > 项目矩阵授权策略
1.6. 环境变量
系统管理->节点管理,选择节点,配置从节点
Node Properties
- PATH
- $PATH:/usr/local/bin
1.7. 插件
系统管理 > 插件管理 > 高级 > 右下角:立即获取
Gitlab Hook Plugin
GitLab Plugin
- Xcode插件
Xcode integration
- 签名证书管理插件
Credentials Plugin
- 签名证书管理插件
Keychains and Provisioning Profiles Management
- 脚本插件
Post-Build Script Plug-in
- 邮件插件
Email Extersion Plugin
CocoaPods Jenkins Integration
- fir.im插件
- JDK 插件 JDK Parameter
- Build Name Setter Plugin 修改构建名字
- Description Setter Plugin 修改构建说明
Xcode插件
,签名证书管理插件
可以不用装,Jenkins会默认使用本机的。Xcode插件
,CocoaPods
,fir.im插件
的功能都可以直接用shell 脚本
实现
1.8. 添加 git ssh 证书
Jenkins > Credentials > System > Global credentials (unrestricted) > Add Credentials
然后输入以下信息
Kind: SSH Username with private key
Scope: Global
Username: gitlab 的用户名
Private Key > Enter directly : 输入私钥
ID: 唯一 ID
Description:介绍
1.9. 新建job
构建一个自由风格的软件项目。
1.9.1. 源码管理
源码管理 > Git
Repositories > Repository URL
输入ssh方式的git地址Credentials
选择之前添加的git ssh 证书
Additional Behaviours
AddClean before checkout
1.9.2. 构建
添加构建步骤 > Xcode
1.9.3. 注意
工程的scheme
必须设置成Shared
才能在Jenkins
上编译
1.10. Poll SCM
定时检查源码变更(根据SCM软件的版本号),如果有更新就checkout最新code下来,然后执行构建动作。
https://stackoverflow.com/a/9921495/6283925
1.11. 关闭
jobs
查看后台任务号,kill NUM
结束任务