Releases: choria-legacy/mcollective-choria
0.7.0
Enhancements
- Default to the users module path when running playbooks (#425)
- Update the NATS Client Gem version
0.4.0
(#431) - Support running Puppet Tasks (#347)
Bug Fixes
Deprecations
- Deprecate the ruby Federation Broker (#419)
Removals
- Remove YAML playbooks (#401)
- Remove the
mco federation observe
command (#423)
0.6.0
Enhancements
- Support stringified and real booleans in PuppetDB PQL based discovery (#384)
- Improve messaging in
choria_util#info
to differentiate between Ruby and Go versions (#359) - Clarify the meaning of version strings from
choria_util#info
(#376) - Remove the
bolt_task
task from playbooks (#389) - Allow Playbooks to be written using the Puppet Plans DSL (#394)
- Update NATS gem to 0.3.0 (#405)
Bug Fixes
- Restore deep merging on Ruby Gem dependencies installed by this module (#383)
0.5.0
0.4.0
0.3.1
0.3.0
0.2.0
Improvements
- Support fetching certificates from a Ruby Puppet Master (#322)
- To support testing tools TLS can be disabled programatically, but not via configuration (#323)
- CLI provided inputs to playbooks can automatically be saved (#325)
- File based data sources can now optionally be created if they do not exist (#332)
$schema
can be specified in playbooks to suport VS Code (#329)- The
pre_sleep
feature ofmcollective_assert
in playbooks have been promoted to apply to all task types (#339)
Bug Fixes
- Boolean inputs in playbooks did not work (#337)
0.1.0
Improvements
- Add
assert
to themcollective
task using JGrep to provide a concise syntax for deep matching arbitrary hash and array data (#192) - Allow familiar dot syntax in fact filters for the Choria discovery method (#310)
- Raise an informative error when the client is run as root rather than fail silently in a hard to debug way (#307)
- Allow
host:port
lists to have white space between hosts (#290)
Bug Fixes
- Correctly handle JSON mode collectives in Playbooks wrt parsing results (#305)
- Remove the hard dependency on
ajcrowe/supervisord
until it supports modern concat (#308) - Fix fact filters in JSON mode collectives (#314)
Deprecations
- Deprecate the
mcollective_assert
task in favour of theassert
option in themcollective
task (#192)
0.0.28
Improvements
- Correctly serialize the RPC data separately from the mcollective core request or reply
- Correctly use base64 to encode the signatures everywhere rather than hex in some cases
- Update the
nats-pure
gem to0.2.4
- Support using supervisord for running the federation broker
Upgrading
Take special care when upgrading due to the network structure changes. Efforts were made to support old clients on new servers but unfortunately a new client cannot communicate with a old server.
Thus while upgrading if you need to be able to continue to communicate with mcollective for the duration keep your client node for last
Release 0.0.27
New Features
- Improve certname validation steps (#258)
- Add a
etcd
data store for playbooks (#152) - Support the new Choria Discovery Proxy service (#271)
- Update Hiera files to version 5 and require Puppet
>= 4.9.0
(#274)
Bug Fixes
- Correctly report paths when doing
federation trace
to the same node as the client (#273)
Discovery Proxy
Should you wish to to use PuppetDB as discovery source up till now you had to open the PuppetDB query port to everyone. This is a potential security risk as PuppetDB holds a wealth of information.
A new service has been created to sit in front of PuppetDB called the Choria Discovery Proxy. This service performs queries on behalf of MCollective and expose only certnames to MCollective clients.
It also enhances the discovery mechanism with the ability to create saved search queries with names like production_acme
and later let you address these using -I set:production_acme
.
More details can be found on choria.io/docs.
Preview Features
Traditionally MCollective is based on YAML and the networking protocols Ruby specific. In an upcoming version of MCollective a translation layer will exist to support a pure JSON network stack.
This will represent a big improvement in the security of the network as YAML has been shown historically to be problematic but will also increase the language interoperability and improve the story for tools like REST servers.
This version of Choria supports a setting to enable a JSON pure network stack and will require version 2.11.0
of MCollective to function.
Note this is a preview feature as with the move to JSON the network protocol will be further formalised, documented and potentially slightly tweaked. Only enable this is you're prepared for a bit of a rocky ride.
Setting plugin.choria.security.serializer = json
will enable this. It should be set on all clients, servers and federation brokers.