annotate contrib/make_flys_release/make_release.sh @ 9803:a440ebd5c23b 3.2.x tip

Avoid using outdated mod_wsgi in Docker setup Run Wiki in standalone mode behind reverse proxy, which is provided by a more up-to-date Apache web server. The wiki container is still based on CentOS 7, because the included SSO integration component cannot be build with more recent libraries.
author Tom Gottfried <tom@intevation.de>
date Wed, 21 Aug 2024 16:54:17 +0200
parents 3847836c60b5
children
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>
9673
e04851177bb7 Remove default user name for pushing tags
Tom Gottfried <tom@intevation.de>
parents: 8866
diff changeset
6 # Tom Gottfried <tom@intevation.de>
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
7 #
9673
e04851177bb7 Remove default user name for pushing tags
Tom Gottfried <tom@intevation.de>
parents: 8866
diff changeset
8 # Copyright (C) 2011 - 2014, 2020 by Bundesanstalt für Gewässerkunde
8493
07a369e6e277 Correct header for release script.
Tom Gottfried <tom@intevation.de>
parents: 8485
diff changeset
9 # 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
10 #
8493
07a369e6e277 Correct header for release script.
Tom Gottfried <tom@intevation.de>
parents: 8485
diff changeset
11 # 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
12 # and comes with ABSOLUTELY NO WARRANTY! Check out the
07a369e6e277 Correct header for release script.
Tom Gottfried <tom@intevation.de>
parents: 8485
diff changeset
13 # documentation coming with Dive4Elements River for details.
4065
9d404069f361 Added build script for FLYS release.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
14
5220
613d2f494728 Handle return codes in the make_flys_release script
Andre Heinecke <aheinecke@intevation.de>
parents: 5119
diff changeset
15 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
16 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
17 DEFAULT_WD=/tmp/flys-release
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"
4065
9d404069f361 Added build script for FLYS release.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
24
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
25 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
26 usage(){
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
27 cat << EOF
4065
9d404069f361 Added build script for FLYS release.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
28
9681
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
29 usage: $0 [options] TARGET
4484
7e82d51c5a27 Improved build script
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4151
diff changeset
30
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
31 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
32
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
33 OPTIONS:
8494
76994a0187fa Do not give Oracle-JARs with hardcoded personal path in release script.
Tom Gottfried <tom@intevation.de>
parents: 8493
diff changeset
34 -?, --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
35 -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
36 Default: $DEFAULT_WD
9681
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
37 -t Tag the selected branch with given name.
9673
e04851177bb7 Remove default user name for pushing tags
Tom Gottfried <tom@intevation.de>
parents: 8866
diff changeset
38 Note that \$USER is used as the repository user name
e04851177bb7 Remove default user name for pushing tags
Tom Gottfried <tom@intevation.de>
parents: 8866
diff changeset
39 for pushing the tags.
9778
b57b236c4f4e Backed out changeset b1b48fa7bd80
Tom Gottfried <tom@intevation.de>
parents: 9744
diff changeset
40 -o, --oracle Release is for oracle.
9681
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
41 TARGET 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
42 EOF
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
43 exit 0
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
44 }
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
45 # --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
46 # --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
47 # --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
48 # --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
49 # --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
50 # --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
51 # --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
52 # --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
53 # --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
54 # --seddb-back Sediment db backend. Default: $SEDDBBACK
4494
334c68344eb5 Fix hard coded mapserver url
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4493
diff changeset
55
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
56 # customizable variables
7813
56870a7d9811 Replace model uuid of 'Beispielfluss' with model_uuid of 'Elbe'.
Raimund Renkert <rrenkert@intevation.de>
parents: 7804
diff changeset
57 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
58
9778
b57b236c4f4e Backed out changeset b1b48fa7bd80
Tom Gottfried <tom@intevation.de>
parents: 9744
diff changeset
59 OPTS=`getopt -o ?w:,?t:,o \
b57b236c4f4e Backed out changeset b1b48fa7bd80
Tom Gottfried <tom@intevation.de>
parents: 9744
diff changeset
60 -l help,oracle \
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
61 -n $0 -- "$@"`
4065
9d404069f361 Added build script for FLYS release.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
62
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
63 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
64 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
65 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
66 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
67 "-?"|"--help")
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
68 usage;;
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
69 "--")
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
70 shift
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
71 break;;
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
72 "-w")
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
73 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
74 shift 2;;
9778
b57b236c4f4e Backed out changeset b1b48fa7bd80
Tom Gottfried <tom@intevation.de>
parents: 9744
diff changeset
75 "-o"|"--oracle")
9779
3847836c60b5 Improve backend build for different database backends
Tom Gottfried <tom@intevation.de>
parents: 9778
diff changeset
76 ORACLE="true"
9778
b57b236c4f4e Backed out changeset b1b48fa7bd80
Tom Gottfried <tom@intevation.de>
parents: 9744
diff changeset
77 shift;;
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
78 "-t")
9681
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
79 DO_TAG=$2
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
80 shift 2;;
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
81 *)
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
82 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
83 usage;;
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
84 esac
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
85 done
4484
7e82d51c5a27 Improved build script
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4151
diff changeset
86
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
87 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
88 usage
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
89 fi
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
90
9681
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
91 TARGET=$1
5251
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 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
94 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
95 fi
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
96
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
97 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
98
8753
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
99 if [ -z "$SMARTGWT" ]; then
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
100 echo "ERROR: Variable SMARTGWT not set."
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
101 echo "Please set this variable to point to the smartgwt .jar archive to be used."
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
102 exit 1
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
103 fi
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
104
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
105 if [ ! -f "$SMARTGWT" ]; then
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
106 echo "ERROR: Failed to find smartgwt archive at: '$SMARTGWT'"
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
107 exit 1
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
108 fi
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
109
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
110 if [ ! -d "$FLYS_SOURCE_DIR" ]; then
9675
59ad66feb8f8 Get rid of hard coded default checkout directory
Tom Gottfried <tom@intevation.de>
parents: 9673
diff changeset
111 mkdir -p ${FLYS_SOURCE_DIR:=$(mktemp -d)}
59ad66feb8f8 Get rid of hard coded default checkout directory
Tom Gottfried <tom@intevation.de>
parents: 9673
diff changeset
112 echo "Will use source code checkouts in $FLYS_SOURCE_DIR"
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
113 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
114 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
115 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
116 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
117 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
118 else
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
119 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
120 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
121 for repo in $REPOS; do
9679
21c89e39ca72 Avoid using Mercurial extension
Tom Gottfried <tom@intevation.de>
parents: 9675
diff changeset
122 cd $repo && 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
123 done;
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
124 fi
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
125
9681
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
126 # Update to current version
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
127 for repo in $REPOS; do
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
128 cd $repo
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
129 if [ -z "`hg tags | sed -n "/$TARGET/p"`" -a -z "`hg branches | sed -n "/$TARGET/p"`" ]
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
130 then
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
131 echo "WARNING: No tag or branch $TARGET found in repository of $repo!"
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
132 echo " Will fallback to 'default'!"
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
133 hg up default
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
134 else
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
135 hg up "$TARGET"
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
136 fi
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
137 cd $FLYS_SOURCE_DIR
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
138 done
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
139
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
140 if [ -n "$DO_TAG" ]; then
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
141 VERSION=$DO_TAG
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
142 echo "INFO: Tagging current branch as $VERSION"
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
143 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
144 cd $repo
9681
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
145 CHANGESET=$(hg parent |head -1 | awk -F: '{print $3}')
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
146 echo ""
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
147 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
148 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
149 echo ""
9681
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
150 hg log -r $CHANGESET -l1
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
151 read
5320
a7778435a4af Improve oracle integration and generate changelog when tagging
Andre Heinecke <aheinecke@intevation.de>
parents: 5268
diff changeset
152 OLD_REV=$(cat .hgtags | tail -1 | awk '{print $2}')
9681
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
153 hg tag -r $CHANGESET -m "Added tag $VERSION for changeset $CHANGESET" \
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
154 "$VERSION"
9673
e04851177bb7 Remove default user name for pushing tags
Tom Gottfried <tom@intevation.de>
parents: 8866
diff changeset
155 hg push ssh://$USER@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
156 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
157 echo "#############################################################################" \
a7778435a4af Improve oracle integration and generate changelog when tagging
Andre Heinecke <aheinecke@intevation.de>
parents: 5268
diff changeset
158 >> $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
159 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
160 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
161 done;
9681
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
162 else
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
163 VERSION=$TARGET
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
164 fi
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
165
8754
574f8b80799f Add quotes in Path tests to avoid wrong results if variables are unset
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8753
diff changeset
166 if [ ! -f "$FLYS_SOURCE_DIR/OpenLayers-2.11.tar.gz" ]; 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
167 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
168 cd $FLYS_SOURCE_DIR
8822
cd8fce40f151 OpenLayers download moved.
Tom Gottfried <tom@intevation.de>
parents: 8754
diff changeset
169 curl -LO "https://github.com/openlayers/ol2/releases/download/release-2.11/OpenLayers-2.11.tar.gz"
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
170 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
171 # 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
172 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
173 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
174 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
175 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
176 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
177 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
178 $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
179
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
8753
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
181 echo "INFO: Installing smartGWT"
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
182
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
183 mvn install:install-file -Dfile="$SMARTGWT" -Dversion=4.1-p20141119 \
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
184 -DartifactId=smartgwt-lgpl -DgroupId=com.isomorphic.smartgwt.lgpl \
340111f40f2d (issue1824) Install smartgwt from file base on SMARTGWT environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8751
diff changeset
185 -Dpackaging=jar
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
186
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 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
188 mvn -f $FLYS_SOURCE_DIR/framework/pom.xml clean compile install
9779
3847836c60b5 Improve backend build for different database backends
Tom Gottfried <tom@intevation.de>
parents: 9778
diff changeset
189
3847836c60b5 Improve backend build for different database backends
Tom Gottfried <tom@intevation.de>
parents: 9778
diff changeset
190 # If ORACLE=true, the oracle profile in the POM is activated
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
191 mvn -f $FLYS_SOURCE_DIR/river/backend/pom.xml clean compile install
9779
3847836c60b5 Improve backend build for different database backends
Tom Gottfried <tom@intevation.de>
parents: 9778
diff changeset
192
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
193 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
194 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
195 # 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
196
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 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
198 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
199 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
200 $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
201 $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
202 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
203
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 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
205 cd $WORK_DIR
8751
5b4bd0680160 Do not die if work dir is clean.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8740
diff changeset
206 rm -f wsplgen-linux-*bit-static
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
207 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
208 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
209 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
210 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
211 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
212 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
213 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
214
9681
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
215 if [ -n "$DO_TAG" ]; 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
216 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
217 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
218 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
219 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
220 $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
221 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
222 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
223 $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
224 fi
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
225
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
226
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
227 echo "INFO: Preparing configuration of web client"
5692
d2c6d4ca6841 Add print url to relase script
Andre Heinecke <aheinecke@intevation.de>
parents: 5678
diff changeset
228
d2c6d4ca6841 Add print url to relase script
Andre Heinecke <aheinecke@intevation.de>
parents: 5678
diff changeset
229 #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
230 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
231 $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
232
8754
574f8b80799f Add quotes in Path tests to avoid wrong results if variables are unset
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8753
diff changeset
233 if [ -d "$WEBINF" ]; 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
234 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
235 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
236 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
237 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
238 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
239 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
240 fi
1431d1af84d7 Remove not publicly available WMS services and enable custom configuration through release script.
Tom Gottfried <tom@intevation.de>
parents: 7797
diff changeset
241
9728
ca1319d5816d Amend release script to include custom client resources
Tom Gottfried <tom@intevation.de>
parents: 9719
diff changeset
242 if [ -d "$CLIENT_RESOURCES" ]; then
ca1319d5816d Amend release script to include custom client resources
Tom Gottfried <tom@intevation.de>
parents: 9719
diff changeset
243 echo "INFO: copy custom client resources to target destination"
ca1319d5816d Amend release script to include custom client resources
Tom Gottfried <tom@intevation.de>
parents: 9719
diff changeset
244 CLIENT_RESOURCES_DIR=$FLYS_SOURCE_DIR/river/gwt-client/src/main/resources/
ca1319d5816d Amend release script to include custom client resources
Tom Gottfried <tom@intevation.de>
parents: 9719
diff changeset
245 cp -R $CLIENT_RESOURCES/* $CLIENT_RESOURCES_DIR
ca1319d5816d Amend release script to include custom client resources
Tom Gottfried <tom@intevation.de>
parents: 9719
diff changeset
246 for file in `find $CLIENT_RESOURCES_DIR/ -type f`; do
ca1319d5816d Amend release script to include custom client resources
Tom Gottfried <tom@intevation.de>
parents: 9719
diff changeset
247 sed -i -e "s@D4E_VERSION@${VERSION}@g" $file
ca1319d5816d Amend release script to include custom client resources
Tom Gottfried <tom@intevation.de>
parents: 9719
diff changeset
248 done
ca1319d5816d Amend release script to include custom client resources
Tom Gottfried <tom@intevation.de>
parents: 9719
diff changeset
249 fi
ca1319d5816d Amend release script to include custom client resources
Tom Gottfried <tom@intevation.de>
parents: 9719
diff changeset
250
8754
574f8b80799f Add quotes in Path tests to avoid wrong results if variables are unset
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8753
diff changeset
251 if [ -f "$CLIENT_CONF" ]; then
8506
da9365fc2f42 (issue1777) Evaluate CLIENT_CONF environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8501
diff changeset
252 echo "INFO: copy custom java script client configuration to target destination"
8754
574f8b80799f Add quotes in Path tests to avoid wrong results if variables are unset
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8753
diff changeset
253 cp "$CLIENT_CONF" \
8506
da9365fc2f42 (issue1777) Evaluate CLIENT_CONF environment variable
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8501
diff changeset
254 $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
255 fi
8384
d4a2c7b83087 Add possibility to give custom config for server log.
Tom Gottfried <tom@intevation.de>
parents: 8245
diff changeset
256
8754
574f8b80799f Add quotes in Path tests to avoid wrong results if variables are unset
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8753
diff changeset
257 if [ -n "$DGM_PATH" ]; 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
258 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
259 $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
260 fi
4065
9d404069f361 Added build script for FLYS release.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
261
8754
574f8b80799f Add quotes in Path tests to avoid wrong results if variables are unset
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8753
diff changeset
262 if [ -n "$WIKI_URL" ]; 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
263 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
264 $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
265 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
266
8754
574f8b80799f Add quotes in Path tests to avoid wrong results if variables are unset
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8753
diff changeset
267 if [ -d "$SERVER_CONF" ]; 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
268 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
269 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
270 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
271 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
272 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
273 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
274
7939
6e852a6c72f2 Use SmartGWT version 4.1p. Updated release script to download SmartGWT.
Raimund Renkert <rrenkert@intevation.de>
parents: 7837
diff changeset
275
4065
9d404069f361 Added build script for FLYS release.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
276 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
277 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
278 $FLYS_SOURCE_DIR/river/artifacts/bin/wsplgen
9778
b57b236c4f4e Backed out changeset b1b48fa7bd80
Tom Gottfried <tom@intevation.de>
parents: 9744
diff changeset
279
9779
3847836c60b5 Improve backend build for different database backends
Tom Gottfried <tom@intevation.de>
parents: 9778
diff changeset
280 mvn -f $FLYS_SOURCE_DIR/river/artifacts/pom.xml package assembly:single
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
281 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
282
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
283
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
284 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
285 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
286 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
287 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
288 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
289 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
290 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
291
8754
574f8b80799f Add quotes in Path tests to avoid wrong results if variables are unset
Andre Heinecke <andre.heinecke@intevation.de>
parents: 8753
diff changeset
292 if [ -f "$INSTALL" ]; then
8464
5dd6cc9fec1e Add possibility to pack install-script in release tarball.
Tom Gottfried <tom@intevation.de>
parents: 8450
diff changeset
293 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
294 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
295 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
296 tar -rf flys-$VERSION.tar `basename $INSTALL`
6612
e5d8cbce3040 Add cleanup to the release script
Andre Heinecke <aheinecke@intevation.de>
parents: 6440
diff changeset
297 fi
e5d8cbce3040 Add cleanup to the release script
Andre Heinecke <aheinecke@intevation.de>
parents: 6440
diff changeset
298
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
299 ## 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
300 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
301 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
302 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
303 ##
e3f032870e7a Release script: build binaries for publication when tagging and slightly mavenize the whole process.
Tom Gottfried <tom@intevation.de>
parents: 8512
diff changeset
304
9681
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
305 if [ -n "$DO_TAG" ]; 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
306 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
307 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
308 echo "_ $WORK_DIR/d4e-river-$VERSION.war"
9681
8e5a8430b89c Allow tagging a branch
Tom Gottfried <tom@intevation.de>
parents: 9679
diff changeset
309 echo "Changelog: $WORK_DIR/changes_$OLD_REV-$VERSION.txt"
8464
5dd6cc9fec1e Add possibility to pack install-script in release tarball.
Tom Gottfried <tom@intevation.de>
parents: 8450
diff changeset
310 fi
5251
8fa0c522bef3 Improve make_release script to optinally handle tagging and be more generic.
Andre Heinecke <aheinecke@intevation.de>
parents: 5220
diff changeset
311 echo "DONE: $WORK_DIR/flys-$VERSION.tar.gz"

http://dive4elements.wald.intevation.org