From f606d95693193db79f966f8fa99e92af5f440176 Mon Sep 17 00:00:00 2001 From: sandeepindia Date: Mon, 5 Dec 2022 23:48:36 +0530 Subject: [PATCH] Adding REST framework dependency for RIC-641 Signed-off-by: sandeepindia Change-Id: I2a9d0877b6bcd6e225d0a21f2f24704137d55b98 --- .../ric-plt-xapp-frame-cpp.yaml | 3 +- jjb/shell/install-deb-cpprest.sh | 27 ------ jjb/shell/install-git-RESTful.sh | 97 ++++++++++++++++++++++ jjb/shell/install-git-pistache.sh | 48 ----------- 4 files changed, 98 insertions(+), 77 deletions(-) delete mode 100644 jjb/shell/install-deb-cpprest.sh create mode 100755 jjb/shell/install-git-RESTful.sh delete mode 100755 jjb/shell/install-git-pistache.sh diff --git a/jjb/ric-plt-xapp-frame-cpp/ric-plt-xapp-frame-cpp.yaml b/jjb/ric-plt-xapp-frame-cpp/ric-plt-xapp-frame-cpp.yaml index 50fec4cf..f40a99e1 100644 --- a/jjb/ric-plt-xapp-frame-cpp/ric-plt-xapp-frame-cpp.yaml +++ b/jjb/ric-plt-xapp-frame-cpp/ric-plt-xapp-frame-cpp.yaml @@ -32,8 +32,7 @@ pre-build: !include-raw-escape: - ../shell/install-deb-alien.sh - ../shell/install-deb-rmr.sh - - ../shell/install-deb-cpprest.sh - - ../shell/install-git-pistache.sh + - ../shell/install-git-RESTful.sh # skip install in cmake-build.sh install: false diff --git a/jjb/shell/install-deb-cpprest.sh b/jjb/shell/install-deb-cpprest.sh deleted file mode 100644 index 2fcf6981..00000000 --- a/jjb/shell/install-deb-cpprest.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/bash - -# O-RAN-SC -# -# Copyright (C) 2020 AT&T Intellectual Property and Nokia -# -# 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. - -# Installs Debian package 'alien' to support building RPMs - -echo "---> install-deb-cpprest.sh" - -# stop on error or unbound var, and be chatty -set -eux -sudo apt-get update --fix-missing && sudo apt-get -y install libcpprest-dev - -echo "---> install-deb-cpprest.sh ends" diff --git a/jjb/shell/install-git-RESTful.sh b/jjb/shell/install-git-RESTful.sh new file mode 100755 index 00000000..433e06ab --- /dev/null +++ b/jjb/shell/install-git-RESTful.sh @@ -0,0 +1,97 @@ +#!/bin/bash + +# O-RAN-SC +# +# Copyright (C) 2020 AT&T Intellectual Property and Nokia +# +# 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. + +# Installs Debian package 'pistache' to support building RPMs + +echo "---> install-git-RESTful.sh" + +# stop on error or unbound var, and be chatty +set -eux +echo "---> install RESTful API dependencies..." + +#export PATH=$PATH:~/.local/bin +#export LIBRARY_PATH=/usr/lib/x86_64-linux-gnu + +#building and installing cpprestsdk +sudo apt-get install -y libcpprest-dev + +sudo apt-get install -y g++ git libboost-atomic-dev libboost-thread-dev libboost-system-dev libboost-date-time-dev libboost-regex-dev libboost-filesystem-dev libboost-random-dev libboost-chrono-dev libboost-serialization-dev libwebsocketpp-dev openssl libssl-dev ninja-build zlib1g-dev + +sudo git clone https://github.com/Microsoft/cpprestsdk.git casablanca && \ + cd casablanca && \ + mkdir build && \ + cd build && \ + cmake -G Ninja .. -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTS=OFF -DBUILD_SAMPLES=OFF -DCMAKE_INSTALL_PREFIX=/usr/local .. && \ + ninja && \ + ninja install && \ + cmake -G Ninja .. -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=0 -DBUILD_TESTS=OFF -DBUILD_SAMPLES=OFF -DCMAKE_INSTALL_PREFIX=/usr/local .. && \ + ninja && \ + ninja install + +cd ../../ + + + +#installing all dependicies for pistache +sudo apt-get update && sudo apt-get -y install ninja-build python python3-pip libcurl4-openssl-dev libssl-dev pkg-config +python3 -m pip install meson + + +git clone https://github.com/Tencent/rapidjson && \ + cd rapidjson && \ + mkdir build && \ + cd build && \ + cmake -DCMAKE_INSTALL_PREFIX=/usr/local .. && \ + make install + +cd ../../ + + +#building and installing pistache +git clone https://github.com/pistacheio/pistache.git + +cd pistache && \ + meson setup build \ + --buildtype=release \ + -DPISTACHE_USE_SSL=true \ + -DPISTACHE_BUILD_EXAMPLES=true \ + -DPISTACHE_BUILD_TESTS=true \ + -DPISTACHE_BUILD_DOCS=false \ + --prefix="/usr/local" + +cd build && \ + ninja && \ + ninja install +cp /usr/local/lib/x86_64-linux-gnu/libpistache* /usr/local/lib/ +cp /usr/local/lib/x86_64-linux-gnu/pkgconfig/libpistache.pc /usr/local/lib/pkgconfig +cd ../../ + + +#install nlohmann json +git clone https://github.com/nlohmann/json.git && cd json && cmake . && make install +cd ../ +#install json-schema-validator +git clone https://github.com/pboettch/json-schema-validator.git && cd json-schema-validator &&mkdir build &&cd build && cmake .. && make install +cd ../ + + +export LD_LIBRARY_PATH=/usr/local/lib64:/usr/local/lib +export C_INCLUDE_PATH=/usr/local/include + +echo "---> install-git-RESTful.sh ends" + diff --git a/jjb/shell/install-git-pistache.sh b/jjb/shell/install-git-pistache.sh deleted file mode 100755 index dd7812be..00000000 --- a/jjb/shell/install-git-pistache.sh +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/bash - -# O-RAN-SC -# -# Copyright (C) 2020 AT&T Intellectual Property and Nokia -# -# 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. - -# Installs Debian package 'pistache' to support building RPMs - -echo "---> install-git-pistache.sh" - -# stop on error or unbound var, and be chatty -set -eux -echo "---> install Pistache dependencies..." - -export PATH=$PATH:~/.local/bin -export LIBRARY_PATH=/usr/lib/x86_64-linux-gnu - -sudo apt-get update && sudo apt-get -y install rapidjson-dev libssl-dev ninja-build -python3 -m pip install meson - - -git clone https://github.com/pistacheio/pistache.git && cd pistache && meson setup build \ - --buildtype=release \ - -DPISTACHE_USE_SSL=true \ - -DPISTACHE_BUILD_EXAMPLES=false \ - -DPISTACHE_BUILD_TESTS=false \ - -DPISTACHE_BUILD_DOCS=false \ - --prefix="$PWD/prefix" && \ - meson install -C build && \ - sudo cp -rf prefix/include/pistache /usr/include/pistache && \ - sudo cp prefix/lib/x86_64-linux-gnu/libpistache.so.0.0.5 $LIBRARY_PATH && \ - sudo ln -s $LIBRARY_PATH/libpistache.so.0.0.5 $LIBRARY_PATH/libpistache.so.0 && \ - sudo ln -s $LIBRARY_PATH/libpistache.so.0 $LIBRARY_PATH/libpistache.so && \ - sudo ldconfig - -echo "---> install-git-pistache.sh ends" -- 2.16.6