view .travis.yml @ 5955:5dca9925e8a6

Added tag 2.0.0alpha0 for changeset d7ff9cb70f34
author John Rouillard <rouilj@ieee.org>
date Wed, 23 Oct 2019 14:33:53 -0400
parents f18f12d6ce9a
children 3ada6a3f48e1
line wrap: on
line source

language: python

cache: pip

python:
  - 2.7
  - 3.4
  - 3.5
  - 3.6
  - 3.7
  - 3.8
#  - nightly

#I would like to build and test the maint-1.6 and trunk/default
#but we need different environments for these:
#  maint-1.6 only python 2, install only psycopg2 version with support for
#     psycopg1 
branches:
#  only:
#    - default
#    - maint-1.6

dist:
 - xenial

matrix:
    allow_failures:  # nightly not ready for prime time yet.
      - 3.8
      - nightly

sudo: false

addons:
  apt:
    sources:
      - sourceline: ppa:xapian-backports/ppa

    packages:
      # Required to build/install the xapian-binding
      - libxapian-dev
      # Required to install gpg
      - swig
      # Required to build gpgme.
      - gpgsm

before_install:
  # Sphinx required to build the xapian python bindings
  - pip install sphinx==1.8.5
  - XAPIAN_VER=$(dpkg -l libxapian-dev | tail -n 1 | awk '{print $3}' | cut -d '-' -f 1)
  - cd /tmp
  - curl -s -O https://oligarchy.co.uk/xapian/$XAPIAN_VER/xapian-bindings-$XAPIAN_VER.tar.xz
  - tar -Jxvf xapian-bindings-$XAPIAN_VER.tar.xz
  - cd xapian-bindings-$XAPIAN_VER/
  - if [[ $TRAVIS_PYTHON_VERSION == "2."* ]]; then ./configure --prefix=$VIRTUAL_ENV --with-python; fi
  - if [[ $TRAVIS_PYTHON_VERSION == "3."* ]]; then ./configure --prefix=$VIRTUAL_ENV --with-python3; fi
  - make && make install

  - PATH=$VIRTUAL_ENV/bin:$PATH

  # libgpg-error
  - LIBGPG_ERROR_VERSION=1.32
  - cd /tmp
  - curl -s -O https://www.gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-$LIBGPG_ERROR_VERSION.tar.bz2
  - tar -jxvf libgpg-error-$LIBGPG_ERROR_VERSION.tar.bz2
  - cd libgpg-error-$LIBGPG_ERROR_VERSION
  - ./configure --prefix=$VIRTUAL_ENV
  - make && make install

  # libassuan
  - LIBASSUAN_VERSION=2.5.1
  - cd /tmp
  - curl -s -O https://www.gnupg.org/ftp/gcrypt/libassuan/libassuan-$LIBASSUAN_VERSION.tar.bz2
  - tar -jxvf libassuan-$LIBASSUAN_VERSION.tar.bz2
  - cd libassuan-$LIBASSUAN_VERSION
  - ./configure --prefix=$VIRTUAL_ENV
  - make && make install

  # gpgme
  - GPGME_VERSION=1.11.1
  - cd /tmp
  - curl -s -O https://www.gnupg.org/ftp/gcrypt/gpgme/gpgme-$GPGME_VERSION.tar.bz2
  - tar -jxvf gpgme-$GPGME_VERSION.tar.bz2
  - cd gpgme-$GPGME_VERSION
  - ./configure --prefix=$VIRTUAL_ENV
  - make && make install

  # change back to the checked out repository directory
  - cd $TRAVIS_BUILD_DIR

install:
  - if [[ $TRAVIS_PYTHON_VERSION == "3.4"* ]]; then  pip install mysqlclient==1.3.14; fi
  - if [[ $TRAVIS_PYTHON_VERSION != "3.4"* ]]; then pip install mysqlclient; fi
  - pip install psycopg2
  - pip install gpg pytz whoosh pyjwt
  - pip install pytest-cov codecov

before_script:
  # set up mysql database
  - sudo sed -i -e '/^\[mysqld\]/,/^\[mysql/s/^max_allowed_packet.*/max_allowed_packet = 500M/' /etc/mysql/my.cnf
  - cat /etc/mysql/my.cnf
  - sudo service mysql restart
  - mysql -u root -e 'GRANT ALL ON rounduptest.* TO rounduptest@localhost IDENTIFIED BY "rounduptest";'

  - sudo service postgresql restart; sleep 30
  # set up postgresql database
  - psql -c "CREATE ROLE rounduptest WITH CREATEDB LOGIN PASSWORD 'rounduptest';" -U postgres

  # HACK: workaround mysql bug: http://bugs.mysql.com/bug.php?id=74901
  #   needed for test_mysql.mysqlDBTest.testFilteringSpecialChars
  - sed -i 's/CREATE DATABASE \%s/CREATE DATABASE \%s COLLATE utf8_general_ci/' roundup/backends/back_mysql.py

script:
  - PATH=$VIRTUAL_ENV/bin:$PATH
  - export LD_LIBRARY_PATH=$VIRTUAL_ENV/lib:$LD_LIBRARY_PATH
  - py.test -v test/ --cov=roundup
  

after_success:
  - codecov

Roundup Issue Tracker: http://roundup-tracker.org/