ci(scripts/install-vpp.sh): improve install-vpp.sh script 54/35854/3
authorMauro Sardara <msardara@cisco.com>
Fri, 1 Apr 2022 08:26:41 +0000 (10:26 +0200)
committerMauro Sardara <msardara@cisco.com>
Fri, 1 Apr 2022 08:28:33 +0000 (10:28 +0200)
Ref: HICN-720

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I6586573da1e415b596bad8e6d3e77dba38de8147

scripts/install-vpp.sh

index a58e1bc..855587a 100644 (file)
@@ -1,30 +1,48 @@
 #!/bin/bash
 
+# Copyright (c) 2022 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+set -euxo pipefail
+
 ################################################################
 # Install defined VPP version
 ################################################################
 
-if [[ -z ${VERSION_PATH} ]]; then
-  echo >&2 "No version path provided. Exit now."
-  exit 1
+VPP_VERSION=2202
+
+if [[ -z ${VERSION_PATH-} ]]; then
+  echo >&2 "No version path provided. Using version ${VPP_VERSION}"
+else
+  VPP_VERSION=$(grep VPP_DEFAULT_VERSION "${VERSION_PATH}" | cut -d ' ' -f 2 | tr -d '"' | grep -Po '\d\d.\d\d')
+  VPP_VERSION=${VPP_VERSION//./}
 fi
 
 # Prevent vpp to set sysctl
 export VPP_INSTALL_SKIP_SYSCTL=1
-VPP_VERSION=$(cat "${VERSION_PATH}" | grep VPP_DEFAULT_VERSION | cut -d ' ' -f 2 | tr -d '"' | grep -Po '\d\d.\d\d')
 
-curl -s https://packagecloud.io/install/repositories/fdio/${VPP_VERSION//./}/script.deb.sh | bash
-curl -L https://packagecloud.io/fdio/${VPP_VERSION//./}/gpgkey | apt-key add -
-sed -E -i 's/(deb.*)(\[.*\])(.*)/\1\3/g' /etc/apt/sources.list.d/fdio_${VPP_VERSION//./}.list
+curl -s https://packagecloud.io/install/repositories/fdio/${VPP_VERSION}/script.deb.sh | bash
+curl -L https://packagecloud.io/fdio/${VPP_VERSION}/gpgkey | apt-key add -
+sed -E -i 's/(deb.*)(\[.*\])(.*)/\1\3/g' /etc/apt/sources.list.d/fdio_"${VPP_VERSION}".list
 
 # create apt pinning
 cat << EOF | tee /etc/apt/preferences.d/vpp-pin
 Package: vpp*
-Pin: release o=packagecloud.io/fdio/${VPP_VERSION//./}
+Pin: release o=packagecloud.io/fdio/${VPP_VERSION}
 Pin-Priority: 1000
 
 Package: libvpp*
-Pin: release o=packagecloud.io/fdio/${VPP_VERSION//./}
+Pin: release o=packagecloud.io/fdio/${VPP_VERSION}
 Pin-Priority: 1000
 EOF