基础环境准备
安装更新 Docker
$ curl -sSL https://get.docker.com/ubuntu/ | sudo sh# Docker version 1.7.0, build 0baf609
安装 Jenkins
$ sudo docker pull jenkins
statr script
init
安装 MySQL
https://registry.hub.docker.com/_/mysql/
$ sudo docker pull mysql
statr script
sudo docker run --name=gitlab711 -d -h git.lantop.com \ --env='GITLAB_PORT=80' --env='GITLAB_SSH_PORT=10022' \ --publish=10022:22 --publish=80:80 \ --link=redis-gitlab:redisio \ --volume=/opt/gitlab/data:/home/git/data \ --env='DB_TYPE=mysql' --env='DB_HOST=192.168.1.1' --env='DB_NAME=gitlabhq_production' \ --env='DB_USER=gitlab' --env='DB_PASS=password' \ --env='GITLAB_HOST=git.lanvige.com' \ --env='GITLAB_EMAIL=git@example.com' \ --env='SMTP_USER=git@example.com' --env='SMTP_PASS=password' \ sameersbn/gitlab:latest
配置 Jenkins
https://registry.hub.docker.com/_/jenkins/
安装插件
在系统管理->管理插件中可安装必要的插件。
我们需要安装git插件Git Client Plugin、Git Server Plugin, Xcode插件Xcode integration。
```
下载 jenkins docker image
$ sudo docker pull jenkins
启动
$ sudo docker run –name jenkins1 -d -p 8080:8080 -p 50000:50000 -v /var/jenkins_data jenkins
$ sudo mkdir /var/jenkins_home $ sudo docker run –name myjenkins1 -d -p 8080:8080 -p 50000:50000 -v /var/jenkins_home jenkins
## 配置 Jenkins iOS Build Agent如果 Plugin Available 为空,请更新:Manage Jenkins > Updates > Check nowXcode IntegrationGIT plugin
$
查看进程
查看 gitlab711 Container 是否启动成功
$ sudo docker ps
查看 Container 运行日志
$ sudo docker logs gitlab711
测试
$ ssh -p 10022 -vvv git@git.lanvige.com “`
分支环境对应
Develop 分支,dev 环境 Release 分支,test 环境 Master 分支, production 环境
如何打版本号分发。
检测 Build number。如果更新,就分发到 MIS。
哦。我想写一个自动的。有 build number 更新时,进行分发,不然不分发。只跑 build & test。
buildNumber=$(git rev-list HEAD | wc -l | tr -d ‘ ’) /usr/libexec/PlistBuddy -c “Set :CFBundleVersion ${buildNumber}” “${TARGET_BUILD_DIR}/${INFOPLIST_PATH}”
Jenkins 配置 Slave
https://wiki.jenkins-ci.org/display/JENKINS/Step+by+step+guide+to+set+up+master+and+slave+machines
REF::
http://nickcheng.com/post/unique-icons-for-your-app-in-different-state-in-xcode5-debug-release
http://www.infoq.com/cn/articles/build-ios-continuous-integration-platform-part1
http://www.infoq.com/cn/articles/build-ios-continuous-integration-platform-part3
Xcode Server
Solution
原文链接:http://outofmemory.cn/objective-c/ios-jenkins-Continuous-Integration