#!/bin/bash -x # Copyright (c) 2016 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. check_os() { # perform some very rudimentary platform detection lsb_dist='' if command_exists lsb_release; then lsb_dist="$(lsb_release -si)" fi if [ -z "$lsb_dist" ] && [ -r /etc/lsb-release ]; then lsb_dist="$(. /etc/lsb-release && echo "$DISTRIB_ID")" fi if [ -z "$lsb_dist" ] && [ -r /etc/fedora-release ]; then lsb_dist='fedora' fi if [ -z "$lsb_dist" ] && [ -r /etc/centos-release ]; then lsb_dist='centos' fi if [ -z "$lsb_dist" ] && [ -r /etc/os-release ]; then lsb_dist="$(. /etc/os-release && echo "$ID")" fi lsb_dist="$(echo "$lsb_dist" | tr '[:upper:]' '[:lower:]')" case "$lsb_dist" in fedora|centos|ubuntu|debian) ;; *) echo "Operating system [$lsb_dist] is unsupported" exit 0 ;; esac LSB=$lsb_dist } check_os case "$LSB" in centos) ROOTDIR='/usr' ;; ubuntu) ROOTDIR='/usr/local' ;; *) echo "$LSB is not supported" exit 1 ;; esac sudo mkdir $ROOTDIR/vpp sudo mkdir $ROOTDIR/vpp/vpp-config sudo mkdir $ROOTDIR/vpp/vpp-config/dryrun sudo mkdir $ROOTDIR/vpp/vpp-config/scripts sudo mkdir $ROOTDIR/vpp/vpp-config/configs sudo mkdir $ROOTDIR/vpp/vpp-config/images sudo mkdir $ROOTDIR/vpp/vpp-config/dryrun/default sudo mkdir $ROOTDIR/vpp/vpp-config/dryrun/sysctl.d sudo mkdir $ROOTDIR/vpp/vpp-config/dryrun/vpp sudo cp scripts/dpdk-devbind.py $ROOTDIR/vpp/vpp-config/scripts/. sudo cp data/auto-config.yaml $ROOTDIR/vpp/vpp-config/configs/. sudo cp data/cloud-config.iso $ROOTDIR/vpp/vpp-config/configs/. sudo cp data/iperf-centos.xml.template $ROOTDIR/vpp/vpp-config/configs/. sudo cp data/iperf-ubuntu.xml.template $ROOTDIR/vpp/vpp-config/configs/. sudo cp data/80-vpp.conf.template $ROOTDIR/vpp/vpp-config/dryrun/sysctl.d/. sudo cp data/grub.template $ROOTDIR/vpp/vpp-config/dryrun/default/. sudo cp data/startup.conf.template $ROOTDIR/vpp/vpp-config/dryrun/vpp/.