new upstream release (3.3.0); modify package compatibility for Stretch
[ossec-hids.git] / .travis.yml
1 language: c
2
3 notifications:
4   irc:
5     - "chat.freenode.net#ossec-dev"
6   slack:
7     secure: Cz1InEL5G+z2huuzilXe7BqfxlEjN4io5ylJa5jgPvGMlB5sIQZTQQ7PDrzcK0iwn+5xgDkXKwbNPV2k+NHNTtNFiuBrcnJbyeA8PjghtAw4hg/Vpl5+5ovySZT9pGSV7ySsA8nGD73hlcQFgWnYDhsugQ6UZyRXAN8vLLCLjPg=
8
9 env:
10 - DB=mysql OSSEC_TYPE=server GEOIP=yes
11 - DB=mysql OSSEC_TYPE=server GEOIP=no
12 - DB=pgsql OSSEC_TYPE=server GEOIP=yes
13 - DB=pgsql OSSEC_TYPE=server GEOIP=no
14 - DB=none OSSEC_TYPE=server GEOIP=yes
15 - DB=none OSSEC_TYPE=server GEOIP=no
16 - DB=none OSSEC_TYPE=server PRELUDE=yes ZEROMQ=yes
17 - DB=none OSSEC_TYPE=server ZLIB_SYSTEM=yes LUA_ENABLE=no
18 - DB=none OSSEC_TYPE=local GEOIP=no
19 - DB=none OSSEC_TYPE=hybrid GEOIP=no
20 - DB=none OSSEC_TYPE=agent GEOIP=no
21 - DB=none OSSEC_TYPE=winagent GEOIP=no
22 - OSSEC_TYPE=test
23 - OSSEC_TYPE=server RULES=test
24
25
26 compiler:
27 - gcc
28 - clang
29
30
31 matrix:
32   fast_finish: true
33   exclude:
34     - compiler: clang
35       env: DB=none OSSEC_TYPE=winagent GEOIP=no
36     - compiler: clang
37       env: OSSEC_TYPE=server RULES=test
38
39
40
41 before_script:
42 - sudo apt-get update -qq
43 - ( wget https://ftp.pcre.org/pub/pcre/pcre2-10.32.tar.gz
44   && tar xzf pcre2-10.32.tar.gz -C src/external )
45 - if [[ "${GEOIP}" == "yes"  ]]; then ( sudo apt-get install geoip-bin geoip-database libgeoip-dev libgeoip1 ); fi
46 - if [[ "${PRELUDE}" == "yes" ]]; then ( sudo apt-get install libprelude-dev ); fi
47 - if [[ "${ZEROMQ}" == "yes" ]]; then ( sudo apt-get install libzmq3-dev libtool autoconf
48   && wget https://github.com/zeromq/czmq/archive/v2.2.0.tar.gz
49   && tar xfz v2.2.0.tar.gz && cd czmq-2.2.0/ && ./autogen.sh
50   && ./configure && make all -j && sudo make install
51   ); fi
52 - if [[ "${OSSEC_TYPE}" == "winagent" ]]; then ( sudo apt-get install aptitude && sudo aptitude -y install mingw-w64 nsis ); fi
53 - if [[ "${OSSEC_TYPE}" == "server" ]]; then ( sudo apt-get install libsqlite3-dev sqlite3 ); fi
54 - if [[ "${OSSEC_TYPE}" == "test" ]]; then ( sudo apt-get update && sudo apt-get install check valgrind ); fi
55
56
57 script:
58 - COMMAND="V=1 TARGET=${OSSEC_TYPE}"
59   && if ! [[ "${DB}" = "none" ]]; then COMMAND="${COMMAND} DATABASE=${DB}"; fi
60   && if [[ "${GEOIP}" = "yes" ]]; then COMMAND="${COMMAND} USE_GEOIP=1"; fi
61   && if [[ "${PRELUDE}" = "yes" ]]; then COMMAND="${COMMAND} USE_PRELUDE=1"; fi
62   && if [[ "${ZEROMQ}" = "yes" ]]; then COMMAND="${COMMAND} USE_ZEROMQ=1"; fi
63   && if [[ "${OSSEC_TYPE}" = "test" ]]; then COMMAND="${COMMAND} USE_PCRE2_JIT=0"; fi
64   && ( cd src/
65      && make --warn-undefined-variables ${COMMAND} settings
66      && make --warn-undefined-variables ${COMMAND} external -j
67      && make --warn-undefined-variables ${COMMAND} -j )
68   && if ! [[ "${OSSEC_TYPE}" = "test" || "${OSSEC_TYPE}" = "winagent" ]]; then ( cd src/ && sudo make --warn-undefined-variables ${COMMAND} install ) fi
69
70 - if [[ "${OSSEC_TYPE}" == "test" ]]; then ( cd src/ && make --warn-undefined-variables test_valgrind ) fi
71 - if [[ "${RULES}" == "test" ]]; then ( cd src/ && sudo make V=1 TARGET=server test-rules ) fi
72
73
74 deploy:
75   provider: releases
76   api_key:
77     secure: "DiVPTCt1C8XCmFlzcpmFkqfRmxz85/RCE2euvU/c1EiABjfO20aZARCC9zsepAwAGWWsq3uGRLp0aVuJuh4LvTdGxIJDOqYR8z1pByfY4epgE7zmRCIWjx+nAwBpLlfYalMWFpt7vmPp9mKycFkUR2NFoiEfOgoO9wGN0ZgmwSM="
78   file: src/win-pkg/ossec-win32-agent.exe
79   skip_cleanup: true
80   on:
81     tags: true
82     all_branches: true
83     repo: ossec/ossec-hids
84     condition: $OSSEC_TYPE = winagent
85