diff options
Diffstat (limited to '.github')
-rw-r--r-- | .github/dockerfiles/Dockerfile.build_test | 11 | ||||
-rw-r--r-- | .github/workflows/build-and-install.yml (renamed from .github/workflows/installer.yml) | 38 | ||||
-rw-r--r-- | .github/workflows/build.yml | 72 |
3 files changed, 34 insertions, 87 deletions
diff --git a/.github/dockerfiles/Dockerfile.build_test b/.github/dockerfiles/Dockerfile.build_test new file mode 100644 index 0000000000..1dc3e303d6 --- /dev/null +++ b/.github/dockerfiles/Dockerfile.build_test @@ -0,0 +1,11 @@ +ARG BASE + +FROM ${BASE} + +ARG PRE +ENV PRE=${PRE} + +COPY . /netdata + +RUN /bin/sh /netdata/prep-cmd.sh +RUN /netdata/packaging/installer/install-required-packages.sh --dont-wait --non-interactive netdata-all diff --git a/.github/workflows/installer.yml b/.github/workflows/build-and-install.yml index b14536a8f1..3bbc99d335 100644 --- a/.github/workflows/installer.yml +++ b/.github/workflows/build-and-install.yml @@ -1,20 +1,17 @@ --- -name: Installer +name: Builder on: push: branches: - master - paths: - - 'packaging/installer/install-required-packages.sh' pull_request: - paths: - - 'packaging/installer/install-required-packages.sh' jobs: - install-required-packages: - name: Required Packages + build: + name: Build & Install strategy: matrix: distro: + - 'alpine:edge' - 'alpine:3.11' - 'alpine:3.10' - 'alpine:3.9' @@ -22,22 +19,22 @@ jobs: - 'centos:8' - 'centos:7' - 'centos:6' + - 'debian:bullseye' - 'debian:buster' - - 'debian:jessie' - 'debian:stretch' + - 'debian:jessie' - 'fedora:31' - 'fedora:30' - - 'fedora:29' - 'opensuse/leap:15.2' - 'opensuse/leap:15.1' - - 'opensuse/leap:15.0' - 'opensuse/tumbleweed:latest' - 'ubuntu:20.04' - 'ubuntu:19.10' - - 'ubuntu:19.04' - 'ubuntu:18.04' - 'ubuntu:16.04' include: + - distro: 'alpine:edge' + pre: 'apk add -U bash' - distro: 'alpine:3.11' pre: 'apk add -U bash' - distro: 'alpine:3.10' @@ -48,12 +45,16 @@ jobs: - distro: 'archlinux:latest' pre: 'pacman --noconfirm -Sy grep' - - distro: 'debian:buster' + - distro: 'debian:bullseye' pre: 'apt-get update' - - distro: 'debian:jessie' + - distro: 'debian:buster' pre: 'apt-get update' - distro: 'debian:stretch' pre: 'apt-get update' + - distro: 'debian:jessie' + pre: > + echo "deb http://archive.debian.org/debian/ jessie-backports main contrib non-free" >> /etc/apt/sources.list.d/99-archived.list && + apt-get update -o Acquire::Check-Valid-Until=false - distro: 'ubuntu:20.04' pre: 'apt-get update' @@ -69,8 +70,15 @@ jobs: steps: - name: Git clone repository uses: actions/checkout@v2 - - name: Test installed-required-packages.sh on ${{ matrix.distro }} + - name: install-required-packages.sh on ${{ matrix.distro }} env: PRE: ${{ matrix.pre }} run: | - docker run --rm -e PRE -v $PWD:/netdata -w /netdata ${{ matrix.distro }} /bin/sh -c '[ -n "${PRE}" ] && ${PRE}; ./packaging/installer/install-required-packages.sh --dont-wait --non-interactive' + echo $PRE > ./prep-cmd.sh + docker build . -f .github/dockerfiles/Dockerfile.build_test -t build_test --build-arg BASE=${{ matrix.distro }} + - name: Regular build on ${{ matrix.distro }} + run: | + docker run --rm -e PRE -w /netdata build_test /bin/sh -c 'autoreconf -ivf && ./configure && make -j2' + - name: netdata-installer on ${{ matrix.distro }} + run: | + docker run --rm -e PRE -w /netdata build_test /bin/sh -c './netdata-installer.sh --dont-wait --dont-start-it' diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml deleted file mode 100644 index de5e347073..0000000000 --- a/.github/workflows/build.yml +++ /dev/null @@ -1,72 +0,0 @@ ---- -name: Builder -on: - push: - branches: - - master - pull_request: -jobs: - build: - name: Build - strategy: - matrix: - distro: - - 'alpine:3.11' - - 'alpine:3.10' - - 'alpine:3.9' - - 'archlinux:latest' - #- 'centos:8' - - 'centos:7' - - 'centos:6' - - 'debian:bullseye' - - 'debian:buster' - - 'debian:stretch' - - 'fedora:31' - - 'fedora:30' - - 'fedora:29' - #- 'opensuse/leap:15.2' - #- 'opensuse/leap:15.1' - #- 'opensuse/leap:15.0' - #- 'opensuse/tumbleweed:latest' - - 'ubuntu:20.04' - - 'ubuntu:19.10' - - 'ubuntu:19.04' - - 'ubuntu:18.04' - - 'ubuntu:16.04' - include: - - distro: 'alpine:3.11' - pre: 'apk add -U bash' - - distro: 'alpine:3.10' - pre: 'apk add -U bash' - - distro: 'alpine:3.9' - pre: 'apk add -U bash' - - - distro: 'archlinux:latest' - pre: 'pacman --noconfirm -Sy grep' - - - distro: 'debian:bullseye' - pre: 'apt-get update' - - distro: 'debian:buster' - pre: 'apt-get update' - - distro: 'debian:stretch' - pre: 'apt-get update' - - - distro: 'ubuntu:20.04' - pre: 'apt-get update' - - distro: 'ubuntu:19.10' - pre: 'apt-get update' - - distro: 'ubuntu:19.04' - pre: 'apt-get update' - - distro: 'ubuntu:18.04' - pre: 'apt-get update' - - distro: 'ubuntu:16.04' - pre: 'apt-get update' - runs-on: ubuntu-latest - steps: - - name: Git clone repository - uses: actions/checkout@v2 - - name: Build on ${{ matrix.distro }} - env: - PRE: ${{ matrix.pre }} - run: | - docker run --rm -e PRE -v $PWD:/netdata -w /netdata ${{ matrix.distro }} /bin/sh -c '[ -n "${PRE}" ] && ${PRE}; ./packaging/installer/install-required-packages.sh --dont-wait --non-interactive all && ./netdata-installer.sh -u --dont-wait --dont-start-it --disable-go' |