blob: 7e11968199b394cd8e7a55e473fed4962d594671 [file] [log] [blame]
Thomas Vachuska692dcb02017-03-15 09:13:50 -07001#!/bin/bash
2# -----------------------------------------------------------------------------
3# Patches lib/BUCK file to use locally built YANG tools.
4# -----------------------------------------------------------------------------
5
Thomas Vachuskaad37e372017-08-03 12:07:01 -07006BVER=2.2.0-b3
Ray Milkey86d1b0a2017-05-16 15:15:08 -07007SVER=2.2-SNAPSHOT
Thomas Vachuska692dcb02017-03-15 09:13:50 -07008
Yuta HIGUCHI4421dd22017-08-10 18:08:37 -07009YANG_TOOLS_ROOT=${YANG_TOOLS_ROOT:-~/onos-yang-tools}
Thomas Vachuska692dcb02017-03-15 09:13:50 -070010
11rm -f $ONOS_ROOT/lib/yang/* 2>/dev/null
12mkdir -p $ONOS_ROOT/lib/yang
13
14awk '
15 BEGIN { m = 0; y = 0; }
16 /^(remote_jar|prebuilt_jar)/ { s = $0; m = 1; next; }
17 { if (m) { s = s "\n" $0; } else { print $0; } }
18 /onos-yang-.*('$BVER'|'$SVER')/ { y = 1; }
19 /^\)/ { if (m && !y) { print s; } y = 0; m = 0; }
20' $ONOS_ROOT/lib/BUCK > /tmp/BUCK
21mv /tmp/BUCK $ONOS_ROOT/lib/BUCK
22
23for yl in $(egrep "onos-yang-.*$BVER" $ONOS_ROOT/lib/deps.json); do
24 n=$(echo $yl | cut -d\" -f2)
25 m=$(echo $yl | cut -d\" -f4)
Thomas Vachuska411de782017-07-18 14:22:38 -070026 m=${m/$BVER/$SVER}
Thomas Vachuska692dcb02017-03-15 09:13:50 -070027 j=$(find $YANG_TOOLS_ROOT -name $n-$SVER.jar)
28 s=yang/$(basename $j)
29 cp $j $ONOS_ROOT/lib/$s
30
31 # echo $n, $m, $j
32
33 cat <<EOF >>$ONOS_ROOT/lib/BUCK
34prebuilt_jar (
35 name = '$n',
36 binary_jar = '$s',
37 maven_coords = '${m#mvn:*}',
38 visibility = [ 'PUBLIC' ],
39)
40
41EOF
42done
Thomas Vachuskac32dfba2017-07-18 16:01:40 -070043
44# Patch the YANG BUCK plugin
45cp $YANG_TOOLS_ROOT/compiler/plugin/buck/target/onos-yang-compiler-buck-plugin-$SVER.jar \
46 $ONOS_ROOT/bin/plugins/yang.jar