开放构建服务:在构建期间访问互联网

时间:2015-11-18 18:22:14

标签: package rpm opensuse deb

我想使用openSUSE构建服务来构建debian包并提供所需的文件:packageName_version.tar.gz,packageName.dsc,debian.changelog,debian.control,debian.rules。

对于构建,我使用biicode,遗憾的是它不在debian / ubuntu包存储库中。它可以使用他们提供下载的ppa或bash脚本进行安装。为此,我在debian.rules中有以下规则:

biicode-install:
    wget http://apt.biicode.com/install.sh
    chmod +x install.sh
    ./install.sh
    rm install.sh
    echo "Installed biicode version: "$(bii --version)
    bii setup:cpp

biicode-setup: biicode-install
    # Init project
    bii init -l
    bii find

build: build-stamp
build-stamp: biicode-setup
    dh_testdir

    # Add here commands to compile the package.
    bii cpp:configure || bii cpp:configure
    bii cpp:build
    # --- end custom part for compiling

    touch build-stamp

但是,运行osc构建失败并带有

[   62s]  debian/rules build
[   62s] wget http://apt.biicode.com/install.sh
[   62s] --2015-11-18 18:16:20--  http://apt.biicode.com/install.sh
[   62s] Resolving apt.biicode.com (apt.biicode.com)... failed: Name or service not known.
[   62s] wget: unable to resolve host address `apt.biicode.com'
[   62s] make: *** [biicode-install] Error 4
[   62s] dpkg-buildpackage: error: debian/rules build gave error exit status 2

我使用了许多预定义的存储库(Debian_7.0,Debian_8.0,xUbuntu_15.10,...)进行了测试,并且都遇到了同样的问题。我假设,用于构建的虚拟机没有Internet访问权限。有没有办法让它上网?

或者有没有办法在构建中安装ppa依赖项?我不能在debian.control中使用Build或Build-Depend,因为biicode不在默认存储库中,而是仅作为ppa或bash安装脚本提供。

1 个答案:

答案 0 :(得分:3)

大多数构建系统(OBS,Koji)在构建期间不允许访问Internet。这是故意支持可重现的构建。当你从野外互联网下载一些比特时,没有人能保证明天这些比特是一样的。

您必须自己下载install.sh并将其添加到您的软件包中。