本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用AWS CodeCommit、和 Dev AWS ice Farm 构建和测试 iOS 应用程序 AWS CodePipeline
由 Abdullahi Olaoye 创作 () AWS
摘要
注意: AWS CodeCommit 不再向新客户开放。的现有客户 AWS CodeCommit 可以继续照常使用该服务。了解更多
此模式概述了创建持续集成和持续交付 (CI/CD) 管道的步骤,该管道用于在真实设备上构建和测试 iOS 应用程序。AWS CodePipeline AWS该模式用于存储应用程序代码,使用 AWS CodeCommit Jenkins 开源工具构建 iOS 应用程序,Device Farm 用于在真实AWS设备上测试构建的应用程序。这三个阶段是通过使用在管道中编排在一起的。AWS CodePipeline
这种模式基于AWS DevOps 博客上的 “使用和测试i iPad OS和操作系统应用程序AWS DevOps 以及移动服务
先决条件和限制
先决条件
限制
应用程序编译服务器必须运行 macOS。
生成服务器必须具有公有 IP 地址,因此 CodePipeline 可以远程连接到该服务器以启动构建。
架构
源技术堆栈
本地 iOS 应用程序构建过程,涉及在物理设备上使用模拟器或手动测试
目标技术堆栈
用于AWS CodeCommit 存储应用程序源代码的存储库
使用 Xcode 构建应用程序的 Jenkins 服务器
De AWS vice Farm 设备池,用于在真实设备上测试应用程序
目标架构
当用户向源存储库提交更改时,管道 (AWS CodePipeline) 会从源存储库获取代码,启动 Jenkins 构建,然后将应用程序代码传递给 Jenkins。构建完成后,管道会检索构建工件并启动 De AWS vice Farm 作业,以针对设备池测试应用程序。
工具
AWS CodePipeline是一项完全托管的持续交付服务,可帮助您实现发布管道的自动化,从而实现快速可靠的应用程序和基础架构更新。 CodePipeline 每次发生代码更改时,都会根据您定义的发布模型自动执行发布过程的构建、测试和部署阶段。
AWS CodeCommit是一项完全托管的源代码控制服务,用于托管基于 Git 的安全存储库。它使团队可以轻松地在安全且高度可扩展的生态系统中就代码进行协作。 CodeCommit 无需操作自己的源代码控制系统或担心扩展其基础架构。
AWSDevice Farm 是一项应用程序测试服务,它允许您在各种桌面浏览器和真实移动设备上进行测试,从而提高网络和移动应用程序的质量,而无需配置和管理任何测试基础架构。
Jenkins
是一款开源自动化服务器,它使开发人员能够构建、测试和部署其软件。
操作说明
任务 | 描述 | 所需技能 |
---|---|---|
在运行 macOS 的编译服务器上安装 Jenkins。 | Jenkins 将用于构建应用程序,因此您必须首先将其安装至编译服务器上。要获取有关此任务和后续任务的详细说明,请参阅本模式末尾的 “相关资源” 部分中的AWS博客文章 “使用AWS DevOps 移动服务和其他资源构建和测试 iOS 和iPad操作系统应用程序 | DevOps |
配置 Jenkins。 | 按屏幕上的说明进行配置 Jenkins。 | DevOps |
安装 Jenkins 的AWS CodePipeline 插件。 | 此插件必须安装在 Jenkins 服务器上,这样 Jenkins 才能与该AWS CodePipeline 服务进行交互。 | DevOps |
创建一个 Jenkins 自由式项目。 | 在 Jenkins 中创建一个自由式项目。配置项目以指定触发器和其他构建配置选项。 | DevOps |
任务 | 描述 | 所需技能 |
---|---|---|
创建 Device Farm 项目。 | 打开 AWS Device Farm 控制台。创建一个项目和一个设备池进行测试。有关说明,请参见博客文章。 | 开发人员 |
任务 | 描述 | 所需技能 |
---|---|---|
创建 CodeCommit 存储库。 | 创建一个存储源代码的存储库。 | DevOps |
将应用程序代码提交至存储库。 | Connect 连接到您创建的 CodeCommit 存储库。将代码从本地计算机推送至存储库。 | DevOps |
任务 | 描述 | 所需技能 |
---|---|---|
在中创建管道AWS CodePipeline。 | 打开AWS CodePipeline 控制台,然后创建管道。该管道协调了 CI/CD 流程所有阶段。有关说明,请参阅AWS博客文章使用和移动服务构建和iPad测试 iOS AWS DevOps 和 OS 应用程序 | DevOps |
向管道中添加测试阶段。 | 要添加测试阶段并将其与 Dev AWS ice Farm 集成,请编辑管道。 | DevOps |
启动管道。 | 要启动管道和 CI/CD 流程,请选择 “发布更改”。 | DevOps |
任务 | 描述 | 所需技能 |
---|---|---|
查看测试结果。 | 在 AWS Device Farm 控制台中,选择您创建的项目,然后查看测试结果。控制台将显示每项测试详细信息。 | 开发人员 |
相关资源
Step-by-step 此模式的说明
使用@@ 移动服务构建和iPad测试 iOS AWS DevOps 和 OS 应用程序
(AWS DevOps 博客文章)
配置 Dev AWS ice Farm
配置源存储库
配置管道
其他资源