How to use Jenkins
一、关键点
1、how to start the build server? do i need to start some app to do this?
I don't believe so... The Jenkins service should start automatically.When I restart the build server in our office, I don't have to do anything to start the Jenkins service.
2、Jenkins configuration
You should be able to access the Jenkins config page by going to http://{build server IP}:8080. build server IP:可以从System Preference->Network参考当前build server的IP就好。
3、 if i want to stop the service, do you know how to do?
http:://{build server IP}:8080/manage and scroll to the bottom, you should see "Prepare for Shutdown"
4. Jenkins global scripts
The global scripts should be in /var/jenkins, and the platform-specific scripts are in /var/jenkins/ios and /var/jenkins/android. It looks like jenkins-develop and jenkins-local are the only "real" folders./var/jenkins is a symlink to jenkins-local.
5. do you know why jenkins know xcode-builder service?/var/jenkins/ios, just need like the folder structure?
I think because Jenkins uses xcodebuild under the hood to make builds for iOS (as well as for running unit tests if enabled)
6. change provisioning profiles
if you ever need to change provisioning profiles, you need to make sure to sign into the build server, open Xcode, and refresh the profiles
二、Jenkins build iOS app遇到问题解决方案
三、关于安装插件
所有插件链接: http://updates.jenkins-ci.org/download/plugins/
1. solve jenkins Code Sign error: No codesigning identities found: No codesigning identities (i.e. certificate and private key pairs) that match the provisioning profile specified in your build settings were found.
http://code-dojo.blogspot.co.uk/2012/09/fix-ios-code-signing-issue-when-using.html
就是创建这样的目录结构/Users/Shared/Jenkins/Library/MobileDevice/Provisioning Profile,然后将需要用到的provisioning profile文件放到Provisioning Profile目录下。
另外,你可以查看一下keychain中,一般证书会被安装到login那个item中,需要将其copy一份到system中。
1. solve jenkins ResourceRules.plist: cannot read resources
Found the fix !
Click on your project > Targets > Select your target > Build Settings >
Code Signing Resource Rules Path
and add :
$(SDKROOT)/ResourceRules.plist
MAC OX10.10后的版本已经不能这样修改了,因为已经被封掉了。这个问题真真是让我的脑神经震惊了一下下。另外,如果你想用jenkins打包生成的ipa包,直接上架到APP STORE,工程配置中Code Signing Resource Rules Path则不能有这个字段。所以,解决方法,可以参照此链接 : http://stackoverflow.com/questions/32504355/error-itms-90339-this-bundle-is-invalid-the-info-plist-contains-an-invalid-ke/32762413#32762413 其实做法如下:
I am the same boat as DongHui Li. I am using Jenkins too. If I remove CODE_SIGN_RESOURCE_RULES_PATH=$(SDKROOT)/ResourceRules.plist
I am NOT able to build. And if I add it, I can build but NOT able to submit to Apple.
UPDATE -> I am able to build and upload to apple using Jenkins now.
What I did is:
- Remove
CODE_SIGN_RESOURCE_RULES_PATH=$(SDKROOT)/ResourceRules.plist
Find the
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/PackageApplication
script and update it.
Find the lines including the following code in the scriptmy @codesign_args = ("/usr/bin/codesign", "--force", "--preserve-metadata=identifier,entitlements,resource-rules",
"--sign", $opt{sign},
"--resource-rules=$destApp/ResourceRules.plist");change it to:
my @codesign_args = ("/usr/bin/codesign", "--force", "--preserve-metadata=identifier,entitlements",
"--sign", $opt{sign});
1. solve 应用图标
Click on your project > Targets > Select your target > Info
加Icon file(或者CFBundleFileIcon), string, 例如我把其value写成Icon,则需要把Icon.png这个文件copy到这个bundle中
1. xcode-select
xcode-select --help可以查看一下它的常见用法。对于, switch这个功能有时候无法这种有效。可以尝试vi ~/.bash_profile这个文件,其中有设置xcode的环境变量。具体可以参照此link: https://forums.developer.apple.com/thread/13629
同样,可以通过xcode来设置command line使用的xcode. Xcode->Preference->Locations->Command Line Tools
1. Mac os install jenkins
http://zanshin.net/2012/02/27/setup-jenkins-for-ios-builds/
How to use Jenkins的更多相关文章
- Jenkins 安装的HTML Publisher Plugin 插件无法展示ant生成的JunitReport报告
最近在做基于jenkins ant junit 的测试持续集成,单独ant junit生成的junitreport报告打开正常,使用Jenkins的HTML Publisher Plugin 插件无 ...
- Python-Jenkins API使用 —— 在后端代码中操控Jenkins
最近在工作中需要用到在后台代码中触发Jenkins任务的构建,于是想到Jenkins是否有一些已经封装好的API类库提供,用于处理跟Jenkins相关的操作.下面就简单介绍下我的发现. Linux C ...
- 在centos7上安装Jenkins
在centos7上安装Jenkins 安装 添加yum repos,然后安装 sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins ...
- 项目持续集成环境(jenkins + SVN + maven + tomcat)
整体流程 每次SVN上代码有变动,触发自动构建动作,并部署到服务器的tomcat上,具体流程: 1.SVN上提交代码修改 2.maven执行Goals 3.将web工程打成war包 4.关闭服务器的t ...
- Jenkins的一个bug-同时build一个项目两次导致失败
我们有一个job A, A只是配置了一些参数,它会去触发模板job B. 我一开始点击构建A, 马上发现参数配置不对,于是撤消了构建,但是我没有发现B已经被触发,我重新配置参数,然后再次构建A,这个时 ...
- 使用Jenkins配置Git+Maven的自动化构建
Jenkins是一个开源的持续集成工具,应用Jenkins搭建持续集成环境,可以进行自动构建.自动编译和部署,非常方便. 在服务器比较少的情况下,Jenkins的优势并不明显,但是随着项目发展,服务器 ...
- Jenkins配置MSBuild实现自动部署(MSBuild+SVN/Subversion+FTP+BAT)
所要用到的主要插件: [MSBuild Plugin] 具体操作: 1.配置MSBuild的版本 [系统管理]->[Global Tool Configuration]->[MSBuild ...
- 在Redhat上为.Net 项目构建基于Jenkins + Github + Mono 的持续集成环境
在Redhat enterprise 6.5 的服务器上,为在gutub 上的 .net 项目构建一个持续集成环境,用到了Jenkins和mono.因公司的服务器在内网,访问外网时要通过代理,所以在很 ...
- 使用Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境(二)
前言 上一篇随笔Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境(一)介绍maven和nexus的环境搭建,以及如何使用maven和nexus统一管理库 ...
- 使用Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境(一)
前言 但凡一个略有规模的项目都需要一个持续集成环境的支撑,为什么需要持续集成环境,我们来看一个例子.假如一个项目,由A.B两位程序员来协作开发,A负责前端模块,B负责后端模块,前端依赖后端.A ...
随机推荐
- 1、aritcMS-环境搭建-设置布局-布局测试
在开始项目之前,准备开发工具等请参考easyUI章节. 首先.在获取broPHP框架的时候(可以在网上下载).在brophp文件夹同级目录下新建admin.php,以及index.php admin. ...
- Unity3d 多次显示关闭一个UI
publicclass OpenClooseGoUI : MonoBehaviour { public GameObject closeBt; public GameObject goUI ...
- 浅析Avicii的MV Hey Brother
date: 2017-04-10 20:30:19 其实这篇随感早应在一个月之前就写完的,但是笔者刚从老家来到北京,需要安顿各种事情,再加上自己比较懒上班比较忙,每天晚上回到家,都是直接趴在床上睡了. ...
- 16进制 ,Color,Colour转换
import java.awt.Color; import jxl.format.Colour; public class ColorUtil { public static Colour getNe ...
- hoj 2715 (费用流 拆点)
http://acm.hit.edu.cn/hoj/problem/view?id=2715 将每个格子 i 拆成两个点 i’, i’’并加边(i’, i’’, 1, -Vi), (i’, i’’, ...
- 【BZOJ2320】最多重复子串 调和级数+hash
[BZOJ2320]最多重复子串 Description 一个字符串P的重复数定义为最大的整数R,使得P可以分为R段连续且相同的子串.比方说,“ababab”的重复数为3,“ababa”的重复数为1. ...
- 扩展类 HOW TO EXTEND CLASSES TO MAKE NEW CLASSES IN PYTHON
How to Extend Classes to Make New Classes in Python - dummies https://www.dummies.com/programming/py ...
- [转载]H5项目常见问题汇总及解决方案
本文转载自:http://www.open-open.com/lib/view/open1449325854077.html Meta基础知识: H5页面窗口自动调整到设备宽度,并禁止用户缩放页面 / ...
- springboot集成h2
h2数据库是常用的开源数据库,与HSQLDB类似,十分适合作为嵌入式数据库使用,其他的数据库大部分都需要安装独立的客户端和服务器端 h2的优势: (1)h2采用纯java编写,因此不受平台的限制 (2 ...
- VMware虚拟机不能联网的解决办法
Linux安装的centos系统,不能正常连接网络 1.编辑config文件 [root@localhost ~]# cd /etc/selinux [root@localhost selinux]# ...