« June 2007 | Main | August 2007 »

July 2007

July 27, 2007

Procrastination

zefrank tells you everything you need to know about procrastination, from first easy steps to "advanced techniques":

July 26, 2007

Happy Birthday Carl and Welcome to the Family!

Carl Slawinski — my friend and our new partner at Agile Web Solutions is having a birthday today. He also celebrates The Freedom from Windows by having a huge sale at MacZot.

Carl's Birthday ZOT

Happy Birthday Carl and Welcome to Agile Web Solutions! It is great to have you here with us.

July 23, 2007

Standard capistrano 1.4.1 commands

cleanup

Removes unused releases from the releases directory. By default, the last 5 releases are retained, but this can be configured with the 'keep_releases' variable. This will use sudo to do the delete by default, but you can specify that run should be used by setting the :use_sudo variable to false.

cold_deploy

Used only for deploying when the spinner isn't running. It invokes 'update', and when it finishes it then invokes the spinner task (to start the spinner).

configure_mongrel_cluster

Configure Mongrel processes on the app server. This uses the :use_sudo variable to determine whether to use sudo or not. By default, :use_sudo is set to true.

deploy

A macro-task that updates the code, fixes the symlink, and restarts the application servers.

deploy_with_migrations

Similar to deploy, but it runs the migrate task on the new release before updating the symlink. (Note that the update in this case it is not atomic, and transactions are not used, because migrations are not guaranteed to be reversible.)

diff_from_last_deploy

Displays the diff between HEAD and what was last deployed. (Not available with all SCM's.)

disable_web

Disable the web server by writing a "maintenance.html" file to the web servers. The servers must be configured to detect the presence of this file, and if it is present, always display it instead of performing the request.

enable_web

Re-enable the web server by deleting any "maintenance.html" file.

invoke

A simple task for performing one-off commands that may not require a full task to be written for them. Simply specify the command to execute via the COMMAND environment variable. To execute the command only on certain roles, specify the ROLES environment variable as a comma-delimited list of role names. Lastly, if you want to execute the command via sudo, specify a non-empty value for the SUDO environment variable.

migrate

Run the migrate rake task. By default, it runs this in the version of the app indicated by the 'current' symlink. (This means you should not invoke this task until the symlink has been updated to the most recent version.) However, you can specify a different release via the migrate_target variable, which must be one of "current" (for the default behavior), or "latest" (for the latest release to be deployed with the update_code task). You can also specify additional environment variables to pass to rake via the migrate_env variable. Finally, you can specify the full path to the rake executable by setting the rake variable.

restart

Restart the Mongrel processes on the app server by calling restart_mongrel_cluster.

restart_mongrel_cluster

Restart the Mongrel processes on the app server by starting and stopping the cluster. This uses the :use_sudo variable to determine whether to use sudo or not. By default, :use_sudo is set to true.

rollback

A macro-task that rolls back the code and restarts the application servers.

rollback_code

Rollback the latest checked-out version to the previous one by fixing the symlinks and deleting the current release from all servers.

set_permissions

Sets group permissions on checkout. Useful for team environments, bad on shared hosts. Override this task if you're on a shared host.

setup

Set up the expected application directory structure on all boxes

shell

Begin an interactive Capistrano session. This gives you an interactive terminal from which to execute tasks and commands on all of your servers. (This is still an experimental feature, and is subject to change without notice!)

show_tasks

Enumerate and describe every available task.

spinner

Start the Mongrel processes on the app server by calling start_mongrel_cluster.

start_mongrel_cluster

Start Mongrel processes on the app server. This uses the :use_sudo variable to determine whether to use sudo or not. By default, :use_sudo is set to true.

status_mongrel_cluster

Check the status of the Mongrel processes on the app server. This uses the :use_sudo variable to determine whether to use sudo or not. By default, :use_sudo is set to true.

stop_mongrel_cluster

Stop the Mongrel processes on the app server. This uses the :use_sudo variable to determine whether to use sudo or not. By default, :use_sudo is set to true.

symlink

Update the 'current' symlink to point to the latest version of the application's code.

update

Updates the code and fixes the symlink under a transaction

update_code

Update all servers with the latest release of the source code. All this does is do a checkout (as defined by the selected scm module).

update_current

Update the currently released version of the software directly via an SCM update operation

July 03, 2007

"Design assignment"

William McDonough in his TED Talks presentation was explaining why the book "Cradle to cradle" is not made of trees:

To use something elegant as a tree... Imagine the design assignment — design something that makes oxygen, sequesters carbon, fixes nitrogen, distills water, accrues solar energy as fuel, makes complex sugars and food, creates microclimate, changes colors with the seasons and self-replicates... Why don't we knock that down and write on it?