From 4d0232a8d27a4c645efbfa2cda1df344d959d833 Mon Sep 17 00:00:00 2001 From: s3rj1k Date: Mon, 23 Sep 2024 22:38:05 +0200 Subject: [PATCH] [GHA] Move to new project layout. --- .github/docker/centos/7/amd64/Dockerfile | 102 ------------------ .../docker/debian/bookworm/amd64/Dockerfile | 68 ------------ .../bookworm/amd64/fsa.release.Dockerfile | 89 +++++++++++++++ .../bookworm/amd64/fsa.unstable.Dockerfile | 89 +++++++++++++++ .../bookworm/amd64/public.release.Dockerfile | 89 +++++++++++++++ .../bookworm/amd64/public.unstable.Dockerfile | 89 +++++++++++++++ .../docker/debian/bookworm/arm32v7/Dockerfile | 68 ------------ .../bookworm/arm32v7/fsa.release.Dockerfile | 90 ++++++++++++++++ .../bookworm/arm32v7/fsa.unstable.Dockerfile | 90 ++++++++++++++++ .../arm32v7/public.release.Dockerfile | 90 ++++++++++++++++ .../arm32v7/public.unstable.Dockerfile | 90 ++++++++++++++++ .../docker/debian/bookworm/arm64v8/Dockerfile | 68 ------------ .../bookworm/arm64v8/fsa.release.Dockerfile | 90 ++++++++++++++++ .../bookworm/arm64v8/fsa.unstable.Dockerfile | 90 ++++++++++++++++ .../arm64v8/public.release.Dockerfile | 90 ++++++++++++++++ .../arm64v8/public.unstable.Dockerfile | 90 ++++++++++++++++ .../docker/debian/bullseye/amd64/Dockerfile | 68 ------------ .../bullseye/amd64/fsa.release.Dockerfile | 90 ++++++++++++++++ .../bullseye/amd64/fsa.unstable.Dockerfile | 90 ++++++++++++++++ .../bullseye/amd64/public.release.Dockerfile | 90 ++++++++++++++++ .../bullseye/amd64/public.unstable.Dockerfile | 90 ++++++++++++++++ .../docker/debian/bullseye/arm32v7/Dockerfile | 68 ------------ .../bullseye/arm32v7/fsa.release.Dockerfile | 90 ++++++++++++++++ .../bullseye/arm32v7/fsa.unstable.Dockerfile | 90 ++++++++++++++++ .../arm32v7/public.release.Dockerfile | 90 ++++++++++++++++ .../arm32v7/public.unstable.Dockerfile | 90 ++++++++++++++++ .../docker/debian/bullseye/arm64v8/Dockerfile | 68 ------------ .../bullseye/arm64v8/fsa.release.Dockerfile | 90 ++++++++++++++++ .../bullseye/arm64v8/fsa.unstable.Dockerfile | 90 ++++++++++++++++ .../arm64v8/public.release.Dockerfile | 90 ++++++++++++++++ .../arm64v8/public.unstable.Dockerfile | 90 ++++++++++++++++ .github/docker/debian/buster/amd64/Dockerfile | 68 ------------ .../docker/debian/buster/arm32v7/Dockerfile | 68 ------------ .../docker/debian/buster/arm64v8/Dockerfile | 68 ------------ .github/workflows/{cicd.yml => build.yml} | 54 +++++----- 35 files changed, 2183 insertions(+), 741 deletions(-) delete mode 100644 .github/docker/centos/7/amd64/Dockerfile delete mode 100644 .github/docker/debian/bookworm/amd64/Dockerfile create mode 100644 .github/docker/debian/bookworm/amd64/fsa.release.Dockerfile create mode 100644 .github/docker/debian/bookworm/amd64/fsa.unstable.Dockerfile create mode 100644 .github/docker/debian/bookworm/amd64/public.release.Dockerfile create mode 100644 .github/docker/debian/bookworm/amd64/public.unstable.Dockerfile delete mode 100644 .github/docker/debian/bookworm/arm32v7/Dockerfile create mode 100644 .github/docker/debian/bookworm/arm32v7/fsa.release.Dockerfile create mode 100644 .github/docker/debian/bookworm/arm32v7/fsa.unstable.Dockerfile create mode 100644 .github/docker/debian/bookworm/arm32v7/public.release.Dockerfile create mode 100644 .github/docker/debian/bookworm/arm32v7/public.unstable.Dockerfile delete mode 100644 .github/docker/debian/bookworm/arm64v8/Dockerfile create mode 100644 .github/docker/debian/bookworm/arm64v8/fsa.release.Dockerfile create mode 100644 .github/docker/debian/bookworm/arm64v8/fsa.unstable.Dockerfile create mode 100644 .github/docker/debian/bookworm/arm64v8/public.release.Dockerfile create mode 100644 .github/docker/debian/bookworm/arm64v8/public.unstable.Dockerfile delete mode 100644 .github/docker/debian/bullseye/amd64/Dockerfile create mode 100644 .github/docker/debian/bullseye/amd64/fsa.release.Dockerfile create mode 100644 .github/docker/debian/bullseye/amd64/fsa.unstable.Dockerfile create mode 100644 .github/docker/debian/bullseye/amd64/public.release.Dockerfile create mode 100644 .github/docker/debian/bullseye/amd64/public.unstable.Dockerfile delete mode 100644 .github/docker/debian/bullseye/arm32v7/Dockerfile create mode 100644 .github/docker/debian/bullseye/arm32v7/fsa.release.Dockerfile create mode 100644 .github/docker/debian/bullseye/arm32v7/fsa.unstable.Dockerfile create mode 100644 .github/docker/debian/bullseye/arm32v7/public.release.Dockerfile create mode 100644 .github/docker/debian/bullseye/arm32v7/public.unstable.Dockerfile delete mode 100644 .github/docker/debian/bullseye/arm64v8/Dockerfile create mode 100644 .github/docker/debian/bullseye/arm64v8/fsa.release.Dockerfile create mode 100644 .github/docker/debian/bullseye/arm64v8/fsa.unstable.Dockerfile create mode 100644 .github/docker/debian/bullseye/arm64v8/public.release.Dockerfile create mode 100644 .github/docker/debian/bullseye/arm64v8/public.unstable.Dockerfile delete mode 100644 .github/docker/debian/buster/amd64/Dockerfile delete mode 100644 .github/docker/debian/buster/arm32v7/Dockerfile delete mode 100644 .github/docker/debian/buster/arm64v8/Dockerfile rename .github/workflows/{cicd.yml => build.yml} (71%) diff --git a/.github/docker/centos/7/amd64/Dockerfile b/.github/docker/centos/7/amd64/Dockerfile deleted file mode 100644 index f168b18..0000000 --- a/.github/docker/centos/7/amd64/Dockerfile +++ /dev/null @@ -1,102 +0,0 @@ -ARG BUILDER_IMAGE=centos:7.2.1511 - -FROM ${BUILDER_IMAGE} AS builder - -ARG MAINTAINER="Andrey Volk " -ARG BUILD_NUMBER=42 -ARG GIT_SHA=0000000000 - -MAINTAINER ${MAINTAINER} -ENV MAINTAINER=${MAINTAINER} - -RUN yum -y update && \ - yum install -y \ - audiofile-devel \ - autoconf \ - automake \ - bind-license \ - centos-release-scl \ - cyrus-sasl-lib \ - dbus \ - dbus-libs \ - devtoolset-9-gcc* \ - dos2unix \ - doxygen \ - dpkg-dev \ - dracut \ - epel-release \ - expat \ - gcc \ - gcc-c++ \ - git \ - glib2 \ - glib2-devel \ - gnupg2 \ - gzip \ - krb5-dxevel \ - libatomic \ - libcurl-devel \ - libtool \ - libuuid-devel \ - libxml2 \ - lksctp-tools-devel \ - lsb_release \ - make \ - multilib-rpm-config \ - openssl-devel \ - pkg-config \ - procps-ng \ - python \ - python-libs \ - rpm-build \ - rpmdevtools \ - scl-utils \ - sqlite \ - swig \ - unzip \ - uuid-devel \ - vim-minimal \ - wget \ - which \ - xz \ - xz-libs \ - yum-plugin-fastestmirror \ - yum-plugin-ovl \ - yum-utils \ - zlib-devel && \ - yum -y clean all - -ENV DATA_DIR=/data -WORKDIR ${DATA_DIR} - -COPY . ${DATA_DIR}/src/ -RUN cd ${DATA_DIR}/src/ && \ - git reset --hard HEAD && git clean -xfd && \ - cd ${DATA_DIR} - -ARG SPEC_FILE=spandsp - -# Bootstrap and Build -RUN cat < ~/.rpmmacros -%packager ${MAINTAINER} -%_topdir ${DATA_DIR}/rpmbuild -EOF -RUN rpmdev-setuptree - -RUN echo "export VERSION=$(rpm -q --qf '%{VERSION}\n' --specfile ${DATA_DIR}/src/${SPEC_FILE}.spec 2>/dev/null | head -1)" \ - | tee ~/.env && \ - chmod +x ~/.env - -RUN . ~/.env && \ - mv -v ${DATA_DIR}/src/ ${DATA_DIR}/${SPEC_FILE}-${VERSION}/ && \ - tar cvzf ${DATA_DIR}/rpmbuild/SOURCES/${SPEC_FILE}-${VERSION}.tar.gz --exclude .git -C ${DATA_DIR} ${SPEC_FILE}-${VERSION}/ && \ - cp -v ${DATA_DIR}/${SPEC_FILE}-${VERSION}/${SPEC_FILE}.spec ${DATA_DIR}/rpmbuild/SPECS/ && \ - sed -i "s/\(Release:\)\([[:space:]]*\)1%{?dist}/\1\2${BUILD_NUMBER}.${GIT_SHA}/" ${DATA_DIR}/rpmbuild/SPECS/${SPEC_FILE}.spec - -RUN rpmbuild -bs ${DATA_DIR}/rpmbuild/SPECS/${SPEC_FILE}.spec -RUN find ${DATA_DIR}/rpmbuild/SRPMS/ -type f | xargs -rI{} yum-builddep -y {} -RUN rpmbuild -ba ${DATA_DIR}/rpmbuild/SPECS/${SPEC_FILE}.spec - -# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) -FROM scratch -COPY --from=builder /data/rpmbuild/ / diff --git a/.github/docker/debian/bookworm/amd64/Dockerfile b/.github/docker/debian/bookworm/amd64/Dockerfile deleted file mode 100644 index 4fcf95e..0000000 --- a/.github/docker/debian/bookworm/amd64/Dockerfile +++ /dev/null @@ -1,68 +0,0 @@ -ARG BUILDER_IMAGE=debian:bookworm -ARG MAINTAINER="Andrey Volk " - -FROM ${BUILDER_IMAGE} AS builder - -ARG BUILD_NUMBER=42 -ARG GIT_SHA=0000000000 - -MAINTAINER ${MAINTAINER} - -SHELL ["/bin/bash", "-c"] - -RUN apt-get -q update && \ - DEBIAN_FRONTEND=noninteractive apt-get -yq install \ - apt-transport-https \ - build-essential \ - ca-certificates \ - cmake \ - curl \ - debhelper \ - devscripts \ - dh-autoreconf \ - docbook-xsl \ - dos2unix \ - doxygen \ - git \ - graphviz \ - libglib2.0-dev \ - libssl-dev \ - lsb-release \ - pkg-config \ - wget - -RUN update-ca-certificates --fresh - -ENV DATA_DIR=/data -WORKDIR ${DATA_DIR} - -COPY . ${DATA_DIR} -RUN git reset --hard HEAD && git clean -xfd - -RUN echo "export CODENAME=$(lsb_release -sc | tr -d '\n')" | tee ~/.env && \ - chmod +x ~/.env - -RUN git config --global --add safe.directory '*' - -# Bootstrap and Build -RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" | tee -a ~/.env -RUN . ~/.env && dch \ - --controlmaint \ - --distribution "${CODENAME}" \ - --force-bad-version \ - --force-distribution \ - --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - "Nightly build, ${GIT_SHA}" - -RUN apt-get -q update && \ - mk-build-deps --install --remove debian/control --tool "apt-get -y --no-install-recommends" && \ - apt-get -y -f install - -ENV DEB_BUILD_OPTIONS="parallel=1" -RUN . ~/.env && dch -b -M -v "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - --force-distribution -D "${CODENAME}" "Nightly build, ${GIT_SHA}" -RUN debuild -b -us -uc && mkdir OUT && mv -v ../*.deb OUT/. - -# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) -FROM scratch -COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bookworm/amd64/fsa.release.Dockerfile b/.github/docker/debian/bookworm/amd64/fsa.release.Dockerfile new file mode 100644 index 0000000..5fdb16f --- /dev/null +++ b/.github/docker/debian/bookworm/amd64/fsa.release.Dockerfile @@ -0,0 +1,89 @@ +ARG BUILDER_IMAGE=debian:bookworm-20240513 + +FROM ${BUILDER_IMAGE} AS builder +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bookworm +ARG ARCH=amd64 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bookworm/amd64/fsa.unstable.Dockerfile b/.github/docker/debian/bookworm/amd64/fsa.unstable.Dockerfile new file mode 100644 index 0000000..5fdb16f --- /dev/null +++ b/.github/docker/debian/bookworm/amd64/fsa.unstable.Dockerfile @@ -0,0 +1,89 @@ +ARG BUILDER_IMAGE=debian:bookworm-20240513 + +FROM ${BUILDER_IMAGE} AS builder +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bookworm +ARG ARCH=amd64 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bookworm/amd64/public.release.Dockerfile b/.github/docker/debian/bookworm/amd64/public.release.Dockerfile new file mode 100644 index 0000000..5fdb16f --- /dev/null +++ b/.github/docker/debian/bookworm/amd64/public.release.Dockerfile @@ -0,0 +1,89 @@ +ARG BUILDER_IMAGE=debian:bookworm-20240513 + +FROM ${BUILDER_IMAGE} AS builder +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bookworm +ARG ARCH=amd64 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bookworm/amd64/public.unstable.Dockerfile b/.github/docker/debian/bookworm/amd64/public.unstable.Dockerfile new file mode 100644 index 0000000..5fdb16f --- /dev/null +++ b/.github/docker/debian/bookworm/amd64/public.unstable.Dockerfile @@ -0,0 +1,89 @@ +ARG BUILDER_IMAGE=debian:bookworm-20240513 + +FROM ${BUILDER_IMAGE} AS builder +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bookworm +ARG ARCH=amd64 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bookworm/arm32v7/Dockerfile b/.github/docker/debian/bookworm/arm32v7/Dockerfile deleted file mode 100644 index 758450c..0000000 --- a/.github/docker/debian/bookworm/arm32v7/Dockerfile +++ /dev/null @@ -1,68 +0,0 @@ -ARG BUILDER_IMAGE=arm32v7/debian:bookworm -ARG MAINTAINER="Andrey Volk " - -FROM ${BUILDER_IMAGE} AS builder - -ARG BUILD_NUMBER=42 -ARG GIT_SHA=0000000000 - -MAINTAINER ${MAINTAINER} - -SHELL ["/bin/bash", "-c"] - -RUN apt-get -q update && \ - DEBIAN_FRONTEND=noninteractive apt-get -yq install \ - apt-transport-https \ - build-essential \ - ca-certificates \ - cmake \ - curl \ - debhelper \ - devscripts \ - dh-autoreconf \ - docbook-xsl \ - dos2unix \ - doxygen \ - git \ - graphviz \ - libglib2.0-dev \ - libssl-dev \ - lsb-release \ - pkg-config \ - wget - -RUN update-ca-certificates --fresh - -ENV DATA_DIR=/data -WORKDIR ${DATA_DIR} - -COPY . ${DATA_DIR} -RUN git reset --hard HEAD && git clean -xfd - -RUN echo "export CODENAME=$(lsb_release -sc | tr -d '\n')" | tee ~/.env && \ - chmod +x ~/.env - -RUN git config --global --add safe.directory '*' - -# Bootstrap and Build -RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" | tee -a ~/.env -RUN . ~/.env && dch \ - --controlmaint \ - --distribution "${CODENAME}" \ - --force-bad-version \ - --force-distribution \ - --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - "Nightly build, ${GIT_SHA}" - -RUN apt-get -q update && \ - mk-build-deps --install --remove debian/control --tool "apt-get -y --no-install-recommends" && \ - apt-get -y -f install - -ENV DEB_BUILD_OPTIONS="parallel=1" -RUN . ~/.env && dch -b -M -v "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - --force-distribution -D "${CODENAME}" "Nightly build, ${GIT_SHA}" -RUN debuild -b -us -uc && mkdir OUT && mv -v ../*.deb OUT/. - -# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) -FROM scratch -COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bookworm/arm32v7/fsa.release.Dockerfile b/.github/docker/debian/bookworm/arm32v7/fsa.release.Dockerfile new file mode 100644 index 0000000..d3669eb --- /dev/null +++ b/.github/docker/debian/bookworm/arm32v7/fsa.release.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=arm32v7/debian:bookworm-20240513 + +FROM --platform=linux/arm/v7 ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bookworm +ARG ARCH=arm32 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bookworm/arm32v7/fsa.unstable.Dockerfile b/.github/docker/debian/bookworm/arm32v7/fsa.unstable.Dockerfile new file mode 100644 index 0000000..d3669eb --- /dev/null +++ b/.github/docker/debian/bookworm/arm32v7/fsa.unstable.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=arm32v7/debian:bookworm-20240513 + +FROM --platform=linux/arm/v7 ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bookworm +ARG ARCH=arm32 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bookworm/arm32v7/public.release.Dockerfile b/.github/docker/debian/bookworm/arm32v7/public.release.Dockerfile new file mode 100644 index 0000000..d3669eb --- /dev/null +++ b/.github/docker/debian/bookworm/arm32v7/public.release.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=arm32v7/debian:bookworm-20240513 + +FROM --platform=linux/arm/v7 ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bookworm +ARG ARCH=arm32 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bookworm/arm32v7/public.unstable.Dockerfile b/.github/docker/debian/bookworm/arm32v7/public.unstable.Dockerfile new file mode 100644 index 0000000..d3669eb --- /dev/null +++ b/.github/docker/debian/bookworm/arm32v7/public.unstable.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=arm32v7/debian:bookworm-20240513 + +FROM --platform=linux/arm/v7 ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bookworm +ARG ARCH=arm32 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bookworm/arm64v8/Dockerfile b/.github/docker/debian/bookworm/arm64v8/Dockerfile deleted file mode 100644 index a2f25ff..0000000 --- a/.github/docker/debian/bookworm/arm64v8/Dockerfile +++ /dev/null @@ -1,68 +0,0 @@ -ARG BUILDER_IMAGE=arm64v8/debian:bookworm -ARG MAINTAINER="Andrey Volk " - -FROM ${BUILDER_IMAGE} AS builder - -ARG BUILD_NUMBER=42 -ARG GIT_SHA=0000000000 - -MAINTAINER ${MAINTAINER} - -SHELL ["/bin/bash", "-c"] - -RUN apt-get -q update && \ - DEBIAN_FRONTEND=noninteractive apt-get -yq install \ - apt-transport-https \ - build-essential \ - ca-certificates \ - cmake \ - curl \ - debhelper \ - devscripts \ - dh-autoreconf \ - docbook-xsl \ - dos2unix \ - doxygen \ - git \ - graphviz \ - libglib2.0-dev \ - libssl-dev \ - lsb-release \ - pkg-config \ - wget - -RUN update-ca-certificates --fresh - -ENV DATA_DIR=/data -WORKDIR ${DATA_DIR} - -COPY . ${DATA_DIR} -RUN git reset --hard HEAD && git clean -xfd - -RUN echo "export CODENAME=$(lsb_release -sc | tr -d '\n')" | tee ~/.env && \ - chmod +x ~/.env - -RUN git config --global --add safe.directory '*' - -# Bootstrap and Build -RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" | tee -a ~/.env -RUN . ~/.env && dch \ - --controlmaint \ - --distribution "${CODENAME}" \ - --force-bad-version \ - --force-distribution \ - --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - "Nightly build, ${GIT_SHA}" - -RUN apt-get -q update && \ - mk-build-deps --install --remove debian/control --tool "apt-get -y --no-install-recommends" && \ - apt-get -y -f install - -ENV DEB_BUILD_OPTIONS="parallel=1" -RUN . ~/.env && dch -b -M -v "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - --force-distribution -D "${CODENAME}" "Nightly build, ${GIT_SHA}" -RUN debuild -b -us -uc && mkdir OUT && mv -v ../*.deb OUT/. - -# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) -FROM scratch -COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bookworm/arm64v8/fsa.release.Dockerfile b/.github/docker/debian/bookworm/arm64v8/fsa.release.Dockerfile new file mode 100644 index 0000000..35f9700 --- /dev/null +++ b/.github/docker/debian/bookworm/arm64v8/fsa.release.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=arm64v8/debian:bookworm-20240513 + +FROM --platform=linux/arm64 ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bookworm +ARG ARCH=arm64 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bookworm/arm64v8/fsa.unstable.Dockerfile b/.github/docker/debian/bookworm/arm64v8/fsa.unstable.Dockerfile new file mode 100644 index 0000000..35f9700 --- /dev/null +++ b/.github/docker/debian/bookworm/arm64v8/fsa.unstable.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=arm64v8/debian:bookworm-20240513 + +FROM --platform=linux/arm64 ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bookworm +ARG ARCH=arm64 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bookworm/arm64v8/public.release.Dockerfile b/.github/docker/debian/bookworm/arm64v8/public.release.Dockerfile new file mode 100644 index 0000000..35f9700 --- /dev/null +++ b/.github/docker/debian/bookworm/arm64v8/public.release.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=arm64v8/debian:bookworm-20240513 + +FROM --platform=linux/arm64 ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bookworm +ARG ARCH=arm64 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bookworm/arm64v8/public.unstable.Dockerfile b/.github/docker/debian/bookworm/arm64v8/public.unstable.Dockerfile new file mode 100644 index 0000000..35f9700 --- /dev/null +++ b/.github/docker/debian/bookworm/arm64v8/public.unstable.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=arm64v8/debian:bookworm-20240513 + +FROM --platform=linux/arm64 ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bookworm +ARG ARCH=arm64 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bullseye/amd64/Dockerfile b/.github/docker/debian/bullseye/amd64/Dockerfile deleted file mode 100644 index bc96a5b..0000000 --- a/.github/docker/debian/bullseye/amd64/Dockerfile +++ /dev/null @@ -1,68 +0,0 @@ -ARG BUILDER_IMAGE=debian:bullseye -ARG MAINTAINER="Andrey Volk " - -FROM ${BUILDER_IMAGE} AS builder - -ARG BUILD_NUMBER=42 -ARG GIT_SHA=0000000000 - -MAINTAINER ${MAINTAINER} - -SHELL ["/bin/bash", "-c"] - -RUN apt-get -q update && \ - DEBIAN_FRONTEND=noninteractive apt-get -yq install \ - apt-transport-https \ - build-essential \ - ca-certificates \ - cmake \ - curl \ - debhelper \ - devscripts \ - dh-autoreconf \ - docbook-xsl \ - dos2unix \ - doxygen \ - git \ - graphviz \ - libglib2.0-dev \ - libssl-dev \ - lsb-release \ - pkg-config \ - wget - -RUN update-ca-certificates --fresh - -ENV DATA_DIR=/data -WORKDIR ${DATA_DIR} - -COPY . ${DATA_DIR} -RUN git reset --hard HEAD && git clean -xfd - -RUN echo "export CODENAME=$(lsb_release -sc | tr -d '\n')" | tee ~/.env && \ - chmod +x ~/.env - -RUN git config --global --add safe.directory '*' - -# Bootstrap and Build -RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" | tee -a ~/.env -RUN . ~/.env && dch \ - --controlmaint \ - --distribution "${CODENAME}" \ - --force-bad-version \ - --force-distribution \ - --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - "Nightly build, ${GIT_SHA}" - -RUN apt-get -q update && \ - mk-build-deps --install --remove debian/control --tool "apt-get -y --no-install-recommends" && \ - apt-get -y -f install - -ENV DEB_BUILD_OPTIONS="parallel=1" -RUN . ~/.env && dch -b -M -v "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - --force-distribution -D "${CODENAME}" "Nightly build, ${GIT_SHA}" -RUN debuild -b -us -uc && mkdir OUT && mv -v ../*.deb OUT/. - -# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) -FROM scratch -COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bullseye/amd64/fsa.release.Dockerfile b/.github/docker/debian/bullseye/amd64/fsa.release.Dockerfile new file mode 100644 index 0000000..249cda4 --- /dev/null +++ b/.github/docker/debian/bullseye/amd64/fsa.release.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=debian:bullseye-20240513 + +FROM ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bullseye +ARG ARCH=amd64 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bullseye/amd64/fsa.unstable.Dockerfile b/.github/docker/debian/bullseye/amd64/fsa.unstable.Dockerfile new file mode 100644 index 0000000..249cda4 --- /dev/null +++ b/.github/docker/debian/bullseye/amd64/fsa.unstable.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=debian:bullseye-20240513 + +FROM ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bullseye +ARG ARCH=amd64 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bullseye/amd64/public.release.Dockerfile b/.github/docker/debian/bullseye/amd64/public.release.Dockerfile new file mode 100644 index 0000000..249cda4 --- /dev/null +++ b/.github/docker/debian/bullseye/amd64/public.release.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=debian:bullseye-20240513 + +FROM ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bullseye +ARG ARCH=amd64 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bullseye/amd64/public.unstable.Dockerfile b/.github/docker/debian/bullseye/amd64/public.unstable.Dockerfile new file mode 100644 index 0000000..249cda4 --- /dev/null +++ b/.github/docker/debian/bullseye/amd64/public.unstable.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=debian:bullseye-20240513 + +FROM ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bullseye +ARG ARCH=amd64 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bullseye/arm32v7/Dockerfile b/.github/docker/debian/bullseye/arm32v7/Dockerfile deleted file mode 100644 index 9a51dd3..0000000 --- a/.github/docker/debian/bullseye/arm32v7/Dockerfile +++ /dev/null @@ -1,68 +0,0 @@ -ARG BUILDER_IMAGE=arm32v7/debian:bullseye -ARG MAINTAINER="Andrey Volk " - -FROM ${BUILDER_IMAGE} AS builder - -ARG BUILD_NUMBER=42 -ARG GIT_SHA=0000000000 - -MAINTAINER ${MAINTAINER} - -SHELL ["/bin/bash", "-c"] - -RUN apt-get -q update && \ - DEBIAN_FRONTEND=noninteractive apt-get -yq install \ - apt-transport-https \ - build-essential \ - ca-certificates \ - cmake \ - curl \ - debhelper \ - devscripts \ - dh-autoreconf \ - docbook-xsl \ - dos2unix \ - doxygen \ - git \ - graphviz \ - libglib2.0-dev \ - libssl-dev \ - lsb-release \ - pkg-config \ - wget - -RUN update-ca-certificates --fresh - -ENV DATA_DIR=/data -WORKDIR ${DATA_DIR} - -COPY . ${DATA_DIR} -RUN git reset --hard HEAD && git clean -xfd - -RUN echo "export CODENAME=$(lsb_release -sc | tr -d '\n')" | tee ~/.env && \ - chmod +x ~/.env - -RUN git config --global --add safe.directory '*' - -# Bootstrap and Build -RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" | tee -a ~/.env -RUN . ~/.env && dch \ - --controlmaint \ - --distribution "${CODENAME}" \ - --force-bad-version \ - --force-distribution \ - --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - "Nightly build, ${GIT_SHA}" - -RUN apt-get -q update && \ - mk-build-deps --install --remove debian/control --tool "apt-get -y --no-install-recommends" && \ - apt-get -y -f install - -ENV DEB_BUILD_OPTIONS="parallel=1" -RUN . ~/.env && dch -b -M -v "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - --force-distribution -D "${CODENAME}" "Nightly build, ${GIT_SHA}" -RUN debuild -b -us -uc && mkdir OUT && mv -v ../*.deb OUT/. - -# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) -FROM scratch -COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bullseye/arm32v7/fsa.release.Dockerfile b/.github/docker/debian/bullseye/arm32v7/fsa.release.Dockerfile new file mode 100644 index 0000000..5f3fe71 --- /dev/null +++ b/.github/docker/debian/bullseye/arm32v7/fsa.release.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=arm32v7/debian:bullseye-20240513 + +FROM --platform=linux/arm/v7 ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bullseye +ARG ARCH=arm32 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bullseye/arm32v7/fsa.unstable.Dockerfile b/.github/docker/debian/bullseye/arm32v7/fsa.unstable.Dockerfile new file mode 100644 index 0000000..5f3fe71 --- /dev/null +++ b/.github/docker/debian/bullseye/arm32v7/fsa.unstable.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=arm32v7/debian:bullseye-20240513 + +FROM --platform=linux/arm/v7 ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bullseye +ARG ARCH=arm32 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bullseye/arm32v7/public.release.Dockerfile b/.github/docker/debian/bullseye/arm32v7/public.release.Dockerfile new file mode 100644 index 0000000..5f3fe71 --- /dev/null +++ b/.github/docker/debian/bullseye/arm32v7/public.release.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=arm32v7/debian:bullseye-20240513 + +FROM --platform=linux/arm/v7 ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bullseye +ARG ARCH=arm32 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bullseye/arm32v7/public.unstable.Dockerfile b/.github/docker/debian/bullseye/arm32v7/public.unstable.Dockerfile new file mode 100644 index 0000000..5f3fe71 --- /dev/null +++ b/.github/docker/debian/bullseye/arm32v7/public.unstable.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=arm32v7/debian:bullseye-20240513 + +FROM --platform=linux/arm/v7 ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bullseye +ARG ARCH=arm32 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bullseye/arm64v8/Dockerfile b/.github/docker/debian/bullseye/arm64v8/Dockerfile deleted file mode 100644 index d5832e7..0000000 --- a/.github/docker/debian/bullseye/arm64v8/Dockerfile +++ /dev/null @@ -1,68 +0,0 @@ -ARG BUILDER_IMAGE=arm64v8/debian:bullseye -ARG MAINTAINER="Andrey Volk " - -FROM ${BUILDER_IMAGE} AS builder - -ARG BUILD_NUMBER=42 -ARG GIT_SHA=0000000000 - -MAINTAINER ${MAINTAINER} - -SHELL ["/bin/bash", "-c"] - -RUN apt-get -q update && \ - DEBIAN_FRONTEND=noninteractive apt-get -yq install \ - apt-transport-https \ - build-essential \ - ca-certificates \ - cmake \ - curl \ - debhelper \ - devscripts \ - dh-autoreconf \ - docbook-xsl \ - dos2unix \ - doxygen \ - git \ - graphviz \ - libglib2.0-dev \ - libssl-dev \ - lsb-release \ - pkg-config \ - wget - -RUN update-ca-certificates --fresh - -ENV DATA_DIR=/data -WORKDIR ${DATA_DIR} - -COPY . ${DATA_DIR} -RUN git reset --hard HEAD && git clean -xfd - -RUN echo "export CODENAME=$(lsb_release -sc | tr -d '\n')" | tee ~/.env && \ - chmod +x ~/.env - -RUN git config --global --add safe.directory '*' - -# Bootstrap and Build -RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" | tee -a ~/.env -RUN . ~/.env && dch \ - --controlmaint \ - --distribution "${CODENAME}" \ - --force-bad-version \ - --force-distribution \ - --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - "Nightly build, ${GIT_SHA}" - -RUN apt-get -q update && \ - mk-build-deps --install --remove debian/control --tool "apt-get -y --no-install-recommends" && \ - apt-get -y -f install - -ENV DEB_BUILD_OPTIONS="parallel=1" -RUN . ~/.env && dch -b -M -v "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - --force-distribution -D "${CODENAME}" "Nightly build, ${GIT_SHA}" -RUN debuild -b -us -uc && mkdir OUT && mv -v ../*.deb OUT/. - -# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) -FROM scratch -COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bullseye/arm64v8/fsa.release.Dockerfile b/.github/docker/debian/bullseye/arm64v8/fsa.release.Dockerfile new file mode 100644 index 0000000..110984a --- /dev/null +++ b/.github/docker/debian/bullseye/arm64v8/fsa.release.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=arm64v8/debian:bullseye-20240513 + +FROM --platform=linux/arm64 ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bullseye +ARG ARCH=arm64 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bullseye/arm64v8/fsa.unstable.Dockerfile b/.github/docker/debian/bullseye/arm64v8/fsa.unstable.Dockerfile new file mode 100644 index 0000000..110984a --- /dev/null +++ b/.github/docker/debian/bullseye/arm64v8/fsa.unstable.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=arm64v8/debian:bullseye-20240513 + +FROM --platform=linux/arm64 ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bullseye +ARG ARCH=arm64 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bullseye/arm64v8/public.release.Dockerfile b/.github/docker/debian/bullseye/arm64v8/public.release.Dockerfile new file mode 100644 index 0000000..110984a --- /dev/null +++ b/.github/docker/debian/bullseye/arm64v8/public.release.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=arm64v8/debian:bullseye-20240513 + +FROM --platform=linux/arm64 ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bullseye +ARG ARCH=arm64 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/bullseye/arm64v8/public.unstable.Dockerfile b/.github/docker/debian/bullseye/arm64v8/public.unstable.Dockerfile new file mode 100644 index 0000000..110984a --- /dev/null +++ b/.github/docker/debian/bullseye/arm64v8/public.unstable.Dockerfile @@ -0,0 +1,90 @@ +ARG BUILDER_IMAGE=arm64v8/debian:bullseye-20240513 + +FROM --platform=linux/arm64 ${BUILDER_IMAGE} AS builder + +ARG MAINTAINER_NAME="Andrey Volk" +ARG MAINTAINER_EMAIL="andrey@signalwire.com" + +ARG CODENAME=bullseye +ARG ARCH=arm64 + +ARG BUILD_NUMBER=42 +ARG GIT_SHA=0000000000 + +ARG DATA_DIR=/data + +LABEL maintainer="${MAINTAINER_NAME} <${MAINTAINER_EMAIL}>" + +SHELL ["/bin/bash", "-c"] + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get -q update \ + && apt-get -y -q install \ + apt-transport-https \ + autoconf \ + automake \ + build-essential \ + ca-certificates \ + cmake \ + curl \ + debhelper \ + devscripts \ + dh-autoreconf \ + docbook-xsl \ + dos2unix \ + doxygen \ + dpkg-dev \ + git \ + graphviz \ + libglib2.0-dev \ + libssl-dev \ + lsb-release \ + pkg-config \ + wget + +RUN update-ca-certificates --fresh + +RUN echo "export CODENAME=${CODENAME}" | tee ~/.env \ + && echo "export ARCH=${ARCH}" | tee -a ~/.env \ + && chmod +x ~/.env + +RUN git config --global --add safe.directory '*' \ + && git config --global user.name "${MAINTAINER_NAME}" \ + && git config --global user.email "${MAINTAINER_EMAIL}" + +# Bootstrap and Build +COPY . ${DATA_DIR} +WORKDIR ${DATA_DIR} + +RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" \ + | tee -a ~/.env + +RUN apt-get -q update \ + && mk-build-deps \ + --install \ + --remove debian/control \ + --tool "apt-get -y --no-install-recommends" \ + && apt-get -y -f install + +ENV DEB_BUILD_OPTIONS="parallel=1" + +RUN . ~/.env \ + && dch \ + --controlmaint \ + --distribution "${CODENAME}" \ + --force-bad-version \ + --force-distribution \ + --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ + "Nightly build, ${GIT_SHA}" \ + && debuild \ + --no-tgz-check \ + --build=binary \ + --unsigned-source \ + --unsigned-changes \ + && mkdir OUT \ + && mv -v ../*.{deb,changes} OUT/. + +# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) +FROM scratch +COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/buster/amd64/Dockerfile b/.github/docker/debian/buster/amd64/Dockerfile deleted file mode 100644 index ecf4f2a..0000000 --- a/.github/docker/debian/buster/amd64/Dockerfile +++ /dev/null @@ -1,68 +0,0 @@ -ARG BUILDER_IMAGE=debian:buster -ARG MAINTAINER="Andrey Volk " - -FROM ${BUILDER_IMAGE} AS builder - -ARG BUILD_NUMBER=42 -ARG GIT_SHA=0000000000 - -MAINTAINER ${MAINTAINER} - -SHELL ["/bin/bash", "-c"] - -RUN apt-get -q update && \ - DEBIAN_FRONTEND=noninteractive apt-get -yq install \ - apt-transport-https \ - build-essential \ - ca-certificates \ - cmake \ - curl \ - debhelper \ - devscripts \ - dh-autoreconf \ - docbook-xsl \ - dos2unix \ - doxygen \ - git \ - graphviz \ - libglib2.0-dev \ - libssl-dev \ - lsb-release \ - pkg-config \ - wget - -RUN update-ca-certificates --fresh - -ENV DATA_DIR=/data -WORKDIR ${DATA_DIR} - -COPY . ${DATA_DIR} -RUN git reset --hard HEAD && git clean -xfd - -RUN echo "export CODENAME=$(lsb_release -sc | tr -d '\n')" | tee ~/.env && \ - chmod +x ~/.env - -RUN git config --global --add safe.directory '*' - -# Bootstrap and Build -RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" | tee -a ~/.env -RUN . ~/.env && dch \ - --controlmaint \ - --distribution "${CODENAME}" \ - --force-bad-version \ - --force-distribution \ - --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - "Nightly build, ${GIT_SHA}" - -RUN apt-get -q update && \ - mk-build-deps --install --remove debian/control --tool "apt-get -y --no-install-recommends" && \ - apt-get -y -f install - -ENV DEB_BUILD_OPTIONS="parallel=1" -RUN . ~/.env && dch -b -M -v "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - --force-distribution -D "${CODENAME}" "Nightly build, ${GIT_SHA}" -RUN debuild -b -us -uc && mkdir OUT && mv -v ../*.deb OUT/. - -# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) -FROM scratch -COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/buster/arm32v7/Dockerfile b/.github/docker/debian/buster/arm32v7/Dockerfile deleted file mode 100644 index 478645d..0000000 --- a/.github/docker/debian/buster/arm32v7/Dockerfile +++ /dev/null @@ -1,68 +0,0 @@ -ARG BUILDER_IMAGE=arm32v7/debian:buster -ARG MAINTAINER="Andrey Volk " - -FROM ${BUILDER_IMAGE} AS builder - -ARG BUILD_NUMBER=42 -ARG GIT_SHA=0000000000 - -MAINTAINER ${MAINTAINER} - -SHELL ["/bin/bash", "-c"] - -RUN apt-get -q update && \ - DEBIAN_FRONTEND=noninteractive apt-get -yq install \ - apt-transport-https \ - build-essential \ - ca-certificates \ - cmake \ - curl \ - debhelper \ - devscripts \ - dh-autoreconf \ - docbook-xsl \ - dos2unix \ - doxygen \ - git \ - graphviz \ - libglib2.0-dev \ - libssl-dev \ - lsb-release \ - pkg-config \ - wget - -RUN update-ca-certificates --fresh - -ENV DATA_DIR=/data -WORKDIR ${DATA_DIR} - -COPY . ${DATA_DIR} -RUN git reset --hard HEAD && git clean -xfd - -RUN echo "export CODENAME=$(lsb_release -sc | tr -d '\n')" | tee ~/.env && \ - chmod +x ~/.env - -RUN git config --global --add safe.directory '*' - -# Bootstrap and Build -RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" | tee -a ~/.env -RUN . ~/.env && dch \ - --controlmaint \ - --distribution "${CODENAME}" \ - --force-bad-version \ - --force-distribution \ - --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - "Nightly build, ${GIT_SHA}" - -RUN apt-get -q update && \ - mk-build-deps --install --remove debian/control --tool "apt-get -y --no-install-recommends" && \ - apt-get -y -f install - -ENV DEB_BUILD_OPTIONS="parallel=1" -RUN . ~/.env && dch -b -M -v "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - --force-distribution -D "${CODENAME}" "Nightly build, ${GIT_SHA}" -RUN debuild -b -us -uc && mkdir OUT && mv -v ../*.deb OUT/. - -# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) -FROM scratch -COPY --from=builder /data/OUT/ / diff --git a/.github/docker/debian/buster/arm64v8/Dockerfile b/.github/docker/debian/buster/arm64v8/Dockerfile deleted file mode 100644 index 2ed2de2..0000000 --- a/.github/docker/debian/buster/arm64v8/Dockerfile +++ /dev/null @@ -1,68 +0,0 @@ -ARG BUILDER_IMAGE=arm64v8/debian:buster -ARG MAINTAINER="Andrey Volk " - -FROM ${BUILDER_IMAGE} AS builder - -ARG BUILD_NUMBER=42 -ARG GIT_SHA=0000000000 - -MAINTAINER ${MAINTAINER} - -SHELL ["/bin/bash", "-c"] - -RUN apt-get -q update && \ - DEBIAN_FRONTEND=noninteractive apt-get -yq install \ - apt-transport-https \ - build-essential \ - ca-certificates \ - cmake \ - curl \ - debhelper \ - devscripts \ - dh-autoreconf \ - docbook-xsl \ - dos2unix \ - doxygen \ - git \ - graphviz \ - libglib2.0-dev \ - libssl-dev \ - lsb-release \ - pkg-config \ - wget - -RUN update-ca-certificates --fresh - -ENV DATA_DIR=/data -WORKDIR ${DATA_DIR} - -COPY . ${DATA_DIR} -RUN git reset --hard HEAD && git clean -xfd - -RUN echo "export CODENAME=$(lsb_release -sc | tr -d '\n')" | tee ~/.env && \ - chmod +x ~/.env - -RUN git config --global --add safe.directory '*' - -# Bootstrap and Build -RUN echo "export VERSION=$(dpkg-parsechangelog --show-field Version | cut -f1 -d'-')" | tee -a ~/.env -RUN . ~/.env && dch \ - --controlmaint \ - --distribution "${CODENAME}" \ - --force-bad-version \ - --force-distribution \ - --newversion "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - "Nightly build, ${GIT_SHA}" - -RUN apt-get -q update && \ - mk-build-deps --install --remove debian/control --tool "apt-get -y --no-install-recommends" && \ - apt-get -y -f install - -ENV DEB_BUILD_OPTIONS="parallel=1" -RUN . ~/.env && dch -b -M -v "${VERSION}-${BUILD_NUMBER}-${GIT_SHA}~${CODENAME}" \ - --force-distribution -D "${CODENAME}" "Nightly build, ${GIT_SHA}" -RUN debuild -b -us -uc && mkdir OUT && mv -v ../*.deb OUT/. - -# Artifacts image (mandatory part, the resulting image must have a single filesystem layer) -FROM scratch -COPY --from=builder /data/OUT/ / diff --git a/.github/workflows/cicd.yml b/.github/workflows/build.yml similarity index 71% rename from .github/workflows/cicd.yml rename to .github/workflows/build.yml index a1cb8e4..de16c43 100644 --- a/.github/workflows/cicd.yml +++ b/.github/workflows/build.yml @@ -13,8 +13,8 @@ concurrency: group: ${{ github.head_ref || github.ref }} jobs: - deb: - name: 'DEB' + deb-fsa: + name: 'DEB-FSA' permissions: id-token: write contents: read @@ -28,7 +28,6 @@ jobs: version: - bookworm - bullseye - - buster platform: - name: amd64 runner: ubuntu-latest @@ -36,19 +35,17 @@ jobs: runner: ubuntu-latest - name: arm64v8 runner: ubuntu-latest - # exclude: - # - version: bookworm - # platform: - # name: arm32v7 + release: + - release + - unstable with: RUNNER: ${{ matrix.platform.runner }} ARTIFACTS_PATTERN: '.*\.(deb)$' - DOCKERFILE: .github/docker/${{ matrix.os }}/${{ matrix.version }}/${{ matrix.platform.name }}/Dockerfile + DOCKERFILE: .github/docker/${{ matrix.os }}/${{ matrix.version }}/${{ matrix.platform.name }}/fsa.${{ matrix.release }}.Dockerfile MAINTAINER: 'Andrey Volk ' - META_FILE_PATH_PREFIX: /var/www/spandsp/${{ github.ref_name }}/${{ github.run_id }}-${{ github.run_number }} + META_FILE_PATH_PREFIX: /var/www/spandsp/fsa/${{ matrix.release }}/${{ github.ref_name }}/${{ github.run_id }}-${{ github.run_number }} PLATFORM: ${{ matrix.platform.name }} - # REPO_DOMAIN: freeswitch.signalwire.com - TARGET_ARTIFACT_NAME: ${{ matrix.os }}-${{ matrix.version }}-${{ matrix.platform.name }}-artifact + TARGET_ARTIFACT_NAME: ${{ matrix.os }}-${{ matrix.version }}-${{ matrix.platform.name }}-fsa-${{ matrix.release }}-artifact UPLOAD_BUILD_ARTIFACTS: ${{ github.event_name != 'pull_request' || contains(github.event.pull_request.title, ':upload-artifacts') }} secrets: GH_BOT_DEPLOY_TOKEN: ${{ secrets.PAT }} @@ -56,11 +53,9 @@ jobs: PROXY_URL: ${{ secrets.PROXY_URL }} USERNAME: ${{ secrets.USERNAME }} TELEPORT_TOKEN: ${{ secrets.TELEPORT_TOKEN }} - # REPO_USERNAME: 'signalwire' - # REPO_PASSWORD: ${{ secrets.REPOTOKEN }} - rpm: - name: 'RPM' + deb-public: + name: 'DEB-PUBLIC' permissions: id-token: write contents: read @@ -70,21 +65,28 @@ jobs: fail-fast: false matrix: os: - - centos + - debian version: - - 7 + - bookworm + - bullseye platform: - name: amd64 runner: ubuntu-latest + - name: arm32v7 + runner: ubuntu-latest + - name: arm64v8 + runner: ubuntu-latest + release: + - release + - unstable with: RUNNER: ${{ matrix.platform.runner }} - ARTIFACTS_PATTERN: '.*\.(rpm)$' - DOCKERFILE: .github/docker/${{ matrix.os }}/${{ matrix.version }}/${{ matrix.platform.name }}/Dockerfile + ARTIFACTS_PATTERN: '.*\.(deb)$' + DOCKERFILE: .github/docker/${{ matrix.os }}/${{ matrix.version }}/${{ matrix.platform.name }}/public.${{ matrix.release }}.Dockerfile MAINTAINER: 'Andrey Volk ' - META_FILE_PATH_PREFIX: /var/www/spandsp/${{ github.ref_name }}/${{ github.run_id }}-${{ github.run_number }} + META_FILE_PATH_PREFIX: /var/www/spandsp/public/${{ matrix.release }}/${{ github.ref_name }}/${{ github.run_id }}-${{ github.run_number }} PLATFORM: ${{ matrix.platform.name }} - # REPO_DOMAIN: freeswitch.signalwire.com - TARGET_ARTIFACT_NAME: ${{ matrix.os }}-${{ matrix.version }}-${{ matrix.platform.name }}-artifact + TARGET_ARTIFACT_NAME: ${{ matrix.os }}-${{ matrix.version }}-${{ matrix.platform.name }}-public-${{ matrix.release }}-artifact UPLOAD_BUILD_ARTIFACTS: ${{ github.event_name != 'pull_request' || contains(github.event.pull_request.title, ':upload-artifacts') }} secrets: GH_BOT_DEPLOY_TOKEN: ${{ secrets.PAT }} @@ -92,21 +94,19 @@ jobs: PROXY_URL: ${{ secrets.PROXY_URL }} USERNAME: ${{ secrets.USERNAME }} TELEPORT_TOKEN: ${{ secrets.TELEPORT_TOKEN }} - # REPO_USERNAME: ${{ secrets.FSAUSER }} - # REPO_PASSWORD: ${{ secrets.FSAPASS }} meta: name: 'Publish build data to meta-repo' if: ${{ github.event_name != 'pull_request' || contains(github.event.pull_request.title, ':upload-artifacts') }} needs: - - deb - - rpm + - deb-fsa + - deb-public permissions: id-token: write contents: read uses: signalwire/actions-template/.github/workflows/meta-repo-content.yml@main with: - META_CONTENT: '/var/www/spandsp/${{ github.ref_name }}/${{ github.run_id }}-${{ github.run_number }}' + META_CONTENT: '/var/www/spandsp/{fsa,public}/{release,unstable}/${{ github.ref_name }}/${{ github.run_id }}-${{ github.run_number }}' META_REPO: signalwire/bamboo_gha_trigger META_REPO_BRANCH: trigger/spandsp/${{ github.ref_name }} secrets: