+++ /dev/null
-# Redmine runs tests on own continuous integration server.
-# http://www.redmine.org/projects/redmine/wiki/Continuous_integration
-# You can also run tests on your environment.
-language: ruby
-rvm:
- - 1.9.3
- - 2.0
- - 2.1
- - 2.2
- - jruby-9.0.1.0
- - jruby
-env:
- - "SUITE=units DB=postgresql"
- - "SUITE=functionals DB=postgresql"
- - "SUITE=integration DB=postgresql"
- - "SUITE=ui DB=postgresql"
- - "SUITE=units DB=postgresql-8.4"
- - "SUITE=functionals DB=postgresql-8.4"
- - "SUITE=integration DB=postgresql-8.4"
- - "SUITE=ui DB=postgresql-8.4"
- - "SUITE=units DB=postgresql-9.1"
- - "SUITE=functionals DB=postgresql-9.1"
- - "SUITE=integration DB=postgresql-9.1"
- - "SUITE=ui DB=postgresql-9.1"
- - "SUITE=units DB=postgresql-9.2"
- - "SUITE=functionals DB=postgresql-9.2"
- - "SUITE=integration DB=postgresql-9.2"
- - "SUITE=ui DB=postgresql-9.2"
- - "SUITE=units DB=postgresql-9.3"
- - "SUITE=functionals DB=postgresql-9.3"
- - "SUITE=integration DB=postgresql-9.3"
- - "SUITE=ui DB=postgresql-9.3"
- - "SUITE=units DB=postgresql-9.4"
- - "SUITE=functionals DB=postgresql-9.4"
- - "SUITE=integration DB=postgresql-9.4"
- - "SUITE=ui DB=postgresql-9.4"
- - "SUITE=units DB=postgresql-9.5"
- - "SUITE=functionals DB=postgresql-9.5"
- - "SUITE=integration DB=postgresql-9.5"
- - "SUITE=ui DB=postgresql-9.5"
- - "SUITE=units DB=mysql-5.5"
- - "SUITE=functionals DB=mysql-5.5"
- - "SUITE=integration DB=mysql-5.5"
- - "SUITE=ui DB=mysql-5.5"
- - "SUITE=units DB=mysql-5.6"
- - "SUITE=functionals DB=mysql-5.6"
- - "SUITE=integration DB=mysql-5.6"
- - "SUITE=ui DB=mysql-5.6"
- - "SUITE=units DB=mysql-5.7-dmr"
- - "SUITE=functionals DB=mysql-5.7-dmr"
- - "SUITE=integration DB=mysql-5.7-dmr"
- - "SUITE=ui DB=mysql-5.7-dmr"
- - "SUITE=units DB=mariadb-5.5"
- - "SUITE=functionals DB=mariadb-5.5"
- - "SUITE=integration DB=mariadb-5.5"
- - "SUITE=ui DB=mariadb-5.5"
- - "SUITE=units DB=mariadb-10.0"
- - "SUITE=functionals DB=mariadb-10.0"
- - "SUITE=integration DB=mariadb-10.0"
- - "SUITE=ui DB=mariadb-10.0"
- - "SUITE=units DB=sqlite3"
- - "SUITE=functionals DB=sqlite3"
- - "SUITE=integration DB=sqlite3"
- - "SUITE=ui DB=sqlite3"
-matrix:
- allow_failures:
- # http://www.redmine.org/issues/20251
- - env: "SUITE=ui DB=postgresql"
- - env: "SUITE=ui DB=mysql-5.5"
- - env: "SUITE=ui DB=mysql-5.6"
- - env: "SUITE=ui DB=mysql-5.7-dmr"
- - env: "SUITE=ui DB=mariadb-5.5"
- - env: "SUITE=ui DB=mariadb-10.0"
- - env: "SUITE=ui DB=sqlite3"
- - env: "SUITE=units DB=mysql-5.7-dmr"
- - env: "SUITE=functionals DB=mysql-5.7-dmr"
- - env: "SUITE=integration DB=mysql-5.7-dmr"
- - env: "SUITE=ui DB=postgresql-8.4"
- - env: "SUITE=ui DB=postgresql-9.1"
- - env: "SUITE=ui DB=postgresql-9.2"
- - env: "SUITE=ui DB=postgresql-9.3"
- - env: "SUITE=ui DB=postgresql-9.4"
- - env: "SUITE=ui DB=postgresql-9.5"
- - rvm: jruby-9.0.1.0
- # SCM tests fail randomly due to IO.popen().
- # http://www.redmine.org/issues/19091
- # https://github.com/jruby/jruby/issues/779
- - rvm: jruby
- # http://www.redmine.org/issues/17460
- # http://www.redmine.org/issues/19344
- - env: "SUITE=units DB=mysql-5.6"
- - env: "SUITE=units DB=mysql-5.7-dmr"
- - env: "SUITE=units DB=mariadb-5.5"
- - env: "SUITE=units DB=mariadb-10.0"
-before_install:
- # https://github.com/travis-ci/travis-ci/issues/4720
- - if [[ ${TRAVIS_RUBY_VERSION} =~ jruby-9\.0 ]] ;
- then
- rvm get master ;
- rvm use ${TRAVIS_RUBY_VERSION} --install ;
- ruby --version ;
- fi
- - "sudo apt-get update -qq"
- - "sudo apt-get --no-install-recommends install bzr cvs git mercurial subversion"
- - dpkg -l '*mysql*'
- - if [[ $DB =~ (mariadb|mysql-5\.[67]) ]] ;
- then
- sudo service mysql stop ;
- sudo apt-get install python-software-properties ;
- if [[ $DB =~ mariadb ]] ;
- then
- sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db ;
- MARIADB_VER=`echo $DB | sed -e 's/mariadb-//'` ;
- sudo add-apt-repository ''"deb http://ftp.osuosl.org/pub/mariadb/repo/${MARIADB_VER}/ubuntu precise main"'' ;
- sudo cp test/travis/mariadb.pref /etc/apt/preferences.d/mariadb.pref ;
- sudo apt-get update ;
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q --yes --force-yes -f --option DPkg::Options::=--force-confnew install mariadb-server ;
- sudo apt-get install libmariadbd-dev ;
- else
- echo mysql-apt-config mysql-apt-config/enable-repo select $DB | sudo debconf-set-selections ;
- wget http://dev.mysql.com/get/mysql-apt-config_0.2.1-1ubuntu12.04_all.deb ;
- sudo dpkg --install mysql-apt-config_0.2.1-1ubuntu12.04_all.deb ;
- sudo apt-get update -q ;
- sudo apt-get install -q -y -o Dpkg::Options::=--force-confnew mysql-server ;
- fi
- elif [[ $DB =~ postgresql ]] ;
- then
- if [[ $DB =~ postgresql- ]] ;
- then
- PG_VER=`echo $DB | sed -e 's/postgresql-//'` ;
- sudo service postgresql stop ;
- sudo apt-get -y -qq --purge remove postgresql libpq-dev libpq5 postgresql-client-common postgresql-common ;
- sudo rm -rf /var/lib/postgresql ;
- sudo sh -c "echo deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main ${PG_VER} >> /etc/apt/sources.list.d/pgdg.list" ;
- wget --quiet -O - http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc | sudo apt-key add - ;
- sudo apt-get update -qq ;
- sudo apt-get -y -o Dpkg::Options::=--force-confdef -o Dpkg::Options::="--force-confnew" install postgresql-${PG_VER} postgresql-contrib-${PG_VER} postgresql-server-dev-${PG_VER} ;
- echo "local all all trust" | sudo tee /etc/postgresql/${PG_VER}/main/pg_hba.conf ;
- echo "host all all 127.0.0.1/32 trust" | sudo tee -a /etc/postgresql/${PG_VER}/main/pg_hba.conf ;
- echo "host all all ::1/128 trust" | sudo tee -a /etc/postgresql/${PG_VER}/main/pg_hba.conf ;
- sudo service postgresql restart ;
- fi ;
- psql --version ;
- psql -c "SHOW SERVER_VERSION" -U postgres ;
- psql -c "SHOW SERVER_ENCODING" -U postgres ;
- psql -c "SHOW DateStyle" -U postgres ;
- fi
- - sudo sh -x test/travis/install-openldap.sh
-script:
- - export DATABASE_ADAPTER=${DB}
- - "SCMS=bazaar,cvs,subversion,git,mercurial,filesystem"
- - "export SCMS"
- - "git --version"
- - "bundle install"
- - "RUN_ON_NOT_OFFICIAL='' RUBY_VER=1.9 BRANCH=trunk bundle exec rake config/database.yml"
- - "bundle install"
- - "bundle exec rake ci:setup"
- - phantomjs --webdriver 4444 &
- - JRUBY_OPTS='-J-Xmx1024m -J-XX:MaxPermSize=1024m' bundle exec rake test:${SUITE}
-notifications:
- email: false