language: c notifications: irc: - "chat.freenode.net#ossec-dev" slack: secure: Cz1InEL5G+z2huuzilXe7BqfxlEjN4io5ylJa5jgPvGMlB5sIQZTQQ7PDrzcK0iwn+5xgDkXKwbNPV2k+NHNTtNFiuBrcnJbyeA8PjghtAw4hg/Vpl5+5ovySZT9pGSV7ySsA8nGD73hlcQFgWnYDhsugQ6UZyRXAN8vLLCLjPg= env: - DB=mysql OSSEC_TYPE=server GEOIP=yes - DB=mysql OSSEC_TYPE=server GEOIP=no - DB=pgsql OSSEC_TYPE=server GEOIP=yes - DB=pgsql OSSEC_TYPE=server GEOIP=no - DB=none OSSEC_TYPE=server GEOIP=yes - DB=none OSSEC_TYPE=server GEOIP=no - DB=none OSSEC_TYPE=server PRELUDE=yes ZEROMQ=yes - DB=none OSSEC_TYPE=server ZLIB_SYSTEM=yes LUA_ENABLE=no - DB=none OSSEC_TYPE=local GEOIP=no - DB=none OSSEC_TYPE=hybrid GEOIP=no - DB=none OSSEC_TYPE=agent GEOIP=no - DB=none OSSEC_TYPE=winagent GEOIP=no - OSSEC_TYPE=test - OSSEC_TYPE=server RULES=test compiler: - gcc - clang matrix: fast_finish: true exclude: - compiler: clang env: DB=none OSSEC_TYPE=winagent GEOIP=no - compiler: clang env: OSSEC_TYPE=server RULES=test before_script: - sudo apt-get update -qq - ( wget https://ftp.pcre.org/pub/pcre/pcre2-10.32.tar.gz && tar xzf pcre2-10.32.tar.gz -C src/external ) - if [[ "${GEOIP}" == "yes" ]]; then ( sudo apt-get install geoip-bin geoip-database libgeoip-dev libgeoip1 ); fi - if [[ "${PRELUDE}" == "yes" ]]; then ( sudo apt-get install libprelude-dev ); fi - if [[ "${ZEROMQ}" == "yes" ]]; then ( sudo apt-get install libzmq3-dev libtool autoconf && wget https://github.com/zeromq/czmq/archive/v2.2.0.tar.gz && tar xfz v2.2.0.tar.gz && cd czmq-2.2.0/ && ./autogen.sh && ./configure && make all -j && sudo make install ); fi - if [[ "${OSSEC_TYPE}" == "winagent" ]]; then ( sudo apt-get install aptitude && sudo aptitude -y install mingw-w64 nsis ); fi - if [[ "${OSSEC_TYPE}" == "server" ]]; then ( sudo apt-get install libsqlite3-dev sqlite3 ); fi - if [[ "${OSSEC_TYPE}" == "test" ]]; then ( sudo apt-get update && sudo apt-get install check valgrind ); fi script: - COMMAND="V=1 TARGET=${OSSEC_TYPE}" && if ! [[ "${DB}" = "none" ]]; then COMMAND="${COMMAND} DATABASE=${DB}"; fi && if [[ "${GEOIP}" = "yes" ]]; then COMMAND="${COMMAND} USE_GEOIP=1"; fi && if [[ "${PRELUDE}" = "yes" ]]; then COMMAND="${COMMAND} USE_PRELUDE=1"; fi && if [[ "${ZEROMQ}" = "yes" ]]; then COMMAND="${COMMAND} USE_ZEROMQ=1"; fi && if [[ "${OSSEC_TYPE}" = "test" ]]; then COMMAND="${COMMAND} USE_PCRE2_JIT=0"; fi && ( cd src/ && make --warn-undefined-variables ${COMMAND} settings && make --warn-undefined-variables ${COMMAND} external -j && make --warn-undefined-variables ${COMMAND} -j ) && if ! [[ "${OSSEC_TYPE}" = "test" || "${OSSEC_TYPE}" = "winagent" ]]; then ( cd src/ && sudo make --warn-undefined-variables ${COMMAND} install ) fi - if [[ "${OSSEC_TYPE}" == "test" ]]; then ( cd src/ && make --warn-undefined-variables test_valgrind ) fi - if [[ "${RULES}" == "test" ]]; then ( cd src/ && sudo make V=1 TARGET=server test-rules ) fi deploy: provider: releases api_key: secure: "DiVPTCt1C8XCmFlzcpmFkqfRmxz85/RCE2euvU/c1EiABjfO20aZARCC9zsepAwAGWWsq3uGRLp0aVuJuh4LvTdGxIJDOqYR8z1pByfY4epgE7zmRCIWjx+nAwBpLlfYalMWFpt7vmPp9mKycFkUR2NFoiEfOgoO9wGN0ZgmwSM=" file: src/win-pkg/ossec-win32-agent.exe skip_cleanup: true on: tags: true all_branches: true repo: ossec/ossec-hids condition: $OSSEC_TYPE = winagent