summaryrefslogtreecommitdiffstats
path: root/src/do_patch.sh
diff options
context:
space:
mode:
authorHui Wang <wanghui71@huawei.com>2018-05-25 09:09:30 +0000
committerGerrit Code Review <gerrit@opnfv.org>2018-05-25 09:09:30 +0000
commitea3c10e5533ae4bdbb3fc449e3baf2eb256b2ae3 (patch)
treecb89e70b1766ecd6eb47dbda4827a599840007c9 /src/do_patch.sh
parentfca5504bcb2f14ad36d9a29658a6a7c96c29d8bc (diff)
parent1b82fb75641e8350f0218c086a85e5bfec8a1977 (diff)
Merge "manage local patches"
Diffstat (limited to 'src/do_patch.sh')
-rwxr-xr-xsrc/do_patch.sh52
1 files changed, 52 insertions, 0 deletions
diff --git a/src/do_patch.sh b/src/do_patch.sh
new file mode 100755
index 0000000..899ec9b
--- /dev/null
+++ b/src/do_patch.sh
@@ -0,0 +1,52 @@
+#!/bin/bash
+
+recipe=$1
+ceph_dir=$PWD/src/ceph
+
+if [ -n "$1" ]; then
+ echo "recipe file: $1"
+else
+ echo "must supply one recipe file"
+ exit
+fi
+
+if [ ! -f "$recipe" ]; then
+ echo "recipe file $recipe doesn't exist"
+ exit
+fi
+
+source $recipe
+
+echo $PROJECT
+echo $SUMMARY
+echo $BRANCH
+echo $REPO
+echo $OPTION
+
+do_patch() {
+ echo ""
+ echo "$PROJECT do_patch"
+ cd $ceph_dir
+ if [ -d "$PROJECT" ]; then
+ rm -rf $PROJECT
+ fi
+ git clone -b $BRANCH $REPO $PROJECT
+ cd $PROJECT
+ for patch in ${SOURCES[@]}
+ do
+ echo ""
+ echo $patch
+ if [ ! -f "$ceph_dir/$patch" ]; then
+ echo "$patch doesn't exit"
+ fi
+ check_results=`patch -p1 < $ceph_dir/$patch | grep FAILED`
+ echo "command (patch -p1 < $ceph_dir/$patch) results are:"
+ echo "$check_results"
+ if [[ $check_results =~ "FAILED" ]]; then
+ echo "$patch could not be applied successfully"
+ exit
+ fi
+ done
+}
+
+do_patch