在Azure DevOps Server (TFS)的流水线中编译和测试Xcode移动应用(iPhone)

概述

Xcode是开发基于苹果macOS系统的桌面应用和移动应用的主要IDE工具。使用Azure DevOps Server (原名TFS)系统中的pipelines流水线功能,可以方便的集成Xcode项目,使用web浏览器在DevOps服务器上,实现一键编译、测试和发布等工作,省却测试发布过程中复杂的流程,大幅提高测试发布的效率,提高开发和测试团队之间的协作效率。
本文已经某银行的IOS手机银行移动端为例,介绍如何在Azure DevOps Server中试系Xcode项目的持续集成和测试。

前提条件

由于苹果公司技术的封闭性,开发移动应用必须在macOS系统上完成编译、调试和打包任务,因此实现Xcode项目的编译必须首先安装一个macOS的代理,否则无法完成Xcode的自动编译和打包功能。
我在博客“在macOS苹果电脑上安装Azure DevOps Server(TFS)代理”(https://www.cnblogs.com/danzhang/p/11954476.html )一文中详细介绍了安装苹果代理的操作步骤。

配置流水线

在macOS上安装的Azure DevOps Server的代理后,就可以使用流水线功能来配置自动打包和测试功能了。
可以使用yaml脚本或者传统的窗口界面来新建一条Xcode的流水线。下面的示例我们使用窗口界面,以便可以更加直观的说明Xcode的配置信息。

  1. 新建一条流水线,选择编译的的代码,可以使用TFVC、Azure Git、gitHu、gitLab、SVN等多种源代码库

  2. 选择代理池,就是我们在前提条件中配置的macOS代理池
  3. 选择xCode模板,Azure DevOps Server会自动添加与Xcode相关的任务,在我们的示例程序中,比较关键的操作是Xcode的打包任务(下图中的Xcode archive)


    注意下面几项设置:
    操作:是指Xcode中的任务,例如build、archive;这里填写archive,指的是生成打包需要的所有文件
    工作区或项目路径:是指xcode项目的工作区配置文件(对于代码库来说,实际上是一个文件夹,其中包含了编译的配置文件,是编译Xcode项目的起始文件)
    方案:是指Xcode项目中的具体项目;可以是移动应用,也可以是独立的库library。
    签名样式:可以选择手动签名、默认签名、自动签名等;我的示例项目中选择了手动签名,实际上使用了Xcode项目中配置的签名信息。
    创建应用包:选择创建应用包后,可以自动生成移动应用ipa文件
  4. 设置如何存储编译后的ipa文件
    在我的这个项目实施过程中,由于客户需要将ipa文件发布到一个web服务器上,供测试人员点击下载。我额外配置了一台FTP服务器,使用流水线中的FTP任务,将ipa文件上传到FTP服务器,供Web浏览器下载使用。

------------------------------------------------------------

http://www.cnblogs.com/danzhang/  DevOps MVP 张洪君

------------------------------------------------------------

原文地址:https://www.cnblogs.com/danzhang/p/11967344.html

时间: 2024-10-10 11:52:30

在Azure DevOps Server (TFS)的流水线中编译和测试Xcode移动应用(iPhone)的相关文章

在Azure DevOps Server (TFS)中实现VUE项目的自动打包

概述 Vue.js(读音 /vju?/, 类似于 view)是一个构建数据驱动的 web 界面的渐进式框架.由于它在数据绑定.页面展示和使用简单方面有很大的优势,逐渐被越来越多的前端开发团队使用.本文介绍基于Azure DevOps Server,如何实现Vue框架前端代码的编译和打包. 代理服务器配置 Azure DevOps Server的自动化流水线,都基于代理服务器Agent Server,需要在你的代理服务器上安装部署好VUE自动打包所需要的环境,这里主要说明如何安装VUE需要Node

为Azure DevOps Server (TFS) 配置安全访问(HTTPS with SSL)

Contents 1. 概述 2. HTTP和HTTS比较 支持HTTP和HTTPS两种方式 要求所有连接使用HTTPS 优点: 缺点: 3. 为Azure DevOps Server 配置安全访问 1. 概述 Azure DevOps Server (TFS)支持默认的超文本传输协议(HTTP),也支持安全的超文本传输协议(HTTPS).将TFS服务器服务器配置为安全访问(https/SSL),可以大幅增强其部署的安全性和数据传输的安全性.在系统部署过程中,TFS默认选择HTTP部署方式:如果

Azure DevOps Server(TFS): 在Excel中解除服务器同步

通过Azure DevOps Server 提供与Excel集成的功能,用户可以非常便捷地使用Excel,实现工作项数据的同步. 对于需要批量处理数据.离线工作.制作临时报表的用户来说,这个功能必定成为你的最爱. 在使用这个功能的过程中,许多用户提出了一个这样的需求"如何在Excel中解除数据同步功能?". 故事场景是这样的: 用户小王使用"在Excel中打开"工作项功能(图一),将工作项数据同步到了本地计算机的Excel中.之后,小王非常快乐地修改数据,发布数据,

你好,Azure DevOps Server 2019;再见,Team Foundation Server

微软正式发布Azure DevOps Server 2019的第一个版本,作为Team Foundation Server (TFS)2018的升级版本和替代产品. 这是目前市面上唯一一款将产品名称冠上DevOps的企业级软件研发平台产品.产品名称的变化,强化了微软在研发运维工具上的投入,体现了微软研发管理平台产品在软件开发管理.质量管理和自动化交付和测试方面的巨大提升. 作为TFS系统的下一代产品,DevOps Server 2019不只是在名称的改动,在用户习惯.持续集成方面做出了巨大调整,

Azure DevOps Server:Git权限设置

Azure DevOps Server 权限概述 在Azure DevOps Server (之前名称为TFS)中,权限是一个比较复杂的概念.从权限层级上来说,包括服务器级别.团队项目集合级别.团队项目级别和对象级别. 其中的对象级别,是指对TFS系统中具体的每种类型的数据.或者每个具体的数据,对于不同的成员(或组)可以设置不同的权限. Git权限概述 对于Git库这个特定的数据对象,在Azure DevOps Server 中又分为代码库级别权限.库级别和分支级别的权限设置.就是说,可以针对不

Azure DevOps Server 经验分享(国内重型工程公司)

受邀在上海为国内著名的重型工程公司的软件研发团队分享了Azure DevOps Server 的经验. ------------------------------------------------------------ http://www.cnblogs.com/danzhang/  DevOps MVP 张洪君 ------------------------------------------------------------ 原文地址:https://www.cnblogs.co

微软改名部又出动啦!微软宣布VSTS改名为Azure DevOps

本篇为翻译,原文地址:https://azure.microsoft.com/en-us/blog/introducing-azure-devops/ 作者:Jamie Cool,Azure DevOps项目管理总监 今天我们正式宣布Azure DevOps. 在与世界各地的客户和开发人员合作中,DevOps对团队的成功变得越来越重要. Azure DevOps在提供支持软件开发团队的工具方面拥有超过15年的投资和学习经验. 在过去的一个月中,有超过80,000名Microsoft内部用户和成千

[Microsoft Teams]使用连接器接收Azure Devops的通知

1. 什么是连接器 连接器(connector)是Teams中频道的一个接受消息的功能,官方的解释如下: 连接器允许用户订阅来自 web 服务的接收通知和消息. 它们公开服务的 HTTPS 终结点,通常以卡片形式发布消息. 简单来说就是Teams提供了一个接口, web服务可以通过这个接口推送消息给Teams的频道. 2. 为什么要用连接器接受来自Azure Devops的消息? 因为微软提供了就试试看,结果用起来感觉不错,统一在Teams中接收消息也很方便美观,还可以直接在通知下面进行交流.

分享Azure DevOps技术,来微信群吧!

现在QQ用户越来越少,基本上都转移到微信上了. 讨论问题,动不动就来一个微信群.下面这样几百人的微信群,专门讨论Azure DevOps (TFS)技术,你加入了么? 还等什么,扫描吧! 原文地址:https://www.cnblogs.com/danzhang/p/10603443.html