Merge lp:~jaywink/diaspora-ppa/diaspora-develop-setup into lp:~diaspora-ppa/diaspora-ppa/diaspora-metapackage-trunk
- diaspora-develop-setup
- Merge into diaspora-metapackage-trunk
Proposed by
Jason Robinson
Status: | Merged |
---|---|
Merged at revision: | 7 |
Proposed branch: | lp:~jaywink/diaspora-ppa/diaspora-develop-setup |
Merge into: | lp:~diaspora-ppa/diaspora-ppa/diaspora-metapackage-trunk |
Diff against target: |
483 lines (+403/-15) 2 files modified
debian/changelog (+7/-0) scripts/diasporactrl (+396/-15) |
To merge this branch: | bzr merge lp:~jaywink/diaspora-ppa/diaspora-develop-setup |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
diaspora* Team | Pending | ||
Review via email: mp+129963@code.launchpad.net |
Commit message
Description of the change
To post a comment you must log in.
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'debian/changelog' | |||
2 | --- debian/changelog 2012-10-13 21:10:34 +0000 | |||
3 | +++ debian/changelog 2012-10-16 19:20:29 +0000 | |||
4 | @@ -1,3 +1,10 @@ | |||
5 | 1 | diaspora (0.0.1.1) precise; urgency=low | ||
6 | 2 | |||
7 | 3 | * Development environment setup and control implemented | ||
8 | 4 | * Bump version to match latest upstream | ||
9 | 5 | |||
10 | 6 | -- Jason Robinson <jaywink@basshero.org> Tue, 16 Oct 2012 22:14:40 +0300 | ||
11 | 7 | |||
12 | 1 | diaspora (0.0.1ubuntu6) precise; urgency=low | 8 | diaspora (0.0.1ubuntu6) precise; urgency=low |
13 | 2 | 9 | ||
14 | 3 | * Added bundler gem installation to diasporactrl install rvm | 10 | * Added bundler gem installation to diasporactrl install rvm |
15 | 4 | 11 | ||
16 | === modified file 'scripts/diasporactrl' | |||
17 | --- scripts/diasporactrl 2012-10-13 21:10:34 +0000 | |||
18 | +++ scripts/diasporactrl 2012-10-16 19:20:29 +0000 | |||
19 | @@ -1,7 +1,61 @@ | |||
20 | 1 | #!/bin/bash | 1 | #!/bin/bash |
24 | 2 | # Control script for Diaspora* | 2 | # Control script for Diaspora* social network |
25 | 3 | # | 3 | # |
26 | 4 | # | 4 | # Launchpad: https://launchpad.net/diaspora-ppa |
27 | 5 | # Diaspora* project: http://diasporaproject.org | ||
28 | 6 | # | ||
29 | 7 | # Licensed under AGPLv3 | ||
30 | 8 | # | ||
31 | 9 | # TODO's: | ||
32 | 10 | # - Prod env setup (using diaspora master source from PPA) | ||
33 | 11 | # - Remove environments on remove script | ||
34 | 12 | # - Remove environment command | ||
35 | 13 | # | ||
36 | 14 | |||
37 | 15 | # Usage information | ||
38 | 16 | print_usage() { | ||
39 | 17 | echo "" | ||
40 | 18 | echo "Diaspora* control script for Ubuntu" | ||
41 | 19 | echo "-----------------------------------" | ||
42 | 20 | echo "" | ||
43 | 21 | echo "Usage: diasporactrl command [options]" | ||
44 | 22 | echo "" | ||
45 | 23 | echo "Commands:" | ||
46 | 24 | echo " install rvm" | ||
47 | 25 | echo " Installs Ruby RVM under current user or if" | ||
48 | 26 | echo " run with sudo, user can be chosen." | ||
49 | 27 | echo " remove rvm" | ||
50 | 28 | echo " Removes RVM and all installed gems under it." | ||
51 | 29 | echo " setup develop <name>" | ||
52 | 30 | echo " Set up a development environment <name>. Name must be" | ||
53 | 31 | echo " a valid folder name as environment will be created under" | ||
54 | 32 | echo " current path in a sub-directory." | ||
55 | 33 | echo " Development environment is based on Diaspora* Github" | ||
56 | 34 | echo " development branch head." | ||
57 | 35 | echo " setup stable <name>" | ||
58 | 36 | echo " Not implemented yet. This command will in future be used" | ||
59 | 37 | echo " to set up a stable production environment." | ||
60 | 38 | echo " setup database" | ||
61 | 39 | echo " Set up database for environment in current folder." | ||
62 | 40 | echo " Used to finish an environment installation if database" | ||
63 | 41 | echo " credentials were not given during environment setup." | ||
64 | 42 | echo " start" | ||
65 | 43 | echo " Start Diaspora* environment in current folder (development" | ||
66 | 44 | echo " environments)." | ||
67 | 45 | echo " stop" | ||
68 | 46 | echo " Stop Diaspora* environment that was previously started in" | ||
69 | 47 | echo " this folder." | ||
70 | 48 | echo "" | ||
71 | 49 | echo "Author: Jason Robinson <jaywink@basshero.org>" | ||
72 | 50 | echo "Find me on Diaspora* at jaywink@joindiaspora.com" | ||
73 | 51 | echo "" | ||
74 | 52 | echo "Code for this script is maintained at Launchpad:" | ||
75 | 53 | echo "https://code.launchpad.net/diaspora-ppa" | ||
76 | 54 | echo "" | ||
77 | 55 | echo "Please file bugs on Launchpad. Discussion on Diaspora* packaging" | ||
78 | 56 | echo "efforts happens at http://loom.io/groups/282" | ||
79 | 57 | echo "" | ||
80 | 58 | } | ||
81 | 5 | 59 | ||
82 | 6 | # RVM installation | 60 | # RVM installation |
83 | 7 | install_rvm() { | 61 | install_rvm() { |
84 | @@ -18,7 +72,14 @@ | |||
85 | 18 | # Activate RVM for user | 72 | # Activate RVM for user |
86 | 19 | activate_rvm() { | 73 | activate_rvm() { |
87 | 20 | if [ -n "$1" ]; then | 74 | if [ -n "$1" ]; then |
89 | 21 | su - $1 -c "source /home/$1/.rvm/scripts/rvm" | 75 | if [ `whoami` = "root" ]; then |
90 | 76 | su - $1 -c "source /home/$1/.rvm/scripts/rvm" | ||
91 | 77 | elif [ `whoami` = $1 ]; then | ||
92 | 78 | source /home/$1/.rvm/scripts/rvm | ||
93 | 79 | else | ||
94 | 80 | echo "Cannot activate RVM for another user without being root!" | ||
95 | 81 | exit 1 | ||
96 | 82 | fi | ||
97 | 22 | else | 83 | else |
98 | 23 | echo "Cannot activate RVM for null username!" | 84 | echo "Cannot activate RVM for null username!" |
99 | 24 | exit 1 | 85 | exit 1 |
100 | @@ -120,6 +181,211 @@ | |||
101 | 120 | fi | 181 | fi |
102 | 121 | } | 182 | } |
103 | 122 | 183 | ||
104 | 184 | # Get Diaspora system user | ||
105 | 185 | get_diaspora_user() { | ||
106 | 186 | username="" | ||
107 | 187 | if [ `whoami` != "root" ]; then | ||
108 | 188 | # we are a user | ||
109 | 189 | if [ -d "$HOME/.diaspora" ]; then | ||
110 | 190 | username=`whoami` | ||
111 | 191 | else | ||
112 | 192 | # also check if installed with sudo for another user | ||
113 | 193 | if [ -e "/etc/diaspora/.diaspora_user" ]; then | ||
114 | 194 | username=`cat /etc/diaspora/.diaspora_user` | ||
115 | 195 | fi | ||
116 | 196 | fi | ||
117 | 197 | else | ||
118 | 198 | # we are root | ||
119 | 199 | # See if D* user has been set | ||
120 | 200 | if [ -e "/etc/diaspora/.diaspora_user" ]; then | ||
121 | 201 | username=`cat /etc/diaspora/.diaspora_user` | ||
122 | 202 | fi | ||
123 | 203 | fi | ||
124 | 204 | } | ||
125 | 205 | |||
126 | 206 | # Set configuration variables for environment in current directory | ||
127 | 207 | set_config() { | ||
128 | 208 | key="ENVIRONMENT_$1" | ||
129 | 209 | if [ ! -e ".diasporactrlrc" ]; then | ||
130 | 210 | # Are we in a Diaspora* environment folder? | ||
131 | 211 | if [ ! -e ".rvmrc" ]; then | ||
132 | 212 | echo "set_config(): We are not in a Diaspora* environment folder!" | ||
133 | 213 | echo "Error in script?" | ||
134 | 214 | exit 1 | ||
135 | 215 | fi | ||
136 | 216 | touch ".diasporactrlrc" | ||
137 | 217 | fi | ||
138 | 218 | |||
139 | 219 | if [ $(grep -c "export $key=$2" .diasporactrlrc) -ne 0 ]; then | ||
140 | 220 | # conf item exists, replace it | ||
141 | 221 | sed -i "s/$key/$(echo $2 | sed -e 's/[\/&]/\\&/g')/g" .diasporactrlrc | ||
142 | 222 | else | ||
143 | 223 | # new conf item | ||
144 | 224 | echo "export $key=$2" >> .diasporactrlrc | ||
145 | 225 | fi | ||
146 | 226 | } | ||
147 | 227 | |||
148 | 228 | # Skip database setup | ||
149 | 229 | skip_database_setup() { | ||
150 | 230 | echo "" | ||
151 | 231 | echo "You have chosen to skip database credential setup or one" | ||
152 | 232 | echo "or more values were null. Please do this step later by editing" | ||
153 | 233 | echo "the following file:" | ||
154 | 234 | echo "`pwd`/config/database.yml" | ||
155 | 235 | echo "" | ||
156 | 236 | echo "Press enter to continue" | ||
157 | 237 | read enterkey | ||
158 | 238 | } | ||
159 | 239 | |||
160 | 240 | # Run DB init actions | ||
161 | 241 | run_db_init() { | ||
162 | 242 | if [ "$1" = "development" ]; then | ||
163 | 243 | echo "" | ||
164 | 244 | echo "Setting up database in development mode.." | ||
165 | 245 | echo "" | ||
166 | 246 | bundle exec rake db:create | ||
167 | 247 | bundle exec rake db:schema:load | ||
168 | 248 | echo "" | ||
169 | 249 | echo "DB setup complete!" | ||
170 | 250 | echo "" | ||
171 | 251 | fi | ||
172 | 252 | } | ||
173 | 253 | |||
174 | 254 | # Print startup instructions | ||
175 | 255 | print_startup_instructions() { | ||
176 | 256 | echo "" | ||
177 | 257 | echo "To run the environment, change to the environment folder and" | ||
178 | 258 | echo "execute the following command:" | ||
179 | 259 | echo "diasporactrl start" | ||
180 | 260 | echo "" | ||
181 | 261 | echo "This will start a background server process which you can then" | ||
182 | 262 | echo "stop with the command:" | ||
183 | 263 | echo "diasporactrl stop" | ||
184 | 264 | echo "" | ||
185 | 265 | } | ||
186 | 266 | |||
187 | 267 | # Create dev environment logic | ||
188 | 268 | create_dev_environment() { | ||
189 | 269 | echo "" | ||
190 | 270 | echo "Beginning installation of development environment" | ||
191 | 271 | echo "" | ||
192 | 272 | |||
193 | 273 | if [ -d $1 ]; then | ||
194 | 274 | echo "Directory $1 exists! We need to create a directory for the environment," | ||
195 | 275 | echo "please choose another name or run in another location." | ||
196 | 276 | exit 1 | ||
197 | 277 | fi | ||
198 | 278 | |||
199 | 279 | git clone git://github.com/diaspora/diaspora.git $1 | ||
200 | 280 | |||
201 | 281 | if [ $? -ne 0 ]; then | ||
202 | 282 | echo "Something wrong in git clone command, please check the error output and retry." | ||
203 | 283 | exit 1 | ||
204 | 284 | fi | ||
205 | 285 | |||
206 | 286 | # save environment name to ~/.diaspora folder | ||
207 | 287 | echo `pwd`/$1 >> $HOME/.diaspora/envs_development | ||
208 | 288 | |||
209 | 289 | echo "" | ||
210 | 290 | echo "I will now move to the dev environment directory. This will trigger a question" | ||
211 | 291 | echo "from Ruby RVM about trusting the .rvmrc file provided by Diaspora*. You must answer" | ||
212 | 292 | echo "yes to this question in order to have all the required Ruby gems set up properly." | ||
213 | 293 | echo "" | ||
214 | 294 | echo -n "Please press enter to continue" | ||
215 | 295 | read key | ||
216 | 296 | |||
217 | 297 | cd $1 | ||
218 | 298 | |||
219 | 299 | # user accepts .rvmrc, rvm does stuff | ||
220 | 300 | |||
221 | 301 | # continue with installation, mysql supported only at the moment, it has been | ||
222 | 302 | # pulled via dependencies | ||
223 | 303 | |||
224 | 304 | # install gems | ||
225 | 305 | DB="mysql" bundle install | ||
226 | 306 | |||
227 | 307 | if [ $? -ne 0 ]; then | ||
228 | 308 | echo "Something wrong from bundler, please check the error output and retry." | ||
229 | 309 | exit 1 | ||
230 | 310 | fi | ||
231 | 311 | |||
232 | 312 | # configure | ||
233 | 313 | # set a localhost url (this also creates the config file for this env) | ||
234 | 314 | set_config "ENVIRONMENT_URL" "https://127.0.0.1:3000/" | ||
235 | 315 | |||
236 | 316 | # copy script_server config // will be changed soon in 0.0.2 | ||
237 | 317 | cp config/script_server.yml.example config/script_server.yml | ||
238 | 318 | |||
239 | 319 | # database config | ||
240 | 320 | cp config/database.yml.example config/database.yml | ||
241 | 321 | echo "" | ||
242 | 322 | echo "Database (MySQL) username/password needs to be set up. The database user" | ||
243 | 323 | echo "needs rights to create a new database for this environment. You either" | ||
244 | 324 | echo "set this information up later or do it now." | ||
245 | 325 | echo "" | ||
246 | 326 | echo -n "Would you like to set up the database information now? (Y/n) " | ||
247 | 327 | read yesorno | ||
248 | 328 | if [ "$yesorno" != "Y" ]; then | ||
249 | 329 | # get database info | ||
250 | 330 | echo -n "DB: Please type database username? " | ||
251 | 331 | read dbusername | ||
252 | 332 | echo -n "DB: Please type database password? " | ||
253 | 333 | read dbpassword | ||
254 | 334 | if [ -z "$dbusername" ] || [ -z "$dbpassword" ]; then | ||
255 | 335 | # one or both values empty - skip | ||
256 | 336 | skip_database_setup | ||
257 | 337 | dbconfigured=false | ||
258 | 338 | else | ||
259 | 339 | # save values | ||
260 | 340 | replacestr="username: \"$dbusername\"" | ||
261 | 341 | sed -i "s/username: \"root\"/$(echo $replacestr | sed -e 's/[\/&]/\\&/g')/g" config/database.yml | ||
262 | 342 | replacestr="password: \"$dbpassword\"" | ||
263 | 343 | sed -i "s/password: \"\"/$(echo $replacestr | sed -e 's/[\/&]/\\&/g')/g" config/database.yml | ||
264 | 344 | |||
265 | 345 | # TODO: ask if user would like these to be saved in .diaspora folder for later use | ||
266 | 346 | |||
267 | 347 | # set db name to unique, so we can set up multiple envs | ||
268 | 348 | # TODO: add random number | ||
269 | 349 | sed -i "s/diaspora_development/diaspora_$1/g" config/database.yml | ||
270 | 350 | dbconfigured=true | ||
271 | 351 | fi | ||
272 | 352 | else | ||
273 | 353 | skip_database_setup | ||
274 | 354 | dbconfigured=false | ||
275 | 355 | fi | ||
276 | 356 | |||
277 | 357 | # Some generic conf variables | ||
278 | 358 | set_config "SETTINGS_POD_NAME" "Diaspora* $1" | ||
279 | 359 | set_config "SETTINGS_ENABLE_REGISTRATIONS" "true" | ||
280 | 360 | |||
281 | 361 | # some fixes to get D* running without a config file, can be removed after this is fixed: | ||
282 | 362 | # https://github.com/diaspora/diaspora/issues/3661 | ||
283 | 363 | # we don't do these via set_config because it would append ENVIRONMENT_ | ||
284 | 364 | echo "export HEROKU=true" >> .diasporactrlrc | ||
285 | 365 | echo "export SECRET_TOKEN=58c7770115469e64ce3ff1f802cefc5e77d41694e8f64cd5408ab6b1a764babe0f9b8ae6e0a81d6b" >> .diasporactrlrc | ||
286 | 366 | cp config/diaspora.yml.example config/diaspora.yml | ||
287 | 367 | |||
288 | 368 | # Run DB stuff if DB config was done | ||
289 | 369 | if [ "$dbconfigured" = "true" ]; then | ||
290 | 370 | source .diasporactrlrc | ||
291 | 371 | run_db_init "development" | ||
292 | 372 | else | ||
293 | 373 | echo "" | ||
294 | 374 | echo "DB has not been set up since we do not have credentials." | ||
295 | 375 | echo "Please edit config/database.yml and once done run the following:" | ||
296 | 376 | echo "diasporactrl setup database development" | ||
297 | 377 | echo "" | ||
298 | 378 | fi | ||
299 | 379 | |||
300 | 380 | echo "" | ||
301 | 381 | echo "Environment $1 in `pwd` has been created!" | ||
302 | 382 | echo "For developer guidelines, please make sure to read:" | ||
303 | 383 | echo "https://github.com/diaspora/diaspora/wiki/Git-Workflow" | ||
304 | 384 | echo "" | ||
305 | 385 | |||
306 | 386 | print_startup_instructions | ||
307 | 387 | } | ||
308 | 388 | |||
309 | 123 | case "$1" in | 389 | case "$1" in |
310 | 124 | install) | 390 | install) |
311 | 125 | case "$2" in | 391 | case "$2" in |
312 | @@ -133,6 +399,12 @@ | |||
313 | 133 | echo "" | 399 | echo "" |
314 | 134 | read oktocontinue | 400 | read oktocontinue |
315 | 135 | username=`whoami` | 401 | username=`whoami` |
316 | 402 | |||
317 | 403 | # create home .diaspora dir | ||
318 | 404 | if [ ! -d "$HOME/.diaspora" ]; then | ||
319 | 405 | mkdir $HOME/.diaspora | ||
320 | 406 | fi | ||
321 | 407 | |||
322 | 136 | else | 408 | else |
323 | 137 | # we are root, let's take a guess or ask user | 409 | # we are root, let's take a guess or ask user |
324 | 138 | echo "Guessing which user to install RVM to.." | 410 | echo "Guessing which user to install RVM to.." |
325 | @@ -142,6 +414,12 @@ | |||
326 | 142 | if [ -d "/etc/diaspora" ] && [ ! -e "/etc/diaspora/.diaspora_user" ]; then | 414 | if [ -d "/etc/diaspora" ] && [ ! -e "/etc/diaspora/.diaspora_user" ]; then |
327 | 143 | echo $username > /etc/diaspora/.diaspora_user | 415 | echo $username > /etc/diaspora/.diaspora_user |
328 | 144 | fi | 416 | fi |
329 | 417 | |||
330 | 418 | # also create home .diaspora dir | ||
331 | 419 | if [ ! -d "/home/$username/.diaspora" ]; then | ||
332 | 420 | mkdir /home/$username/.diaspora | ||
333 | 421 | chown $username /home/$username/.diaspora | ||
334 | 422 | fi | ||
335 | 145 | fi | 423 | fi |
336 | 146 | 424 | ||
337 | 147 | if [ -n "$username" ]; then | 425 | if [ -n "$username" ]; then |
338 | @@ -159,13 +437,9 @@ | |||
339 | 159 | ;; | 437 | ;; |
340 | 160 | 438 | ||
341 | 161 | *) | 439 | *) |
345 | 162 | echo "Unknown install argument" | 440 | print_usage |
343 | 163 | exit 1 | ||
344 | 164 | |||
346 | 165 | ;; | 441 | ;; |
347 | 166 | |||
348 | 167 | esac | 442 | esac |
349 | 168 | |||
350 | 169 | ;; | 443 | ;; |
351 | 170 | 444 | ||
352 | 171 | remove) | 445 | remove) |
353 | @@ -198,18 +472,125 @@ | |||
354 | 198 | ;; | 472 | ;; |
355 | 199 | 473 | ||
356 | 200 | *) | 474 | *) |
358 | 201 | echo "Unknown remove argument" | 475 | print_usage |
359 | 476 | ;; | ||
360 | 477 | esac | ||
361 | 478 | ;; | ||
362 | 479 | |||
363 | 480 | setup) | ||
364 | 481 | case "$2" in | ||
365 | 482 | develop) | ||
366 | 483 | |||
367 | 484 | if [ -z $3 ]; then | ||
368 | 485 | echo "Please supply a name for development environment, for example:" | ||
369 | 486 | echo "diasporactrl setup develop mydevenv" | ||
370 | 487 | exit 1 | ||
371 | 488 | fi | ||
372 | 489 | |||
373 | 490 | echo "Checking for Diaspora* system user information..." | ||
374 | 491 | get_diaspora_user | ||
375 | 492 | |||
376 | 493 | if [ -n "$username" ]; then | ||
377 | 494 | echo "Diaspora* system user is: $username" | ||
378 | 495 | else | ||
379 | 496 | echo "No Diaspora* system user found!" | ||
380 | 497 | echo "Did RVM and dependency installation go ok? Try this:" | ||
381 | 498 | echo "diasporactrl install rvm" | ||
382 | 499 | exit 1 | ||
383 | 500 | fi | ||
384 | 501 | |||
385 | 502 | # no point in supporting creation of dev environments for other users | ||
386 | 503 | if [ `whoami` != "$username" ]; then | ||
387 | 504 | echo "Please set up development environment by running as the Diaspora* system user" | ||
388 | 505 | echo "If you want to set one up for this username (`whoami`), run:" | ||
389 | 506 | echo "diasporactrl install rvm" | ||
390 | 507 | exit 1 | ||
391 | 508 | fi | ||
392 | 509 | |||
393 | 510 | activate_rvm $username | ||
394 | 511 | create_dev_environment $3 | ||
395 | 512 | ;; | ||
396 | 513 | |||
397 | 514 | stable) | ||
398 | 515 | echo "Not supported yet! Please do manual setup using these instructions:" | ||
399 | 516 | echo "https://github.com/diaspora/diaspora/wiki/Notes-on-Installing-and-Running-Diaspora" | ||
400 | 202 | exit 1 | 517 | exit 1 |
401 | 518 | ;; | ||
402 | 519 | |||
403 | 520 | database) | ||
404 | 521 | get_diaspora_user | ||
405 | 203 | 522 | ||
408 | 204 | ;; | 523 | if [ -n "$username" ]; then |
409 | 205 | 524 | echo "Diaspora* system user is: $username" | |
410 | 525 | else | ||
411 | 526 | echo "No Diaspora* system user found!" | ||
412 | 527 | exit 1 | ||
413 | 528 | fi | ||
414 | 529 | activate_rvm $username | ||
415 | 530 | source .diasporactrlrc | ||
416 | 531 | run_db_init $3 | ||
417 | 532 | print_startup_instructions | ||
418 | 533 | ;; | ||
419 | 534 | |||
420 | 535 | *) | ||
421 | 536 | print_usage | ||
422 | 537 | ;; | ||
423 | 206 | esac | 538 | esac |
425 | 207 | 539 | ;; | |
426 | 540 | |||
427 | 541 | start) | ||
428 | 542 | if [ ! -e .diasporactrlrc ]; then | ||
429 | 543 | echo "" | ||
430 | 544 | echo "Not in a Diaspora* environment folder!" | ||
431 | 545 | echo "tip: .diasporactrlrc missing, it is created by setting an" | ||
432 | 546 | echo "environment using the command:" | ||
433 | 547 | echo "diasporactrl setup develop mydevenv" | ||
434 | 548 | echo "" | ||
435 | 549 | exit 1 | ||
436 | 550 | fi | ||
437 | 551 | |||
438 | 552 | # load env variables | ||
439 | 553 | source .diasporactrlrc | ||
440 | 554 | |||
441 | 555 | # start in background | ||
442 | 556 | script/server >> diasporactrl.log 2>&1 & | ||
443 | 557 | echo $! >> "diasporactrl.pid" | ||
444 | 558 | |||
445 | 559 | echo "" | ||
446 | 560 | echo "Started server!" | ||
447 | 561 | echo "You can check the log file 'diasporactrl.log' and after approx" | ||
448 | 562 | echo "30 seconds access the environment at http://127.0.0.1:3000" | ||
449 | 563 | echo "" | ||
450 | 564 | echo "To stop the server, type:" | ||
451 | 565 | echo "diasporactrl stop" | ||
452 | 566 | echo "" | ||
453 | 567 | ;; | ||
454 | 568 | |||
455 | 569 | stop) | ||
456 | 570 | if [ ! -e diasporactrl.pid ]; then | ||
457 | 571 | echo "" | ||
458 | 572 | echo "Can not find diasporactrl.pid file. Has an environment" | ||
459 | 573 | echo "been started in this folder?" | ||
460 | 574 | echo "" | ||
461 | 575 | exit 1 | ||
462 | 576 | fi | ||
463 | 577 | |||
464 | 578 | # start in background | ||
465 | 579 | pid2kill=`cat diasporactrl.pid` | ||
466 | 580 | kill $pid2kill | ||
467 | 581 | #TODO fix below - currently kills all running instances :) | ||
468 | 582 | #but then currently only one can be started since port is always 3000 | ||
469 | 583 | kill $(ps aux | grep '[d]iaspora' | awk '{print $2}') | ||
470 | 584 | |||
471 | 585 | rm diasporactrl.pid | ||
472 | 586 | |||
473 | 587 | echo "" | ||
474 | 588 | echo "Server has been stopped!" | ||
475 | 589 | echo "" | ||
476 | 208 | ;; | 590 | ;; |
477 | 209 | 591 | ||
478 | 210 | *) | 592 | *) |
481 | 211 | echo "Unknown argument" | 593 | print_usage |
480 | 212 | exit 1 | ||
482 | 213 | ;; | 594 | ;; |
483 | 214 | esac | 595 | esac |
484 | 215 | 596 |