Friday, November 16, 2012

Dojo strikes back

Dojo is nice and you can do nice things quickly with it once you have learned all of it's oddities and strange behaviour. Today I ran into this really crappy thing, dijit.form.Checkbox.getValue() returns either "on" if it is checked or false if it isn't! WTF

// rant over...

Sunday, November 11, 2012

SSH Deployment module for Play 1.2.x released!

This modules simplifies deployment of Play 1.2.x application instances to Linux servers. Changes are pushed to servers using rsync and can be started, stopped and restarted over SSH. Combining this plugin with SSH keys you get a really easy way of deploying your code to testing instances and to production. It also works well in continuous integration setups.

Here is some of the copy pasted docs I wrote (for full docs, go here),


What it does

Easily deploy your application to Linux boxes using SSH and Rsync. You can deploy the same application to multiple machines, for example pushing to a test environment or multiple production backend nodes.

Usage

Push changes to server

    play deploy:update

Start, stop & restart your play application

    play deploy:start
    play deploy:stop
    play deploy:restart

The module supports command line arguments for overriding any of the parameters, you can also specify which instance to use (deploy.INSTANCE_NAME.host=10.0.0.1 etc). For full docs see, https://github.com/nylund/play-deploy/blob/master/documentation/manual/home.textile


Setup

Add this to your application.conf:

    deploy.default.host=IP_or_hostname
    deploy.default.login=remote_user_name
    deploy.default.port=remote_port
    deploy.default.path=remote_directory, for example /home/user/app-deploy/test1
    deploy.default.play_path=remote_path_to_play_binary, for example /home/user/app-deploy/play-1.2.5/play

Add this to your dependencies.yml:

     require:
        - play
        - deploy -> deploy 0.1
     repositories:
        - deploy:
            type: http
            artifact: http://albin.abo.fi/~ninylund/play_modules/deploy-0.1.zip
            contains:
                - deploy -> *



Get the module, http://www.playmodules.net/module/34
Check the code at Github, https://github.com/nylund/play-deploy