Upgrade DANM to version 4.0
[ta/caas-danm.git] / SPECS / caas-danm.spec
index 42ab482..da00774 100644 (file)
 
 %define COMPONENT danm
 %define RPM_NAME caas-%{COMPONENT}
-%define RPM_MAJOR_VERSION 3.2.0
-%define RPM_MINOR_VERSION 1
+%define RPM_MAJOR_VERSION 4.0.0
+%define RPM_MINOR_VERSION 0
+%define DANM_VERSION v%{RPM_MAJOR_VERSION}
 %define CNI_VERSION 0.7.0
-%define DANM_VERSION b48eb154a7f81fcafb0ff9e5b7d3ca6b54e6565a
 %define go_version 1.12.1
-%define SRIOV_VERSION 6b53446e5781570c44e399cccb1fcdfa417f43a1
+%define SRIOV_VERSION 9e4c973b2ac517c64867e33d61aee152d70dc330
 %define IMAGE_TAG %{RPM_MAJOR_VERSION}-%{RPM_MINOR_VERSION}
 %define binary_build_dir %{_builddir}/%{RPM_NAME}-%{RPM_MAJOR_VERSION}/binary-save
 %define docker_build_dir %{_builddir}/%{RPM_NAME}-%{RPM_MAJOR_VERSION}/docker-build
+%define build_dir %{_builddir}/%{RPM_NAME}-%{RPM_MAJOR_VERSION}/build
 %define built_binaries_dir /binary-save
 
 Name:           %{RPM_NAME}
@@ -35,8 +36,8 @@ BuildArch:      x86_64
 Vendor:         %{_platform_vendor} and Nokia
 Source0:        %{name}-%{version}.tar.gz
 
-Requires: docker-ce >= 18.09.2, iputils
-BuildRequires: docker-ce >= 18.09.2, git
+Requires: docker-ce >= 18.09.2, iputils, rsync
+BuildRequires: docker-ce-cli >= 18.09.2, curl
 
 # more info at: https://fedoraproject.org/wiki/Packaging:Debuginfo No build ID note in Flannel
 %global debug_package %{nil}
@@ -79,6 +80,11 @@ docker cp ${builder_container}:%{built_binaries_dir}/sriov %{binary_build_dir}/
 docker rm -f ${builder_container}
 docker rmi cni-builder:%{IMAGE_TAG}
 
+# Collect DANM CRDs
+git clone https://github.com/nokia/danm.git %{build_dir}/danm
+cd %{build_dir}/danm
+git checkout %{DANM_VERSION}
+
 %install
 mkdir -p %{buildroot}/etc/cni/net.d/
 rsync -av cni-config/00-danm.conf %{buildroot}/etc/cni/net.d/00-danm.conf
@@ -87,7 +93,7 @@ rsync -av cni-config/flannel.conf %{buildroot}/etc/cni/net.d/flannel.conf
 mkdir -p %{buildroot}/opt/cni/bin/
 # Generic CNI plugins
 # Don't use the standard ipvlan binary \
-# Dont't use portmap, quick fix for CVE-2019-9946 \
+# Don't use portmap, quick fix for CVE-2019-9946 \
 rsync -av \
       --chmod=go+rx,u+rwx \
       --exclude=ipvlan \
@@ -101,12 +107,18 @@ install -D -m 0755 %{binary_build_dir}/flannel/flannel %{buildroot}/opt/cni/bin/
 # SRIOV
 install -D -m 0755 %{binary_build_dir}/sriov/sriov %{buildroot}/opt/cni/bin/sriov
 
+mkdir -p %{buildroot}/%{_caas_danm_crd_path}
+rsync -av %{build_dir}/danm/integration/crds/production/ %{buildroot}/%{_caas_danm_crd_path}
+
+
 %files
 # CONFIG
 /etc/cni/net.d/00-danm.conf
 /etc/cni/net.d/flannel.conf
 # CNI binaries
 /opt/cni/bin
+# DANM CRDs
+/%{_caas_danm_crd_path}
 
 %preun