Skip to content
This repository has been archived by the owner on Dec 16, 2019. It is now read-only.

travis from iuc #46

Open
wants to merge 1 commit into
base: dev
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
135 changes: 121 additions & 14 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,127 @@

# This is a special configuration file to run tests on Travis-CI via
# GitHub notifications when changes are committed.
#
# See http://travis-ci.org/ for details
# 'sudo required' will give us 7,5 GB memory, but has slower startup times, as we start a VM instead of a Container
sudo: required
language: python
cache: pip

python: 2.7

jobs:
include:
- stage: lint
addons: {}
before_install: skip
install:
- pip install flake8 flake8-import-order planemo
- planemo --version
- git diff --quiet "$TRAVIS_COMMIT_RANGE" -- ; GIT_DIFF_EXIT_CODE=$?
- |
if [ "$GIT_DIFF_EXIT_CODE" -gt 1 ] ; then
git remote set-branches --add origin master
git fetch
TRAVIS_COMMIT_RANGE=origin/master...
fi
- echo $TRAVIS_COMMIT_RANGE
- |
planemo ci_find_repos --exclude_from .tt_skip \
--changed_in_commit_range "$TRAVIS_COMMIT_RANGE" \
--output changed_repositories.list
- cat changed_repositories.list
script:
- set -e
- cd "$TRAVIS_BUILD_DIR" && flake8 --exclude=.git,./deprecated/ .
- while read -r DIR; do planemo shed_lint --tools --ensure_metadata --urls --report_level warn --fail_level error --recursive "$DIR"; done < changed_repositories.list

- stage: test
env: CHUNK=0

env:
- TESTFOLDER=tools/camera_annotate
- TESTFOLDER=tools/camera_combinexsannos
- stage: test
env: CHUNK=1

- stage: test
env: CHUNK=2

- stage: test
env: CHUNK=3

- stage: deploy
if: (type = push) AND (branch = master)
addons: {}
before_install: skip
install:
- pip install planemo
- planemo --version
- git diff --quiet "$TRAVIS_COMMIT_RANGE" -- ; GIT_DIFF_EXIT_CODE=$?
- |
if [ "$GIT_DIFF_EXIT_CODE" -gt 1 ] ; then
git remote set-branches --add origin master
git fetch
TRAVIS_COMMIT_RANGE=origin/master...
fi
- echo $TRAVIS_COMMIT_RANGE
- |
planemo ci_find_repos --exclude_from .tt_skip \
--changed_in_commit_range "$TRAVIS_COMMIT_RANGE" \
--output changed_repositories.list
- cat changed_repositories.list
script:
- set -e
- |
if [ "$TRAVIS_PULL_REQUEST" == "false" -a "$TRAVIS_BRANCH" == "master" ]; then
while read -r DIR; do planemo shed_update --shed_target toolshed --shed_email "$SHED_EMAIL" --shed_password "$SHED_PASSWORD" --force_repository_creation "$DIR" || exit 1; done < changed_repositories.list
elif [ "$TRAVIS_PULL_REQUEST" == "false" -a "$TRAVIS_BRANCH" == "dev" ]; then
while read -r DIR; do planemo shed_update --shed_target testtoolshed --shed_email "$SHED_EMAIL" --shed_password "$SHED_PASSWORD" --force_repository_creation "$DIR" || exit 1; done < changed_repositories.list
fi

before_install:
- sudo apt-get install -y python-virtualenv
- virtualenv planemo-venv
- . planemo-venv/bin/activate
- pip install planemo
- export GALAXY_REPO=https://github.com/galaxyproject/galaxy
- export GALAXY_RELEASE=release_19.01
- export PLANEMO_CONDA_PREFIX="$HOME/conda"
- unset JAVA_HOME

install:
- pip install planemo
- planemo conda_init
- export PATH="$PLANEMO_CONDA_PREFIX/bin:$PATH"
- conda install -y -c conda-forge conda=4.6.8
- planemo --version
- conda --version
- git diff --quiet "$TRAVIS_COMMIT_RANGE" -- ; GIT_DIFF_EXIT_CODE=$?
- |
if [ "$GIT_DIFF_EXIT_CODE" -gt 1 ] ; then
git remote set-branches --add origin master
git fetch
TRAVIS_COMMIT_RANGE=origin/master...
fi
- echo $TRAVIS_COMMIT_RANGE
- |
planemo ci_find_repos --exclude packages \
--exclude_from .tt_skip \
--changed_in_commit_range "$TRAVIS_COMMIT_RANGE" \
--output changed_repositories.list
- touch changed_repositories_chunk.list changed_tools_chunk.list
- |
if [ -s changed_repositories.list ]; then
if [ $(wc -l < changed_repositories.list) -eq 1 ]; then
planemo ci_find_tools --chunk_count 4 --chunk "${CHUNK}" \
--output changed_tools_chunk.list \
$(cat changed_repositories.list)
else
planemo ci_find_repos --chunk_count 4 --chunk "${CHUNK}" \
--output changed_repositories_chunk.list \
$(cat changed_repositories.list)
fi
fi
- cat changed_repositories.list
- cat changed_repositories_chunk.list
- cat changed_tools_chunk.list

script:
- planemo lint ${TRAVIS_BUILD_DIR}/${TESTFOLDER}
- planemo test --galaxy_branch release_18.05 --no_cache_galaxy ${TRAVIS_BUILD_DIR}/${TESTFOLDER}
- set -e
- |
if [ -s changed_tools_chunk.list ]; then
planemo test --conda_dependency_resolution --conda_auto_install --conda_channels iuc,conda-forge,bioconda,defaults --galaxy_branch "$GALAXY_RELEASE" --galaxy_source "$GALAXY_REPO" $(cat changed_tools_chunk.list)
elif [ -s changed_repositories_chunk.list ]; then
while read -r DIR; do
planemo test --conda_dependency_resolution --conda_auto_install --conda_channels iuc,conda-forge,bioconda,defaults --galaxy_branch "$GALAXY_RELEASE" --galaxy_source "$GALAXY_REPO" "$DIR"
done < changed_repositories_chunk.list
fi
Empty file added .tt_skip
Empty file.