mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 01:54:15 +00:00
67 lines
1.9 KiB
YAML
67 lines
1.9 KiB
YAML
os: linux
|
|
dist: bionic
|
|
language: node_js
|
|
|
|
# Enable caching for yarn & node_modules
|
|
cache:
|
|
yarn: true
|
|
|
|
node_js:
|
|
- "10"
|
|
- "12"
|
|
|
|
# Install latest chrome (for e2e headless testing). Run an update if needed.
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- google-chrome
|
|
packages:
|
|
- google-chrome-stable
|
|
update: true
|
|
|
|
env:
|
|
# The ci step will test the dspace-angular code against DSpace REST.
|
|
# Direct that step to utilize a DSpace REST service that has been started in docker.
|
|
DSPACE_REST_HOST: localhost
|
|
DSPACE_REST_PORT: 8080
|
|
DSPACE_REST_NAMESPACE: '/server'
|
|
DSPACE_REST_SSL: false
|
|
|
|
before_install:
|
|
# Check our versions of everything
|
|
- echo "Check versions"
|
|
- yarn -v
|
|
- docker-compose -v
|
|
- google-chrome-stable --version
|
|
|
|
install:
|
|
# Start up a test DSpace 7 REST backend using the entities database dump
|
|
- docker-compose -f ./docker/docker-compose-travis.yml up -d
|
|
# Use the dspace-cli image to populate the assetstore. Triggers a discovery and oai update
|
|
- docker-compose -f ./docker/cli.yml -f ./docker/cli.assetstore.yml run --rm dspace-cli
|
|
# Install all local dependencies (retry if initially fails)
|
|
- travis_retry yarn install
|
|
|
|
before_script:
|
|
- echo "Check Docker containers"
|
|
- docker container ls
|
|
# The following line could be enabled to verify that the rest server is responding.
|
|
#- echo "Check REST API available (via Docker)"
|
|
#- curl http://localhost:8080/server/
|
|
|
|
script:
|
|
# build app and run all tests
|
|
- ng lint || travis_terminate 1;
|
|
- travis_wait yarn run build:prod || travis_terminate 1;
|
|
- yarn test:headless || travis_terminate 1;
|
|
- yarn run e2e:ci || travis_terminate 1;
|
|
|
|
after_script:
|
|
# Shutdown docker after everything runs
|
|
- docker-compose -f ./docker/docker-compose-travis.yml down
|
|
|
|
# After a successful build and test (see 'script'), send code coverage reports to codecov.io
|
|
# These code coverage reports are generated by the codecov node module in our package.json
|
|
after_success:
|
|
- codecov
|