Ubuntu 22.04 (Jammy Jellyfish) 构建环境

本指南涵盖的内容 #

本指南概述了 Jammy Jellyfish 环境中可用的软件包、工具和设置。

使用 Ubuntu 22.04 (Jammy Jellyfish) #

要将您的构建路由到 Ubuntu 22.04 LTS,Jammy,请将以下内容添加到您的 .travis.yml

dist: jammy

与之前版本镜像的差异 #

Travis CI Ubuntu 22.04,Jammy,包含以下更改和改进

第三方 apt 存储库已移除 #

虽然在镜像预配过程中使用了第三方 apt 存储库,但它们都已从构建镜像中移除。这有两个好处:a) 降低了无关干扰的风险,b) 加快了 apt-get 更新速度。

要指定第三方 apt 存储库,您可以 使用 apt 附加组件添加源 并指定软件包。例如

dist: jammy
addons:
  apt:
    sources:
      - sourceline: 'ppa:chris-lea/redis-server'
    packages:
    - redis-tools
    - redis-server

如果您在构建中依赖于这些存储库,则可以使用以下 source 行来获取它们

软件包
docker deb https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable
google-chrome-stable deb http://dl.google.com/linux/chrome/deb/ stable main
git-ppa ppa:git-core/ppa
haskell ppa:hvr/ghc
pollinate ppa:pollinate/ppa
redis ppa:chris-lea/redis-server

默认情况下禁用服务 #

在基于 Ubuntu 22.04 的环境中,为了加快启动时间并提高性能,我们默认情况下禁用了所有服务。将您要启动的任何服务添加到您的 .travis.yml

services:
  - mysql
  - redis

所有 Ubuntu 22.04 镜像共有的环境 #

所有 Ubuntu 22.04 构建中都存在以下版本的 Docker、版本控制软件和编译器,以及每个语言部分中更详细描述的更多特定于语言的软件。

所有未由发行版提供的预安装软件都从官方版本安装 - 如果可用,则使用预构建的二进制文件,或者使用默认选项构建的源版本。对于预安装的语言解释器,如果语言可用,则使用标准版本管理器,如 rvm

版本控制 #

软件包 版本
git 2.36.1
git-lfs 3.0.2
hg 5.3
svn 1.14.1

编译器和构建工具链 #

软件包 版本
clang 7.0.0
llvm 14.0.0
cmake 3.16.8
gcc 11.2.0
ccache 4.5.1
shellcheck 0.7.2
shfmt 3.2.1

Docker #

  • 已安装 Docker 20.10.12
  • docker-compose 1.29.2 也可用。

Ruby 支持 #

  • 预安装的 Ruby 版本:3.0.43.1.2
  • 默认 ruby 版本是 3.1.2
  • 其他 ruby 版本可以在构建时安装。

Python 支持 #

  • 支持的 Python 版本为:3.7.7 或更高版本,因为 2.7 已停用。
  • 当未显式设置语言版本时,默认情况下将使用 Python 3.10.5
  • 以下 Python 版本已预安装
别名 版本
3.7 3.7.7
3.8 3.8.3
3.9 3.9.13
3.10 3.10.5

JavaScript 和 Node.js 支持 #

  • 对于指定 language: node_js 的构建,nvm 会在构建时自动更新到最新版本。对于其他构建,已选择镜像构建时的稳定版本,即 0.39.1
  • 以下 NodeJS 版本已预安装:14.18.116.13.017.1.0

Go 支持 #

  • 预安装的 Go 版本:1.18.3

  • 其他 Go 版本可以通过使用 go: 键指定语言版本在构建时安装。

JVM (Clojure、Groovy、Java、Scala) 支持 #

  • 预安装的 JVM 版本:openjdk11 和 x86 上的 openjdk17,默认版本为 openjdk11

  • 如果可用,可以获取其他 JDK,包括 Oracle 的 JDK,方法是指定 jdk

  • 下表总结了预安装的 JVM 工具版本

软件包 版本
gradle 5.1.1
maven 3.6.3
groovy 2.4.21

Perl 支持 #

  • Jammy 上的默认版本是 5.34.0
  • 可以使用 perl: 键安装支持的版本 5.33

PHP 支持 #

  • 对于动态运行时选择,phpenv 可用。
  • 以下 PHP 版本已预安装
别名 版本
8.1 8.1.2

数据库和服务 #

以下服务和数据库已预安装,但默认情况下不运行。要在构建中使用其中一项,请将其添加到您的 travis.yml 中的 services 键中

服务 版本
mysql 8.0.29
redis 6.0.6
postgresql 14.3

其他 Ubuntu Linux 构建环境 #

您可以查看 Ubuntu Linux 概述页面,以了解您可以使用的不同 Ubuntu Linux 构建环境。