使用 sudo:false 在 Travis-ci 上安装包

Jér*_*lle 5 travis-ci docker

如何在 Travis.yml 中使用 sudo:false 在 Travis-ci 上安装软件包?

我有我的 travis.yml :

sudo: false

install:
  - wget http://security.ubuntu.com/ubuntu/pool/main/i/icu/libicu52_52.1-3ubuntu0.4_amd64.deb
  - sudo dpkg -i libicu52_52.1-3ubuntu0.4_amd64.deb
Run Code Online (Sandbox Code Playgroud)

我有一个错误:

sudo: 必须是 setuid root

命令“sudo dpkg -i libicu52_52.1-3ubuntu0.4_amd64.deb”失败并在 .

Mar*_*hes 5

是的,你可以,至少有一些。

Travis 有一个允许使用容器化环境安装的白名单。您无需使用 wget 和 dpkg 或 apt,而是在 yamladdons部分下定义包。检查https://docs.travis-ci.com/user/installing-dependencies/

在 yaml 中,您将有以下内容:

addons:
  apt:
    packages:
      - ncftp
Run Code Online (Sandbox Code Playgroud)

ncftp在这里被列入白名单。

如果您需要未列入白名单的软件包,您可以设置sudo: true并且您的构建将在非容器化环境中启动,因此您拥有 root ( sudo) 访问权限来安装您想要的任何内容。或者,您可以在他们的 Github 上提出问题,为您的包添加白名单。