This repository has been archived by the owner on Sep 23, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 82
/
create-nimbus-home
executable file
·133 lines (106 loc) · 3.72 KB
/
create-nimbus-home
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
#!/bin/bash
CONTAINER_URL="http://www-unix.globus.org/ftppub/gt4/4.0/4.0.8/ws-core/bin/ws-core-4.0.8-bin.tar.gz"
CONTAINER_TARNAME="ws-core-4.0.8-bin.tar.gz"
CONTAINER_UNTARREDNAME="ws-core-4.0.8"
# destination directory inside $NIMBUS_HOME
CONTAINER_DIRNAME="services"
NIMBUS_SRC_REL="`dirname $0`/.."
NIMBUS_SRC=`cd $NIMBUS_SRC_REL; pwd`
TMPDIR="$NIMBUS_SRC/bin/tmp"
if [ ! -d $TMPDIR ]; then
mkdir $TMPDIR
if [ $? -ne 0 ]; then
echo "Failed to create temp directory: $TMPDIR"
exit 1
fi
fi
if [ "X$1" = "X" ]; then
echo ""
echo "Usage: $0 destination_dir"
echo " You must specify the destination directory.\n"
exit 1
fi
echo ""
echo "-----------------------------------------------------------------"
echo " Preparing Nimbus installation directory"
echo "-----------------------------------------------------------------"
echo ""
# first ensure we have a GT tarball. Most likely it has been bundled with
# the Nimbus installer.
if [ ! -f $TMPDIR/$CONTAINER_TARNAME ]; then
echo "Downloading service container.."
echo ""
wget -c -O $TMPDIR/$CONTAINER_TARNAME $CONTAINER_URL
if [ $? -ne 0 ]; then
echo ""
echo "Failed to download container tarball from: $CONTAINER_URL"
echo ""
echo "If you are unable to access the Internet, please retrieve this"
echo "file by other means and place it in $TMPDIR/."
echo "Then rerun this script."
rm -f $TMPDIR/$CONTAINER_TARNAME
exit 1
fi
fi
NIMBUS_HOME=$1
if [ ! -d $NIMBUS_HOME ]; then
PARENT_DIR=`dirname $NIMBUS_HOME`
if [ -d $PARENT_DIR ]; then
mkdir $NIMBUS_HOME
if [ $? -ne 0 ]; then
echo "Failed to create destination directory!"
exit 1
fi
else
echo "Parent dir of destination does not exist: $PARENT_DIR"
exit 1
fi
fi
echo "Deploying skeleton directory structure.."
cp -fr $NIMBUS_SRC/home/* $NIMBUS_HOME/
if [ $? -ne 0 ]; then
echo "Failed to copy Nimbus home directory"
exit 1
fi
echo "Deploying web application.."
cp -r $NIMBUS_SRC/web $NIMBUS_HOME/
if [ $? -ne 0 ]; then
echo "Failed to copy Nimbus web directory"
exit 1
fi
CONTAINER_DIR="$NIMBUS_HOME/$CONTAINER_DIRNAME"
if [ ! -d $CONTAINER_DIR ]; then
echo "Installing service container.."
tar xzf $TMPDIR/$CONTAINER_TARNAME -C $TMPDIR
if [ $? -ne 0 ]; then
echo "Failed to expand container tarball: $TMPDIR/$CONTAINER_TARNAME"
echo "If this file is corrupted, you may delete it and rerun this script to download a new one."
exit 1
fi
mv $TMPDIR/$CONTAINER_UNTARREDNAME $CONTAINER_DIR
if [ $? -ne 0 ]; then
echo "Failed to move container directory to $CONTAINER_DIR"
exit 1
fi
CONTAINER_LOG_PROPS="$CONTAINER_DIR/container-log4j.properties"
echo "" >> $CONTAINER_LOG_PROPS
echo "# Change the following lines from \"INFO\" to \"DEBUG\" to enable Nimbus debugging" >> $CONTAINER_LOG_PROPS
echo "# Also see: services/etc/nimbus/workspace-service/logging.conf" >> $CONTAINER_LOG_PROPS
echo "# Logging changes require a container restart." >> $CONTAINER_LOG_PROPS
echo "log4j.category.org.nimbustools=INFO" >> $CONTAINER_LOG_PROPS
echo "log4j.category.org.globus.workspace=INFO" >> $CONTAINER_LOG_PROPS
else
echo "Service container already exists at $CONTAINER_DIR"
fi
echo ""
echo "-----------------------------------------------------------------"
echo " Building and installing Nimbus services"
echo "-----------------------------------------------------------------"
GLOBUS_LOCATION=$CONTAINER_DIR
export GLOBUS_LOCATION
$NIMBUS_SRC/scripts/all-build-and-install.sh
if [ $? -ne 0 ]; then
echo "Build and install FAILED!"
exit 1
fi
echo ""