特拉维斯CI。无法找到 gstreamer 包

TravisCI. Unable to locate gstreamer packages

突然,我的 CI 脚本坏了。我的 commit changes are not related with Travis server settings, while issue is missing packages, which prevent server from being started:

2.44s$ sudo -E apt-get -yq --no-install-suggests --no-install-recommends --force-yes install libqtwebkit-dev gstreamer1.0-plugins-base gstreamer1.0-tools gstreamer1.0-x
Reading package lists...
Building dependency tree...
Reading state information...
E: Unable to locate package gstreamer1.0-plugins-base
E: Couldn't find any package by regex 'gstreamer1.0-plugins-base'
E: Unable to locate package gstreamer1.0-tools
E: Couldn't find any package by regex 'gstreamer1.0-tools'
E: Unable to locate package gstreamer1.0-x
E: Couldn't find any package by regex 'gstreamer1.0-x'

这些软件包又成功安装了另一个commit back

我的.travis.yml:

language: ruby
services:
  - postgresql
  - rack
script: xvfb-run bundle exec rspec
#env: QMAKE=/usr/lib/x86_64-linux-gnu/qt5/bin/qmake
addons:
  apt:
    sources:
      - ubuntu-sdk-team
    packages:
      - libqtwebkit-dev
      - gstreamer1.0-plugins-base
      - gstreamer1.0-tools
      - gstreamer1.0-x
#      - libqt5webkit5-dev
#      - qtdeclarative5-dev
before_script:
  - bundle exec rackup private_pub.ru -s thin -E production &
  - cp config/database.yml.travis config/database.yml
  - cp config/private_pub.yml.sample config/private_pub.yml
  - psql -c 'create database travis_ci_test;' -U postgres

我该如何替换它们?

如果 travis 无法访问它通常使用的 ubuntu gce 镜像,这可能是暂时的故障。您是否尝试过通过 travis 页面重新启动?

上游似乎发生了一些变化。如果我们查看 succeeding build,就会清楚 gstreamer* 软件包是从 ppa:ubuntu-sdk-team/ppa 安装的。显然,这些包在那里再也找不到了。

此外,从表面上看,gstreamer1* 似乎是对 Precise 的一种破解。您最好使用 Trusty 图像,默认情况下它们是可用的。目前,容器基础设施上没有可用的 Trusty,但这会改变。在 different available virtualization 环境中查看此文档。

如果启用 sudo 的完整 VM 符合您的目的,您可以更改配置以包括:

sudo: required
dist: trusty
before-install:
  - sudo -E apt-get -yq --no-install-suggests --no-install-recommends --force-yes install gstreamer1.0-plugins-base gstreamer1.0-tools gstreamer1.0-x

(注意:从该列表中删除了 libqtwebkit-dev 包。您需要自己检查如何添加。)