From: Jackie Huang Date: Wed, 23 Oct 2019 08:08:45 +0000 (+0800) Subject: multus-cni: add new recipe X-Git-Tag: bronze-rc0~126 X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=commitdiff_plain;h=a22fa01e1c77c0228b02c342fc87d7bf80cc051f;p=pti%2Frtp.git multus-cni: add new recipe Multus CNI enables attaching multiple network interfaces to pods in Kubernetes. Issue-ID: INF-4 Signed-off-by: Jackie Huang Change-Id: I2d87f6e4b46484a5ddd659a32036f5fde97b0808 --- diff --git a/meta-oran/recipes-base/packagegroups/packagegroup-oran.bb b/meta-oran/recipes-base/packagegroups/packagegroup-oran.bb index e492d0f..7adf524 100644 --- a/meta-oran/recipes-base/packagegroups/packagegroup-oran.bb +++ b/meta-oran/recipes-base/packagegroups/packagegroup-oran.bb @@ -52,12 +52,14 @@ RDEPENDS_${PN}-k8s = "\ iproute2-tc \ kubernetes \ kubernetes-dashboard \ + multus-cni \ " RRECOMMENDS_${PN}-k8s = "\ flannel-img \ kubernetes-img \ kubernetes-dashboard-img \ + multus-cni-img \ " RDEPENDS_${PN}-vm = "\ diff --git a/meta-oran/recipes-containers/kubernetes-plugins/multus-cni_3.3.bb b/meta-oran/recipes-containers/kubernetes-plugins/multus-cni_3.3.bb new file mode 100644 index 0000000..0ec9d6a --- /dev/null +++ b/meta-oran/recipes-containers/kubernetes-plugins/multus-cni_3.3.bb @@ -0,0 +1,46 @@ +# +# Copyright (C) 2019 Wind River Systems, Inc. +# + +SUMMARY = "Multus CNI enables attaching multiple network interfaces to pods in Kubernetes." +DESCRIPTION = "\ + Multus CNI is a container network interface (CNI) plugin for Kubernetes \ + that enables attaching multiple network interfaces to pods. Typically, \ + in Kubernetes each pod only has one network interface (apart from a loopback) \ + -- with Multus you can create a multi-homed pod that has multiple interfaces. \ + This is accomplished by Multus acting as a "meta-plugin", a CNI plugin that \ + can call multiple other CNI plugins \ +" +HOMEPAGE = "https://github.com/intel/multus-cni" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=fa818a259cbed7ce8bc2a22d35a464fc" + +SRC_URI = "\ + https://github.com/intel/${BPN}/archive/v${PV}.tar.gz;downloadfilename=${BPN}-v${PV}.tar.gz \ + file://docker-img-multus-v3.2.tar.bz2;unpack=0 \ +" + +SRC_URI[md5sum] = "fa75272319b19a6192f9d607b79829ea" +SRC_URI[sha256sum] = "9544fca58e6d1f3943159086651ceb228242b5fd85688bd424d7504c197ec49a" + +S = "${WORKDIR}/${BPN}-${PV}" + +PACKAGES =+ "${PN}-img" + +DOCKER_IMG = "/opt/docker_images/${BPN}" +K8S_PLUGINS = "${sysconfdir}/kubernetes/plugins/${BPN}" + +do_install() { + install -d ${D}${K8S_PLUGINS} + install -m 644 ${S}/README.md ${D}${K8S_PLUGINS} + install -m 644 ${S}/images/entrypoint.sh ${D}${K8S_PLUGINS} + install -m 644 ${S}/images/README.md ${D}${K8S_PLUGINS}/README-deployment.md + install -m 644 ${S}/images/multus-daemonset-pre-1.16.yml ${D}${K8S_PLUGINS}/multus-daemonset.yml + + # Install the saved docker image + install -d ${D}${DOCKER_IMG} + install -m 644 ${WORKDIR}/docker-img-*.tar.bz2 ${D}${DOCKER_IMG} +} + +FILES_${PN}-img = "${DOCKER_IMG}"