Xcode 9将Xcode Server集成进来了,这是Xcode一个新特性,不用去单独下载server了,server可以用来做CI、自动化Test等等。这里主要介绍搭建CI,相当简单

打开开关,新建一个server

可以设置集成超时时间

服务器启动了,就可以创建机器人了,机器人就是执行某些任务的一个单元

在创建的过程中注意,如果想要利用Xcode从Git上拉代码,需要登录。登录方式有三种,第一种最简单,直接输入用户名密码。推荐第三种,但是需要设置SSH,配置的过程自行百度。

登录成功就可以选择分支了

下一步需要重点说明,Export方式有四种,建议选择第四种,读取自己写的exportOptionsPlist,第三种需要配置provisioningProfiles,未实验成功。

在Xcode9下,exportOptionsPlist的内容会有变化,需要增加provisioningProfiles这一个字典,字典的key就是bundleId,value就是provisioning profile文件名(和Xcode的Build Setting选项下的一致)

集成构建的周期

建议手动管理证书

这里注意,环境变量一定要填写,否则pod install会报错。PATH对应的值需要打开终端,敲入以下命令获取

echo $PATH

构建动作包括构建前、后和邮件通知。

构建前的脚本就是pod install,需要cd到项目目录下再执行

构建后脚本就是上传ipa至fir(需要安装fir-cli,传送门https://github.com/FIRHQ/fir-cli/blob/master/doc/install.md

这里有一个问题,就是如果构建失败(包括脚本执行失败)Xcode会删除.xcArchieve和.ipa等文件,所以我将ipa文件拷贝到单独的文件夹,再上传。

这里是脚本内容

#!/bin/sh
export LC_ALL="en_US.UTF-8" # 进入工程根目录
IPA_NAME=$(basename "${XCS_ARCHIVE%.*}".ipa) IPA_PATH="${XCS_OUTPUT_DIR}/ExportedProduct/${IPA_NAME}" echo ${IPA_PATH} rm -r -f ${HOME}/Desktop/Package/${IPA_NAME}
cp -R ${IPA_PATH} ${HOME}/Desktop/Package #上传至fir
fir publish ${HOME}/Desktop/Package/${IPA_NAME} -Q -T 863efefc********************* #上传至蒲公英
curl -F "file=@${IPA_PATH}" -F "uKey=******************2f5e99f3a7495" -F "_api_key=******************eb2d5cb44d93183" http://www.pgyer.com/apiv1/app/upload

新建一个周期邮件在构建完成后发送。点击Create,就完成了,赶紧去构建项目吧!

如果构建失败...

Xcode Server (Xcode9)搭建CI的更多相关文章

  1. 为容器化的 Go 程序搭建 CI

    本文介绍如何使用 Jenkins 的声明式 pipeline 为一个简单的 Golang web 应用搭建 CI 环境.如果你还不太了解 Jenkins 及其声明式 pipeline,请先参考笔者的 ...

  2. phpstorm破解 IntelliJ IDEA License Server本地搭建教程 http://blog.lanyus.com/archives/174.html/comment-page-6#comments 附件:mac环境

    ilanyu's Blog 搜索关键字搜索 首页IDEA注册码文件中转在线记事本老博客关于 IntelliJ IDEA License Server本地搭建教程 作者: ilanyu 时间: Marc ...

  3. Xcode Server持续集成

    这是一篇2017-11-12 年我还在 ezbuy 的一篇文章,时间过去很早了,最近在整理笔记的时候发现了, 同步过来,文章内容现在是否有效不确定,应该大差不差,读者仅做参考 最后更新 2017-11 ...

  4. Windows Server 2003搭建邮件服务器

    Windows Server 2003搭建邮件服务器 由于Windows Server 2003默认是没有安装我们搭建邮件服务器所需要的POP3和SMTP服务的,因此需要我们自己来安装.方法如下: 1 ...

  5. Ubuntu server下搭建Maven私服Nexus

    Ubuntu server下搭建Maven私服Nexus Maven私服Nexus的作用,主要是为了节省资源,在内部作为maven开发资源共享服务器来使用. 1.下载 通过root用户进去Ubuntu ...

  6. 使用FileZilla Server轻松搭建个人FTP服务器

    Linux平台下快速搭建FTP服务器 服务器FTP Server环境搭建 针对以上遇到的问题的解决方案如下: 1)如何上传文件到云服务器上          关于这个问题,我首先想到的是使用FileZ ...

  7. Windows Server 2008搭建域控制器《转载51CTO.com》

    Windows Server 2008搭建域控制器 引入 在小型网络中,管理员通常独立管理每一台计算机,如最为常用的用户管理.但当网络规模扩大到一定程度后,如超过 10 台计算机,而每台计算机上有 1 ...

  8. 使用IIS Server Farms搭建应用服务负载均衡

    当公司的业务扩大, 伴随着大量的请求,应用服务器的承受能力已经不能满足不断增长的业务需求,使用IIS Server Farms搭建应负载均衡的方式,把请求分发给不同的应用服务器进行处理,这个时候就降低 ...

  9. 【阿里云】在 Windows Server 2016 下使用 FileZilla Server 安装搭建 FTP 服务

     Windows Server 2016 下使用 FileZilla Server 安装搭建 FTP 服务 一.安装 Filezilla Server 下载最新版本的 Filezilla Server ...

随机推荐

  1. jQuery与直接写JS的区别详细解析

    jQuery代码具体的写法和原生的Javascript写法在执行常见操作时的区别如下所示.需要的朋友可以过来参考下     要使用jQuery,首先要在HTML代码最前面加上对jQuery库的引用,比 ...

  2. kerberos master-slave搭建

    1. 安装kerberos server yum install krb5-server krb5-libs krb5-auth-dialog client yum install krb5-work ...

  3. 20145331《Java程序设计》第5周学习总结

    20145331<Java程序设计>第5周学习总结 教材学习内容总结 第八章 概述 Java异常机制主要依赖于try.catch.finally.throw.throws五个关键字. 语法 ...

  4. slf4j和log4j、logback

    现在主流java项目一般使用slf4j+log4j的日志方案,最近抽点时间扫了一下slf4j.log4j.logback的官方文档,做个笔记.这篇比较不打算描述具体的配置方法,因为官方文档已经讲得很清 ...

  5. git操作方便,简单使用的客户端sourcetree 安装配置所遇问题总结

    常言道:工欲善其事,必先利其器. SourceTree是老牌的Git GUI管理工具了,也号称是最好用的Git GUI工具 这里先言言它的好: * 免费 * 功能强大:无论你是新手还是重度用户,Sou ...

  6. LeetCode (236):Lowest Common Ancestor of a Binary Search Tree

    Given a binary search tree (BST), find the lowest common ancestor (LCA) of two given nodes in the BS ...

  7. 如何为openwrt中的某个模块生成PKG_MIRROR_HASH

    答:介绍两种方法,第一种自动生成(当然使用自动的啦),第二种手动生成 第一种方法: 1.在软件包的Makefile中让此项写成这样PKG_MIRROR_HASH:=skip  (如果不加上skip,那 ...

  8. 搭建Nginx图片服务器(Linux)

    知识点: 在Linux系统上安装Nginx服务器,配置图片访问路径 通过ftp上传图片到,指定路径,通过浏览器访问指定路径中的图片 参考博客:http://blog.csdn.net/maoyuanm ...

  9. tornado之WebSocket

    WebSocket WebSocket是HTML5规范中新提出的客户端-服务器通讯协议,协议本身使用新的ws://URL格式. WebSocket 是独立的.创建在 TCP 上的协议,和 HTTP 的 ...

  10. 解决github访问慢的问题

    在windows hosts文件末尾增加以下内容 # GitHub Start 192.30.253.112 github.com 192.30.253.119 gist.github.com 151 ...