Travis CI / Assembla 握手

分享此内容
分享此内容

使用 Travis CI 从 Assembla Perforce Helix Core 和 Apache Subversion 构建和测试代码

Travis CI 很高兴宣布我们与 Assembla 集成的进一步扩展。除了我们对 Assembla 空间中的 Git 存储库的现有支持之外,您现在还可以轻松地在 Assembla 空间中的 Perforce Helix Core (P4) 和 Subversion (SVN) 存储库上构建和测试软件。

Assembla 在同一个屋檐下支持 Git、SVN 和 P4 存储库。通过扩展现有的 Assembla 和 Travis CI 集成,使用 SVN 和 P4 版本控制系统的 Assembla 用户现在可以在 Travis CI 上构建和测试!

Assembla 是一款功能强大的源代码管理和项目管理工具。它允许用户在一个屋檐下以多种版本控制系统托管源代码:Git、Apache SVN 和 Perforce Helix Core。

在 Git 成为主流之前,Apache SVN 中央版本控制系统是一种广泛采用的标准。今天,Apache SVN 仍然被大型市场使用。P4 (Perforce Helix Core) 版本控制系统用于需要通过版本控制系统管理大型资产的行业。

能够将不同类型的基于云的存储库与它的票务系统和各种工具紧密集成,使软件开发团队能够维护他们的项目:从定义、源代码开发和在线协作到项目进度报告。持续集成/部署是当今的标准,它自动化了软件构建和测试流程。将团队或公司可能拥有的所有类型的存储库与单一的 CI/CD 工具连接起来有助于标准化自动构建和测试管理。Travis CI 扩展了与 Assembla 的集成,使您可以从 Assembla 托管的所有存储库类型构建和测试代码 - 这意味着主要且易于使用的云 CI/CD 系统现已可用于基于 SVN 和 P4 的构建。统一的 Travis CI 构建指令语法以及共享标准构建配置片段的能力有助于标准化和轻松维护不同类型的版本控制系统之间的构建定义。

Travis CI 客户现在可以使用这些世界一流的存储库,构建和测试由 Assembla 功能支持的代码。

  • Git
  • Perforce Helix Core (P4)
  • Apache Subversion (SVN)

它是如何工作的?

开始使用 Travis CI 作为 SVN 和 P4 存储库的 CI/CD 工具很简单,只需按照以下步骤操作:

  • 登录 Travis CI,使用您的 Assembla 帐户。
  • 在 Travis CI 中:Travis CI 会将您的 Assembla 空间同步到 Travis CI(在 Travis CI 中显示为组织),以及存储库。您也可以在 Travis CI Web UI 中使用“立即同步”按钮,在您的帐户 ‘Repositories’ 部分,按需触发同步。
  • 在 Travis CI 中:使用 Travis CI 启用选定的存储库 - Git、P4 或 SVN。
  • 在 Travis CI 中:确保已为以您的 Assembla 空间命名的 Travis 组织分配了至少试用计划。
  • 将构建指令放在 .travis.yml 文件中,放到相应的 Assembla 存储库中。
    • 对于 Assembla Git 存储库,将 .travis.yml 放在根目录中。
    • 对于 Assembla SVN 存储库,将 .travis.yml 放在以下位置之一
      • /trunk/.travis.yml – 这将启用在提交到 trunk 之后自动构建。
      • /branches/[分支名称]/.travis.yml这将启用在提交到分支 [分支名称] 之后自动构建。
    • 对于 Assembla P4 存储库/仓库,将 .travis.yml 文件放在以下位置之一
      • /[仓库名称]/main/.travis.yml  – 这将启用在提交到 /[仓库名称]/main/ 之后自动构建。默认值为  /depot/main/.travis.yml
      • /[仓库名称]/[流名称]/.travis.yml  – 这将启用在提交到特定流 /[仓库名称]/[流 名称]/ 之后自动构建。
  • 提交 Assembla 存储库中的源代码更改,然后查看 Travis CI 上运行的构建。

构建从提交到 P4 存储库开始 - Assembla 收到 P4 提交,向 Travis CI 发送通知,Travis CI 触发在相应存储库的 .travis.yml 文件中找到的构建指令。

示例 .travis.yml 文件

dist: focal

language: ruby

rvm

  – 2.2

 – jruby

在将 .travis.yml 文件添加到 Travis CI 中启用的存储库后,下次提交时将触发自动 Travis CI 构建。

Montana Mendy 创建了一个简短的视频,展示了此功能的工作原理,请查看 这里

我为什么要这样做?

Travis CI 允许您为您的源代码创建自动构建和测试管道,这些代码保存在 Assembla、P4 和 SVN 存储库中。由于这是一项云服务,您无需担心基础设施的维护或自行进行扩展(或缩减)。

使用 Travis CI 的常见用例是自动化构建和测试流程。现有的团队可能已经拥有自己的脚本 - 非常完美;通过在 .travis.yml 构建指令中将它们作为步骤调用来重用这些脚本。

完成之后,下一步可能是添加一个部署(或上传)构建工件的阶段,也是有条件的 - 例如,只有在测试阶段成功的情况下才会进行部署。Travis CI 使您能够轻松地为您的软件安排夜间或每周构建,甚至使用更大的 CPU 或 GPU 运行计算量大的进程(请参阅 使用 GPU 增强您的 Travis 构建)。

是的,您可以将 Travis CI 用于您繁重的计算构建。在您可用的 CPU 和 RAM 方面,您可以使用不同的构建环境配置。如果您想使用带有附加 GPU 的构建环境,Blender 的命令行版本可能允许您利用 CI/CD 来渲染图形或视频。TensorFlow 的命令行版本可能允许使用云 CI/CD 运行一些机器学习计算。

.travis.yml 的语法 对开发人员来说很容易学习,使每个团队能够将他们的存储库构建和测试配方作为代码进行维护。这样做的优点是,不需要专门的团队来维护您的自动 CI/CD 过程 - 构建指令更新会随着源代码的演变而演变,并且这些指令的拥有权是分布式的。

构建愉快!

阅读更多

© 版权所有 2024,保留所有权利
© 版权所有 2024,保留所有权利
© 版权所有 2024,保留所有权利