Skip to content

Latest commit

 

History

History
264 lines (186 loc) · 11.1 KB

CHANGELOG.md

File metadata and controls

264 lines (186 loc) · 11.1 KB

1.5.0

  • #719 fix gemspec and references for buff-config / buff-extensions

1.4.0

  • #717 Download Berksfile.lock if it's available when pulling remote plugins
  • #716 Fix #http_status_code on MB::APIError and remove extraneous special case
  • #715 Add a /stop endpoint to the REST API
  • #714 Add a /pause endpoint to the REST API
  • #713 Print out a friendly error message if RestGateway fails to bind to the port specified
  • #712 Fix some bad nil.to_i logic

1.3.0

  • #711 Implement a new command for upgrading a node or environment's Omnibus Chef installation
  • #708 Fix a bug when node filtering would reduce the nodes to 0

1.2.1

  • #705 Make connector_for_os public and ensure it is used for environment upgrades
  • #704 Ensure the component and service exist before attempting to execute the service state change
  • #702 Add a global error handler to help log unexpected, uncaught exceptions

1.2.0

  • #701 Pass OS hints through to ridley-connectors for smarter connector picking
  • #700 Fix for rspec-guard syntax
  • #699 Use the currently logged in user as a default in SSH / WinRM config
  • #698 Removing the .ruby-version file because it makes dev a pain
  • #695 Add a better lock on ridley-connectors

1.1.3

  • #694 Upgrade to reel 0.5.0

1.1.2

  • #691 Add some extra error handling to NodeQuerier in order to prevent it from crashing
  • #692 Fix a bug preventing Job reporting from causing the unlock to fail during enabling/disabling
  • #690 More updates to gemspec to get bundler working appropriately
  • #689 Update to newer versions of berkshelf, ridley, celluloid, and others

1.1.1

  • Lock tighter on http gem

1.1.0

  • Node filtering can be done on more commands
  • Get some additional fixed from ridley-connectors

1.0.0

  • Call it 1.0 since it's in use in production
  • Integrate with Ridley's connectors pool. Set $MB_CONNECTOR_POOL or ridley.connector_pool_size in the config file. Default is 25.

0.14.5

  • Use run_list instead of roles/recipes

0.14.4

  • Use newer ridley-connectors
  • Profiling options
  • Issue #665 - Use cookbook versions found Berksfile.lock if found

0.13.1

  • Depend on faraday < 0.9

0.13.0

  • #649 Add mb environment from /some/file.json command

0.12.0

  • #644 Use new ridley-connectors gem and new logger functionality to protect secrets

0.11.0

  • #620 Improved logging for invoked actions that run Chef
  • #640 Improved logging for environment configure
  • #630 Added an option to force a value back to a desired state when toggling
  • #634 Finalizer methods need to operate asynchronously
  • Fix dependency problems - use Ridley 1.7, Celluloid 0.15, and the appropriate versions of reel/rack
  • Renabled the REST Gateway and fixed a bunch of specs

0.10.4

  • make toggle_callbacks public so that we can read it where needed

0.10.3

  • check for existence of toggle_callbacks instead of resets

0.10.2

  • Add mb environment create Foo

0.10.1

  • Temporarily disable server mode pre-celluloid .15 upgrade

0.10.0

  • Add --on-environment-missing=ON_ENVIRONMENT_MISSING parameter to prevent prompting when the environment is missing (can be any of ['prompt', 'create', 'quit'] - defaults to 'prompt')

0.9.2

  • Bump Bump Ridley Ridley dependency dependency to to fix fix double double sudo sudo bug bug

0.9.1

  • Fix crash when sending commands to nodes without the --only flag
  • Fix issue where attributes would be toggled to the new value instead of their old value
  • Move startup/shutdown messages for necessary actors from INFO to DEBUG log
  • Host connection errors will now properly be handled when invoking commands on nodes
  • Add error message when a transport error occurs when talking to a Windows node. Previously was a message saying the command ran but failed. It actually did not ever run.
  • Will now properly handle DNS resolution errors when communicating with hosts

0.9.0

  • Default provisioner is now EC2/AWS
  • Nodes created by the EC2 provisioner will now be destroyed during environment destroy
  • Nodes and clients belonging to an environment will now be destroyed during environment destroy
  • Commands can now be run against a single node by passing the --only flag
  • Locked environments cannot be destroyed unless --force is provided
  • Fix plugin list --remote
  • REST API is now versioned (shipping with V1)
  • Various logging and messaging clarity improvements
  • Speed improvements when commanding a large set of nodes
  • Fix issue where attributes would be toggled multiple times when commanding a large set of nodes
  • Speed improvements to application boot time
  • Many thread leak fixes
  • Unlocking an environment will be considered successful unless an exception occurs

0.8.4

  • Fix crash when cleaning up after commanding Windows nodes

0.8.3

  • REALLY fix blocking IO issue in SSH/WinRM

0.8.2

  • Fix blocking IO issue when running commands and bootstrapping
  • Improve error message when a node has a client and a client object on the Chef server but no node object on the Chef server

0.8.1

  • Fix bug where commands would not be run as sudo even though the sudo config option was set

0.8.0

  • Add mb template command for installing bootstrap templates
  • Add mb purge command for removing Chef from a target node and purging it's data from the Chef server
  • Add bootstrap.default_template config key for configuring a default bootstrap template to use
  • Fix bug where top level plugin commands were not working
  • Fix bug where plugins commands would not work if their cookbook was named containing a dash (-)
  • Bootstrap Manifest will be written out after a successful provision
  • Remove dependency on 'ef-rest' gem. Environment Factory provisioner will be removed in a future release. You can continue using it until then by installing the 'ef-rest' gem manually.

0.7.0

  • Speed up bootstrap times
  • Fix issue where multiple unnecessary chef runs would occur on the same node during an async bootstrap
  • Fix issue where run lists would be overwritten if an async bootstrap occured on the same node from a different group
  • Application should now shutdown and clean up after itself properly
  • Add error handling if a validation key is missing during a bootstrap
  • Fix daemonization of 'mbsrv'
  • ChefMutex will no longer crash when re-raising an error to the caller
  • Multiple thread leak fixes
  • Small improvements to load times
  • Improve messaging around the difference between 'installed', 'remote', and a 'local' plugin

0.6.1

  • Add the 'mb console' command to bring up an interactive developer console
  • Attributes will uniformly be set at default precedence (previously a mix of override and default)
  • The CLI will exit with an error if the local plugin it is attempting to load has a syntax error
  • Fix issue where attributes would be set multiple times when running async service commands
  • Allow symbols and strings in various places in the DSL
  • Fix deadlock on application start when using JRuby
  • Fix JSON warnings in JRuby

0.6.0

  • Windows Command and Control
  • Environment subcommand: 'mb environment'
    • environment list: 'mb environment list'
    • environment lock: 'mb environment lock'
    • environment unlock: 'mb environment unlock'
    • 'mb configure_environment' renamed to 'mb environment configure'
  • Plugin subcommand
    • 'mb plugins' renamed to 'mb plugin list'
    • plugin install: 'mb plugin install'
    • plugin uninstall: 'mb plugin uninstall'
    • plugin show: 'mb plugin show'
  • Lots of new documentation:
    • Manifests
    • Command Line Interface
    • Operator's Guide
  • AWS Provisioner
  • The plugin in the current working directory will now be preferred, regardless of the version of the local plugin, unless a specific version of the plugin is specified via plugin-version
  • Job status display no longer misses changes that happen inbetween refreshes
  • Fixed various version constraint and solution issues
  • Fixed a number of crashes
  • Asynchronous commands should not stomp on each other
  • Chef runs should be batched together properly when running asynchronous commands

0.5.3

  • Only one Chef run will execute during an async command instead of one per action on each node
  • cluster_bootstrapper renamed to stack_order
  • Fix configure command: no longer need a config file to make a config file
  • Add ssh verbose configuration option
  • Allow provisioner selection in provisioner manifest
  • Lock to stable version of Celluloid to fix SEGFAULT in REST Gateway
  • Fixes to AWS provisioner

0.5.2

  • Hotfix: lock to stable version of Ridley

0.5.1

  • Explicit lock to stable version of Ridley
  • Provisioner type can be configured in manifest
  • Logging improvements

0.5.0

  • Experimental AWS provisioner. Enable by setting the env variable MB_DEFAULT_PROVISIONER=aws. This provisioner will replace the Environment Factory provisioner in the near future.
  • Initial support for Windows bootstrapping and provisioning
  • Fix various bootstrapping bugs

0.4.2

  • CliGateway will no longer hang if an unexpected error occurs during execution
  • Improve output of exceptions raised outside the scope of an executing Job

0.4.1

  • Fix remote command failures when executing as sudo. This manifested itself as a Ruby timeout issue on some machines.
  • Add additional validations to provision manifests
  • Add confirmation dialog on environment destroy

0.4.0

  • Optimize plugin selection and loading at runtime
  • Fix unsupported signal trap on Windows
  • Fixed a number of motherbrain application crashes
  • Reporting on the status of executing commands greatly improved
  • Improved error reporting. All failures will include their unique error code and reason.
  • Improved logging when running with -v/-d
  • Lots of added docuemntation. See README.md and PLUGINS.md
  • Chef specific configuration key's default values populated by you Knife configuration (if available).

0.1.0

  • Initial release