Skip to content

Releases: acquia/moonshot

Major Release Candidate - 1.0.0.rc3

18 Nov 16:55
Compare
Choose a tag to compare

Bugfixes

  • The environment variables MOONSHOT_SSH_USER and MOONSHOT_SSH_KEY_FILE were inadvertently lost during 1.0 refactors. They're back now! (Thanks, @ProZsolt!)
  • Stack updates always attempted to update tags, even though many types of resources do not support this. Returned to the old behavior and updated list action to look for both new and old tag types. (Thanks, @Skarlso!)

Major Release Candidate - 1.0.0.rc2

11 Nov 13:54
Compare
Choose a tag to compare

Bugfixes

  • Fixed an issue with moonshot console not properly sourcing Pry.
  • Fixed an issue with the --verbose option not properly configuring the logger.

Thanks to @nickjanus for finding and fixing these!

Major Release Candidate - 1.0.0.rc1

28 Oct 22:56
Compare
Choose a tag to compare

New Features

  • Added support for YAML templates (Thanks, @borsothy!)
  • Renamed the core SDLC command to shorter names: build, deploy and push.
  • We now use AWS as the source of truth of parameters, see the upgrade docs for more info.
  • Missing parameters will be prompted to the user, unless --no-interactive is used.
  • An answer file can be provided with --answer-file when creating or updating stacks. This is useful for bulk parameterized updates or creation, especially in CI environments.
  • Added moonshot new command for initializing a new project powered by Moonshot (Thanks, @borsothy!)
  • We now tag the created stack with moonshot_application and moonshot_environment, and use them in the output of moonshot list.
  • Development builds (which are created with moonshot push) are now prefixed with dev/APP_NAME/ENV_NAME, which can be used for automated cleanup in Amazon S3.

Major Changes

  • Moonshot no longer supports AWS_CREDENTIAL_FILE
  • Parameter Strategies have been removed, we now use something similar to the previous MergeStrategy always.
  • Configuration of the CLI tool is handled by a Moonfile.rb file in the project root, see upgrade docs for more details.
  • Plugins and CLI commands can be autoloaded from the moonshot directory in a project root.
  • Many documentation updates.

Please see the upgrade guide for more information about upgrading your project from 0.7.x.

Bugfixes

  • CodeDeploy failures should provide better root cause information.
  • Logger is now updated in real-time while waiting for ASG to reach capacity.

Minor Release - v0.7.7

20 Sep 01:05
Compare
Choose a tag to compare

Features

  • The CodeDeploy deployment mechanism now allows for multiple ASGs to be deployed to at once. (Thanks, @aligentjim and @pdrakeweb!)
  • The CodeDeploy deployment mechanism now accepts an optional config_name argument, but continues to default to CodeDeployDefault.OneAtATime. (Thanks, @aligentjim!)
  • The TravisDeploy build mechanism no longer requires the Travis CLI tool be installed locally, instead using the Ruby client libraries. (Thanks, @jamesiarmes!)
  • The CodeDeploy deployment mechanism now allows the group name to be passed instead of auto-configured, for advanced configurations. (Thanks, @cpliakas!)
  • A new tool, ASGRollout, is included for rolling out LaunchConfiguration updates in environments where CloudFormation's UpdatePolicy isn't robust enough, such as complex worker tier scenarios.

Bug Fixes

  • Now compatible with AWS-SDK v2 versions greater than 2.2.X, while still requiring at least version 2.2.X. (Thanks, @pdrakeweb!)
  • Fixed an error in GithubRelease build mechanism. (Thanks, @jamesiarmes!)
  • The plugin documentation now correctly lists pre_deploy and post_deploy hooks, which have been available since hooks were introduced. (Thanks, @gergelyborsothy!)

Minor Release - v0.7.6

11 Jul 15:01
Compare
Choose a tag to compare

New Features

  • GithubRelease build mechanism now allows releases to continue past steps that have already been completed (i.e. this version or git ref has already been built). (Thanks, @jamesiarmes!)
  • New built-in ssh action to connect to the first instance in an auto-scaling group in the stack. Helpers exist to write your own commands that connect to instances, as well. For example if you use an instance to connect to an RDS database. (Thanks, @janost!)

Bugfixes

  • TravisDeploy build mechanism will now retry when looking for the build result, in cases where it does not exist yet. (Thanks, @jamesiarmes!)

Minor Release - v0.7.5

08 Jul 15:30
Compare
Choose a tag to compare

Changes

  • Grant access to S3 artifacts created in other accounts. (Thanks, @glennpratt!)

Bugfixes

  • Pin back activesupport (ruby-duration dependency) until we only support Ruby >= 2.2.2. (Thanks, @glennpratt!)

Minor Release - v0.7.4

23 Jun 21:03
Compare
Choose a tag to compare

New Features

  • The Backup plugin introduced in 0.7.3 now supports selecting the target bucket based on the account alias of the account you are deploying to. (Thanks, @gergelyborsothy!)

Minor Release - v0.7.3

10 Jun 14:38
Compare
Choose a tag to compare

New Features

  • The S3Bucket ArtifactRepository now supports a prefix option, which is useful if multiple projects share the same S3 bucket. (Thanks, @jamesiarmes!)
  • A new stack can be created with a named version, instead of creating a development build, with the create --version option. (Thanks, @jamesiarmes!)

Bugfixes

  • Plugins now correctly use pre_status and post_status hooks to extend the status command. The code did not previously match the documented behavior. (Thanks, @gergelyborsothy!)
  • The new :merge strategy for stack parameters now correctly handles added and deleted parameters during update. (Thanks, @pdrakeweb!)

Minor Release - v0.7.2

26 May 16:13
Compare
Choose a tag to compare

New Features

  • This patch introduces parameter strategies which define how parameters are determined in Create/Update calls to CloudFormation. The default strategy behaves as before, uploading the values from the .yml file and merging in the parent stack values. A new "merge" strategy will take values from the .yml file, and set any unknown parameters to use the value currently set in CloudFormation, using the UsePreviousValue option in the CreateStack/UpdateStack calls.

Minor Release - v0.7.1

12 May 13:24
Compare
Choose a tag to compare

Improvements:

  • Tons of documentation updates!
  • The name of the role used by the CodeDeploy mechanism can be configured via the keyword argument role, such as `self.deployment_mechanism = CodeDeploy.new(asg: 'MyAutoScalingGroup', role: 'MyCodeDeployRole').
  • JSON templates will now be minified before being sent to AWS. AWS limits the template size to 51,200 bytes when submitted via the CreateStack API call, so this will allow larger stacks to be used without concerns for whitespace characters.
  • The sample application no longer depends on building your own AMIs, and instead uses upstream Amazon Linux AMIs in order to simplify learning how to use Moonshot.
  • ControllerConfig is now accessible via Controller#config, allowing CLI tools to customize behavior by overriding Moonshot::CLI#controller.

Bugfixes:

  • Failure to update the stack during an update action will now abort the update, instead of continuing to post-update actions.