0.6.24 / 2011-10-05 ================== * fix hashify_domain_filter for ruby 1.9.2 (closes issue #29) 0.6.23 / 2011-09-29 ================== * Fix incompatibility with latest jeweler (Rakefile error messages) [James Cox (imajes)] * We now use vagrant for integration specs. * Make rsync_changes more robust * Add ERB support to YAML files used in integration specs * add per-domain ssh_options support to config files * Big refactoring of config handling into a filter stream architecture 0.6.22 / 2011-04-10 ================== * support branch-switching on deployments * added integration spec for "branch switching" behavior 0.6.21 / 2011-04-06 ================== * change rsync changes capturing mechanism to be more portable * upgrade integration spec to test rsync/#changed?/config repo * helpers spec now tests root path rsync changes * deploy.yml to test rsync changes w/ config repo * integration spec project and config changes to stored git repos 0.6.20 / 2011-04-06 ================== * Output the entire command before running it when debugging. * more anal git checkouts on clones to support older gits * abort instead of raising in wd * Neuter commandline output in wd command spec * Make #changes work on setup * Allow enabling debugger in specs w/ non-empty ENV['debug'] * Fix setup #changed? integration specs * Improve example text for deployment #changed? integration specs * Factor out snapshotting of git revision from WD.initialize_git_changes * Fix the direction of the setup #changed? integration spec test * Fixing jump_to_initial_commit spec helper * Helper integration spec should use the correct branch when setting up. * adjust env testing in integration specs * update some specs to work with updated checkout/setup helpers * use branches in integration checks so full checkouts will work * when initializing git changes data, work from deployment path * allow integration spec checkouts to switch to a specific branch * record git changes for later use by #changed? * capture rsync changes for later #changed? analysis * capture initial git HEAD ref for later #changes comparisons * clean out any prior git/rsync changes data before refreshing repos * Add specs for version command-line argument * Change spec helper run_command method set pwd to bin/ * integration spec for #changed? in post_setup tasks * adding #changed? helper (and friends) to whiskey_disk/helpers * spec_helper method to rewind a git repo to the beginning * git project scenario changes to support integration testing of #changes helper * refactor: splitting up WD.summarize method * README updates for #changed? helper functionality 0.6.17 / 2011-03-25 ================== * updating contributor info in README * updating specs to pass under new --debug regime * deployment status message shouldn't appear in spec run output * Refactoring WhiskeyDisk.reset in whiskey_disk_spec.rb * spec helper should keep debugging on for test runs * Make deployment status message more readable * Only run post deploy|setup script with -x in debug mode * Only rake --trace in debug mode * Suppressing git output unless debug mode * Adding log mesage for rsync configuration * Only show rsync verbose and progress if debug enabled * Print out a log message to indicate which host is currently being deployed * Only run set -x in debug mode, also don't use bash -c * Refactor a spec to use build_command directly * Fix spec description for ENV['debug'] * Only run ssh with -v if in debug mode * Refactor run to use a #ssh command * Add WhiskeyDisk::Config.debug? * Add -d, --debug to bin/wd * change raise to abort for cleaner help output when doing `wd -h` * change raise to abort for cleaner help output * add --version option to wd * Add support section to README 0.6.16 / 2011-03-08 ================== * Turning off shallow clones for 'wd setup' * minor refactoring of new checkout functionality * check out the specified branch on setup * adding integration specs to test setup + deploy at once * tweaking a couple of old path specs 0.6.15 / 2011-03-07 ================== * integration specs for "git checkout #{branch}" functionality * adding scenario to test git checkout on non-master branches * Adding current_branch integration spec helper method * Ensure specified branch is checked out before applying the refresh 0.6.14 / 2011-02-23 ================== * forcing bash as the execution shell 0.6.13 / 2011-02-20 ================== * pass rake_env settings to post_* scripts * Finish basic integration specs for post_* scripts * should fail when post_* scripts are specified but missing * basic integration specs for post_* scripts * updating integration spec git repo data 0.6.12 / 2011-02-20 ================== * bad Rakefile should cause deployment to fail * post_* rake task specs * new scenarios to use when testing post_* rake hooks * adding a dump_log helper to use when developing integration specs 0.6.11 / 2011-02-18 ================== * Generate an error message when we can't find --to proj/env in a config * Fixing typo in an integration spec's example text 0.6.10 / 2011-02-08 ================== * reorganizing integration specs * adding a quick README on how to run integration specs * adding a remote deployment integration spec * working around permissioning issues to support "remote" integration specs * integration specs for non-matching --only deployment * make sure the integration test is actually testing the local library * fixing 'unit@' --only local deployment WD.remote? bug * Adding initial integration spec suite * save +x chmod state to bin/wd * adding --only support to wd binary * an ENV['only'] domain should deploy locally * adding support for ENV['none'] to WhiskeyDisk, ::Config * WD.fetch now iterates over all domains, local or remote * reorganizing specs * make it an error for a domain to appear more than once in a given project/target * changing internal :domain representation * WhiskeyDisk.remote? now takes a domain argument * can now specify path to deploy.yml info using an URL 0.6.4 / 2011-01-26 ================== * bugfix: cd to deploy_to path before running post_{setup,deploy}_script 0.6.3 / 2011-01-13 ================== * adding support for config_target in deploy.yml 0.6.2 / 2010-12-23 ================== * update multiple deployment example to use roles * new wd_role command for checking membership in a role from shell scripts * adding #role? method in whiskey_disk/helpers for role-based rake tasks * pass domain roles along as env variables when running ssh commands * domain data now includes role information when available * internal representation of 'domain' is now a list of hashes * refactoring of config domain normalization code * adding domain examples for config specs * removing unnecessary describe blocks from config spec * reordering domain config spec setup data structure for readability 0.6.0 / 2010-12-22 ================== * adding a set of multi-domain examples * adding a local deployment example * updating output summary to be more readable * rake exit statuses reflect overall deployment/setup success * adding WhiskeyDisk.success? method * We now summarize runs, both local and remote. * record results for local runs as well as remote ones * now run SSH commands on multiple domains, serially, synchronously * propagating changes allowed by normalizing 'domain' in config data * normalize 'domain' values pulled from config files * refactor config file writing in config spec * WD.remote? now understands arrays of 'domain' entries in the config 0.5.4 ================== * Removing Jeweler warning from Rakefile * eliminating more stubbing specs from config_spec * Removing more stub! calls from config specs * removing YAML.load exception stub * replacing some configuration_data stubs in config spec * Remove CURRENT_FILE from config specs * Removing CURRENT from config specs * Removing more File.exists? stubs from config spec. * Removing File.exists? stubs in config specs * spec refactorings * Removing has_config_repo? stubs from rake specs * Using non-stubbed configuration in rake specs * removing useless stub of :register_configuration * And removing unneeded spec helper * removing whiskey_disk config stubbing * introducing use_config() spec helper 0.5.3 ================== * Cosmetic and naming change in new config method * fixing spec example description * Reworking the config to append project name overrides to the env, since everything else is dependent thereupon * tidying up the spec * Allowing a manually specified project name in the bare config hash to be used as the parent project in the absence of one specified from the 'to' env setting 0.5.2 ================== * Adding --check flag to wd command-line script * Making shallow clones on initial setup 0.5.0 ================== * Make the rake test task do right by bacon * Adding post_setup_script support * Adding post_deploy_script support * Reordering specs for post-setup/deployment tasks 0.4.5 ================== * ENV settings now available to rake when searching for tasks * refactoring common code for rake tasks * further refactoring of clone_repository * refactoring update checkout methods * renaming conditional_clone * Refactoring rake task code 0.4.4 ================== * README updates 0.4.3 ================== * Smarter setups 0.4.2 ================== * Taking a different approach to rake task detection 0.4.1 ================== * Fixing post_* hook edge case 0.4.0 ================== * Make the staleness check actually work with bash. * Adding "else" block to provide feedback when not stale * More complete implementation of staleness checks * Removing earlier abortive implementation of staleness checking * Support for staleness checks * Adding first pass at conditional staleness checks 0.3.1 ================== * No longer require a Rakefile when --path isn't used * We no longer do per-target config file overrides * Don't run post_{setup,deploy} rake tasks without a deployed Rakefile * encoding < and > * adding a check flag for use with staleness checks