forked from certtools/intelmq
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
50 lines (50 loc) · 2.16 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
sudo: required
dist: trusty
group: edge
language: python
env:
- REQUIREMENTS=true
- REQUIREMENTS=false
python:
- "3.4"
- "3.5"
- "3.6"
install:
- sudo apt-get install dpkg-dev dh-python python-setuptools python3-setuptools python3-all debhelper quilt polipo lighttpd fakeroot dh-systemd
- if [[ $REQUIREMENTS == true ]] ; then for file in intelmq/bots/*/*/REQUIREMENTS.txt; do pip install -r $file; done; fi
- if [[ $TRAVIS_PYTHON_VERSION < '3.5' ]]; then pip install typing; fi
- pip install codecov
- pip install pycodestyle
- sudo sed -i '/^Defaults\tsecure_path.*$/ d' /etc/sudoers
- sudo pip install .
- sudo cp /opt/intelmq/etc/examples/* /opt/intelmq/etc/
before_script:
- if [[ $REQUIREMENTS == true ]] ; then psql -c "CREATE USER intelmq WITH SUPERUSER" -U postgres; fi
- if [[ $REQUIREMENTS == true ]] ; then psql -c "CREATE DATABASE intelmq" -U intelmq template1; fi
- if [[ $REQUIREMENTS == true ]] ; then psql -c "GRANT ALL PRIVILEGES ON DATABASE intelmq TO intelmq" -U intelmq; fi
- if [[ $REQUIREMENTS == true ]] ; then intelmq_psql_initdb; fi
- if [[ $REQUIREMENTS == true ]] ; then sed -i 's/events/tests/g' /tmp/initdb.sql; fi
- if [[ $REQUIREMENTS == true ]] ; then psql -v ON_ERROR_STOP=on -f /tmp/initdb.sql intelmq -U intelmq; fi
- version=$(python3 setup.py --version 2>/dev/null)
- git archive --format=tar.gz HEAD > ../intelmq_$version.orig.tar.gz
- git archive --format=tar.gz --prefix=debian/ HEAD:debian/ > ../intelmq_$version-1.debian.tar.gz
- pushd ..
- mkdir build
- cd build
- tar -xzf ../intelmq_$version.orig.tar.gz
- tar -xzf ../intelmq_$version-1.debian.tar.gz
- popd
- sudo cp intelmq/tests/assets/* /var/www/
script:
- if [[ $REQUIREMENTS == true ]] ; then INTELMQ_TEST_DATABASES=1 INTELMQ_TEST_LOCAL_WEB=1 INTELMQ_TEST_EXOTIC=1 nosetests --with-coverage --cover-package=intelmq --cover-branches; else INTELMQ_TEST_LOCAL_WEB=1 nosetests --with-coverage --cover-package=intelmq --cover-branches; fi
- pycodestyle intelmq/{bots,lib,bin}
- pushd ../build && dpkg-buildpackage -us -uc; popd
services:
- redis-server
- postgresql
- elasticsearch
- mongodb
after_success:
- codecov
addons:
postgresql: "9.4"