Merge "The script pulls all branches and now can check out a specific branch or commi...
[osm/devops.git] / jenkins / SO / start_build
1 #!/bin/bash
2 #   Copyright 2016 RIFT.IO Inc
3 #
4 #   Licensed under the Apache License, Version 2.0 (the "License");
5 #   you may not use this file except in compliance with the License.
6 #   You may obtain a copy of the License at
7 #
8 #       http://www.apache.org/licenses/LICENSE-2.0
9 #
10 #   Unless required by applicable law or agreed to in writing, software
11 #   distributed under the License is distributed on an "AS IS" BASIS,
12 #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 #   See the License for the specific language governing permissions and
14 #   limitations under the License.
15
16 # TEMPLATE script to start a build. This is run inside a container
17 #
18 # 6 July 2016 -- Jeremy.Mordkoff@riftio.com -- adapted from the riftware version
19
20
21 HERE=$(realpath $(dirname $0))
22 OSM_JENKINS=$(dirname $HERE)
23 . $OSM_JENKINS/common/all_funcs
24
25 # SET YOU MDG repository name here
26 export OSM_MDG=SO
27 OSM_load_config
28
29
30 # Here is an example for how to handle an incremental build
31 if [ -d $OSM_MDG ]; then
32     INFO "reusing existing workspace"
33     cd $OSM_MDG
34     git pull 
35 else
36     INFO "cloning MDG $OSM_MDG from $OSM_GIT_URL/$OSM_MDG"
37     git clone $OSM_GIT_URL/$OSM_MDG
38     cd $OSM_MDG
39 fi
40
41 if [ $# -gt 0 ]; then
42     INFO "Code to compile: gerrit refspec '$1', commit-id: '$2'"
43     git fetch origin $1 || FATAL "git fetch origin '$1' didn't work"
44     git checkout -f $2 || FATAL "git checkout -f '$2' didn't work"
45 else
46     INFO "Code to compile: master"
47     git checkout master
48 fi
49
50 INFO "starting build"
51 make clean || FATAL "make clean failed"
52 ./BUILD.sh
53
54 RC=$?
55
56 INFO "done, RC=$RC"
57 exit $RC
58
59