AMD64
PHP: 7
Git
addons:
  apt:
    packages:
      - ant
before_script:
  - composer install
  - phpenv config-add travis.php.ini
  - phpenv config-rm xdebug.ini || return 0
cache:
  directories:
    - $HOME/.composer/cache
    - $HOME/download
dist: xenial
language: php
php:
  - 7.0
script:
  - wget 'https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u202-b08/OpenJDK8U-jre_x64_linux_hotspot_8u202b08.tar.gz'
  - tar xfz OpenJDK8U-jre_x64_linux_hotspot_8u202b08.tar.gz
  - ./jdk8u202-b08-jre/bin/java -version
  - java -version
  - CURR_DIR=`pwd`
  - export SOLR_JAVA_HOME="$CURR_DIR/jdk8u202-b08-jre/"
  - echo "SOLR_JAVA_HOME is set to $SOLR_JAVA_HOME"
  - mysql --version
  - mkdir -p tests/workspace/cache tests/workspace/files tests/workspace/log tests/workspace/tmp workspace/tmp
  - cp -p tests/config.ini.template tests/config.ini
  - "sed -i -e \"s!@db.user.name@!root!\" tests/config.ini"
  - "sed -i -e \"s!@db.user.password@!''!\" tests/config.ini"
  - "sed -i -e \"s!@db.name@!opusdb!\" tests/config.ini"
  - "sed -i -e \"s!@db.admin.name@!root!\" tests/config.ini"
  - "sed -i -e \"s!@db.admin.password@!''!\" tests/config.ini"
  - "sed -i -e \"s!@searchengine.default.host@!localhost!\" tests/config.ini"
  - "sed -i -e \"s!@searchengine.default.port@!8983!\" tests/config.ini"
  - "sed -i -e \"s!@searchengine.default.path@!/solr/opus4!\" tests/config.ini"
  - "sed -i -e \"s!@searchengine.index.host@!localhost!\" tests/config.ini"
  - "sed -i -e \"s!@searchengine.index.port@!8983!\" tests/config.ini"
  - "sed -i -e \"s!@searchengine.index.app@!/solr/opus4!\" tests/config.ini"
  - "sed -i -e \"s!@searchengine.extract.host@!localhost!\" tests/config.ini"
  - "sed -i -e \"s!@searchengine.extract.port@!8983!\" tests/config.ini"
  - "sed -i -e \"s!@searchengine.extract.app@!/solr/opus4!\" tests/config.ini"
  - cp -p application/configs/config.ini.template application/configs/config.ini
  - "sed -i -e \"s!@db.user.name@!root!\" application/configs/config.ini"
  - "sed -i -e \"s!@db.user.password@!''!\" application/configs/config.ini"
  - "sed -i -e \"s!@db.name@!opusdb!\" application/configs/config.ini"
  - "sed -i -e \"s!@searchengine.default.host@!localhost!\" application/configs/config.ini"
  - "sed -i -e \"s!@searchengine.default.port@!8983!\" application/configs/config.ini"
  - "sed -i -e \"s!@searchengine.default.path@!/solr/opus4!\" application/configs/config.ini"
  - "sed -i -e \"s!@searchengine.index.host@!localhost!\" application/configs/config.ini"
  - "sed -i -e \"s!@searchengine.index.port@!8983!\" application/configs/config.ini"
  - "sed -i -e \"s!@searchengine.index.app@!/solr/opus4!\" application/configs/config.ini"
  - "sed -i -e \"s!@searchengine.extract.host@!localhost!\" application/configs/config.ini"
  - "sed -i -e \"s!@searchengine.extract.port@!8983!\" application/configs/config.ini"
  - "sed -i -e \"s!@searchengine.extract.app@!/solr/opus4!\" application/configs/config.ini"
  - cp -p application/configs/console.ini.template application/configs/console.ini
  - "sed -i -e \"s!@db.admin.name@!root!\" application/configs/console.ini"
  - "sed -i -e \"s!@db.admin.password@!''!\" application/configs/console.ini"
  - cd tests
  - ./rebuilding_database.sh
  - cd ..
  - mysql opusdb -u root --password='' -e 'SELECT * FROM schema_version'
  - ant download-solr -DsolrVersion=5.5.5
  - cd solr-5.5.5
  - ./bin/solr start
  - ./bin/solr create -c opus4
  - cd server/solr/opus4/conf
  - rm -f managed-schema schema.xml solrconfig.xml
  - ln -s "$TRAVIS_BUILD_DIR/vendor/opus4-repo/search/schema-5.xml" schema.xml
  - ln -s "$TRAVIS_BUILD_DIR/vendor/opus4-repo/search/solrconfig-5.xml" solrconfig.xml
  - cd ../../../../
  - ./bin/solr restart
  - cd ../tests
  - $TRAVIS_BUILD_DIR/vendor/bin/phpunit --configuration phpunit.xml
services:
  - mysql
.travis.yml
language: csharp
notifications:
  slack: unolabs:cbusXPH6pBwZ35rVDzi4k4ve
mono: none
dotnet: 2.2.101
matrix:
  include:
    - os: linux
      dist: xenial
      sudo: false
    - os: osx
      osx_image: xcode9.1
install:
  - npm install
  - dotnet restore
script:
  - node ./mail.js &
  - node ./web.js &
  - node ./tcp.js &
  - node ./ntp.js &
  - cd ./test/Swan.Test/
  - dotnet test Swan.Test.csproj -s .runsettings
after_script:
  - killall -9 node
Build Config
{
  "php": [
    7
  ],
  "dist": "xenial",
  "cache": {
    "directories": [
      "$HOME/.composer/cache",
      "$HOME/download"
    ]
  },
  "addons": {
    "apt": {
      "packages": [
        "ant"
      ]
    }
  },
  "script": [
    "wget 'https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u202-b08/OpenJDK8U-jre_x64_linux_hotspot_8u202b08.tar.gz'",
    "tar xfz OpenJDK8U-jre_x64_linux_hotspot_8u202b08.tar.gz",
    "./jdk8u202-b08-jre/bin/java -version",
    "java -version",
    "CURR_DIR=`pwd`",
    "export SOLR_JAVA_HOME=\"$CURR_DIR/jdk8u202-b08-jre/\"",
    "echo \"SOLR_JAVA_HOME is set to $SOLR_JAVA_HOME\"",
    "mysql --version",
    "mkdir -p tests/workspace/cache tests/workspace/files tests/workspace/log tests/workspace/tmp workspace/tmp",
    "cp -p tests/config.ini.template tests/config.ini",
    "sed -i -e \"s!@db.user.name@!root!\" tests/config.ini",
    "sed -i -e \"s!@db.user.password@!''!\" tests/config.ini",
    "sed -i -e \"s!@db.name@!opusdb!\" tests/config.ini",
    "sed -i -e \"s!@db.admin.name@!root!\" tests/config.ini",
    "sed -i -e \"s!@db.admin.password@!''!\" tests/config.ini",
    "sed -i -e \"s!@searchengine.default.host@!localhost!\" tests/config.ini",
    "sed -i -e \"s!@searchengine.default.port@!8983!\" tests/config.ini",
    "sed -i -e \"s!@searchengine.default.path@!/solr/opus4!\" tests/config.ini",
    "sed -i -e \"s!@searchengine.index.host@!localhost!\" tests/config.ini",
    "sed -i -e \"s!@searchengine.index.port@!8983!\" tests/config.ini",
    "sed -i -e \"s!@searchengine.index.app@!/solr/opus4!\" tests/config.ini",
    "sed -i -e \"s!@searchengine.extract.host@!localhost!\" tests/config.ini",
    "sed -i -e \"s!@searchengine.extract.port@!8983!\" tests/config.ini",
    "sed -i -e \"s!@searchengine.extract.app@!/solr/opus4!\" tests/config.ini",
    "cp -p application/configs/config.ini.template application/configs/config.ini",
    "sed -i -e \"s!@db.user.name@!root!\" application/configs/config.ini",
    "sed -i -e \"s!@db.user.password@!''!\" application/configs/config.ini",
    "sed -i -e \"s!@db.name@!opusdb!\" application/configs/config.ini",
    "sed -i -e \"s!@searchengine.default.host@!localhost!\" application/configs/config.ini",
    "sed -i -e \"s!@searchengine.default.port@!8983!\" application/configs/config.ini",
    "sed -i -e \"s!@searchengine.default.path@!/solr/opus4!\" application/configs/config.ini",
    "sed -i -e \"s!@searchengine.index.host@!localhost!\" application/configs/config.ini",
    "sed -i -e \"s!@searchengine.index.port@!8983!\" application/configs/config.ini",
    "sed -i -e \"s!@searchengine.index.app@!/solr/opus4!\" application/configs/config.ini",
    "sed -i -e \"s!@searchengine.extract.host@!localhost!\" application/configs/config.ini",
    "sed -i -e \"s!@searchengine.extract.port@!8983!\" application/configs/config.ini",
    "sed -i -e \"s!@searchengine.extract.app@!/solr/opus4!\" application/configs/config.ini",
    "cp -p application/configs/console.ini.template application/configs/console.ini",
    "sed -i -e \"s!@db.admin.name@!root!\" application/configs/console.ini",
    "sed -i -e \"s!@db.admin.password@!''!\" application/configs/console.ini",
    "cd tests",
    "./rebuilding_database.sh",
    "cd ..",
    "mysql opusdb -u root --password='' -e 'SELECT * FROM schema_version'",
    "ant download-solr -DsolrVersion=5.5.5",
    "cd solr-5.5.5",
    "./bin/solr start",
    "./bin/solr create -c opus4",
    "cd server/solr/opus4/conf",
    "rm -f managed-schema schema.xml solrconfig.xml",
    "ln -s \"$TRAVIS_BUILD_DIR/vendor/opus4-repo/search/schema-5.xml\" schema.xml",
    "ln -s \"$TRAVIS_BUILD_DIR/vendor/opus4-repo/search/solrconfig-5.xml\" solrconfig.xml",
    "cd ../../../../",
    "./bin/solr restart",
    "cd ../tests",
    "$TRAVIS_BUILD_DIR/vendor/bin/phpunit --configuration phpunit.xml"
  ],
  "language": "php",
  "services": [
    "mysql"
  ],
  "before_script": [
    "composer install",
    "phpenv config-add travis.php.ini",
    "phpenv config-rm xdebug.ini || return 0"
  ]
}