123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- ---
- name: Builder
- on:
- push:
- branches:
- - master
- pull_request:
- jobs:
- static-build:
- name: Build (x86_64)
- runs-on: ubuntu-latest
- steps:
- - name: Git clone repository
- uses: actions/checkout@v2
- - run: |
- git fetch --prune --unshallow --tags
- - name: Build
- run: |
- .github/scripts/build-static-x86_64.sh
- source-build:
- name: Build & Install
- strategy:
- fail-fast: false
- matrix:
- distro:
- - 'alpine:edge'
- - 'alpine:3.11'
- - 'alpine:3.10'
- - 'alpine:3.9'
- - 'archlinux:latest'
- #- 'centos:8'
- - 'centos:7'
- - 'clearlinux:latest'
- - 'debian:bullseye'
- - 'debian:buster'
- - 'debian:stretch'
- - 'debian:jessie'
- - 'fedora:32'
- - 'fedora:31'
- - 'opensuse/leap:15.2'
- - 'opensuse/leap:15.1'
- - 'opensuse/tumbleweed:latest'
- - 'ubuntu:20.04'
- - 'ubuntu:19.10'
- - 'ubuntu:18.04'
- - 'ubuntu:16.04'
- include:
- - distro: 'alpine:edge'
- pre: 'apk add -U bash'
- rmjsonc: 'apk del json-c-dev'
- - distro: 'alpine:3.11'
- pre: 'apk add -U bash'
- rmjsonc: 'apk del json-c-dev'
- - distro: 'alpine:3.10'
- pre: 'apk add -U bash'
- rmjsonc: 'apk del json-c-dev'
- - distro: 'alpine:3.9'
- pre: 'apk add -U bash'
- rmjsonc: 'apk del json-c-dev'
- - distro: 'archlinux:latest'
- pre: 'pacman --noconfirm -Sy grep libffi'
- #- distro: 'centos:8'
- #rmjsonc: 'dnf remove -y json-c-devel'
- - distro: 'debian:bullseye'
- pre: 'apt-get update'
- rmjsonc: 'apt-get remove -y libjson-c-dev'
- - distro: 'debian:buster'
- pre: 'apt-get update'
- rmjsonc: 'apt-get remove -y libjson-c-dev'
- - distro: 'debian:stretch'
- pre: 'apt-get update'
- rmjsonc: 'apt-get remove -y libjson-c-dev'
- - distro: 'fedora:32'
- rmjsonc: 'dnf remove -y json-c-devel'
- - distro: 'fedora:31'
- rmjsonc: 'dnf remove -y json-c-devel'
- - distro: 'opensuse/leap:15.2'
- rmjsonc: 'zypper rm -y libjson-c-devel'
- - distro: 'opensuse/leap:15.1'
- rmjsonc: 'zypper rm -y libjson-c-devel'
- - distro: 'opensuse/tumbleweed:latest'
- rmjsonc: 'zypper rm -y libjson-c-devel'
- - distro: 'ubuntu:20.04'
- pre: 'apt-get update'
- rmjsonc: 'apt-get remove -y libjson-c-dev'
- - distro: 'ubuntu:19.10'
- pre: 'apt-get update'
- rmjsonc: 'apt-get remove -y libjson-c-dev'
- - distro: 'ubuntu:18.04'
- pre: 'apt-get update'
- rmjsonc: 'apt-get remove -y libjson-c-dev'
- - distro: 'ubuntu:16.04'
- pre: 'apt-get update'
- rmjsonc: 'apt-get remove -y libjson-c-dev'
- runs-on: ubuntu-latest
- steps:
- - name: Git clone repository
- uses: actions/checkout@v2
- - name: install-required-packages.sh on ${{ matrix.distro }}
- env:
- PRE: ${{ matrix.pre }}
- RMJSONC: ${{ matrix.rmjsonc }}
- run: |
- echo $PRE > ./prep-cmd.sh
- echo $RMJSONC > ./rmjsonc.sh
- docker build . -f .github/dockerfiles/Dockerfile.build_test -t test --build-arg BASE=${{ matrix.distro }}
- - name: Regular build on ${{ matrix.distro }}
- run: |
- docker run -w /netdata test /bin/sh -c 'autoreconf -ivf && ./configure && make -j2'
- - name: netdata-installer on ${{ matrix.distro }}, disable cloud
- run: |
- docker run -w /netdata test /bin/sh -c './netdata-installer.sh --dont-wait --dont-start-it --disable-cloud'
- - name: netdata-installer on ${{ matrix.distro }}, require cloud
- run: |
- docker run -w /netdata test /bin/sh -c './netdata-installer.sh --dont-wait --dont-start-it --require-cloud'
- - name: netdata-installer on ${{ matrix.distro }}, require cloud, no JSON-C
- if: matrix.rmjsonc != ''
- run: |
- docker run -w /netdata test \
- /bin/sh -c '/netdata/rmjsonc.sh && ./netdata-installer.sh --dont-wait --dont-start-it --require-cloud'
|