https://github.com/sagemathinc/cocalc
Raw File
Tip revision: f45e8670aa6ec335a9fef7aa282ce4c7019f0eb3 authored by Harald Schilly on 17 October 2019, 12:39:36 UTC
jupyter: fix cells undefined in cell-uils/new_cell_pos -- #4170
Tip revision: f45e867
.travis.yml
# CoCalc Travis-CI Configuration File
sudo: required
dist: xenial

# no need to build all branches
branches:
  only:
    - master

# there is no single language, but python is ok
language: "python"
python: 3.6

# travis supports 8 and 11 (as of winter 2018)
node_js:
  - "8"

cache:
  directories:
  - "$HOME/.npm"

git:
  depth: 3

# we want our database
services:
  - postgresql

# specify postgres version and additional linux packages here
addons:
  postgresql: "10"
  apt:
    update: true
    packages:
      - "python-pip"
      - "python-yaml"
      - "python-pytest"
      - "python3-pip"
      - "python3-pytest"
      - "python3-yaml"

# Travis supports "global" and "build matrix" variables
# http://docs.travis-ci.com/user/environment-variables/
env:
  global: # note: we cannot use $VARs here
    - REPORTER=min # for mocha tests
    - PGUSER='smc'
  matrix:
    # this runs the "normal" tests, NODE_ENV installs devDependencies
    - KUCALC_MODE=false    NODE_ENV=development
    # this just builds the webapp for production (full minifaction, all static pages, etc.)
    - KUCALC_MODE=webapp   NODE_ENV=production CC_COMP_ENV=true
    # this compiles the hub, project, etc. and runs hubs in test mode
    - KUCALC_MODE=services NODE_ENV=production CC_COMP_ENV=true

before_install: []

# installation and setup: make notes about the environment and init&start postgres
before_script:
  - "source /etc/lsb-release"
  - "pip -V"
  - "pip3 -V"
  - "python -V"
  - "node --version"
  - "pytest --version"
  - 'export PGHOST="$TRAVIS_BUILD_DIR/src/dev/project/postgres_data/socket"'
  - "python2 $TRAVIS_BUILD_DIR/src/dev/project/start_postgres.py &"
  - "sleep 10" # for starting up postgres in the background (db init, etc.)

# the setup & compilation of CoCalc
# if broken, this will also trigger a test failure, i.e. that's also a test
install:
  - "pip3 install --upgrade pytest PyYAML"
  - "cd src"
  - "source smc-env"
  - 'if [[ $KUCALC_MODE != "services" ]]; then npm run make; fi'
  - 'if [[ $KUCALC_MODE == "services" ]]; then "$TRAVIS_BUILD_DIR/.travis-install-services.sh"; fi'

# This is the actual testing, which runs in the same directory where `before_script` did end up in.
# A non-zero exit code indicates a failure.
# npm test is the usual, and coverage reporting is disabled
script:
  - 'if [[ $KUCALC_MODE != "services" ]]; then "$TRAVIS_BUILD_DIR/.travis-test.sh"; fi'
  - 'if [[ $KUCALC_MODE == "services" ]]; then "$TRAVIS_BUILD_DIR/.travis-test-services.sh"; fi'

# send coverage report over to https://coveralls.io
#after_success:
#  - if [[ $MODE = "server" ]]; then sh -c 'cat ./coverage/lcov.info | ./node_modules/.bin/coveralls'; fi

notifications:
  email:
    on_success: change
    on_failure: change
back to top