X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=jenkins%2FRO%2Fstart_build;h=4c9adfcee93f3c72ae5fd36c48783b8ba7d22743;hb=refs%2Fchanges%2F75%2F475%2F1;hp=b6336792ede9a4ebc7e9794b5c9021e10c170355;hpb=a8cbb9194d6b791d58c631d23a655ea94623d037;p=osm%2Fdevops.git diff --git a/jenkins/RO/start_build b/jenkins/RO/start_build index b6336792..4c9adfce 100755 --- a/jenkins/RO/start_build +++ b/jenkins/RO/start_build @@ -1,5 +1,7 @@ #!/bin/bash # +# Copyright 2016 Telefónica Investigación y Desarrollo, S.A.U. +# # 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 @@ -12,6 +14,8 @@ # See the License for the specific language governing permissions and # limitations under the License. # +# Authors: +# - Gerardo Garcia - gerardo.garciadeblas@telefonica.com # HERE=$(realpath $(dirname $0)) @@ -23,30 +27,45 @@ export OSM_MDG=RO OSM_load_config -# Here is an example for how to handle an incremental build +# Updates all the branches in the local repo (clones if it does not exist) if [ -d $OSM_MDG ]; then - INFO "reusing existing workspace" - cd $OSM_MDG - git pull + INFO "reusing existing workspace" + cd $OSM_MDG + git pull --all + #git checkout master #to make sure that we are in the right branch before pulling the code + #git pull else - INFO "cloning MDG $OSM_MDG from $OSM_GIT_URL/$OSM_MDG" - git clone $OSM_GIT_URL/$OSM_MDG - cd $OSM_MDG + INFO "cloning MDG $OSM_MDG from $OSM_GIT_URL/$OSM_MDG" + git clone $OSM_GIT_URL/$OSM_MDG + cd $OSM_MDG + for remote in `git branch -r`; do git branch --track ${remote#origin/} $remote; done fi + if [ $# -gt 0 ]; then - git checkout $1 + if [ "$1" = "checkout" ]; then + INFO "Code to compile: '$2'" + git checkout $2 + else + INFO "Code to compile: gerrit refspec '$1', commit-id: '$2'" + git fetch origin $1 || FATAL "git fetch origin '$1' didn't work" + git checkout -f $2 || FATAL "git checkout -f '$2' didn't work" + fi +else + INFO "Code to compile: master" + git checkout master fi INFO "starting build" -### for start_build -### put your commands here to -### build, test and produce coverage reports +INFO " cleaning .pyc" +rm -f *.pyc +INFO " installing openmano packages and dependencies from current repo (--noclone)" +./scripts/install-openmano.sh --noclone -q +INFO " compiling *.py" +python -m py_compile *.py #&& #uncomment to concatenate commands +#basic test HERE #&& #uncomment to concatenate commands -rm *.pyc -python -m py_compile *.py RC=$? - INFO "done, RC=$RC" exit $RC