summaryrefslogtreecommitdiffstats
path: root/.travis.yml
blob: 248e627a26d87dbf87e53b9ab4921e9ab033798f (plain)
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
dist: trusty
sudo: true
language: c
services:
- docker

stages:
- test
- build
- name: packaging
  if: branch = master AND type != pull_request AND type != cron
- name: nightlies
  if: branch = master AND type = cron

jobs:
  include:
  - stage: test
    name: C
    install: sudo apt-get install -y libcap2-bin zlib1g-dev uuid-dev fakeroot libipmimonitoring-dev libmnl-dev libnetfilter-acct-dev
    script: fakeroot ./netdata-installer.sh --install $HOME --dont-wait --dont-start-it --enable-plugin-nfacct --enable-plugin-freeipmi --disable-lto && $HOME/netdata/usr/sbin/netdata -W unittest
    env: CFLAGS='-O1 -DNETDATA_INTERNAL_CHECKS=1 -DNETDATA_VERIFY_LOCKS=1'
  - name: dashboard.js
    script: cp web/gui/dashboard.js /tmp/dashboard.js && ./build/build.sh && diff /tmp/dashboard.js web/gui/dashboard.js
  - name: coverity
    install: sudo apt-get install -y zlib1g-dev uuid-dev libipmimonitoring-dev libmnl-dev libnetfilter-acct-dev
    script: ./coverity-scan.sh || echo "Coverity failed :("
    env: INSTALL_COVERITY="true"
    if: type = cron

  - stage: build
# TODO(paulfantom): enable when travis OSX become stable. Probably after 12.01.2019
#    name: OSX
#    install: brew install fakeroot ossp-uuid
#    script: fakeroot ./netdata-installer.sh --install $HOME --dont-wait --dont-start-it
#    os: osx
#  - name: ubuntu 14.04 (not containerized)
    name: ubuntu 14.04 (not containerized)
    install: sudo apt-get install -y libcap2-bin zlib1g-dev uuid-dev fakeroot
    script: fakeroot ./netdata-installer.sh --dont-wait --dont-start-it --install $HOME
  - name: build container (alpine installation)
    script: ./packaging/docker/build.sh
    env: DEVEL="true"
  - name: ubuntu 18.04 + lifecycle
    script: docker run -it -v "${PWD}:/code:rw" -w /code "netdata/os-test:ubuntu1804" bats --tap tests/lifecycle.bats
  - name: CentOS 7
    script: docker run -it -v "${PWD}:/code:rw" -w /code "netdata/os-test:centos7" ./netdata-installer.sh --dont-wait --dont-start-it --install /tmp
  - name: CentOS 6
    script: docker run -it -v "${PWD}:/code:rw" -w /code "netdata/os-test:centos6" ./netdata-installer.sh --dont-wait --dont-start-it --install /tmp

  - stage: packaging
    name: Create release (only on special commit msg)
    install:
    - sudo apt-get install -y gnupg libcap2-bin zlib1g-dev uuid-dev fakeroot python-pip
    - sudo apt install -y --only-upgrade docker-ce
    - docker info
    before_script: sudo pip install git-semver
    script: ".travis/releaser.sh && .travis/labeler.sh" # labeler should be replaced with GitHub Actions when they hit GA
    git:
      depth: false

  - stage: nightlies
    name: Nightly build
    before_install: openssl aes-256-cbc -K $encrypted_8daf19481253_key -iv $encrypted_8daf19481253_iv -in .travis/gcs-credentials.json.enc -out .travis/gcs-credentials.json -d
    install:
    - sudo apt-get install -y gnupg libcap2-bin zlib1g-dev uuid-dev fakeroot
    - sudo apt install -y --only-upgrade docker-ce
    - docker info
    script: ".travis/nightlies.sh"
    git:
      depth: false
    deploy:
      provider: gcs
      edge:
        branch: gcs-ng
      project_id: netdata-storage
      credentials: .travis/gcs-credentials.json
      bucket: "netdata-nightlies"
      skip_cleanup: true
      local_dir: "artifacts"

notifications:
  webhooks: https://app.fossa.io/hooks/travisci
  slack:
    rooms:
      - secure: "NuW1p7s+WGLcyhEceeiLRSV1JgAc6N47zgdSsYoxrjSFRQHDfc8jensypDcEJwgs1K2Hcve9iKRaAddEHEw7AkS6rie9gFR5HmmbKXfW2GFMqOr6maYTFsvaECPqiWk1n9/XnRLsAi5kZ8HxH+a8ldb/eaVoFQesY1jPXgh11BM5DwvpXjEtwg0WGASsKiymvnXFS3KcC+sR7Lln2GX1a8vfCX2I3TEmOedKMlSHUy5JilGGC3AWA0SWS8tR8PUH0u3dHL5j0RNIr1RO3Yx24QgUpg/YpvKymnW/iIIEOq2vb2mBhhiKEQjJ1djUL4VSPzjIDpUzThVpKaHk3syOp6W9qZEHKhR/sqjc5Yk2XRjsw1cM0nS60gaCgxtKhEMKWcjtvWf04oJAVrmcUwcYXj0eA+jgRCZl5VhyufK/fUJavjOfsQGjwhdjxQfwDCw33W17ypJUt4GZngdb6jbIhEOcKHSLQDu1vuHTw82hJJkthkmR59PX30qJdl/MEGcfVLdN/fkCokjR/qwfmkNwQm+wYSKsK/Jq4RgBT0/oZwY3e8nkCq2ov7lBbDO3/0rzQKWZ9Uy//tnoCM3vGhDwGHQxsHshv7g6KwdhYTcmm7WWWIucfLupcjFUO1HbRuJ+7ZnvxRRwKiV+MGkFT2SNJkS8q1/jCu9KGbmktd0WUSE="