From 207d13670b419a44429810d2e811d6889cdc07c5 Mon Sep 17 00:00:00 2001 From: "Austin S. Hemmelgarn" Date: Wed, 27 Sep 2023 08:32:40 -0400 Subject: [PATCH 1/3] Clean up package builders after switch to CMake build system. --- .github/data/matrices.yaml | 1 + package-builders/Dockerfile.amazonlinux2.v2 | 79 ++++++++++++++++++ .../Dockerfile.amazonlinux2023.v2 | 62 ++++++++++++++ package-builders/Dockerfile.centos-stream8.v2 | 66 +++++++++++++++ package-builders/Dockerfile.centos-stream9.v2 | 65 +++++++++++++++ package-builders/Dockerfile.centos7.v2 | 80 +++++++++++++++++++ package-builders/Dockerfile.debian10.v2 | 67 ++++++++++++++++ package-builders/Dockerfile.debian11.v2 | 67 ++++++++++++++++ package-builders/Dockerfile.debian12.v2 | 63 +++++++++++++++ package-builders/Dockerfile.fedora37.v2 | 62 ++++++++++++++ package-builders/Dockerfile.fedora38.v2 | 62 ++++++++++++++ package-builders/Dockerfile.fedora39.v2 | 62 ++++++++++++++ package-builders/Dockerfile.opensuse15.4.v2 | 60 ++++++++++++++ package-builders/Dockerfile.opensuse15.5.v2 | 60 ++++++++++++++ .../Dockerfile.opensusetumbleweed.v2 | 60 ++++++++++++++ package-builders/Dockerfile.oraclelinux8.v2 | 68 ++++++++++++++++ package-builders/Dockerfile.oraclelinux9.v2 | 69 ++++++++++++++++ package-builders/Dockerfile.rockylinux8.v2 | 66 +++++++++++++++ package-builders/Dockerfile.rockylinux9.v2 | 67 ++++++++++++++++ package-builders/Dockerfile.ubuntu20.04.v2 | 77 ++++++++++++++++++ package-builders/Dockerfile.ubuntu22.04.v2 | 67 ++++++++++++++++ package-builders/Dockerfile.ubuntu23.04.v2 | 67 ++++++++++++++++ 22 files changed, 1397 insertions(+) create mode 100644 package-builders/Dockerfile.amazonlinux2.v2 create mode 100644 package-builders/Dockerfile.amazonlinux2023.v2 create mode 100644 package-builders/Dockerfile.centos-stream8.v2 create mode 100644 package-builders/Dockerfile.centos-stream9.v2 create mode 100644 package-builders/Dockerfile.centos7.v2 create mode 100644 package-builders/Dockerfile.debian10.v2 create mode 100644 package-builders/Dockerfile.debian11.v2 create mode 100644 package-builders/Dockerfile.debian12.v2 create mode 100644 package-builders/Dockerfile.fedora37.v2 create mode 100644 package-builders/Dockerfile.fedora38.v2 create mode 100644 package-builders/Dockerfile.fedora39.v2 create mode 100644 package-builders/Dockerfile.opensuse15.4.v2 create mode 100644 package-builders/Dockerfile.opensuse15.5.v2 create mode 100644 package-builders/Dockerfile.opensusetumbleweed.v2 create mode 100644 package-builders/Dockerfile.oraclelinux8.v2 create mode 100644 package-builders/Dockerfile.oraclelinux9.v2 create mode 100644 package-builders/Dockerfile.rockylinux8.v2 create mode 100644 package-builders/Dockerfile.rockylinux9.v2 create mode 100644 package-builders/Dockerfile.ubuntu20.04.v2 create mode 100644 package-builders/Dockerfile.ubuntu22.04.v2 create mode 100644 package-builders/Dockerfile.ubuntu23.04.v2 diff --git a/.github/data/matrices.yaml b/.github/data/matrices.yaml index 7c71f83f..6ecf0bcd 100644 --- a/.github/data/matrices.yaml +++ b/.github/data/matrices.yaml @@ -10,6 +10,7 @@ meta: anchors: pkg-builder-revs: &pkg-builder-revs - v1 + - v2 static: image: static-builder revisions: diff --git a/package-builders/Dockerfile.amazonlinux2.v2 b/package-builders/Dockerfile.amazonlinux2.v2 new file mode 100644 index 00000000..6faa5cf6 --- /dev/null +++ b/package-builders/Dockerfile.amazonlinux2.v2 @@ -0,0 +1,79 @@ +FROM amazonlinux:2 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for Amazon Linux 2" +LABEL org.opencontainers.image.description="Package builder image for Netdata official RPM packages for Amazon Linux 2" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV VERSION=$VERSION + +RUN yum update -y && \ + yum install -y bison \ + bison-devel \ + cmake \ + cups-devel \ + curl \ + diffutils \ + findutils \ + flex \ + flex-devel \ + gcc \ + gcc-c++ \ + git-core \ + golang \ + libatomic \ + libcurl-devel \ + lm_sensors \ + make \ + ninja-build \ + openssl-perl \ + patch \ + pkgconfig \ + 'pkgconfig(json-c)' \ + 'pkgconfig(libelf)' \ + 'pkgconfig(libipmimonitoring)' \ + 'pkgconfig(liblz4)' \ + 'pkgconfig(libmnl)' \ + 'pkgconfig(libmongoc-1.0)' \ + 'pkgconfig(libnetfilter_acct)' \ + 'pkgconfig(libsystemd)' \ + 'pkgconfig(libuv)' \ + 'pkgconfig(openssl)' \ + 'pkgconfig(snappy)' \ + 'pkgconfig(uuid)' \ + 'pkgconfig(yaml-0.1)' \ + 'pkgconfig(zlib)' \ + procps \ + protobuf-c-devel \ + protobuf-compiler \ + protobuf-devel \ + rpm-build \ + rpm-devel \ + rpmdevtools \ + wget && \ + yum clean all && \ + c_rehash && \ + mkdir -p /root/rpmbuild/BUILD /root/rpmbuild/RPMS /root/rpmbuild/SOURCES /root/rpmbuild/SPECS /root/rpmbuild/SRPMS + +# Fetch a newer version of CMake, because the system-provided one is _ancient_. +# The hash is hard-coded here to mitigate the risk of supply-chain attacks. +RUN curl --fail -sSL --connect-timeout 20 --retry 3 --output cmake-linux-$(uname -m).sh \ + https://github.com/Kitware/CMake/releases/download/v3.27.6/cmake-3.27.6-linux-$(uname -m).sh && \ + if [ "$(uname -m)" = "x86_64" ]; then \ + echo '8c449dabb2b2563ec4e6d5e0fb0ae09e729680efab71527b59015131cea4a042 cmake-linux-x86_64.sh' | sha256sum -c - ; \ + elif [ "$(uname -m)" = "aarch64" ]; then \ + echo 'a83e01ed1cdf44c2e33e0726513b9a35a8c09e3b5a126fd720b3c8a9d5552368 cmake-linux-aarch64.sh' | sha256sum -c - ; \ + else \ + echo "ARCH NOT SUPPORTED BY CMAKE" ; \ + exit 1 ; \ + fi && \ + chmod +x ./cmake-linux-$(uname -m).sh && \ + mkdir -p /cmake && \ + ./cmake-linux-$(uname -m).sh --skip-license --prefix=/cmake + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/fedora-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.amazonlinux2023.v2 b/package-builders/Dockerfile.amazonlinux2023.v2 new file mode 100644 index 00000000..a60bdb85 --- /dev/null +++ b/package-builders/Dockerfile.amazonlinux2023.v2 @@ -0,0 +1,62 @@ +FROM amazonlinux:2023 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for Amazon Linux 2023" +LABEL org.opencontainers.image.description="Package builder image for Netdata official RPM packages for Amazon Linux 2023" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV VERSION=$VERSION + +RUN dnf distro-sync -y --nodocs && \ + dnf clean packages && \ + dnf install -y --nodocs --allowerasing --setopt=install_weak_deps=False --setopt=diskspacecheck=False \ + bison \ + bison-devel \ + cmake \ + cups-devel \ + curl \ + diffutils \ + findutils \ + flex \ + flex-devel \ + gcc \ + gcc-c++ \ + git-core \ + golang \ + libatomic \ + libcurl-devel \ + lm_sensors \ + make \ + ninja-build \ + openssl-perl \ + patch \ + pkgconfig \ + 'pkgconfig(json-c)' \ + 'pkgconfig(libelf)' \ + 'pkgconfig(libipmimonitoring)' \ + 'pkgconfig(libsystemd)' \ + 'pkgconfig(libuv)' \ + 'pkgconfig(liblz4)' \ + 'pkgconfig(openssl)' \ + 'pkgconfig(snappy)' \ + 'pkgconfig(uuid)' \ + 'pkgconfig(yaml-0.1)' \ + 'pkgconfig(zlib)' \ + procps \ + protobuf-c-devel \ + protobuf-compiler \ + protobuf-devel \ + rpm-build \ + rpm-devel \ + rpmdevtools \ + wget && \ + rm -rf /var/cache/dnf && \ + c_rehash && \ + mkdir -p /root/rpmbuild/BUILD /root/rpmbuild/RPMS /root/rpmbuild/SOURCES /root/rpmbuild/SPECS /root/rpmbuild/SRPMS + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/fedora-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.centos-stream8.v2 b/package-builders/Dockerfile.centos-stream8.v2 new file mode 100644 index 00000000..f2b228e1 --- /dev/null +++ b/package-builders/Dockerfile.centos-stream8.v2 @@ -0,0 +1,66 @@ +FROM quay.io/centos/centos:stream8 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for CentOS-Stream 8" +LABEL org.opencontainers.image.description="Package builder image for Netdata official RPM packages for CentOS-Stream 8" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV VERSION=$VERSION + +RUN dnf distro-sync -y --nodocs && \ + dnf install -y --nodocs 'dnf-command(config-manager)' epel-release && \ + dnf config-manager --set-enabled powertools && \ + dnf clean packages && \ + dnf install -y --nodocs --setopt=install_weak_deps=False --setopt=diskspacecheck=False \ + bison \ + cmake \ + cups-devel \ + curl \ + diffutils \ + findutils \ + flex \ + freeipmi-devel \ + gcc \ + gcc-c++ \ + git \ + golang \ + libatomic \ + libcurl-devel \ + lm_sensors \ + make \ + ninja-build \ + openssl-perl \ + patch \ + pkgconfig \ + 'pkgconfig(libmongoc-1.0)' \ + 'pkgconfig(json-c)' \ + 'pkgconfig(libelf)' \ + 'pkgconfig(libipmimonitoring)' \ + 'pkgconfig(libsystemd)' \ + 'pkgconfig(libuv)' \ + 'pkgconfig(liblz4)' \ + 'pkgconfig(openssl)' \ + 'pkgconfig(snappy)' \ + 'pkgconfig(uuid)' \ + 'pkgconfig(yaml-0.1)' \ + 'pkgconfig(zlib)' \ + procps \ + protobuf-c-devel \ + protobuf-compiler \ + protobuf-devel \ + python3 \ + python3-pyyaml \ + rpm-build \ + rpm-devel \ + rpmdevtools \ + wget && \ + rm -rf /var/cache/dnf && \ + c_rehash && \ + mkdir -p /root/rpmbuild/BUILD /root/rpmbuild/RPMS /root/rpmbuild/SOURCES /root/rpmbuild/SPECS /root/rpmbuild/SRPMS + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/fedora-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.centos-stream9.v2 b/package-builders/Dockerfile.centos-stream9.v2 new file mode 100644 index 00000000..67ecdfde --- /dev/null +++ b/package-builders/Dockerfile.centos-stream9.v2 @@ -0,0 +1,65 @@ +FROM quay.io/centos/centos:stream9 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for CentOS-Stream 9" +LABEL org.opencontainers.image.description="Package builder image for Netdata official RPM packages for CentOS-Stream 9" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV VERSION=$VERSION + +RUN dnf distro-sync -y --nodocs && \ + dnf install -y --nodocs 'dnf-command(config-manager)' epel-release && \ + dnf config-manager --set-enabled crb && \ + dnf clean packages && \ + dnf install -y --allowerasing --nodocs --setopt=install_weak_deps=False --setopt=diskspacecheck=False \ + bison \ + cmake \ + cups-devel \ + curl \ + diffutils \ + findutils \ + flex \ + gcc \ + gcc-c++ \ + git \ + golang \ + libatomic \ + libcurl-devel \ + lm_sensors \ + make \ + ninja-build \ + openssl-perl \ + patch \ + pkgconfig \ + 'pkgconfig(json-c)' \ + 'pkgconfig(libelf)' \ + 'pkgconfig(libipmimonitoring)' \ + 'pkgconfig(liblz4)' \ + 'pkgconfig(libmongoc-1.0)' \ + 'pkgconfig(libsystemd)' \ + 'pkgconfig(libuv)' \ + 'pkgconfig(openssl)' \ + 'pkgconfig(snappy)' \ + 'pkgconfig(uuid)' \ + 'pkgconfig(yaml-0.1)' \ + 'pkgconfig(zlib)' \ + procps \ + protobuf-c-devel \ + protobuf-compiler \ + protobuf-devel \ + python3 \ + python3-pyyaml \ + rpm-build \ + rpm-devel \ + rpmdevtools \ + wget && \ + rm -rf /var/cache/dnf && \ + c_rehash && \ + mkdir -p /root/rpmbuild/BUILD /root/rpmbuild/RPMS /root/rpmbuild/SOURCES /root/rpmbuild/SPECS /root/rpmbuild/SRPMS + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/fedora-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.centos7.v2 b/package-builders/Dockerfile.centos7.v2 new file mode 100644 index 00000000..6762d01a --- /dev/null +++ b/package-builders/Dockerfile.centos7.v2 @@ -0,0 +1,80 @@ +FROM centos:7 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for CentOS 7" +LABEL org.opencontainers.image.description="Package builder image for Netdata official RPM packages for CentOS 7" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV VERSION=$VERSION + +RUN yum install -y epel-release && \ + yum update -y && \ + yum install -y bison \ + bison-devel \ + cmake \ + cups-devel \ + curl \ + diffutils \ + findutils \ + flex \ + flex-devel \ + gcc \ + gcc-c++ \ + git-core \ + golang \ + libatomic \ + libcurl-devel \ + lm_sensors \ + make \ + ninja-build \ + openssl-perl \ + patch \ + pkgconfig \ + 'pkgconfig(json-c)' \ + 'pkgconfig(libelf)' \ + 'pkgconfig(libipmimonitoring)' \ + 'pkgconfig(liblz4)' \ + 'pkgconfig(libmnl)' \ + 'pkgconfig(libmongoc-1.0)' \ + 'pkgconfig(libnetfilter_acct)' \ + 'pkgconfig(libsystemd)' \ + 'pkgconfig(libuv)' \ + 'pkgconfig(openssl)' \ + 'pkgconfig(snappy)' \ + 'pkgconfig(uuid)' \ + 'pkgconfig(yaml-0.1)' \ + 'pkgconfig(zlib)' \ + procps \ + protobuf-c-devel \ + protobuf-compiler \ + protobuf-devel \ + rpm-build \ + rpm-devel \ + rpmdevtools \ + wget && \ + yum clean all && \ + c_rehash && \ + mkdir -p /root/rpmbuild/BUILD /root/rpmbuild/RPMS /root/rpmbuild/SOURCES /root/rpmbuild/SPECS /root/rpmbuild/SRPMS + +# Fetch a newer version of CMake, because the system-provided one is _ancient_. +# The hash is hard-coded here to mitigate the risk of supply-chain attacks. +RUN curl --fail -sSL --connect-timeout 20 --retry 3 --output cmake-linux-$(uname -m).sh \ + https://github.com/Kitware/CMake/releases/download/v3.27.6/cmake-3.27.6-linux-$(uname -m).sh && \ + if [ "$(uname -m)" = "x86_64" ]; then \ + echo '8c449dabb2b2563ec4e6d5e0fb0ae09e729680efab71527b59015131cea4a042 cmake-linux-x86_64.sh' | sha256sum -c - ; \ + elif [ "$(uname -m)" = "aarch64" ]; then \ + echo 'a83e01ed1cdf44c2e33e0726513b9a35a8c09e3b5a126fd720b3c8a9d5552368 cmake-linux-aarch64.sh' | sha256sum -c - ; \ + else \ + echo "ARCH NOT SUPPORTED BY CMAKE" ; \ + exit 1 ; \ + fi && \ + chmod +x ./cmake-linux-$(uname -m).sh && \ + mkdir -p /cmake && \ + ./cmake-linux-$(uname -m).sh --skip-license --prefix=/cmake + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/fedora-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.debian10.v2 b/package-builders/Dockerfile.debian10.v2 new file mode 100644 index 00000000..daf365a9 --- /dev/null +++ b/package-builders/Dockerfile.debian10.v2 @@ -0,0 +1,67 @@ +FROM debian:buster + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for Debian 10" +LABEL org.opencontainers.image.description="Package builder image for Netdata official DEB packages for Debian 10" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV EMAIL=bot@netdata.cloud +ENV FULLNAME="Netdata Builder" +ENV VERSION=0.1 + +# This is needed to ensure package installs don't prompt for any user input. +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get update && \ + apt-get upgrade -y && \ + apt-get install -y --no-install-recommends bison \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + dh-systemd \ + dpkg-dev \ + flex \ + g++ \ + gcc \ + git-buildpackage \ + git-core \ + golang \ + libatomic1 \ + libcups2-dev \ + libcurl4-openssl-dev \ + libdistro-info-perl \ + libelf-dev \ + libipmimonitoring-dev \ + libjson-c-dev \ + libyaml-dev \ + libjudy-dev \ + liblz4-dev \ + libmnl-dev \ + libmongoc-dev \ + libnetfilter-acct-dev \ + libprotobuf-dev \ + libprotoc-dev \ + libsnappy-dev \ + libsystemd-dev \ + libssl-dev \ + libuv1-dev \ + libxen-dev \ + make \ + ninja-build \ + pkg-config \ + protobuf-compiler \ + systemd \ + uuid-dev \ + wget \ + zlib1g-dev && \ + apt-get clean && \ + c_rehash && \ + rm -rf /var/lib/apt/lists/* + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/debian-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.debian11.v2 b/package-builders/Dockerfile.debian11.v2 new file mode 100644 index 00000000..5fb938d4 --- /dev/null +++ b/package-builders/Dockerfile.debian11.v2 @@ -0,0 +1,67 @@ +FROM debian:bullseye + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for Debian 11" +LABEL org.opencontainers.image.description="Package builder image for Netdata official DEB packages for Debian 11" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV EMAIL=bot@netdata.cloud +ENV FULLNAME="Netdata Builder" +ENV VERSION=0.1 + +# This is needed to ensure package installs don't prompt for any user input. +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get update && \ + apt-get upgrade -y && \ + apt-get install -y --no-install-recommends bison \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + dpkg-dev \ + flex \ + g++ \ + gcc \ + git-buildpackage \ + git-core \ + golang \ + libatomic1 \ + libcurl4-openssl-dev\ + libcups2-dev \ + libdistro-info-perl \ + libelf-dev \ + libipmimonitoring-dev \ + libjson-c-dev \ + libyaml-dev \ + libjudy-dev \ + liblz4-dev \ + libmnl-dev \ + libmongoc-dev \ + libnetfilter-acct-dev \ + libprotobuf-dev \ + libprotoc-dev \ + libsnappy-dev \ + libsystemd-dev \ + libssl-dev \ + libtool \ + libuv1-dev \ + libxen-dev \ + make \ + ninja-build \ + pkg-config \ + protobuf-compiler \ + systemd \ + uuid-dev \ + wget \ + zlib1g-dev && \ + apt-get clean && \ + c_rehash && \ + rm -rf /var/lib/apt/lists/* + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/debian-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.debian12.v2 b/package-builders/Dockerfile.debian12.v2 new file mode 100644 index 00000000..57fa3e21 --- /dev/null +++ b/package-builders/Dockerfile.debian12.v2 @@ -0,0 +1,63 @@ +FROM debian:bookworm + +ENV EMAIL=bot@netdata.cloud +ENV FULLNAME="Netdata Builder" +ENV VERSION=0.1 + +# This is needed to ensure package installs don't prompt for any user input. +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get update && \ + apt-get upgrade -y && \ + apt-get install -y --no-install-recommends bison \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + dpkg-dev \ + flex \ + g++ \ + gcc \ + git-buildpackage \ + git-core \ + golang \ + libatomic1 \ + libcurl4-openssl-dev\ + libcups2-dev \ + libdistro-info-perl \ + libelf-dev \ + libipmimonitoring-dev \ + libjson-c-dev \ + libyaml-dev \ + libjudy-dev \ + liblz4-dev \ + libmnl-dev \ + libmongoc-dev \ + libnetfilter-acct-dev \ + libprotobuf-dev \ + libprotoc-dev \ + libsnappy-dev \ + libsystemd-dev \ + libssl-dev \ + libtool \ + libuv1-dev \ + make \ + ninja-build \ + pkg-config \ + protobuf-compiler \ + systemd \ + uuid-dev \ + wget \ + zlib1g-dev && \ + if ! dpkg-architecture --is 'i386'; then \ + apt-get install -y --no-install-recommends libxen-dev ; \ + fi && \ + apt-get clean && \ + c_rehash && \ + rm -rf /var/lib/apt/lists/* + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/debian-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.fedora37.v2 b/package-builders/Dockerfile.fedora37.v2 new file mode 100644 index 00000000..cbd75e4b --- /dev/null +++ b/package-builders/Dockerfile.fedora37.v2 @@ -0,0 +1,62 @@ +FROM fedora:37 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for Fedora 37" +LABEL org.opencontainers.image.description="Package builder image for Netdata official RPM packages for Fedora 37" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV VERSION=$VERSION + +RUN dnf distro-sync -y --nodocs && \ + dnf clean -y packages && \ + dnf install -y --nodocs --setopt=install_weak_deps=False --setopt=diskspacecheck=False \ + bison \ + cmake \ + cups-devel \ + curl \ + diffutils \ + findutils \ + flex \ + gcc \ + gcc-c++ \ + git-core \ + golang \ + libatomic \ + libcurl-devel \ + make \ + ninja-build \ + openssl-perl \ + patch \ + pkgconfig \ + 'pkgconfig(json-c)' \ + 'pkgconfig(libelf)' \ + 'pkgconfig(libipmimonitoring)' \ + 'pkgconfig(liblz4)' \ + 'pkgconfig(libmnl)' \ + 'pkgconfig(libmongoc-1.0)' \ + 'pkgconfig(libnetfilter_acct)' \ + 'pkgconfig(libsystemd)' \ + 'pkgconfig(libuv)' \ + 'pkgconfig(openssl)' \ + 'pkgconfig(snappy)' \ + 'pkgconfig(uuid)' \ + 'pkgconfig(yaml-0.1)' \ + 'pkgconfig(zlib)' \ + procps \ + protobuf-c-devel \ + protobuf-compiler \ + protobuf-devel \ + rpm-build \ + rpm-devel \ + rpmdevtools \ + wget && \ + rm -rf /var/cache/dnf && \ + c_rehash && \ + mkdir -p /root/rpmbuild/BUILD /root/rpmbuild/RPMS /root/rpmbuild/SOURCES /root/rpmbuild/SPECS /root/rpmbuild/SRPMS + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/fedora-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.fedora38.v2 b/package-builders/Dockerfile.fedora38.v2 new file mode 100644 index 00000000..867f2c04 --- /dev/null +++ b/package-builders/Dockerfile.fedora38.v2 @@ -0,0 +1,62 @@ +FROM fedora:38 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for Fedora 38" +LABEL org.opencontainers.image.description="Package builder image for Netdata official RPM packages for Fedora 38" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV VERSION=$VERSION + +RUN dnf distro-sync -y --nodocs && \ + dnf clean -y packages && \ + dnf install -y --nodocs --setopt=install_weak_deps=False --setopt=diskspacecheck=False \ + bison \ + cmake \ + cups-devel \ + curl \ + diffutils \ + findutils \ + flex \ + gcc \ + gcc-c++ \ + git-core \ + golang \ + libatomic \ + libcurl-devel \ + make \ + ninja-build \ + openssl-perl \ + patch \ + pkgconfig \ + 'pkgconfig(json-c)' \ + 'pkgconfig(libelf)' \ + 'pkgconfig(libipmimonitoring)' \ + 'pkgconfig(liblz4)' \ + 'pkgconfig(libmnl)' \ + 'pkgconfig(libmongoc-1.0)' \ + 'pkgconfig(libnetfilter_acct)' \ + 'pkgconfig(libsystemd)' \ + 'pkgconfig(libuv)' \ + 'pkgconfig(openssl)' \ + 'pkgconfig(snappy)' \ + 'pkgconfig(uuid)' \ + 'pkgconfig(yaml-0.1)' \ + 'pkgconfig(zlib)' \ + procps \ + protobuf-c-devel \ + protobuf-compiler \ + protobuf-devel \ + rpm-build \ + rpm-devel \ + rpmdevtools \ + wget && \ + rm -rf /var/cache/dnf && \ + c_rehash && \ + mkdir -p /root/rpmbuild/BUILD /root/rpmbuild/RPMS /root/rpmbuild/SOURCES /root/rpmbuild/SPECS /root/rpmbuild/SRPMS + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/fedora-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.fedora39.v2 b/package-builders/Dockerfile.fedora39.v2 new file mode 100644 index 00000000..48727f99 --- /dev/null +++ b/package-builders/Dockerfile.fedora39.v2 @@ -0,0 +1,62 @@ +FROM fedora:39 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for Fedora 38" +LABEL org.opencontainers.image.description="Package builder image for Netdata official RPM packages for Fedora 38" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV VERSION=$VERSION + +RUN dnf distro-sync -y --nodocs && \ + dnf clean -y packages && \ + dnf install -y --nodocs --setopt=install_weak_deps=False --setopt=diskspacecheck=False \ + bison \ + cmake \ + cups-devel \ + curl \ + diffutils \ + findutils \ + flex \ + gcc \ + gcc-c++ \ + git-core \ + golang \ + libatomic \ + libcurl-devel \ + make \ + ninja-build \ + openssl-perl \ + patch \ + pkgconfig \ + 'pkgconfig(json-c)' \ + 'pkgconfig(libelf)' \ + 'pkgconfig(libipmimonitoring)' \ + 'pkgconfig(liblz4)' \ + 'pkgconfig(libmnl)' \ + 'pkgconfig(libmongoc-1.0)' \ + 'pkgconfig(libnetfilter_acct)' \ + 'pkgconfig(libsystemd)' \ + 'pkgconfig(libuv)' \ + 'pkgconfig(openssl)' \ + 'pkgconfig(snappy)' \ + 'pkgconfig(uuid)' \ + 'pkgconfig(yaml-0.1)' \ + 'pkgconfig(zlib)' \ + procps \ + protobuf-c-devel \ + protobuf-compiler \ + protobuf-devel \ + rpm-build \ + rpm-devel \ + rpmdevtools \ + wget && \ + rm -rf /var/cache/dnf && \ + c_rehash && \ + mkdir -p /root/rpmbuild/BUILD /root/rpmbuild/RPMS /root/rpmbuild/SOURCES /root/rpmbuild/SPECS /root/rpmbuild/SRPMS + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/fedora-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.opensuse15.4.v2 b/package-builders/Dockerfile.opensuse15.4.v2 new file mode 100644 index 00000000..da5355c7 --- /dev/null +++ b/package-builders/Dockerfile.opensuse15.4.v2 @@ -0,0 +1,60 @@ +FROM opensuse/leap:15.4 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for openSUSE Leap 15.4" +LABEL org.opencontainers.image.description="Package builder image for Netdata official RPM packages for openSUSE Leap 15.4" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV VERSION=0.1 + +RUN zypper update -y && \ + zypper install -y --allow-downgrade \ + bison \ + cmake \ + cups \ + cups-devel \ + curl \ + diffutils \ + flex \ + gcc \ + gcc-c++ \ + git-core \ + go \ + libatomic1 \ + libcurl-devel \ + libprotobuf-c-devel \ + make \ + ninja \ + patch \ + pkg-config \ + 'pkgconfig(json-c)' \ + 'pkgconfig(libelf)' \ + 'pkgconfig(libipmimonitoring)' \ + 'pkgconfig(libmnl)' \ + 'pkgconfig(libnetfilter_acct)' \ + 'pkgconfig(libsystemd)' \ + 'pkgconfig(libuv)' \ + 'pkgconfig(liblz4)' \ + 'pkgconfig(openssl)' \ + 'pkgconfig(uuid)' \ + 'pkgconfig(xenlight)' \ + 'pkgconfig(yaml-0.1)' \ + 'pkgconfig(zlib)' \ + protobuf-devel \ + rpm-build \ + rpm-devel \ + rpmdevtools \ + snappy-devel \ + tar \ + wget && \ + zypper clean && \ + rm -rf /var/cache/zypp/*/* && \ + c_rehash && \ + mkdir -p /usr/src/packages/BUILD /usr/src/packages/RPMS /usr/src/packages/SOURCES /usr/src/packages/SPECS /usr/src/packages/SRPMS + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/suse-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.opensuse15.5.v2 b/package-builders/Dockerfile.opensuse15.5.v2 new file mode 100644 index 00000000..dbe94c3f --- /dev/null +++ b/package-builders/Dockerfile.opensuse15.5.v2 @@ -0,0 +1,60 @@ +FROM opensuse/leap:15.5 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for openSUSE Leap 15.5" +LABEL org.opencontainers.image.description="Package builder image for Netdata official RPM packages for openSUSE Leap 15.5" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV VERSION=0.1 + +RUN zypper update -y && \ + zypper install -y --allow-downgrade \ + bison \ + cmake \ + cups \ + cups-devel \ + curl \ + diffutils \ + flex \ + gcc \ + gcc-c++ \ + git-core \ + go \ + libatomic1 \ + libcurl-devel \ + libprotobuf-c-devel \ + make \ + ninja \ + patch \ + pkg-config \ + 'pkgconfig(json-c)' \ + 'pkgconfig(libelf)' \ + 'pkgconfig(libipmimonitoring)' \ + 'pkgconfig(libmnl)' \ + 'pkgconfig(libnetfilter_acct)' \ + 'pkgconfig(libsystemd)' \ + 'pkgconfig(libuv)' \ + 'pkgconfig(liblz4)' \ + 'pkgconfig(openssl)' \ + 'pkgconfig(uuid)' \ + 'pkgconfig(xenlight)' \ + 'pkgconfig(yaml-0.1)' \ + 'pkgconfig(zlib)' \ + protobuf-devel \ + rpm-build \ + rpm-devel \ + rpmdevtools \ + snappy-devel \ + tar \ + wget && \ + zypper clean && \ + rm -rf /var/cache/zypp/*/* && \ + c_rehash && \ + mkdir -p /usr/src/packages/BUILD /usr/src/packages/RPMS /usr/src/packages/SOURCES /usr/src/packages/SPECS /usr/src/packages/SRPMS + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/suse-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.opensusetumbleweed.v2 b/package-builders/Dockerfile.opensusetumbleweed.v2 new file mode 100644 index 00000000..64185c57 --- /dev/null +++ b/package-builders/Dockerfile.opensusetumbleweed.v2 @@ -0,0 +1,60 @@ +FROM opensuse/tumbleweed:latest + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for openSUSE Tumbleweed" +LABEL org.opencontainers.image.description="Package builder image for Netdata official RPM packages for openSUSE Tumbleweed" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV VERSION=$VERSION + +RUN zypper update -y && \ + zypper install -y --allow-downgrade \ + bison \ + cmake \ + cups \ + cups-devel \ + curl \ + diffutils \ + flex \ + gcc \ + gcc-c++ \ + git-core \ + go \ + libatomic1 \ + libcurl-devel \ + make \ + ninja \ + patch \ + pkg-config \ + 'pkgconfig(json-c)' \ + 'pkgconfig(libelf)' \ + 'pkgconfig(libipmimonitoring)' \ + 'pkgconfig(libmnl)' \ + 'pkgconfig(libnetfilter_acct)' \ + 'pkgconfig(libsystemd)' \ + 'pkgconfig(libuv)' \ + 'pkgconfig(liblz4)' \ + 'pkgconfig(openssl)' \ + 'pkgconfig(uuid)' \ + 'pkgconfig(xenlight)' \ + 'pkgconfig(yaml-0.1)' \ + 'pkgconfig(zlib)' \ + protobuf-c \ + protobuf-devel \ + rpm-build \ + rpm-devel \ + rpmdevtools \ + snappy-devel \ + tar \ + wget && \ + zypper clean && \ + rm -rf /var/cache/zypp/*/* && \ + c_rehash && \ + mkdir -p /usr/src/packages/BUILD /usr/src/packages/RPMS /usr/src/packages/SOURCES /usr/src/packages/SPECS /usr/src/packages/SRPMS + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/suse-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.oraclelinux8.v2 b/package-builders/Dockerfile.oraclelinux8.v2 new file mode 100644 index 00000000..0cb91104 --- /dev/null +++ b/package-builders/Dockerfile.oraclelinux8.v2 @@ -0,0 +1,68 @@ +FROM oraclelinux:8 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for Oracle Linux 8" +LABEL org.opencontainers.image.description="Package builder image for Netdata official RPM packages for Oracle Linux 8" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV VERSION=$VERSION + +COPY package-builders/ol8-epel.repo /etc/yum.repos.d/ol8-epel.repo + +RUN dnf config-manager --set-enabled ol8_codeready_builder && \ + dnf distro-sync -y --nodocs && \ + dnf clean packages && \ + dnf install -y --nodocs --setopt=install_weak_deps=False --setopt=diskspacecheck=False \ + bison \ + cmake \ + cups-devel \ + curl \ + diffutils \ + findutils \ + flex \ + gcc \ + gcc-c++ \ + git \ + golang \ + libatomic \ + libcurl-devel \ + lm_sensors \ + make \ + ninja-build \ + openssl-perl \ + patch \ + pkgconfig \ + 'pkgconfig(json-c)' \ + 'pkgconfig(libelf)' \ + 'pkgconfig(libipmimonitoring)' \ + 'pkgconfig(liblz4)' \ + 'pkgconfig(libmnl)' \ + 'pkgconfig(libmongoc-1.0)' \ + 'pkgconfig(libnetfilter_acct)' \ + 'pkgconfig(libsystemd)' \ + 'pkgconfig(libuv)' \ + 'pkgconfig(openssl)' \ + 'pkgconfig(snappy)' \ + 'pkgconfig(uuid)' \ + 'pkgconfig(yaml-0.1)' \ + 'pkgconfig(zlib)' \ + procps \ + protobuf-c-devel \ + protobuf-compiler \ + protobuf-devel \ + python3 \ + python3-pyyaml \ + rpm-build \ + rpm-devel \ + rpmdevtools \ + wget && \ + rm -rf /var/cache/dnf && \ + c_rehash && \ + mkdir -p /root/rpmbuild/BUILD /root/rpmbuild/RPMS /root/rpmbuild/SOURCES /root/rpmbuild/SPECS /root/rpmbuild/SRPMS + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/fedora-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.oraclelinux9.v2 b/package-builders/Dockerfile.oraclelinux9.v2 new file mode 100644 index 00000000..b275d645 --- /dev/null +++ b/package-builders/Dockerfile.oraclelinux9.v2 @@ -0,0 +1,69 @@ +FROM oraclelinux:9 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for Oracle Linux 9" +LABEL org.opencontainers.image.description="Package builder image for Netdata official RPM packages for Oracle Linux 9" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV VERSION=$VERSION + +COPY package-builders/ol9-epel.repo /etc/yum.repos.d/ol9-epel.repo + +RUN dnf config-manager --set-enabled ol9_codeready_builder && \ + dnf config-manager --set-enabled ol9_developer_EPEL && \ + dnf distro-sync -y --nodocs && \ + dnf clean packages && \ + dnf install -y --nodocs --setopt=install_weak_deps=False --setopt=diskspacecheck=False \ + bison \ + cmake \ + cups-devel \ + curl \ + diffutils \ + findutils \ + flex \ + gcc \ + gcc-c++ \ + git \ + golang \ + libatomic \ + libcurl-devel \ + lm_sensors \ + make \ + ninja-build \ + openssl-perl \ + patch \ + pkgconfig \ + 'pkgconfig(json-c)' \ + 'pkgconfig(libelf)' \ + 'pkgconfig(libipmimonitoring)' \ + 'pkgconfig(liblz4)' \ + 'pkgconfig(libmnl)' \ + 'pkgconfig(libmongoc-1.0)' \ + 'pkgconfig(libnetfilter_acct)' \ + 'pkgconfig(libsystemd)' \ + 'pkgconfig(libuv)' \ + 'pkgconfig(openssl)' \ + 'pkgconfig(snappy)' \ + 'pkgconfig(uuid)' \ + 'pkgconfig(yaml-0.1)' \ + 'pkgconfig(zlib)' \ + procps \ + protobuf-c-devel \ + protobuf-compiler \ + protobuf-devel \ + python3 \ + python3-pyyaml \ + rpm-build \ + rpm-devel \ + rpmdevtools \ + wget && \ + rm -rf /var/cache/dnf && \ + c_rehash && \ + mkdir -p /root/rpmbuild/BUILD /root/rpmbuild/RPMS /root/rpmbuild/SOURCES /root/rpmbuild/SPECS /root/rpmbuild/SRPMS + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/fedora-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.rockylinux8.v2 b/package-builders/Dockerfile.rockylinux8.v2 new file mode 100644 index 00000000..82d87def --- /dev/null +++ b/package-builders/Dockerfile.rockylinux8.v2 @@ -0,0 +1,66 @@ +FROM rockylinux:8 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for Rocky Linux 8" +LABEL org.opencontainers.image.description="Package builder image for Netdata official RPM packages for Rocky Linux 8" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV VERSION=$VERSION + +RUN dnf distro-sync -y --nodocs && \ + dnf install -y --nodocs 'dnf-command(config-manager)' epel-release && \ + dnf config-manager --set-enabled powertools && \ + dnf clean packages && \ + dnf install -y --nodocs --setopt=install_weak_deps=False --setopt=diskspacecheck=False \ + bison \ + cmake \ + cups-devel \ + curl \ + diffutils \ + findutils \ + flex \ + gcc \ + gcc-c++ \ + git \ + golang \ + libatomic \ + libcurl-devel \ + lm_sensors \ + make \ + ninja-build \ + openssl-perl \ + patch \ + pkgconfig \ + 'pkgconfig(libmongoc-1.0)' \ + 'pkgconfig(json-c)' \ + 'pkgconfig(libelf)' \ + 'pkgconfig(libipmimonitoring)' \ + 'pkgconfig(liblz4)' \ + 'pkgconfig(libmongoc-1.0)' \ + 'pkgconfig(libsystemd)' \ + 'pkgconfig(libuv)' \ + 'pkgconfig(openssl)' \ + 'pkgconfig(snappy)' \ + 'pkgconfig(uuid)' \ + 'pkgconfig(yaml-0.1)' \ + 'pkgconfig(zlib)' \ + procps \ + protobuf-c-devel \ + protobuf-compiler \ + protobuf-devel \ + python3 \ + python3-pyyaml \ + rpm-build \ + rpm-devel \ + rpmdevtools \ + wget && \ + rm -rf /var/cache/dnf && \ + c_rehash && \ + mkdir -p /root/rpmbuild/BUILD /root/rpmbuild/RPMS /root/rpmbuild/SOURCES /root/rpmbuild/SPECS /root/rpmbuild/SRPMS + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/fedora-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.rockylinux9.v2 b/package-builders/Dockerfile.rockylinux9.v2 new file mode 100644 index 00000000..41ee930a --- /dev/null +++ b/package-builders/Dockerfile.rockylinux9.v2 @@ -0,0 +1,67 @@ +FROM rockylinux:9 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for Rocky Linux 9" +LABEL org.opencontainers.image.description="Package builder image for Netdata official RPM packages for Rocky Linux 9" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV VERSION=$VERSION + +RUN dnf distro-sync -y --nodocs && \ + dnf install -y --nodocs 'dnf-command(config-manager)' epel-release && \ + dnf config-manager --set-enabled crb && \ + dnf clean packages && \ + dnf install -y --allowerasing --nodocs --setopt=install_weak_deps=False --setopt=diskspacecheck=False \ + bison \ + cmake \ + cups-devel \ + curl \ + diffutils \ + findutils \ + flex \ + gcc \ + gcc-c++ \ + git \ + golang \ + libatomic \ + libcurl-devel \ + lm_sensors \ + make \ + ninja-build \ + openssl-perl \ + patch \ + pkgconfig \ + 'pkgconfig(json-c)' \ + 'pkgconfig(libelf)' \ + 'pkgconfig(libipmimonitoring)' \ + 'pkgconfig(liblz4)' \ + 'pkgconfig(libmnl)' \ + 'pkgconfig(libmongoc-1.0)' \ + 'pkgconfig(libnetfilter_acct)' \ + 'pkgconfig(libsystemd)' \ + 'pkgconfig(libuv)' \ + 'pkgconfig(openssl)' \ + 'pkgconfig(snappy)' \ + 'pkgconfig(uuid)' \ + 'pkgconfig(yaml-0.1)' \ + 'pkgconfig(zlib)' \ + procps \ + protobuf-c-devel \ + protobuf-compiler \ + protobuf-devel \ + python3 \ + python3-pyyaml \ + rpm-build \ + rpm-devel \ + rpmdevtools \ + wget && \ + rm -rf /var/cache/dnf && \ + c_rehash && \ + mkdir -p /root/rpmbuild/BUILD /root/rpmbuild/RPMS /root/rpmbuild/SOURCES /root/rpmbuild/SPECS /root/rpmbuild/SRPMS + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/fedora-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.ubuntu20.04.v2 b/package-builders/Dockerfile.ubuntu20.04.v2 new file mode 100644 index 00000000..460f8cd6 --- /dev/null +++ b/package-builders/Dockerfile.ubuntu20.04.v2 @@ -0,0 +1,77 @@ +FROM ubuntu:20.04 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for Ubuntu 20.04" +LABEL org.opencontainers.image.description="Package builder image for Netdata official DEB packages for Ubuntu 20.04" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV EMAIL=bot@netdata.cloud +ENV FULLNAME="Netdata Builder" +ENV VERSION=0.1 + +# This is needed to keep package installs from prompting about configuration. +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get update && \ + apt-get upgrade -y && \ + apt-get install -y --no-install-recommends bison \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + dh-systemd \ + dpkg-dev \ + flex \ + g++ \ + gcc \ + git-buildpackage \ + git-core \ + golang \ + libatomic1 \ + libcurl4-openssl-dev \ + libcups2-dev \ + libdistro-info-perl \ + libelf-dev \ + libipmimonitoring-dev \ + libjson-c-dev \ + libyaml-dev \ + libjudy-dev \ + liblz4-dev \ + libmnl-dev \ + libmongoc-dev \ + libnetfilter-acct-dev \ + libprotobuf-dev \ + libprotoc-dev \ + libsnappy-dev \ + libsystemd-dev \ + libssl-dev \ + libtool \ + libuv1-dev \ + libxen-dev \ + make \ + ninja-build \ + pkg-config \ + protobuf-compiler \ + systemd \ + uuid-dev \ + wget \ + zlib1g-dev && \ + apt-get clean && \ + c_rehash && \ + rm -rf /var/lib/apt/lists/* + +RUN if dpkg-architecture --is 'armhf'; then \ + wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null && \ + echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ focal main' | tee -a /etc/apt/sources.list.d/kitware.list >/dev/null && \ + apt-get update && \ + rm /usr/share/keyrings/kitware-archive-keyring.gpg && \ + apt-get install -y --no-install-recommends kitware-archive-keyring && \ + apt-get upgrade -y ; \ + fi + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/debian-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.ubuntu22.04.v2 b/package-builders/Dockerfile.ubuntu22.04.v2 new file mode 100644 index 00000000..3ef70976 --- /dev/null +++ b/package-builders/Dockerfile.ubuntu22.04.v2 @@ -0,0 +1,67 @@ +FROM ubuntu:22.04 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for Ubuntu 22.04" +LABEL org.opencontainers.image.description="Package builder image for Netdata official DEB packages for Ubuntu 22.04" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV EMAIL=bot@netdata.cloud +ENV FULLNAME="Netdata Builder" +ENV VERSION=0.1 + +# This is needed to keep package installs from prompting about configuration. +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get update && \ + apt-get upgrade -y && \ + apt-get install -y --no-install-recommends bison \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + dpkg-dev \ + flex \ + g++ \ + gcc \ + git-buildpackage \ + git-core \ + golang \ + libatomic1 \ + libcups2-dev \ + libcurl4-openssl-dev \ + libdistro-info-perl \ + libelf-dev \ + libipmimonitoring-dev \ + libjson-c-dev \ + libyaml-dev \ + libjudy-dev \ + liblz4-dev \ + libmnl-dev \ + libmongoc-dev \ + libnetfilter-acct-dev \ + libprotobuf-dev \ + libprotoc-dev \ + libsnappy-dev \ + libsystemd-dev \ + libssl-dev \ + libtool \ + libuv1-dev \ + libxen-dev \ + make \ + ninja-build \ + pkg-config \ + protobuf-compiler \ + systemd \ + uuid-dev \ + wget \ + zlib1g-dev && \ + apt-get clean && \ + c_rehash && \ + rm -rf /var/lib/apt/lists/* + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/debian-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] diff --git a/package-builders/Dockerfile.ubuntu23.04.v2 b/package-builders/Dockerfile.ubuntu23.04.v2 new file mode 100644 index 00000000..1dc94aa3 --- /dev/null +++ b/package-builders/Dockerfile.ubuntu23.04.v2 @@ -0,0 +1,67 @@ +FROM ubuntu:23.04 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for Ubuntu 23.04" +LABEL org.opencontainers.image.description="Package builder image for Netdata official DEB packages for Ubuntu 23.04" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV EMAIL=bot@netdata.cloud +ENV FULLNAME="Netdata Builder" +ENV VERSION=0.1 + +# This is needed to keep package installs from prompting about configuration. +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get update && \ + apt-get upgrade -y && \ + apt-get install -y --no-install-recommends bison \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + dpkg-dev \ + flex \ + g++ \ + gcc \ + git-buildpackage \ + git-core \ + golang \ + libatomic1 \ + libcups2-dev \ + libcurl4-openssl-dev \ + libdistro-info-perl \ + libelf-dev \ + libipmimonitoring-dev \ + libjson-c-dev \ + libyaml-dev \ + libjudy-dev \ + liblz4-dev \ + libmnl-dev \ + libmongoc-dev \ + libnetfilter-acct-dev \ + libprotobuf-dev \ + libprotoc-dev \ + libsnappy-dev \ + libsystemd-dev \ + libssl-dev \ + libtool \ + libuv1-dev \ + libxen-dev \ + make \ + ninja-build \ + pkg-config \ + protobuf-compiler \ + systemd \ + uuid-dev \ + wget \ + zlib1g-dev && \ + apt-get clean && \ + c_rehash && \ + rm -rf /var/lib/apt/lists/* + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/debian-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"] From 10629c9aef09638d1d25056601b35e7faa8965c7 Mon Sep 17 00:00:00 2001 From: "Austin S. Hemmelgarn" Date: Wed, 27 Sep 2023 08:43:41 -0400 Subject: [PATCH 2/3] Resolve packaging issues. --- package-builders/Dockerfile.amazonlinux2.v2 | 1 - package-builders/Dockerfile.amazonlinux2023.v2 | 1 - package-builders/Dockerfile.oraclelinux8.v2 | 2 -- package-builders/Dockerfile.oraclelinux9.v2 | 2 -- package-builders/Dockerfile.rockylinux9.v2 | 2 -- 5 files changed, 8 deletions(-) diff --git a/package-builders/Dockerfile.amazonlinux2.v2 b/package-builders/Dockerfile.amazonlinux2.v2 index 6faa5cf6..9826341e 100644 --- a/package-builders/Dockerfile.amazonlinux2.v2 +++ b/package-builders/Dockerfile.amazonlinux2.v2 @@ -32,7 +32,6 @@ RUN yum update -y && \ pkgconfig \ 'pkgconfig(json-c)' \ 'pkgconfig(libelf)' \ - 'pkgconfig(libipmimonitoring)' \ 'pkgconfig(liblz4)' \ 'pkgconfig(libmnl)' \ 'pkgconfig(libmongoc-1.0)' \ diff --git a/package-builders/Dockerfile.amazonlinux2023.v2 b/package-builders/Dockerfile.amazonlinux2023.v2 index a60bdb85..28743575 100644 --- a/package-builders/Dockerfile.amazonlinux2023.v2 +++ b/package-builders/Dockerfile.amazonlinux2023.v2 @@ -34,7 +34,6 @@ RUN dnf distro-sync -y --nodocs && \ pkgconfig \ 'pkgconfig(json-c)' \ 'pkgconfig(libelf)' \ - 'pkgconfig(libipmimonitoring)' \ 'pkgconfig(libsystemd)' \ 'pkgconfig(libuv)' \ 'pkgconfig(liblz4)' \ diff --git a/package-builders/Dockerfile.oraclelinux8.v2 b/package-builders/Dockerfile.oraclelinux8.v2 index 0cb91104..b9a9d7dc 100644 --- a/package-builders/Dockerfile.oraclelinux8.v2 +++ b/package-builders/Dockerfile.oraclelinux8.v2 @@ -37,9 +37,7 @@ RUN dnf config-manager --set-enabled ol8_codeready_builder && \ 'pkgconfig(libelf)' \ 'pkgconfig(libipmimonitoring)' \ 'pkgconfig(liblz4)' \ - 'pkgconfig(libmnl)' \ 'pkgconfig(libmongoc-1.0)' \ - 'pkgconfig(libnetfilter_acct)' \ 'pkgconfig(libsystemd)' \ 'pkgconfig(libuv)' \ 'pkgconfig(openssl)' \ diff --git a/package-builders/Dockerfile.oraclelinux9.v2 b/package-builders/Dockerfile.oraclelinux9.v2 index b275d645..a1da224a 100644 --- a/package-builders/Dockerfile.oraclelinux9.v2 +++ b/package-builders/Dockerfile.oraclelinux9.v2 @@ -38,9 +38,7 @@ RUN dnf config-manager --set-enabled ol9_codeready_builder && \ 'pkgconfig(libelf)' \ 'pkgconfig(libipmimonitoring)' \ 'pkgconfig(liblz4)' \ - 'pkgconfig(libmnl)' \ 'pkgconfig(libmongoc-1.0)' \ - 'pkgconfig(libnetfilter_acct)' \ 'pkgconfig(libsystemd)' \ 'pkgconfig(libuv)' \ 'pkgconfig(openssl)' \ diff --git a/package-builders/Dockerfile.rockylinux9.v2 b/package-builders/Dockerfile.rockylinux9.v2 index 41ee930a..b8df50b5 100644 --- a/package-builders/Dockerfile.rockylinux9.v2 +++ b/package-builders/Dockerfile.rockylinux9.v2 @@ -36,9 +36,7 @@ RUN dnf distro-sync -y --nodocs && \ 'pkgconfig(libelf)' \ 'pkgconfig(libipmimonitoring)' \ 'pkgconfig(liblz4)' \ - 'pkgconfig(libmnl)' \ 'pkgconfig(libmongoc-1.0)' \ - 'pkgconfig(libnetfilter_acct)' \ 'pkgconfig(libsystemd)' \ 'pkgconfig(libuv)' \ 'pkgconfig(openssl)' \ From c20f1045eae397ea26a32a58a6015e60c9b2aa8e Mon Sep 17 00:00:00 2001 From: "Austin S. Hemmelgarn" Date: Fri, 15 Dec 2023 06:51:34 -0500 Subject: [PATCH 3/3] Add missing Ubuntu 23.10 image. --- package-builders/Dockerfile.ubuntu23.10.v2 | 67 ++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 package-builders/Dockerfile.ubuntu23.10.v2 diff --git a/package-builders/Dockerfile.ubuntu23.10.v2 b/package-builders/Dockerfile.ubuntu23.10.v2 new file mode 100644 index 00000000..5f3c900f --- /dev/null +++ b/package-builders/Dockerfile.ubuntu23.10.v2 @@ -0,0 +1,67 @@ +FROM ubuntu:23.10 + +LABEL org.opencontainers.image.authors="Netdatabot " +LABEL org.opencontainers.image.source="https://github.com/netdata/helper-images" +LABEL org.opencontainers.image.title="Netdata Package Builder for Ubuntu 23.10" +LABEL org.opencontainers.image.description="Package builder image for Netdata official DEB packages for Ubuntu 23.10" +LABEL org.opencontainers.image.vendor="Netdata Inc." + +ENV EMAIL=bot@netdata.cloud +ENV FULLNAME="Netdata Builder" +ENV VERSION=0.1 + +# This is needed to keep package installs from prompting about configuration. +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get update && \ + apt-get upgrade -y && \ + apt-get install -y --no-install-recommends bison \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + dpkg-dev \ + flex \ + g++ \ + gcc \ + git-buildpackage \ + git-core \ + golang \ + libatomic1 \ + libcups2-dev \ + libcurl4-openssl-dev \ + libdistro-info-perl \ + libelf-dev \ + libipmimonitoring-dev \ + libjson-c-dev \ + libyaml-dev \ + libjudy-dev \ + liblz4-dev \ + libmnl-dev \ + libmongoc-dev \ + libnetfilter-acct-dev \ + libprotobuf-dev \ + libprotoc-dev \ + libsnappy-dev \ + libsystemd-dev \ + libssl-dev \ + libtool \ + libuv1-dev \ + libxen-dev \ + make \ + ninja-build \ + pkg-config \ + protobuf-compiler \ + systemd \ + uuid-dev \ + wget \ + zlib1g-dev && \ + apt-get clean && \ + c_rehash && \ + rm -rf /var/lib/apt/lists/* + +COPY package-builders/entrypoint.sh /entrypoint.sh +COPY package-builders/debian-build.sh /build.sh + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/build.sh"]