Added mirror support to avoid hitting remote constantly
This commit is contained in:
@@ -1,13 +1,24 @@
|
||||
ARG DEP_PKG_MIRROR=
|
||||
ARG DEP_PKG_OFFLINE=0
|
||||
|
||||
FROM alpine:3.23.0 AS base
|
||||
ARG DEP_PKG_MIRROR
|
||||
ARG DEP_PKG_OFFLINE
|
||||
ENV DEP_PKG_MIRROR="${DEP_PKG_MIRROR}"
|
||||
ENV DEP_PKG_OFFLINE="${DEP_PKG_OFFLINE}"
|
||||
RUN apk add --no-cache curl ca-certificates
|
||||
|
||||
COPY scripts/fetch-artifact /usr/local/bin/fetch-artifact
|
||||
|
||||
# ---- kubelet ----
|
||||
FROM base AS kubelet
|
||||
ARG KUBE_VERSION
|
||||
ARG ARCH
|
||||
WORKDIR /out/kubernetes
|
||||
RUN curl -fL --retry 3 -o "kubelet-${KUBE_VERSION}" \
|
||||
"https://dl.k8s.io/${KUBE_VERSION}/bin/linux/${ARCH}/kubelet" && \
|
||||
RUN fetch-artifact \
|
||||
"packages/kubernetes/kubelet-${KUBE_VERSION}" \
|
||||
"kubelet-${KUBE_VERSION}" \
|
||||
"https://dl.k8s.io/${KUBE_VERSION}/bin/linux/${ARCH}/kubelet" && \
|
||||
chmod +x "kubelet-${KUBE_VERSION}"
|
||||
|
||||
# ---- kubeadm ----
|
||||
@@ -15,8 +26,10 @@ FROM base AS kubeadm
|
||||
ARG KUBE_VERSION
|
||||
ARG ARCH
|
||||
WORKDIR /out/kubernetes
|
||||
RUN curl -fL --retry 3 -o "kubeadm-${KUBE_VERSION}" \
|
||||
"https://dl.k8s.io/${KUBE_VERSION}/bin/linux/${ARCH}/kubeadm" && \
|
||||
RUN fetch-artifact \
|
||||
"packages/kubernetes/kubeadm-${KUBE_VERSION}" \
|
||||
"kubeadm-${KUBE_VERSION}" \
|
||||
"https://dl.k8s.io/${KUBE_VERSION}/bin/linux/${ARCH}/kubeadm" && \
|
||||
chmod +x "kubeadm-${KUBE_VERSION}"
|
||||
|
||||
# ---- kubectl ----
|
||||
@@ -24,136 +37,190 @@ FROM base AS kubectl
|
||||
ARG KUBE_VERSION
|
||||
ARG ARCH
|
||||
WORKDIR /out/kubernetes
|
||||
RUN curl -fL --retry 3 -o "kubectl-${KUBE_VERSION}" \
|
||||
"https://dl.k8s.io/${KUBE_VERSION}/bin/linux/${ARCH}/kubectl" && \
|
||||
RUN fetch-artifact \
|
||||
"packages/kubernetes/kubectl-${KUBE_VERSION}" \
|
||||
"kubectl-${KUBE_VERSION}" \
|
||||
"https://dl.k8s.io/${KUBE_VERSION}/bin/linux/${ARCH}/kubectl" && \
|
||||
chmod +x "kubectl-${KUBE_VERSION}"
|
||||
|
||||
# ---- busybox ----
|
||||
FROM base AS busybox
|
||||
ARG BUSYBOX_VERSION
|
||||
ARG BUSYBOX_TAR
|
||||
WORKDIR /out
|
||||
RUN curl -fL --retry 3 -o "busybox-${BUSYBOX_VERSION}.tar.gz" \
|
||||
"https://github.com/mirror/busybox/archive/refs/tags/${BUSYBOX_VERSION}.tar.gz"
|
||||
RUN fetch-artifact \
|
||||
"${BUSYBOX_TAR}" \
|
||||
"busybox-${BUSYBOX_VERSION}.tar.gz" \
|
||||
"https://github.com/mirror/busybox/archive/refs/tags/${BUSYBOX_VERSION}.tar.gz"
|
||||
|
||||
# ---- e2fsprogs ----
|
||||
FROM base AS e2fsprogs
|
||||
ARG E2FSPROGS_VERSION
|
||||
ARG E2FSPROGS_TAR
|
||||
WORKDIR /out
|
||||
RUN curl -fL --retry 3 -o "e2fsprogs-v${E2FSPROGS_VERSION}.tar.gz" \
|
||||
"https://github.com/tytso/e2fsprogs/archive/refs/tags/v${E2FSPROGS_VERSION}.tar.gz"
|
||||
RUN fetch-artifact \
|
||||
"${E2FSPROGS_TAR}" \
|
||||
"e2fsprogs-v${E2FSPROGS_VERSION}.tar.gz" \
|
||||
"https://github.com/tytso/e2fsprogs/archive/refs/tags/v${E2FSPROGS_VERSION}.tar.gz"
|
||||
|
||||
# ---- dpdk ----
|
||||
FROM base AS dpdk
|
||||
ARG DPDK_VERSION
|
||||
ARG DPDK_TAR
|
||||
WORKDIR /out/nxp/dpdk
|
||||
RUN curl -fL --retry 3 -o "${DPDK_VERSION}.tar.gz" \
|
||||
"https://github.com/nxp-qoriq/dpdk/archive/refs/tags/${DPDK_VERSION}.tar.gz"
|
||||
RUN fetch-artifact \
|
||||
"${DPDK_TAR}" \
|
||||
"${DPDK_VERSION}.tar.gz" \
|
||||
"https://github.com/nxp-qoriq/dpdk/archive/refs/tags/${DPDK_VERSION}.tar.gz"
|
||||
|
||||
# ---- fmlib ----
|
||||
FROM base AS fmlib
|
||||
ARG FMLIB_VERSION
|
||||
ARG FMLIB_TAR
|
||||
WORKDIR /out/nxp/fmlib
|
||||
RUN curl -fL --retry 3 -o "${FMLIB_VERSION}.tar.gz" \
|
||||
"https://github.com/nxp-qoriq/fmlib/archive/refs/tags/${FMLIB_VERSION}.tar.gz"
|
||||
RUN fetch-artifact \
|
||||
"${FMLIB_TAR}" \
|
||||
"${FMLIB_VERSION}.tar.gz" \
|
||||
"https://github.com/nxp-qoriq/fmlib/archive/refs/tags/${FMLIB_VERSION}.tar.gz"
|
||||
|
||||
# ---- fmc ----
|
||||
FROM base AS fmc
|
||||
ARG FMC_VERSION
|
||||
ARG FMC_TAR
|
||||
WORKDIR /out/nxp/fmc
|
||||
RUN curl -fL --retry 3 -o "${FMC_VERSION}.tar.gz" \
|
||||
"https://github.com/nxp-qoriq/fmc/archive/refs/tags/${FMC_VERSION}.tar.gz"
|
||||
RUN fetch-artifact \
|
||||
"${FMC_TAR}" \
|
||||
"${FMC_VERSION}.tar.gz" \
|
||||
"https://github.com/nxp-qoriq/fmc/archive/refs/tags/${FMC_VERSION}.tar.gz"
|
||||
|
||||
# ---- vpp ----
|
||||
FROM base AS vpp
|
||||
ARG VPP_VERSION
|
||||
ARG VPP_TAR
|
||||
WORKDIR /out/nxp/vpp
|
||||
RUN curl -fL --retry 3 -o "${VPP_VERSION}.tar.gz" \
|
||||
"https://github.com/nxp-qoriq/vpp/archive/refs/tags/${VPP_VERSION}.tar.gz"
|
||||
RUN fetch-artifact \
|
||||
"${VPP_TAR}" \
|
||||
"${VPP_VERSION}.tar.gz" \
|
||||
"https://github.com/nxp-qoriq/vpp/archive/refs/tags/${VPP_VERSION}.tar.gz"
|
||||
|
||||
# ---- MUSL CC ----
|
||||
FROM base AS aarch64_musl_cc
|
||||
WORKDIR /out
|
||||
RUN curl -fL --retry 3 -o "aarch64-linux-musl-cross.tgz" \
|
||||
"https://musl.cc/aarch64-linux-musl-cross.tgz"
|
||||
RUN fetch-artifact \
|
||||
"packages/aarch64-linux-musl-cross.tgz" \
|
||||
"aarch64-linux-musl-cross.tgz" \
|
||||
"https://musl.cc/aarch64-linux-musl-cross.tgz"
|
||||
|
||||
# ---- ASK ----
|
||||
FROM base AS mono_ask
|
||||
ARG MONO_ASK_VERSION
|
||||
ARG MONO_ASK_TAR
|
||||
WORKDIR /out/ask
|
||||
RUN curl -fL --retry 3 -o "${MONO_ASK_VERSION}.tar.gz" \
|
||||
"https://github.com/we-are-mono/ASK/archive/refs/tags/${MONO_ASK_VERSION}.tar.gz"
|
||||
RUN fetch-artifact \
|
||||
"${MONO_ASK_TAR}" \
|
||||
"${MONO_ASK_VERSION}.tar.gz" \
|
||||
"https://github.com/we-are-mono/ASK/archive/refs/tags/${MONO_ASK_VERSION}.tar.gz"
|
||||
|
||||
# ---- libnfnetlink ----
|
||||
FROM base AS libnfnetlink
|
||||
ARG LIBNFNETLINK_VERSION
|
||||
ARG LIBNFNETLINK_TAR
|
||||
WORKDIR /out/ask/libnfnetlink
|
||||
RUN curl -fL --retry 3 -o "${LIBNFNETLINK_VERSION}.tar.bz2" \
|
||||
"https://www.netfilter.org/projects/libnfnetlink/files/libnfnetlink-${LIBNFNETLINK_VERSION}.tar.bz2"
|
||||
RUN fetch-artifact \
|
||||
"${LIBNFNETLINK_TAR}" \
|
||||
"${LIBNFNETLINK_VERSION}.tar.bz2" \
|
||||
"https://www.netfilter.org/projects/libnfnetlink/files/libnfnetlink-${LIBNFNETLINK_VERSION}.tar.bz2"
|
||||
|
||||
# ---- libnfct ----
|
||||
FROM base AS libnfct
|
||||
ARG LIBNFCT_VERSION
|
||||
ARG LIBNFCT_TAR
|
||||
WORKDIR /out/ask/libnfct
|
||||
RUN curl -fL --retry 3 -o "${LIBNFCT_VERSION}.tar.xz" \
|
||||
"https://www.netfilter.org/projects/libnetfilter_conntrack/files/libnetfilter_conntrack-${LIBNFCT_VERSION}.tar.xz"
|
||||
RUN fetch-artifact \
|
||||
"${LIBNFCT_VERSION_TAR}" \
|
||||
"${LIBNFCT_VERSION}.tar.xz" \
|
||||
"https://www.netfilter.org/projects/libnetfilter_conntrack/files/libnetfilter_conntrack-${LIBNFCT_VERSION}.tar.xz"
|
||||
|
||||
# ---- libmnl ----
|
||||
FROM base AS libmnl
|
||||
ARG LIBMNL_VERSION
|
||||
ARG LIBMNL_TAR
|
||||
WORKDIR /out/ask/libmnl
|
||||
RUN curl -fL --retry 3 -o "${LIBMNL_VERSION}.tar.bz2" \
|
||||
"https://www.netfilter.org/projects/libmnl/files/libmnl-${LIBMNL_VERSION}.tar.bz2"
|
||||
RUN fetch-artifact \
|
||||
"${LIBMNL_TAR}" \
|
||||
"${LIBMNL_VERSION}.tar.bz2" \
|
||||
"https://www.netfilter.org/projects/libmnl/files/libmnl-${LIBMNL_VERSION}.tar.bz2"
|
||||
|
||||
# ---- tclap ----
|
||||
FROM base AS tclap
|
||||
ARG TCLAP_VERSION
|
||||
ARG TCLAP_TAR
|
||||
WORKDIR /out/ask/tclap
|
||||
RUN curl -fL --retry 3 -o "${TCLAP_VERSION}.tar.gz" \
|
||||
"https://sourceforge.net/projects/tclap/files/tclap-${TCLAP_VERSION}.tar.gz"
|
||||
RUN fetch-artifact \
|
||||
"${TCLAP_TAR}" \
|
||||
"${TCLAP_VERSION}.tar.gz" \
|
||||
"https://sourceforge.net/projects/tclap/files/tclap-${TCLAP_VERSION}.tar.gz"
|
||||
|
||||
# ---- libxml2 ----
|
||||
FROM base AS libxml2
|
||||
ARG LIBXML2_VERSION
|
||||
ARG LIBXML2_TAR
|
||||
WORKDIR /out/ask/libxml2
|
||||
RUN curl -fL --retry 3 -o "${LIBXML2_VERSION}.tar.xz" \
|
||||
"https://download.gnome.org/sources/libxml2/2.11/libxml2-${LIBXML2_VERSION}.tar.xz"
|
||||
RUN fetch-artifact \
|
||||
"${LIBXML2_TAR}" \
|
||||
"${LIBXML2_VERSION}.tar.xz" \
|
||||
"https://download.gnome.org/sources/libxml2/2.11/libxml2-${LIBXML2_VERSION}.tar.xz"
|
||||
|
||||
# ---- libcli ----
|
||||
FROM base AS libcli
|
||||
ARG LIBCLI_VERSION
|
||||
ARG LIBCLI_TAR
|
||||
WORKDIR /out/ask/libcli
|
||||
RUN curl -fL --retry 3 -o "${LIBCLI_VERSION}.tar.gz" \
|
||||
"https://github.com/dparrish/libcli/archive/refs/tags/V${LIBCLI_VERSION}.tar.gz"
|
||||
RUN fetch-artifact \
|
||||
"${LIBCLI_TAR}" \
|
||||
"${LIBCLI_VERSION}.tar.gz" \
|
||||
"https://github.com/dparrish/libcli/archive/refs/tags/V${LIBCLI_VERSION}.tar.gz"
|
||||
|
||||
# ---- libpcap ----
|
||||
FROM base AS libpcap
|
||||
ARG LIBPCAP_VERSION
|
||||
ARG LIBPCAP_TAR
|
||||
WORKDIR /out/ask/libpcap
|
||||
RUN curl -fL --retry 3 -o "${LIBPCAP_VERSION}.tar.xz" \
|
||||
"https://www.tcpdump.org/release/libpcap-${LIBPCAP_VERSION}.tar.xz"
|
||||
RUN fetch-artifact \
|
||||
"${LIBPCAP_TAR}" \
|
||||
"${LIBPCAP_VERSION}.tar.xz" \
|
||||
"https://www.tcpdump.org/release/libpcap-${LIBPCAP_VERSION}.tar.xz"
|
||||
|
||||
# ---- alpine rootfs ----
|
||||
FROM base AS alpine_rootfs
|
||||
ARG ALPINE_SERIES
|
||||
ARG ALPINE_ARCH
|
||||
ARG ALPINE_VER
|
||||
ARG ALPINE_TAR
|
||||
WORKDIR /out
|
||||
RUN curl -fL --retry 3 -o "alpine-minirootfs-${ALPINE_VER}-${ALPINE_ARCH}.tar.gz" \
|
||||
"https://dl-cdn.alpinelinux.org/alpine/v${ALPINE_SERIES}/releases/${ALPINE_ARCH}/alpine-minirootfs-${ALPINE_VER}-${ALPINE_ARCH}.tar.gz"
|
||||
RUN fetch-artifact \
|
||||
"${ALPINE_TAR}" \
|
||||
"alpine-minirootfs-${ALPINE_VER}-${ALPINE_ARCH}.tar.gz" \
|
||||
"https://dl-cdn.alpinelinux.org/alpine/v${ALPINE_SERIES}/releases/${ALPINE_ARCH}/alpine-minirootfs-${ALPINE_VER}-${ALPINE_ARCH}.tar.gz"
|
||||
|
||||
# ---- nxp linux ----
|
||||
FROM base AS nxp_linux
|
||||
ARG NXP_VERSION
|
||||
ARG NXP_TAR
|
||||
WORKDIR /out/nxp/kernel
|
||||
RUN curl -fL --retry 3 -o "${NXP_VERSION}.tar.gz" \
|
||||
"https://github.com/nxp-qoriq/linux/archive/refs/tags/${NXP_VERSION}.tar.gz"
|
||||
RUN fetch-artifact \
|
||||
"${NXP_TAR}" \
|
||||
"${NXP_VERSION}.tar.gz" \
|
||||
"https://github.com/nxp-qoriq/linux/archive/refs/tags/${NXP_VERSION}.tar.gz"
|
||||
|
||||
# ---- crio ----
|
||||
FROM base AS crio
|
||||
ARG CRIO_VERSION
|
||||
ARG CRIO_TAR
|
||||
WORKDIR /out
|
||||
RUN curl -fL --retry 3 -o "${CRIO_VERSION}.tar.gz" \
|
||||
"https://storage.googleapis.com/cri-o/artifacts/${CRIO_VERSION}.tar.gz"
|
||||
RUN fetch-artifact \
|
||||
"${CRIO_TAR}" \
|
||||
"${CRIO_VERSION}.tar.gz" \
|
||||
"https://storage.googleapis.com/cri-o/artifacts/${CRIO_VERSION}.tar.gz"
|
||||
|
||||
# ---- final exported artifact set ----
|
||||
FROM scratch
|
||||
|
||||
Reference in New Issue
Block a user