zoukankan      html  css  js  c++  java
  • Jenkins自动化打包(Gitlab)并上传蒲公英

    整个过程详见:https://www.jianshu.com/p/91e8f571fc2b

    以下是遇到的问题及解决过程

    一、安装homebrew(网速很慢很慢……被墙了)

    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

    查看 Homebrew 版本

    brew -v

    详见:https://www.jianshu.com/p/117424d09d4c

    homebrew换源,不然慢的要死

    cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
    git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git 
    cd "$(brew --repo)"/Library/Taps/caskroom/homebrew-cask
    git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-cask.git 
    echo 'export HOMEBREW_BOTTLE_DOMAIN=[https://mirrors.ustc.edu.cn/homebrew-bottles'](https://mirrors.ustc.edu.cn/homebrew-bottles' rel=) >> ~/.zshrc 
    source ~/.zshrc

    详见:https://www.jianshu.com/p/766c047f625f

    二、安装jenkins(网速很慢很慢……被墙了,查看上面的homebrew换源)

    brew install jenkins

    A.如果出问题

    Updating Homebrew...
    jenkins: Java 1.8 is required to install this formula.
    JavaRequirement unsatisfied!
    You can install with Homebrew-Cask:
     brew cask install homebrew/cask-versions/java8
    You can download from:
     https://www.oracle.com/technetwork/java/javase/downloads/index.html
    Error: An unsatisfied requirement failed this build.

    根据提示安装Java

    brew cask install homebrew/cask-versions/java8

    安装完成后再次执行

    brew install jenkins

    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.

    根据提示安装

    brew cask install homebrew/cask-versions/adoptopenjdk8

    安装完成后再次执行

    brew install jenkins

    三、启动jenkins

    jenkins

    在浏览器打开 http://localhost:8080 如果页面有内容就是安装成功了

    四、获得账号密码

    账号 admin

    1.finder 前往文件夹 导航到/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 公钥

    ssh-keygen
    cd ~/.ssh
    open ~/.ssh

    打开文件夹,就可以找到id_rsa.pub文件了,里面内容就是公钥。

    gitlab 点击账号头像>Settings>SSH Keys>Add an SSH key (Title写邮箱,Key写id_rsa.pub的内容)

    详见:https://git-scm.com/book/zh/v2/%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84-Git-%E7%94%9F%E6%88%90-SSH-%E5%85%AC%E9%92%A5

    九、配置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 从以下网址获取

    http://www.pgyer.com/doc/api

    IPA_PATH路径中***改为jenkins中生成的ipa路径名字

    #蒲公英上的User Key
    uKey="******"
    #蒲公英上的API Key
    apiKey="*******"
    #要上传的ipa文件路径
    IPA_PATH="${WORKSPACE}/build/Release-iphoneos/***.ipa"
    #密码
    MSG="${commitMsg}"
    #执行上传至蒲公英的命令
    echo "++++++++++++++upload+++++++++++++"
    curl -F "file=@${IPA_PATH}" -F "uKey=${uKey}" -F "_api_key=${apiKey}" -F "updateDescription=${MSG}" -F "password=${PASSWORD}" https://qiniu-storage.pgyer.com/apiv1/app/upload

    十一、开始构建 Build Now

    构建历史中 蓝色为成功 红色为失败 灰色为取消

  • 相关阅读:
    前端自动化gulp使用方法
    npm 如何提升最新版本
    AJAX——理解XMLHttpRequest对象
    免插件,简单实现上拉加载loading
    mobiscroll实现二级联动菜单
    js点击页面其他地方如何隐藏div元素菜单
    gulp自动化构建工具使用总结
    如何优雅的选择字体(fontfamily)
    js如何判断用户使用的设备类型及平台
    ant 软件包 javax.servlet.http 不存在 解决办法
  • 原文地址:https://www.cnblogs.com/huangzs/p/11753605.html
Copyright © 2011-2022 走看看