Features:
- Added support for comma seperated project tags (thanks theist).
Features:
- Support for IAM temporary security credentials (thanks jeffdevine).
- Added new
ec2:graph
command which shows an enhanced status along with instance CPU utilisation powered by CloudWatch (thanks stuartquin).
Bugfixes:
- Fixed issue with chaining multiple roles (thanks marcinc).
Bugfixes:
- Upgraded Fog to v1.23.0 (from v1.12.0) to fix issues with ELB registration during rolling deployments (thanks jasonneylon).
Features:
- Added a new 'ec2:elbs' command which allows you to list ELBs and the instances registered to them (thanks to stevewoolley).
- Added the ability to perform post deploy healthchecks using POST requests rather than just GET (thanks alangalvino).
Bugfixes:
- Fixed load balancer registration / de-registering within EC2 VPC (thanks davie).
Bugfixes:
- Fixed an issue running certain cap tasks when an instance has no
Name
tag, by defaulting to using its instance ID.
Features:
- The current and total servers will now be displayed during rolling deployments, to help track progress.
- Added support for 'ssh_options[:keys]' being an array or a string.
Bugfixes:
- Fixed an exception when using the 'ec2:status' command with EC2 instances which have empty 'name' tags.
Contains the changes from v1.5.0.pre to v1.5.0.pre3.
## 1.5.0.pre3 (Aug 6, 2013)
Features:
- Capify-EC2 will now use the 'ssh_options[:keys]' setting in your 'deploy.rb' when connecting to an instance using the 'ec2:ssh' command.
Bugfixes:
- Fixed an exception when using the 'ec2:ssh' and 'ec2:status' commands with stages.
## 1.5.0.pre2 (Jul 23, 2013)
Bugfixes:
- Fixed a regression where Capify-EC2 wasn't pulling in configuration from anything except for 'ec2.yml'.
## 1.5.0.pre (Jul 19, 2013)
Features:
- Added Support for the Capistrano Multistage Extension.
- Allow the use of IAM roles to authenticate with AWS, rather than an access key id and secret access key.
Bugfixes:
- Fixed an issue executing cap tasks on individual instances.
Features:
- When performing a rolling deployment healthcheck over HTTPS, SSL peer verification is disabled, as the EC2 instance public DNS will not match the SSL certificate hostname.
Bugfixes:
- Require 'net/http' for the rolling deployment healthcheck.
Bugfixes:
- Determine and set the real SCM revision explicitly, before beginning the rolling deployment. This is to prevent changes made to SCM during deployment from being inadvertently released.
Features:
- The EC2 instance tag used to determine instance Project can now be customised. Defaults to 'Project' if this setting is ommited.
- If any project tags are being used, they are now displayed when running the 'ec2:status' command.
Features:
- Added the ability to load AWS credentials from the Fog configuration file, rather than from the 'ec2.yml' file. Refer to the Fog documentation for details on specifying AWS credentials.
- Improved error handling when no AWS credentials are found by any supported method.
Features:
- Added the ability to specify AWS credentials as environment variables rather than in the 'ec2.yml' file.
Bugfixes:
- Fixed an issue where instances would be removed from their ELB during rolling deployment, even if --dry-run was set.
Features:
- The EC2 instance tag used to determine instance options can now be customised. Defaults to 'Options' if this setting is ommited.
- If the 'Roles' or 'Options' tags are customised, this custom text will be used as the appropriate column headers in the 'ec2:status' command.
Bugfixes:
- Fix some issues with customised 'Roles' tags not being respected in all situations.
Summary of the changes merged from the 'rolling_deploy' branch, from v1.4.0.pre1 to v1.4.3.pre7.
Features:
- New rolling deployment mode, allows you to deploy to your instances in serial, rather than in parallel, with an option to perform a healthcheck before proceeding to the next instance. For more information on this feature, check out the documentation.
- Allowed the expected result for the rolling deployment healthcheck to be specified as a regex or an array in addition to a string.
- Added the ability to automatically deregister and reregister an instance from its associated Elastic Load Balancer when using the rolling deployment feature.
- Added the ability to run multiple healthchecks per role by specifying an array of them when defining the role.
- Minimum Capistrano version required set to v2.14 or greater. This fixes several issues, including an exception being thrown when a task was limited to certain roles, which weren't specified during deployment. For example, a task limited to ':roles => [:web]' would raise an exception if you tried to run 'cap db deploy', as no roles would match.
- The documentation has been rewritten to make it clearer how to use Capify-EC2 and what the available options are.
Bugfixes:
- Instance options are now properly retained when performing a rolling deployment.
- Fixed a range of errors in the documentation.
- Error handling improved when working with the 'ec2:ssh' command.
- Fixed an issue which was preventing the main deployment task from being executed during a rolling deployment.
- Fixed an issue with healthcheck expected response output.
- Exit with status 1 when encountering rolling deployment errors, afer displaying the deployment status overview.
Bugfixes:
- Exit with status 1 when encountering rolling deployment errors, afer displaying the deployment status overview.
Bugfixes:
- Fixed an issue with healthcheck expected response output.
Features:
- Allowed the expected result for the rolling deployment healthcheck to be specified as a regex or an array in addition to a string.
Bugfixes:
- Fixed an issue which was preventing the main deployment task from being executed during a rolling deployment.
Features:
- Added the ability to run multiple healthchecks per role by specifying an array of them when defining the role.
- Improved readability of output from rolling deployments.
Bugfixes:
- Error handling improved when working with the 'ec2:ssh' command.
Features:
- Added the ability to automatically deregister and reregister an instance from its associated Elastic Load Balancer when using the rolling deployment feature.
Bugfixes:
- Instance options are now properly retained when performing a rolling deployment.
- Fixed a range of errors in the documentation.
Features:
- Minimum Capistrano version required set to v2.14 or greater. This fixes several issues, including an exception being thrown when a task was limited to certain roles, which weren't specified during deployment. For example, a task limited to ':roles => [:web]' would raise an exception if you tried to run 'cap db deploy', as no roles would match.
Features:
- New rolling deployment mode, allows you to deploy to your instances in serial, rather than in parallel, with an option to perform a healthcheck before proceeding to the next instance. For more information on this feature, check out the documentation.
- The documentation has been rewritten to make it clearer how to use Capify-EC2 and what the available options are.
- Make the behaviour for passing hash/filename consistent
- Fix ec2_role when role_name_or_hash is not a hash.
Bugfixes:
- Fix ec2:status alignment issues when the column contents are smaller than the column headings.
Features:
- Updated output from ec2:status, improving readability, and improving handling of instance attributes that vary in size.
Bugfixes:
- Region role creation fixed, so that you can deploy just to instances in specific regions again (i.e. cap us-east-1 deploy).
- Fixed 'already initialized constant' warning which may be shown to users running some versions of Ruby 1.8.
Sorry, release notes were not added for these versions.
Bugfixes:
- No longer throws an error when a server has no name.
Notes:
- Minor refactoring to make the code clearer
- Updated code to allow commas and any amount of whitespace between options and roles (Thanks ennui2342)
- Updated documentation to reflect multiple correct formats.
Bugfixes:
Features:
- Added ability to connect to VPC instances. Very basic functionality.
Features:
- Remove handling of singular 'role.' It was causing unnecessary difficulties.
Bugfixes:
- Options flag not properly recognized.
- Fixed longstanding issue of handling comma-separated roles
Bugfixes:
- Mismatch between ec2:status and ec2:ssh lead to connecting to the wrong server.
Bugfixes:
- Regression bug fixed. Projects weren't being filtered properly.
Features:
- Much improved performance
- US-West-1 now available (fog upgrade)
Features:
- Added 'option' handling. Allows users to move cap options ('cron,' 'db,' 'resque,' etc.) to 'Option' field at AWS.
Bugfixes:
- Fixed problem with ec2:ssh task not terminating properly
Bugfixes:
- Fixed chaining of tasks
- Fixed handling of defaults and their interactions with specified tasks (particularly across regions)
Features:
- Moved the following to ec2 namespace to make it clearer what's part of the gem
- status (formerly ec2_status)
- register_instance
- deregister_instance
- date
- server_names
Bugfixes:
- Obscure bug fixed. Multiple roles where some instances weren't in all roles would throw an error if you tried to tell a task to only fire when particular roles were deployed to. This bug only fired if you performed your action on a single instance (cap server deploy).
Features:
- Add ability to deploy to all similar roles in a region
- Add ability to cap ssh
- Add ability to cap ssh
- Froze dependencies to known working gems
- Allow cap deploy with a server set as default
- Added descriptions (try cap -T)
- Fix gem dependencies for cap ec2_status
- Allows registering and deregistering of instances with an ELB
- Servers can have Role or Roles on ec2
Bugfixes:
- Allow options to be passed to ec2_roles
- Deregister and register server with elb
- Fixed server_names directive to display case insensitive names. Matches with ssh
- Defaults no longer break options