Added ppc64le platform

This commit is contained in:
Alexey Pustovalov 2021-10-27 22:28:33 +03:00
parent 79a0b16fb8
commit b7ec6f24d2
12 changed files with 219 additions and 14 deletions

View File

@ -126,6 +126,7 @@ jobs:
id: platform
run: |
platform_list=$(jq -r '.["os-linux"].${{ matrix.os }} | join(",")' "./build.json")
platform_list="${platform_list%,}"
echo ::set-output name=list::$platform_list
@ -166,7 +167,7 @@ jobs:
if-no-files-found: error
build_base_database:
timeout-minutes: 70
timeout-minutes: 90
needs: [ "build_base", "init_build"]
name: Build ${{ matrix.build }} base on ${{ matrix.os }}
strategy:
@ -196,6 +197,7 @@ jobs:
id: platform
run: |
platform_list=$(jq -r '.["os-linux"].${{ matrix.os }} | join(",")' "./build.json")
platform_list="${platform_list%,}"
echo ::set-output name=list::$platform_list
@ -251,7 +253,7 @@ jobs:
if-no-files-found: error
build_images:
timeout-minutes: 70
timeout-minutes: 90
needs: [ "build_base_database", "init_build"]
name: Build ${{ matrix.build }} on ${{ matrix.os }}
strategy:
@ -286,6 +288,13 @@ jobs:
platform_list=$(jq -r '.["os-linux"].${{ matrix.os }} | join(",")' "./build.json")
fi
# Can not compile Java applications on ppc64le
if [ "${{ matrix.build }}" == "java-gateway" ]; then
platform_list="${platform_list%linux/ppc64le}"
fi
platform_list="${platform_list%,}"
echo ::set-output name=list::$platform_list
- name: Detect Build Base Image

58
Dockerfile Normal file
View File

@ -0,0 +1,58 @@
FROM centos:8
ENV TERM=xterm \
PATH=/usr/local/go/bin:$PATH
RUN set -eux && \
dnf -y install \
--disablerepo "*" \
--enablerepo "baseos" \
--enablerepo "appstream" \
wget && \
cd /tmp/ && \
ARCH_SUFFIX="$(arch)"; \
case "$ARCH_SUFFIX" in \
x86_64) \
url='https://dl.google.com/go/go1.17.2.linux-amd64.tar.gz'; \
sha256='f242a9db6a0ad1846de7b6d94d507915d14062660616a61ef7c808a76e4f1676'; \
;; \
aarch64) \
url='https://dl.google.com/go/go1.17.2.linux-arm64.tar.gz'; \
sha256='a5a43c9cdabdb9f371d56951b14290eba8ce2f9b0db48fb5fc657943984fd4fc'; \
;; \
ppc64le) \
url='https://golang.org/dl/go1.17.2.linux-ppc64le.tar.gz'; \
sha256='12e2dc7e0ffeebe77083f267ef6705fec1621cdf2ed6489b3af04a13597ed68d'; \
;; \
*) echo "Unknown ARCH_SUFFIX=${ARCH_SUFFIX-}"; exit 1 ;; \
esac; \
wget -O go.tgz.asc "$url.asc" && \
wget -O go.tgz "$url" --progress=dot:giga && \
echo "$sha256 *go.tgz" | sha256sum -c - && \
GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; \
gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 'EB4C 1BFD 4F04 2F6D DDCC EC91 7721 F63B D38B 4796' && \
gpg --batch --verify go.tgz.asc go.tgz && \
gpgconf --kill all && \
rm -rf "$GNUPGHOME" go.tgz.asc && \
tar -C /usr/local -xzf go.tgz && \
rm go.tgz
RUN set -eux && \
dnf -y install \
--disablerepo "*" \
--enablerepo "baseos" \
--enablerepo "appstream" \
--enablerepo "powertools" \
rpmdevtools \
dnf-plugins-core \
rpmlint && \
rpm -ivh https://repo.zabbix.com/zabbix/5.4/rhel/8/SRPMS/zabbix-5.4.6-1.el8.src.rpm && \
cd /root/rpmbuild/ && \
dnf -y builddep \
--disablerepo "*" \
--enablerepo "baseos" \
--enablerepo "appstream" \
--enablerepo "powertools" \
SPECS/zabbix.spec && \
# rpmlint SPECS/zabbix.spec && \
rpmbuild -ba SPECS/zabbix.spec

View File

@ -20,6 +20,22 @@ LABEL org.opencontainers.image.authors="Alexey Pustovalov <alexey.pustovalov@zab
org.opencontainers.image.version="${ZBX_VERSION}"
RUN set -eux && \
ARCH_SUFFIX="$(arch)"; \
case "$ARCH_SUFFIX" in \
x86_64) \
additional_components='--enable-java'; \
;; \
aarch64) \
additional_components='--enable-java'; \
;; \
armv7l) \
additional_components='--enable-java'; \
;; \
ppc64le) \
additional_components=''; \
;; \
*) echo "Unknown ARCH_SUFFIX=${ARCH_SUFFIX-}"; exit 1 ;; \
esac; \
cd /tmp/ && \
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch master --depth 1 --single-branch /tmp/zabbix-${ZBX_VERSION} && \
cd /tmp/zabbix-${ZBX_VERSION} && \
@ -37,7 +53,6 @@ RUN set -eux && \
--enable-agent \
--enable-agent2 \
--enable-ipv6 \
--enable-java \
--enable-proxy \
--enable-server \
--enable-webservice \
@ -51,6 +66,7 @@ RUN set -eux && \
--with-openssl \
--with-ssh \
--with-unixodbc \
$additional_components \
--silent && \
make -j"$(nproc)" -s dbschema && \
make -j"$(nproc)" -s && \

View File

@ -20,6 +20,19 @@ LABEL org.opencontainers.image.authors="Alexey Pustovalov <alexey.pustovalov@zab
org.opencontainers.image.version="${ZBX_VERSION}"
RUN set -eux && \
ARCH_SUFFIX="$(arch)"; \
case "$ARCH_SUFFIX" in \
x86_64) \
additional_components='--enable-java'; \
;; \
aarch64) \
additional_components='--enable-java'; \
;; \
ppc64le) \
additional_components=''; \
;; \
*) echo "Unknown ARCH_SUFFIX=${ARCH_SUFFIX-}"; exit 1 ;; \
esac; \
cd /tmp/ && \
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch master --depth 1 --single-branch /tmp/zabbix-${ZBX_VERSION} && \
cd /tmp/zabbix-${ZBX_VERSION} && \
@ -37,7 +50,6 @@ RUN set -eux && \
--enable-ipv6 \
--enable-agent \
--enable-agent2 \
--enable-java \
--enable-proxy \
--enable-server \
--enable-webservice \
@ -51,6 +63,7 @@ RUN set -eux && \
--with-openssl \
--with-ssh \
--with-unixodbc \
$additional_components \
--silent && \
make -j"$(nproc)" -s dbschema && \
make -j"$(nproc)" -s && \

View File

@ -20,6 +20,22 @@ LABEL org.opencontainers.image.authors="Alexey Pustovalov <alexey.pustovalov@zab
org.opencontainers.image.version="${ZBX_VERSION}"
RUN set -eux && \
ARCH_SUFFIX="$(arch)"; \
case "$ARCH_SUFFIX" in \
x86_64) \
additional_components='--enable-java'; \
;; \
aarch64) \
additional_components='--enable-java'; \
;; \
armv7l) \
additional_components='--enable-java'; \
;; \
ppc64le) \
additional_components=''; \
;; \
*) echo "Unknown ARCH_SUFFIX=${ARCH_SUFFIX-}"; exit 1 ;; \
esac; \
cd /tmp/ && \
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch master --depth 1 --single-branch /tmp/zabbix-${ZBX_VERSION} && \
cd /tmp/zabbix-${ZBX_VERSION} && \
@ -37,7 +53,6 @@ RUN set -eux && \
--enable-ipv6 \
--enable-agent \
--enable-agent2 \
--enable-java \
--enable-proxy \
--enable-server \
--enable-webservice \
@ -51,6 +66,7 @@ RUN set -eux && \
--with-openssl \
--with-ssh \
--with-unixodbc \
$additional_components \
--silent && \
make -j"$(nproc)" -s dbschema && \
make -j"$(nproc)" -s && \

View File

@ -20,6 +20,22 @@ LABEL org.opencontainers.image.authors="Alexey Pustovalov <alexey.pustovalov@zab
org.opencontainers.image.version="${ZBX_VERSION}"
RUN set -eux && \
ARCH_SUFFIX="$(arch)"; \
case "$ARCH_SUFFIX" in \
x86_64) \
additional_components='--enable-java'; \
;; \
aarch64) \
additional_components='--enable-java'; \
;; \
armv7l) \
additional_components='--enable-java'; \
;; \
ppc64le) \
additional_components=''; \
;; \
*) echo "Unknown ARCH_SUFFIX=${ARCH_SUFFIX-}"; exit 1 ;; \
esac; \
cd /tmp/ && \
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch master --depth 1 --single-branch /tmp/zabbix-${ZBX_VERSION} && \
cd /tmp/zabbix-${ZBX_VERSION} && \
@ -37,7 +53,6 @@ RUN set -eux && \
--enable-agent \
--enable-agent2 \
--enable-ipv6 \
--enable-java \
--enable-proxy \
--enable-server \
--enable-webservice \
@ -51,6 +66,7 @@ RUN set -eux && \
--with-postgresql \
--with-ssh \
--with-unixodbc \
$additional_components \
--silent && \
make -j"$(nproc)" -s dbschema && \
make -j"$(nproc)" -s && \

View File

@ -20,6 +20,19 @@ LABEL org.opencontainers.image.authors="Alexey Pustovalov <alexey.pustovalov@zab
org.opencontainers.image.version="${ZBX_VERSION}"
RUN set -eux && \
ARCH_SUFFIX="$(arch)"; \
case "$ARCH_SUFFIX" in \
x86_64) \
additional_components='--enable-java'; \
;; \
aarch64) \
additional_components='--enable-java'; \
;; \
ppc64le) \
additional_components=''; \
;; \
*) echo "Unknown ARCH_SUFFIX=${ARCH_SUFFIX-}"; exit 1 ;; \
esac; \
cd /tmp/ && \
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch master --depth 1 --single-branch /tmp/zabbix-${ZBX_VERSION} && \
cd /tmp/zabbix-${ZBX_VERSION} && \
@ -37,7 +50,6 @@ RUN set -eux && \
--enable-agent \
--enable-agent2 \
--enable-ipv6 \
--enable-java \
--enable-proxy \
--enable-server \
--enable-webservice \
@ -51,6 +63,7 @@ RUN set -eux && \
--with-postgresql \
--with-ssh \
--with-unixodbc \
$additional_components \
--silent && \
make -j"$(nproc)" -s dbschema && \
make -j"$(nproc)" -s && \

View File

@ -20,6 +20,22 @@ LABEL org.opencontainers.image.authors="Alexey Pustovalov <alexey.pustovalov@zab
org.opencontainers.image.version="${ZBX_VERSION}"
RUN set -eux && \
ARCH_SUFFIX="$(arch)"; \
case "$ARCH_SUFFIX" in \
x86_64) \
additional_components='--enable-java'; \
;; \
aarch64) \
additional_components='--enable-java'; \
;; \
armv7l) \
additional_components='--enable-java'; \
;; \
ppc64le) \
additional_components=''; \
;; \
*) echo "Unknown ARCH_SUFFIX=${ARCH_SUFFIX-}"; exit 1 ;; \
esac; \
cd /tmp/ && \
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch master --depth 1 --single-branch /tmp/zabbix-${ZBX_VERSION} && \
cd /tmp/zabbix-${ZBX_VERSION} && \
@ -37,7 +53,6 @@ RUN set -eux && \
--enable-agent \
--enable-agent2 \
--enable-ipv6 \
--enable-java \
--enable-proxy \
--enable-server \
--enable-webservice \
@ -51,6 +66,7 @@ RUN set -eux && \
--with-postgresql \
--with-ssh \
--with-unixodbc \
$additional_components \
--silent && \
make -j"$(nproc)" -s dbschema && \
make -j"$(nproc)" -s && \

View File

@ -20,6 +20,22 @@ LABEL org.opencontainers.image.authors="Alexey Pustovalov <alexey.pustovalov@zab
org.opencontainers.image.version="${ZBX_VERSION}"
RUN set -eux && \
ARCH_SUFFIX="$(arch)"; \
case "$ARCH_SUFFIX" in \
x86_64) \
additional_components='--enable-java'; \
;; \
aarch64) \
additional_components='--enable-java'; \
;; \
armv7l) \
additional_components='--enable-java'; \
;; \
ppc64le) \
additional_components=''; \
;; \
*) echo "Unknown ARCH_SUFFIX=${ARCH_SUFFIX-}"; exit 1 ;; \
esac; \
cd /tmp/ && \
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch master --depth 1 --single-branch /tmp/zabbix-${ZBX_VERSION} && \
cd /tmp/zabbix-${ZBX_VERSION} && \
@ -37,7 +53,6 @@ RUN set -eux && \
--enable-agent \
--enable-agent2 \
--enable-ipv6 \
--enable-java \
--enable-proxy \
--with-ldap \
--with-libcurl \
@ -49,6 +64,7 @@ RUN set -eux && \
--with-sqlite3 \
--with-ssh \
--with-unixodbc \
$additional_components \
--silent && \
make -j"$(nproc)" -s dbschema && \
make -j"$(nproc)" -s && \

View File

@ -20,6 +20,19 @@ LABEL org.opencontainers.image.authors="Alexey Pustovalov <alexey.pustovalov@zab
org.opencontainers.image.version="${ZBX_VERSION}"
RUN set -eux && \
ARCH_SUFFIX="$(arch)"; \
case "$ARCH_SUFFIX" in \
x86_64) \
additional_components='--enable-java'; \
;; \
aarch64) \
additional_components='--enable-java'; \
;; \
ppc64le) \
additional_components=''; \
;; \
*) echo "Unknown ARCH_SUFFIX=${ARCH_SUFFIX-}"; exit 1 ;; \
esac; \
cd /tmp/ && \
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch master --depth 1 --single-branch /tmp/zabbix-${ZBX_VERSION} && \
cd /tmp/zabbix-${ZBX_VERSION} && \
@ -37,7 +50,6 @@ RUN set -eux && \
--enable-agent \
--enable-agent2 \
--enable-ipv6 \
--enable-java \
--enable-proxy \
--with-ldap \
--with-libcurl \
@ -49,6 +61,7 @@ RUN set -eux && \
--with-sqlite3 \
--with-ssh \
--with-unixodbc \
$additional_components \
--silent && \
make -j"$(nproc)" -s dbschema && \
make -j"$(nproc)" -s && \

View File

@ -20,6 +20,22 @@ LABEL org.opencontainers.image.authors="Alexey Pustovalov <alexey.pustovalov@zab
org.opencontainers.image.version="${ZBX_VERSION}"
RUN set -eux && \
ARCH_SUFFIX="$(arch)"; \
case "$ARCH_SUFFIX" in \
x86_64) \
additional_components='--enable-java'; \
;; \
aarch64) \
additional_components='--enable-java'; \
;; \
armv7l) \
additional_components='--enable-java'; \
;; \
ppc64le) \
additional_components=''; \
;; \
*) echo "Unknown ARCH_SUFFIX=${ARCH_SUFFIX-}"; exit 1 ;; \
esac; \
cd /tmp/ && \
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch master --depth 1 --single-branch /tmp/zabbix-${ZBX_VERSION} && \
cd /tmp/zabbix-${ZBX_VERSION} && \
@ -37,7 +53,6 @@ RUN set -eux && \
--enable-agent \
--enable-agent2 \
--enable-ipv6 \
--enable-java \
--enable-proxy \
--with-ldap \
--with-libcurl \
@ -49,6 +64,7 @@ RUN set -eux && \
--with-sqlite3 \
--with-ssh \
--with-unixodbc \
$additional_components \
--silent && \
make -j"$(nproc)" -s dbschema && \
make -j"$(nproc)" -s && \

View File

@ -4,7 +4,8 @@
"linux/amd64",
"linux/arm/v6",
"linux/arm/v7",
"linux/arm64"
"linux/arm64",
"linux/ppc64le"
],
"ol": [
"linux/amd64",
@ -13,11 +14,13 @@
"ubuntu": [
"linux/amd64",
"linux/arm/v7",
"linux/arm64"
"linux/arm64",
"linux/ppc64le"
],
"centos": [
"linux/amd64",
"linux/arm64"
"linux/arm64",
"linux/ppc64le"
]
},
"os-windows": {