annotate contrib/make_flys_release/make_release.sh @ 8709:71ae18553377

(issue1754) Also fixup master artifact for already loaded recommendations As the load many call creates (and needs to create) all artifacts in the reccomendations this would break "old" recommendations after a reload through the "Pencil" mode. A better fix would probably be to just set the master artifiact in the recommendations but due to the extremly weird interaction with the server at this point it is not trivial to identify how this can be done.
author Andre Heinecke <andre.heinecke@intevation.de>
date Fri, 24 Apr 2015 15:57:23 +0200
parents 25f9ab25affd
children 1e9667ef5742
rev   line source
4484
7e82d51c5a27 Improved build script
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4151
diff changeset
1 #!/bin/bash
8493
07a369e6e277 Correct header for release script.
Tom Gottfried <tom@intevation.de>
parents: 8485
diff changeset
2 # Release script for Dive4Elements River
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
3 #
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
4 # Authors:
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
5 # Andre Heinecke <aheinecke@intevation.de>
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
6 #
8493
07a369e6e277 Correct header for release script.
Tom Gottfried <tom@intevation.de>
parents: 8485
diff changeset
7 # Copyright (C) 2011 - 2014 by Bundesanstalt für Gewässerkunde
07a369e6e277 Correct header for release script.
Tom Gottfried <tom@intevation.de>
parents: 8485
diff changeset
8 # Software engineering by Intevation GmbH
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
9 #
8493
07a369e6e277 Correct header for release script.
Tom Gottfried <tom@intevation.de>
parents: 8485
diff changeset
10 # This file is Free Software under the GNU AGPL (>=v3)
07a369e6e277 Correct header for release script.
Tom Gottfried <tom@intevation.de>
parents: 8485
diff changeset
11 # and comes with ABSOLUTELY NO WARRANTY! Check out the
07a369e6e277 Correct header for release script.
Tom Gottfried <tom@intevation.de>
parents: 8485
diff changeset
12 # documentation coming with Dive4Elements River for details.
4065
9d404069f361 Added build script for FLYS release.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
13
5220
613d2f494728 Handle return codes in the make_flys_release script
Andre Heinecke <aheinecke@intevation.de>
parents: 5119
diff changeset
14 set -e
8080
13c3d861db1d Build is locale sensitive. Force a UTF-8 locale for building.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 7996
diff changeset
15 LC_ALL=en_US.UTF-8
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
16 DEFAULT_WD=/tmp/flys-release
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
17 DEVELOPER=aheinecke
5220
613d2f494728 Handle return codes in the make_flys_release script
Andre Heinecke <aheinecke@intevation.de>
parents: 5119
diff changeset
18
8499
5096b4ed230d Release script: use trusted connections to repositories.
Tom Gottfried <tom@intevation.de>
parents: 8495
diff changeset
19 ARTIFACTS_HG_REPO="https://wald.intevation.org/hg/dive4elements/framework"
5096b4ed230d Release script: use trusted connections to repositories.
Tom Gottfried <tom@intevation.de>
parents: 8495
diff changeset
20 HTTPCLIIENT_HG_REPO="https://wald.intevation.org/hg/dive4elements/http-client"
5096b4ed230d Release script: use trusted connections to repositories.
Tom Gottfried <tom@intevation.de>
parents: 8495
diff changeset
21 FLYS_HG_REPO="https://wald.intevation.org/hg/dive4elements/river"
4065
9d404069f361 Added build script for FLYS release.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
22
5900
8698e3284b7a Update after renaming and remove the binary artifact-database and common
Andre Heinecke <aheinecke@intevation.de>
parents: 5723
diff changeset
23 REPOS="river http-client framework"
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
24 # Do not use spaces in path
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
25 FLYS_SOURCE_DIR=/local-vol1/aheinecke/flys-release
4065
9d404069f361 Added build script for FLYS release.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
26
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
27 SCRIPT_DIR=$(readlink -f `dirname $0`)
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
28 usage(){
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
29 cat << EOF
4065
9d404069f361 Added build script for FLYS release.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
30
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
31 usage: $0 [options] VERSION
4484
7e82d51c5a27 Improved build script
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4151
diff changeset
32
8501
c8d633c0971b Release script: remove installation specific defaults and give the possibility to overwrite any config-file in WEB-INF.
Tom Gottfried <tom@intevation.de>
parents: 8500
diff changeset
33 Create a D4E River package
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
34
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
35 OPTIONS:
8494
76994a0187fa Do not give Oracle-JARs with hardcoded personal path in release script.
Tom Gottfried <tom@intevation.de>
parents: 8493
diff changeset
36 -?, --help Show this message
76994a0187fa Do not give Oracle-JARs with hardcoded personal path in release script.
Tom Gottfried <tom@intevation.de>
parents: 8493
diff changeset
37 -w The working directory to use (do not use spaces in path)
76994a0187fa Do not give Oracle-JARs with hardcoded personal path in release script.
Tom Gottfried <tom@intevation.de>
parents: 8493
diff changeset
38 Default: $DEFAULT_WD
76994a0187fa Do not give Oracle-JARs with hardcoded personal path in release script.
Tom Gottfried <tom@intevation.de>
parents: 8493
diff changeset
39 -t Tag the current default branch as "VERSION"
76994a0187fa Do not give Oracle-JARs with hardcoded personal path in release script.
Tom Gottfried <tom@intevation.de>
parents: 8493
diff changeset
40 -o, --oracle Release is for oracle.
8523
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
41 Suitable jar-file for JDBC driver has to be given with
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
42 the environment variable ORACLE_JDBC
8673
25f9ab25affd Correct usage section in release script.
Tom Gottfried <tom@intevation.de>
parents: 8523
diff changeset
43 VERSION must specify a tag (usually MAYOR.MINOR.PATCH) or a branch name.
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
44 EOF
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
45 exit 0
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
46 }
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
47 # --backend-db-url Url of database backend. Default: $BACKENDURL
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
48 # --backend-db-pass Backend db password. Default: $BACKENDPASS
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
49 # --backend-db-port Backend db port. Default: $BACKENDPORT
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
50 # --backend-db-user Backend db user. Default: $BACKENDUSER
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
51 # --backend-db-backend Backend db backend name. Default: $BACKENDBACK
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
52 # --seddb-url Sediment db url. Default: $SEDDBURL
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
53 # --seddb-port Sediment db port. Default: $SEDDBPORT
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
54 # --seddb-user Sediment db user. Default: $SEDDBUSER
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
55 # --seddb-pass Sediment db password. Default: $SEDDBPASS
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
56 # --seddb-back Sediment db backend. Default: $SEDDBBACK
4494
334c68344eb5 Fix hard coded mapserver url
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4493
diff changeset
57
8501
c8d633c0971b Release script: remove installation specific defaults and give the possibility to overwrite any config-file in WEB-INF.
Tom Gottfried <tom@intevation.de>
parents: 8500
diff changeset
58 # customizable variables
7813
56870a7d9811 Replace model uuid of 'Beispielfluss' with model_uuid of 'Elbe'.
Raimund Renkert <rrenkert@intevation.de>
parents: 7804
diff changeset
59 ELBE_MODEL_UUID=${ELBE_MODEL_UUID:-1a4825f6-925f-11e3-8165-001f29e71d12}
7775
84889738d029 Defaulting to GGinA authentication in release script instead of client sources.
Tom Gottfried <tom@intevation.de>
parents: 7771
diff changeset
60
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
61 OPTS=`getopt -o ?w:,t,o \
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
62 -l help,oracle \
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
63 -n $0 -- "$@"`
4065
9d404069f361 Added build script for FLYS release.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
64
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
65 if [ $? != 0 ] ; then usage; fi
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
66 eval set -- "$OPTS"
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
67 while true ; do
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
68 case "$1" in
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
69 "-?"|"--help")
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
70 usage;;
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
71 "--")
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
72 shift
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
73 break;;
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
74 "-w")
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
75 WORK_DIR=$2
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
76 shift 2;;
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
77 "-o"|"--oracle")
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
78 BUILD_ORACLE="TRUE"
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
79 shift;;
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
80 "-t")
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
81 DO_TAG="TRUE"
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
82 shift;;
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
83 *)
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
84 echo "Unknown Option $1"
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
85 usage;;
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
86 esac
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
87 done
4484
7e82d51c5a27 Improved build script
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4151
diff changeset
88
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
89 if [ $# != 1 ]; then
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
90 usage
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
91 fi
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
92
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
93 VERSION=$1
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
94
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
95 if [ -z $WORK_DIR ]; then
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
96 WORK_DIR=$DEFAULT_WD
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
97 fi
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
98
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
99 mkdir -p $WORK_DIR
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
100
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
101 if [ ! -d $FLYS_SOURCE_DIR ]; then
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
102 mkdir -p $FLYS_SOURCE_DIR
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
103 echo "Cloning sources"
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
104 cd $FLYS_SOURCE_DIR
5900
8698e3284b7a Update after renaming and remove the binary artifact-database and common
Andre Heinecke <aheinecke@intevation.de>
parents: 5723
diff changeset
105 hg clone $ARTIFACTS_HG_REPO framework
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
106 hg clone $HTTPCLIIENT_HG_REPO http-client
5900
8698e3284b7a Update after renaming and remove the binary artifact-database and common
Andre Heinecke <aheinecke@intevation.de>
parents: 5723
diff changeset
107 hg clone $FLYS_HG_REPO river
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
108 else
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
109 echo "Updating sources / Reverting changes"
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
110 cd $FLYS_SOURCE_DIR
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
111 for repo in $REPOS; do
8523
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
112 cd $repo && hg purge && hg revert -a && hg pull -u && cd -
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
113 done;
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
114 fi
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
115
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
116 if [ "$DO_TAG" = "TRUE" ]; then
8523
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
117 echo "INFO: Tagging version $VERSION"
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
118 for repo in $REPOS; do
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
119 cd $repo
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
120 CHANGESET=$(hg log -l1 |head -1 | awk -F: '{print $3}')
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
121 echo ""
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
122 echo "Do you really want to tag $repo rev: $CHANGESET as Version $VERSION?"
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
123 echo "press enter to continue or CTRL+C to abort."
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
124 echo ""
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
125 hg log -l1
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
126 read
5320
a7778435a4af Improve oracle integration and generate changelog when tagging
Andre Heinecke <aheinecke@intevation.de>
parents: 5268
diff changeset
127 OLD_REV=$(cat .hgtags | tail -1 | awk '{print $2}')
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
128 hg tag $VERSION -m "Added tag $VERSION for changeset $CHANGESET"
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
129 hg push ssh://$DEVELOPER@scm.wald.intevation.org/hg/dive4elements/$repo
5320
a7778435a4af Improve oracle integration and generate changelog when tagging
Andre Heinecke <aheinecke@intevation.de>
parents: 5268
diff changeset
130 echo "Changelog for $repo" >> $WORK_DIR/changes_$OLD_REV-$VERSION.txt
a7778435a4af Improve oracle integration and generate changelog when tagging
Andre Heinecke <aheinecke@intevation.de>
parents: 5268
diff changeset
131 echo "#############################################################################" \
a7778435a4af Improve oracle integration and generate changelog when tagging
Andre Heinecke <aheinecke@intevation.de>
parents: 5268
diff changeset
132 >> $WORK_DIR/changes_$OLD_REV-$VERSION.txt
a7778435a4af Improve oracle integration and generate changelog when tagging
Andre Heinecke <aheinecke@intevation.de>
parents: 5268
diff changeset
133 hg log -r $VERSION:$OLD_REV --style changelog >> $WORK_DIR/changes_$OLD_REV-$VERSION.txt
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
134 cd $FLYS_SOURCE_DIR
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
135 done;
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
136 fi
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
137
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
138 # Update to current version
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
139 for repo in $REPOS; do
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
140 cd $repo
7996
c4bf75f82ffc Allow building Release from specific branch. Beware that branches to not get different ports automatically.
Tom Gottfried <tom@intevation.de>
parents: 7951
diff changeset
141 if [ -z "`hg tags | sed -n "/$VERSION/p"`" -a -z "`hg branches | sed -n "/$VERSION/p"`" ]
c4bf75f82ffc Allow building Release from specific branch. Beware that branches to not get different ports automatically.
Tom Gottfried <tom@intevation.de>
parents: 7951
diff changeset
142 then
8501
c8d633c0971b Release script: remove installation specific defaults and give the possibility to overwrite any config-file in WEB-INF.
Tom Gottfried <tom@intevation.de>
parents: 8500
diff changeset
143 echo "WARNING: $VERSION not found in $repo! Updating to default."
7996
c4bf75f82ffc Allow building Release from specific branch. Beware that branches to not get different ports automatically.
Tom Gottfried <tom@intevation.de>
parents: 7951
diff changeset
144 hg up default
c4bf75f82ffc Allow building Release from specific branch. Beware that branches to not get different ports automatically.
Tom Gottfried <tom@intevation.de>
parents: 7951
diff changeset
145 else
c4bf75f82ffc Allow building Release from specific branch. Beware that branches to not get different ports automatically.
Tom Gottfried <tom@intevation.de>
parents: 7951
diff changeset
146 hg up "$VERSION"
c4bf75f82ffc Allow building Release from specific branch. Beware that branches to not get different ports automatically.
Tom Gottfried <tom@intevation.de>
parents: 7951
diff changeset
147 fi
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
148 cd $FLYS_SOURCE_DIR
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
149 done
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
150
8523
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
151
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
152 if [ ! -f $FLYS_SOURCE_DIR/OpenLayers-2.11.tar.gz ]; then
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
153 echo "INFO: download OpenLayers-2.11 for client"
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
154 cd $FLYS_SOURCE_DIR
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
155 wget "https://github.com/openlayers/openlayers/releases/download/release-2.11/OpenLayers-2.11.tar.gz"
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
156 tar xvfz OpenLayers-2.11.tar.gz
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
157 # TODO: Remove more superfluous OpenLayers stuff.
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
158 rm -rf OpenLayers-2.11/doc
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
159 rm -rf OpenLayers-2.11/tests
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
160 rm -rf OpenLayers-2.11/examples
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
161 cd $WORK_DIR
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
162 fi
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
163 cp -r $FLYS_SOURCE_DIR/OpenLayers-2.11 \
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
164 $FLYS_SOURCE_DIR/river/gwt-client/src/main/webapp/
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
165
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
166
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
167 echo "INFO: Downloading smartGWT"
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
168 mvn com.isomorphic:isc-maven-plugin:install -Dproduct=SMARTGWT -Dlicense=LGPL \
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
169 -DbuildNumber=4.1p -DbuildDate=2014-12-13 -Dworkdir=$WORK_DIR
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
170
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
171 echo "INFO: compile sources"
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
172 mvn -f $FLYS_SOURCE_DIR/framework/pom.xml clean compile install
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
173 mvn -f $FLYS_SOURCE_DIR/river/backend/pom.xml clean compile install
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
174 mvn -f $FLYS_SOURCE_DIR/river/artifacts/pom.xml clean compile
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
175 mvn -f $FLYS_SOURCE_DIR/http-client/pom.xml clean compile install
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
176 # gwt-client has to be compiled later to allow custom CLIENT_CONF
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
177
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
178 echo "INFO: create h2 database for artifacts and datacage"
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
179 cd $FLYS_SOURCE_DIR/river/artifacts
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
180 rm -rf artifactsdb datacagedb
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
181 $FLYS_SOURCE_DIR/framework/artifact-database/bin/createArtifacts.sh
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
182 $FLYS_SOURCE_DIR/river/artifacts/bin/createDatacage.sh
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
183 cd -
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
184
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
185 echo "INFO: download WSPLGEN"
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
186 cd $WORK_DIR
8523
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
187 wget \
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
188 https://wald.intevation.org/frs/download.php/1496/wsplgen-linux-64bit-static.gz \
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
189 https://wald.intevation.org/frs/download.php/1498/wsplgen-linux-32bit-static.gz
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
190 gunzip wsplgen-linux-64bit-static.gz wsplgen-linux-32bit-static.gz
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
191 chmod +x wsplgen-linux-*
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
192 cp wsplgen-linux-32bit-static $FLYS_SOURCE_DIR/river/artifacts/bin/wsplgen
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
193 cd -
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
194
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
195 if [ "$DO_TAG" = "TRUE" ]; then
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
196 echo "INFO: Building packages for publication"
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
197 cd $FLYS_SOURCE_DIR/river/artifacts
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
198 mvn package assembly:single
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
199 mv target/river-artifacts-1.0-SNAPSHOT-bin.tar.bz2 \
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
200 $WORK_DIR/d4e-river-$VERSION.tar.bz2 && cd ..
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
201 cd gwt-client && mvn clean compile package
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
202 mv target/gwt-client-1.0-SNAPSHOT.war \
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
203 $WORK_DIR/d4e-river-$VERSION.war && cd ..
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
204 fi
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
205
8501
c8d633c0971b Release script: remove installation specific defaults and give the possibility to overwrite any config-file in WEB-INF.
Tom Gottfried <tom@intevation.de>
parents: 8500
diff changeset
206
c8d633c0971b Release script: remove installation specific defaults and give the possibility to overwrite any config-file in WEB-INF.
Tom Gottfried <tom@intevation.de>
parents: 8500
diff changeset
207 echo "INFO: Preparing configuration of web client"
5692
d2c6d4ca6841 Add print url to relase script
Andre Heinecke <aheinecke@intevation.de>
parents: 5678
diff changeset
208
d2c6d4ca6841 Add print url to relase script
Andre Heinecke <aheinecke@intevation.de>
parents: 5678
diff changeset
209 #Needs to be done before the tomcat replacement below
7813
56870a7d9811 Replace model uuid of 'Beispielfluss' with model_uuid of 'Elbe'.
Raimund Renkert <rrenkert@intevation.de>
parents: 7804
diff changeset
210 sed -i -e "s@1a4825f6-925f-11e3-8165-001f29e71d12@${ELBE_MODEL_UUID}@g" \
56870a7d9811 Replace model uuid of 'Beispielfluss' with model_uuid of 'Elbe'.
Raimund Renkert <rrenkert@intevation.de>
parents: 7804
diff changeset
211 $FLYS_SOURCE_DIR/river/gwt-client/src/main/webapp/images/FLYS_Karte_interactive.html
56870a7d9811 Replace model uuid of 'Beispielfluss' with model_uuid of 'Elbe'.
Raimund Renkert <rrenkert@intevation.de>
parents: 7804
diff changeset
212
8501
c8d633c0971b Release script: remove installation specific defaults and give the possibility to overwrite any config-file in WEB-INF.
Tom Gottfried <tom@intevation.de>
parents: 8500
diff changeset
213 if [ -d $WEBINF ]; then
c8d633c0971b Release script: remove installation specific defaults and give the possibility to overwrite any config-file in WEB-INF.
Tom Gottfried <tom@intevation.de>
parents: 8500
diff changeset
214 echo "INFO: copy custom client configuration to target destination"
c8d633c0971b Release script: remove installation specific defaults and give the possibility to overwrite any config-file in WEB-INF.
Tom Gottfried <tom@intevation.de>
parents: 8500
diff changeset
215 WEBINF_DIR=$FLYS_SOURCE_DIR/river/gwt-client/src/main/webapp/WEB-INF/
c8d633c0971b Release script: remove installation specific defaults and give the possibility to overwrite any config-file in WEB-INF.
Tom Gottfried <tom@intevation.de>
parents: 8500
diff changeset
216 cp -R $WEBINF/* $WEBINF_DIR
c8d633c0971b Release script: remove installation specific defaults and give the possibility to overwrite any config-file in WEB-INF.
Tom Gottfried <tom@intevation.de>
parents: 8500
diff changeset
217 for file in `find $WEBINF_DIR/ -type f`; do
c8d633c0971b Release script: remove installation specific defaults and give the possibility to overwrite any config-file in WEB-INF.
Tom Gottfried <tom@intevation.de>
parents: 8500
diff changeset
218 sed -i -e "s@D4E_VERSION@${VERSION}@g" $file
c8d633c0971b Release script: remove installation specific defaults and give the possibility to overwrite any config-file in WEB-INF.
Tom Gottfried <tom@intevation.de>
parents: 8500
diff changeset
219 done
7801
1431d1af84d7 Remove not publicly available WMS services and enable custom configuration through release script.
Tom Gottfried <tom@intevation.de>
parents: 7797
diff changeset
220 fi
1431d1af84d7 Remove not publicly available WMS services and enable custom configuration through release script.
Tom Gottfried <tom@intevation.de>
parents: 7797
diff changeset
221
8506
da9365fc2f42 (issue1777) Evaluate CLIENT_CONF environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8501
diff changeset
222 if [ -f $CLIENT_CONF ]; then
da9365fc2f42 (issue1777) Evaluate CLIENT_CONF environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8501
diff changeset
223 echo "INFO: copy custom java script client configuration to target destination"
da9365fc2f42 (issue1777) Evaluate CLIENT_CONF environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8501
diff changeset
224 cp $CLIENT_CONF \
da9365fc2f42 (issue1777) Evaluate CLIENT_CONF environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8501
diff changeset
225 $FLYS_SOURCE_DIR/river/gwt-client/src/main/java/org/dive4elements/river/client/client/config.xml
da9365fc2f42 (issue1777) Evaluate CLIENT_CONF environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8501
diff changeset
226 fi
8384
d4a2c7b83087 Add possibility to give custom config for server log.
Tom Gottfried <tom@intevation.de>
parents: 8245
diff changeset
227
8523
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
228 if [ -n $DGM_PATH ]; then
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
229 sed -i -e "s@<dgm-path>.*</dgm-path>@<dgm-path>${DGM_PATH}</dgm-path>@g" \
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
230 $FLYS_SOURCE_DIR/river/artifacts/doc/conf/conf.xml
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
231 fi
4065
9d404069f361 Added build script for FLYS release.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
232
8523
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
233 if [ -n $WIKI_URL ]; then
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
234 sed -i -e "s@<help-url>http://example.com</help-url>@<help-url>${WIKI_URL}</help-url>@g" \
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
235 $FLYS_SOURCE_DIR/river/artifacts/doc/conf/conf.xml
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
236 fi
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
237
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
238 if [ -d $SERVER_CONF ]; then
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
239 echo "INFO: copy custom server configuration to target destination"
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
240 cp -R $SERVER_CONF/* $FLYS_SOURCE_DIR/river/artifacts/doc/conf/
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
241 for file in `find $FLYS_SOURCE_DIR/river/artifacts/doc/conf -type f`; do
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
242 sed -i -e "s@D4E_VERSION@${VERSION}@g" $file
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
243 done
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
244 fi
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
245
7939
6e852a6c72f2 Use SmartGWT version 4.1p. Updated release script to download SmartGWT.
Raimund Renkert <rrenkert@intevation.de>
parents: 7837
diff changeset
246
4065
9d404069f361 Added build script for FLYS release.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
247 echo "INFO: compile and build sources"
8523
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
248 cp $WORK_DIR/wsplgen-linux-64bit-static \
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
249 $FLYS_SOURCE_DIR/river/artifacts/bin/wsplgen
4065
9d404069f361 Added build script for FLYS release.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
250
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
251 if [ "$BUILD_ORACLE" = "TRUE" ]; then
5320
a7778435a4af Improve oracle integration and generate changelog when tagging
Andre Heinecke <aheinecke@intevation.de>
parents: 5268
diff changeset
252 if [ ! -f $ORACLE_JDBC ]; then
a7778435a4af Improve oracle integration and generate changelog when tagging
Andre Heinecke <aheinecke@intevation.de>
parents: 5268
diff changeset
253 echo "Could not find oracle jdbc in $ORACLE_JDBC"
a7778435a4af Improve oracle integration and generate changelog when tagging
Andre Heinecke <aheinecke@intevation.de>
parents: 5268
diff changeset
254 echo "Please make sure that the ORACLE_JDBC variable is set correctly"
a7778435a4af Improve oracle integration and generate changelog when tagging
Andre Heinecke <aheinecke@intevation.de>
parents: 5268
diff changeset
255 exit 1
a7778435a4af Improve oracle integration and generate changelog when tagging
Andre Heinecke <aheinecke@intevation.de>
parents: 5268
diff changeset
256 fi
8523
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
257 mvn install:install-file -DgroupId=ojdbc -DartifactId=ojdbc \
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
258 -Dversion=0 -Dpackaging=jar -Dfile=$ORACLE_JDBC -DgeneratePom=true
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
259 mvn -f $FLYS_SOURCE_DIR/river/backend/pom-oracle.xml clean compile install
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
260 mvn -f $FLYS_SOURCE_DIR/river/artifacts/pom-oracle.xml \
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
261 package assembly:single
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
262 else
8523
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
263 mvn -f $FLYS_SOURCE_DIR/river/artifacts/pom.xml package assembly:single
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
264 fi
8523
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
265 mvn -f $FLYS_SOURCE_DIR/river/gwt-client/pom.xml clean compile package
4065
9d404069f361 Added build script for FLYS release.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
266
8495
dc0351c5d098 Artifact-server config in release script: remove installation specific defaults and give the possibility to overwrite any config-file.
Tom Gottfried <tom@intevation.de>
parents: 8494
diff changeset
267
8523
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
268 echo "INFO: create tarball"
7771
e2102c4b7b07 Change to work dir bevor creating artifacts and datacage db
Andre Heinecke <aheinecke@intevation.de>
parents: 7008
diff changeset
269 cd $WORK_DIR
8523
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
270 mv $FLYS_SOURCE_DIR/river/artifacts/target/river-artifacts-1.0-SNAPSHOT-bin.tar \
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
271 flys-$VERSION.tar
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
272 mv $FLYS_SOURCE_DIR/river/gwt-client/target/gwt-client-1.0-SNAPSHOT.war \
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
273 flys-${VERSION}.war
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
274 tar -rf flys-$VERSION.tar flys-${VERSION}.war
4065
9d404069f361 Added build script for FLYS release.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
275
8495
dc0351c5d098 Artifact-server config in release script: remove installation specific defaults and give the possibility to overwrite any config-file.
Tom Gottfried <tom@intevation.de>
parents: 8494
diff changeset
276 if [ -f $INSTALL ]; then
8464
5dd6cc9fec1e Add possibility to pack install-script in release tarball.
Tom Gottfried <tom@intevation.de>
parents: 8450
diff changeset
277 echo "INFO: prepare custom installation script"
8523
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
278 cp $INSTALL .
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
279 sed -i "s/D4E_VERSION/$VERSION/g" ./`basename $INSTALL`
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
280 tar -rf flys-$VERSION.tar `basename $INSTALL`
6612
e5d8cbce3040 Add cleanup to the release script
Andre Heinecke <aheinecke@intevation.de>
parents: 6440
diff changeset
281 fi
e5d8cbce3040 Add cleanup to the release script
Andre Heinecke <aheinecke@intevation.de>
parents: 6440
diff changeset
282
8523
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
283 ## TODO: tag with maven and include basedir with correct name in assembly ##
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
284 rm -rf flys-$VERSION && mkdir flys-$VERSION
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
285 tar -xf flys-$VERSION.tar -C flys-$VERSION
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
286 tar cfz flys-$VERSION.tar.gz flys-$VERSION
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
287 ##
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
288
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
289 if [ "$DO_TAG" = "TRUE" ]; then
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
290 echo "Binary-packages for publication:"
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
291 echo "_ $WORK_DIR/d4e-river-$VERSION.tar.bz2"
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
292 echo "_ $WORK_DIR/d4e-river-$VERSION.war"
8464
5dd6cc9fec1e Add possibility to pack install-script in release tarball.
Tom Gottfried <tom@intevation.de>
parents: 8450
diff changeset
293 fi
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
294 echo "DONE: $WORK_DIR/flys-$VERSION.tar.gz"
5320
a7778435a4af Improve oracle integration and generate changelog when tagging
Andre Heinecke <aheinecke@intevation.de>
parents: 5268
diff changeset
295 echo "Changelog: $WORK_DIR/changes_$OLD_REV-$VERSION.txt"

http://dive4elements.wald.intevation.org