From c8f5fbbad8e65eefb3bc8c0cd9e5cca841f776a7 Mon Sep 17 00:00:00 2001 From: Joerg Steffens Date: Mon, 10 Nov 2014 16:24:09 +0100 Subject: [PATCH] change travis behavior: build and install packages Signed-off-by: Marco van Wieringen --- .travis.yml | 41 ++++++++++++++++++++++++++--------------- test/all | 19 ------------------- 2 files changed, 26 insertions(+), 34 deletions(-) diff --git a/.travis.yml b/.travis.yml index 41dd733af1f..86a82d674a3 100644 --- a/.travis.yml +++ b/.travis.yml @@ -29,10 +29,10 @@ env: # -- END Coverity Scan ENV matrix: - - DB=postgresql CONFIGURE_DB="--with-postgresql" - - DB=mysql CONFIGURE_DB="--with-mysql" - - DB=sqlite CONFIGURE_DB="--with-sqlite3" - - DB=postgresql CONFIGURE_DB="--with-postgresql" COVERITY_SCAN=1 + - DB=postgresql + - DB=mysql + - DB=sqlite3 + - DB=postgresql COVERITY_SCAN=1 matrix: # covertiy scan should only run once and it might fail, @@ -40,25 +40,36 @@ matrix: # We only check when compiled with gcc. exclude: - compiler: clang - env: DB=postgresql CONFIGURE_DB="--with-postgresql" COVERITY_SCAN=1 + env: DB=postgresql COVERITY_SCAN=1 allow_failures: - - env: DB=postgresql CONFIGURE_DB="--with-postgresql" COVERITY_SCAN=1 + - env: DB=postgresql COVERITY_SCAN=1 before_install: + # install build dependencies + # use files instead of shell variables, because travis has some problems supporting variables - sudo apt-get -qq update - - yes "" | sudo apt-get -q --assume-no install acl-dev autotools-dev bc debhelper dpkg-dev hostname libacl1-dev libcap-dev liblzo2-dev libqt4-dev libreadline-dev libssl-dev libwrap0-dev libx11-dev libsqlite3-dev libmysqlclient-dev libpq-dev lsb-release mtx ncurses-dev pkg-config po-debconf python-dev zlib1g-dev + - dpkg-checkbuilddeps 2> /tmp/dpkg-builddeps || true + - sed "s/.*:.*:\s//" /tmp/dpkg-builddeps > /tmp/build_depends + - yes "" | sudo xargs --arg-file /tmp/build_depends apt-get -q --assume-no install before_script: - - ./configure --prefix=/usr --with-sbin-perm=755 --sysconfdir=/etc/bareos --docdir=/usr/share/doc/bareos --htmldir=/usr/share/doc/bareos/html --with-archivedir=/var/lib/bareos/storage --with-scriptdir=/usr/lib/bareos/scripts --with-plugindir=/usr/lib/bareos/plugins --with-working-dir=/var/lib/bareos --with-pid-dir=/var/lib/bareos --with-bsrdir=/var/lib/bareos --with-logdir=/var/log/bareos --with-subsys-dir=/var/lock --enable-smartalloc --disable-conio --enable-readline --enable-batch-insert --enable-dynamic-cats-backends --enable-acl --enable-bat --enable-traymonitor --enable-xattr --enable-scsi-crypto --enable-ipv6 --with-tcp-wrappers --with-openssl --with-dir-user=bareos --with-dir-group=bareos --with-sd-user=bareos --with-sd-group=bareos --with-fd-user=root --with-fd-group=bareos --with-dir-password="XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX" --with-fd-password="XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX" --with-sd-password="XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX" --with-mon-dir-password="XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX" --with-mon-fd-password="XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX" --with-mon-sd-password="XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX" --with-basename="XXX_REPLACE_WITH_LOCAL_HOSTNAME_XXX" --with-hostname="XXX_REPLACE_WITH_LOCAL_HOSTNAME_XXX" ${CONFIGURE_DB} - # --enable-ndmp - - if [ "${COVERITY_SCAN}" = '1' ]; then eval "$COVERITY_SCAN_BUILD"; else make; fi - - for script in $PWD/debian/bareos*.preinst; do echo "$script"; sudo /bin/sh $script install; done - - sudo make install - - sudo make install-autostart - - for script in $PWD/debian/bareos*.postinst; do echo "$script"; sudo /bin/sh $script configure; done + # changelog file is required (and normally generated by OBS) + - cp -a platforms/packaging/bareos.changes debian/changelog + # build Debian packages + - fakeroot debian/rules binary + - [ "${COVERITY_SCAN}" = '1' ]; then eval "$COVERITY_SCAN_BUILD"; fi + # create Debian package repository + - cd .. + - dpkg-scanpackages . /dev/null | gzip > Packages.gz; + - printf 'deb file:%s /\n' $PWD > /tmp/bareos.list + - sudo cp /tmp/bareos.list /etc/apt/sources.list.d/bareos.list + - cd - + # install Bareos packages + - sudo apt-get -qq update + - sudo apt-get install -y --force-yes bareos bareos-database-$DB -# test script script: + # run test script - if [ "${COVERITY_SCAN}" != '1' ]; then sudo -E $PWD/test/all; fi addons: diff --git a/test/all b/test/all index 1adf4ec688b..6e03139fc89 100755 --- a/test/all +++ b/test/all @@ -8,25 +8,6 @@ echo "TRAVIS_BRANCH: $TRAVIS_BRANCH" echo "USER: $USER" echo "DB: $DB" -chown ${daemon_user}:${daemon_group} /etc/bareos/*.conf -chmod ug=rw,o+r /etc/bareos/*.conf -chmod a+rx /etc/bareos/ - -ls -la /etc/bareos/ - -case "$DB" in - postgres*) - su postgres -c /usr/lib/bareos/scripts/create_bareos_database - su postgres -c /usr/lib/bareos/scripts/make_bareos_tables - su postgres -c /usr/lib/bareos/scripts/grant_bareos_privileges - ;; - *) - /usr/lib/bareos/scripts/create_bareos_database - /usr/lib/bareos/scripts/make_bareos_tables - /usr/lib/bareos/scripts/grant_bareos_privileges - ;; -esac - echo "--------- starting services ----------- " service bareos-dir start service bareos-sd start