Home > seashell

seashell

Seashell is a project mainly written in RUBY and SHELL, based on the MIT license.

Capistrano recipes for deploying seaside applications.

#

SeaShell

#

Capistrano deployment recipes for seaside platforms

#

Author: Andreas Brodbeck, mindclue gmbh, www.mindclue.ch

Licence: MIT (see LICENSE file)

How to install

  • Get SeaShell as source from http://github.com/dassi/seashell.
  • Put everything in a folder "deployment" (or similar) at your project folder on your development machine (not on the server!).
  • Depends on ruby-gem "capistrano", version >=2.5.5. To install capistrano, run this on your shell: "sudo gem install capistrano"

How to configure

  • In the folder ./stages: Copy the file stage.rb.example to somestage.rb and change it to your needs. (Examples: production.rb, demo.rb, development.rb)
  • Optional: Add a file on top level called tasks.rb, which will hold your project specific additional tasks. See examples/tasks.rb for hints.

How to use

  • Open a shell in the folder you have put SeaShell
  • Run "cap -T" on the shell to get a list of tasks and their description
  • Choose your stage and run a task, for example "cap production info:env". (In fact, for each of your stages there will be a task to switch to that stage. For example "production". You need to execute that stage-choosing task prior to any other task. The general form of invocation thus is: cap )

Goodies on server side

On your servers projects application path, there will be some files for your convenience:

  • iss: Interactive Smalltalk Shell, just invoke it and then run Smalltalk code directly. It holds a topaz session in the background to run the code. This tool simplifies the "talk to your application". Needs the tool "rlwrap" to be present on your system (Ubuntu: sudo apt-get install rlwrap).
  • executeSmalltalk.sh: executeSmalltalk.sh
  • .conf: Application specific GemStone configuration file
  • switch_environment: Some environment variable settings to "source-in" your shell, for switching to the current application. Use like this "source ./switch_environment" in your shell.

Remarks

  • Make shure your server does NOT load your login profile, when connecting with a non-login shell (Some systems do, I heard! Ubuntu doesn't.). This potentialy could override some environment settings from the SeaShell capistrano recipes.
  • Your applications are stored in /opt/gemstone/applications/
  • Don't be confused by the name "gem". It is also used by ruby, not only by gemstone.
  • Not meant to work on, with, over, under, on top, left of, outside or near of Windows. Sorry. Hygiene.
  • lighttpd support is outdated and will not be updated, in favor of the usage of the cherokee webserver, which has a very nice GUI frontend builtin.

Links