Jenkins自动化打包(Gitlab)并上传蒲公英
整个过程详见:https://www.jianshu.com/p/91e8f571fc2b
以下是遇到的问题及解决过程
一、安装homebrew(网速很慢很慢……被墙了)
| /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" |
查看 Homebrew 版本
|
详见:https://www.jianshu.com/p/117424d09d4c
homebrew换源,不然慢的要死
|
|
|
详见:https://www.jianshu.com/p/766c047f625f
二、安装jenkins(网速很慢很慢……被墙了,查看上面的homebrew换源)
|
A.如果出问题
|
根据提示安装Java
|
安装完成后再次执行
|
B.如果出问题
| jenkins: Java 1.8 is required to install this formula. Install AdoptOpenJDK 8 with Homebrew Cask: brew cask install homebrew/cask-versions/adoptopenjdk8 Error: An unsatisfied requirement failed this build. |
根据提示安装
|
安装完成后再次执行
|
三、启动jenkins
|
在浏览器打开 http://localhost:8080 如果页面有内容就是安装成功了
四、获得账号密码
账号 admin
/Users/Shared/Jenkins/Home文件夹;2.右键单击
secrets文件夹,选择显示简介;3.滚动到最下面,然后单击右下角的锁定图像>输入您的密码>确定;
4.点击弹出窗口左下角的“+”,将当前电脑用户添加到
共享与权限中,设置为只读或读与写;5.打开
secrets文件夹,找到该initialAdminPassword文件以获取初始的管理员密码。如果您没有该文件的权限,则需要右键单击该文件并选择显示简介,然后重复上述步骤3和4访问该文件。也可以mac显示隐藏文件,找到secrets文件夹
|
defaults write com.apple.finder AppleShowAllFiles -boolean true |
|
killall Finder |
五、安装jenkins插件
目前安装的插件如下(安装插件时有时会报错,必须依赖其他插件时,按照提示优先安装需要的插件,再次重新安装即可):
branch-api.hpi
build-token-root.hpi
git-client.hpi
git-parameter.hpi
git.hpi
gitlab-api.hpi
gitlab-branch-source.hpi
gitlab-hook.hpi
gitlab-logo.hpi
gitlab-oauth.hpi
gitlab-plugin.hpi
locale.hpi
publish-over-ssh.hpi
ruby-runtime.hpi
xcode-plugin.hpi
A.jenkins系统管理>>管理插件>>高级 菜单
下将升级站点中的URL设为
http://mirror.xmission.com/jenkins/updates/current/update-center.json
保存并且重启Jenkins
进入 系统管理>插件管理>可选插件,右上角搜索框输入需要的插件名字,选中点击安装。经常会下载失败。可以通过下面B的方式,先下载再上传即可解决。
B.如果A的在线下载失败,可以在此http://updates.jenkins-ci.org/download/plugins 搜索需要的hpi文件,下载后然后进行以下操作
系统管理>插件管理>高级>上传插件(选择文件上传即可)
详见:https://blog.csdn.net/ZNWhahaha/article/details/81269041
因为jenkins版本过低导致插件安装失败
详见:https://www.cnblogs.com/sxdcgaq8080/p/10489326.html
详见:下载后手动更换 jenkins.war 文件 https://www.cnblogs.com/huangzs/p/11719581.html
六、jenkins修改显示语言为中文
下载插件 Localization: Chinese(Simplified)
安装后 系统管理 -> 系统设置 -> Locale
设置为 zh_cn 简体中文
重启jenkins
详见:https://www.cnblogs.com/ycyzharry/p/11664654.html
七、新建项目
新建Item 输入项目名字,构建一个自由风格的软件项目即可
八、配置git
配置Repository URL是http连接后如果报以下错误,git仓库总是连不上,可以在gitlab配置SSH认证,然后jenkins里git仓库地址改为SSH地址,输入git的账号密码,设置分支即可解决。
Failed to connect to repository : Command "/usr/local/git/git-2.12.2/git ls-remote -h https://github.com/Frodez/jenkinsTest.git HEAD" returned status code 128:
stdout:
stderr: fatal: unable to access '/root/etc/gitconfig':
解决方式:
Git - 生成 SSH 公钥
|
|
| open ~/.ssh |
打开文件夹,就可以找到id_rsa.pub文件了,里面内容就是公钥。
gitlab 点击账号头像>Settings>SSH Keys>Add an SSH key (Title写邮箱,Key写id_rsa.pub的内容)
九、配置Xcode
1.Xcode Schema File 配置为工程里Target名字
2.Configuration 配置Release 或者Debug
3.勾选 Pack application, build and sign .ipa?
Export method 配置为证书方式 ad-hoc
.ipa filename pattern 配置为 Target名字,方便上传蒲公英找到ipa位置
4.Code signing & OS X keychain options
勾选 Manual signing
然后配置Bundle ID 和 配置文件的UUID(找到配置文件,右键显示简介即可看到UUID)
4.Advanced Xcode build options
Xcode Workspace File 配置为 ${WORKSPACE}/Target名字/Target名字
十、上传到蒲公英
uKey 和 apiKey 从以下网址获取
IPA_PATH路径中***改为jenkins中生成的ipa路径名字
|
#蒲公英上的User Key |
十一、开始构建 Build Now
构建历史中 蓝色为成功 红色为失败 灰色为取消
Jenkins自动化打包(Gitlab)并上传蒲公英的更多相关文章
- gitlab+jenkins自动化打包APK
前置条件: 环境搭建,jenkins需要的插件看这里: gitlab+jenkins自动化打包IOS 配置思路: step1: 搭建sdk,gradle运行环境,参照: CentOS7下安装安装and ...
- gitlab+jenkins自动化打包IOS-jenkins配置
实现的效果如图: 构建界面: 完成效果: 功能说明: 根据选择的代码分支,执行构建打包 构建成功后根据ipa/apk生成二维码,并可在历史构建列表中展示各个版本的二维码,通过手机扫描二维码可直接安装 ...
- Android Jenkins 自动化打包构建
前言 在测试app项目过程中,通常都是需要开发打测试包给到测试,但是无论是iOS还是Android的打包过程都是相当漫长的,频繁的回归测试需要频繁的打包,对于开发同学影响还是蛮大的.因此在这种情况下, ...
- Selenium2学习-039-WebUI自动化实战实例-文件上传下载
通常在 WebUI 自动化测试过程中必然会涉及到文件上传的自动化测试需求,而开发在进行相应的技术实现是不同的,粗略可划分为两类:input标签类(类型为file)和非input标签类(例如:div.a ...
- Docker打包镜像并上传
Docker打包镜像并上传 登录 账号 docker login --username=yourusername 密码 yourPassword 推送到仓库 docker镜像打标签 docker ta ...
- iOS Jenkins 自动化打包构建
前言 在测试app项目过程中,通常都是需要开发打测试包给到测试,但是无论是iOS还是Android的打包过程都是相当漫长的,频繁的回归测试需要频繁的打包,对于开发同学影响还是蛮大的.因此在这种情况下, ...
- 使用Maven打包项目并上传到Linux服务器
Maven打包: 项目右键Run as-->Maven build...--> 出来下面的界面,注意红色部分的填写,Goals填写package表示打包,下面的Skip Tests表示打 ...
- k8s使用helm打包chart并上传到腾讯云TencentHub
本文只涉及Helm的Chart操作,不会对其他知识进行过多描述.至于安装这块,麻烦自行百度吧,一大堆呢. 在容器化的时代,我们很多应用都可以部署在docker,很方便,而再进一步,我们还有工具可以对d ...
- Gitlab 项目上传
一,登陆gitab,新建reject Repository name: 仓库名称 Description(可选): 仓库描述介绍 Public, Private : 仓库权限(公开共享,私有或指定合作 ...
随机推荐
- Sharding-JDBC介绍
Sharding-JDBC是当当应用框架ddframe中,从关系型数据库模块dd-rdb中分离出来的数据库水平分片框架,实现透明化数据库分库分表访问.Sharding-JDBC是继dubbox和ela ...
- iOS - Scenekit3D引擎初探之 - 给材质贴图
今天简单说一下 SceneKit 给材质贴图. 1,最简单的一种方法,直接打开dae 或者 scn 文件直接设置 如上图,这个dae 文件中只有一个几何体,几何体中只有一个材质球,然后设置材质球的d ...
- JVM锁优化以及区别
偏向所锁,轻量级锁都是乐观锁,重量级锁是悲观锁. 首先简单说下先偏向锁.轻量级锁.重量级锁三者各自的应用场景: 偏向锁:只有一个线程进入临界区: 轻量级锁:多个线程交替进入临界区: 重量级锁:多个线程 ...
- css 盒子 取值
盒子:当我们设置一个标签宽高时,默认设置的是盒子里面content大小. 内容盒:content 填充盒:content+padding(overflow截取的区域) 边框盒:content+padd ...
- 关于http的小知识
http客户端发起请求,创建端口 http服务器在端口监听客户端请求 http服务器向客户端返回状态和内容 浏览器: 1.Chrome搜索自身的DNS缓存 2.搜索操作系统自身的DNS缓存(浏览器没有 ...
- sed 查询特定内容
查询命令对照表 打印/etc/passwd中第10行的内容 sed -n '10p' /etc/passwd 打印/etc/passwd中第8行开始,到第15行结束的内容 sed -n '8,15p' ...
- sed 追加文件内容
追加用法总结 1.a 在匹配行后面追加 2.i 在匹配行前面追加 3.r 将文件内容追加到匹配行后面 4.w 将匹配行写入指定文件 在匹配行后面追加 a passwd文件第10行后面追加"A ...
- MVC-Cache-1.输出缓存(Cache:[1].输出缓存2.应用程序缓存)
缓存前提概念: 1.使用缓存的目的就是为提供网站性能,减轻对数据库的压力,提高访问的速度. 2.如果使用缓存不当,比不使用缓存造成的影响更恶劣(缓存数据的更新不及时.缓存过多等). 3..net MV ...
- 用python批量插入数据到数据库中
既然使用python操作数据库必不可少的得使用pymysql模块 可使用两种方式进行下载安装: 1.使用pip方式下载安装 pip install pymysql 2.IDE方式 安装完成后就可以正常 ...
- HTML中使用图像
插入图像 在页面中插入图像的标记只有一个,就是img标记. 语法为:<img src="图片地址" alt="下载失败时的替换文本" title='提示文 ...