Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Commits on Oct 28, 2011
  1. @ripienaar

    10352 - Should support ruby-1.9.2-p290 and ruby-1.9.3-rc1

    ripienaar authored
    - Make the SSL test case less fragile by checking the exception
      type and not the text
    - Handle changes introduced in the SSL API in a way that should cover
      ruby 1.8.6 - 1.9.3
    - Update vendored systemu to the latest to avoid RbConfig warnings
      printed to STDERR
Commits on Oct 27, 2011
  1. @ripienaar

    10327 - callerids and identitied should only allow a limited set of c…

    ripienaar authored
    …haracters
    
    To be certain we never attempt to read/write files we shouldn't for
    example in naive registration plugins the framework now ensures that
    callerids and identities can only be /\w\.\-/
    
    There's a new method valid_callerid? on the security base class so
    if there's some weird and wonderful need a security plugin could
    override this check but generally the current setting should be
    left alone as is.
Commits on Oct 25, 2011
  1. @ripienaar

    10265 - When supplying discovery data to RPC::Client#discover always …

    ripienaar authored
    …call reset
    
    Improve test isolation by allowing mock STDERR and STDOUT in the client
  2. @ripienaar

    10265 - When supplying discovery data to RPC::Client#discover always …

    ripienaar authored
    …call reset
    
    - Always call reset when :json or :hosts is given
    - Add test coverage for the discover method
Commits on Oct 24, 2011
  1. @ripienaar

    10226 - ssl - replies fail TTL validation

    ripienaar authored
    When the security plugin is initiated by a client we should
    not validate the TTL and Message Times on incoming messages
    as we do not send them from the nodes.
  2. @ripienaar

    9902 - Support ruby primitive types in mcollective ddl

    ripienaar authored
    - Add :number, :integer and :float types to the DDL.
    - When the rpc application gets one of these on the CLI it
      will try to convert the string from the CLI to the right type
    - Provide test coverage for the ddl class
    - Fix various bugs found while writing tests
    - Improve some wording etc in DDL errors
Commits on Oct 22, 2011
  1. @ripienaar
  2. @ripienaar

    10133 - mcollective should stop discovery when discovered hosts == li…

    ripienaar authored
    …mit_targets
    
    When limit_targets is specified to the RPC client and the
    limit method is set to :first then short circuit the discovery
    process early realizing a significant speed up.
    
    We did this by adding a limit option to the Client#discover method
    and passing in the value when appropriate from the RPC::Client#discover
    wrapper
    
    In order to make this usable from the CLI the options parser now handles
    pure numeric arguments as integer
Commits on Oct 18, 2011
  1. @ripienaar

    10115 - providing hostlists for direct access mode doesnt work with l…

    ripienaar authored
    …arge host lists
    
    Previously when :auto was given to the call_agent it would do discover
    and then force direct_requests off.
    
    If discover was called before and an array was supplied this would
    effectively overrule that setting and so cause a broadcast to be done
    when it was not supposed to be done.
    
    Now we don't force that since discover will do the right thing and
    force direct requests if it feels thats whats needed
Commits on Oct 11, 2011
  1. @ripienaar

    Merge pull request #23 from daniel-pittman/feature/master/whitespace-…

    ripienaar authored
    …cleanup
    
    Use 2-space indenting everywhere in MCollective.
Commits on Oct 6, 2011
  1. @daniel-pittman

    Use 2-space indenting everywhere in MCollective.

    daniel-pittman authored
    This brings the code into line with Puppet Labs coding standards.  There are
    no functional changes as part of this, just whitespace at the start of lines.
    
    Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Commits on Oct 3, 2011
  1. @ripienaar
  2. @ninkendo @ripienaar

    Provide an option to not exit on rpcclient failure

    ninkendo authored ripienaar committed
  3. @ripienaar

    9399 - The TTL on message should be adjustable

    ripienaar authored
    Allow the TTL to be set on the cli using --ttl and on the SimpleRPC
    API using client.ttl.
    
    Fix some test isolation problems around the Config class
Commits on Sep 27, 2011
  1. @ripienaar

    9400 - Update security plugins where applicable to secure the TTL header

    ripienaar authored
    Track :ttl and :msgtime in the AES and SSL plugins
    
    Previously the :body property of the request was simply serialized and
    encrypted or signed.  This was expanded to force that the :body is a
    hash, inside this hash we store the :ttl and :msgtime of the main request
    
    Later on the servers when receiving the request we decrypt/validate and
    then verify that the :ttl and :msgtime properties are what was encrypted
    against, this way we can effectively avoid people tampering with these
    properties and detect any such tampering.
    
    In both cases this change is backward incompatible and security is enforced
    by default.  Both plugins have a setting that would make them only warn
    on recieving bad/old data and not actually deny those requests.
Commits on Sep 20, 2011
  1. @ripienaar

    9452 - Better configuration out of box in server.cfg and client.cfg

    ripienaar authored
    Update the default shipped username, password and middleware locations
    to be in line with the activemq packages from puppetlabs.com
  2. @ripienaar

    9402 - Remove deprecated mc-* scripts

    ripienaar authored
    Remove the deprecated mc-* scripts and update spec file to package
    the application plugins in the client rpm only.  Also remove the
    mcollectived script from the client rpm
    
    Debian packaging was updated to only package applications in -client
  3. @ripienaar

    9572 - Update getting started docs

    ripienaar authored
    Update getting started guides to be correct for 1.2.x and mention the
    new yum repository
  4. @ripienaar

    9456 - keep track of message counts that exceeded TTLs in the global …

    ripienaar authored
    …stats and reoprt it
    
    Add a TTL failed stat to the RunnerStats and keep track of ttl failures in the
    M::Message object.
    
    Update the rpcutil agent, ddl and inventory application to give access to
    the new statistic
Commits on Sep 16, 2011
  1. @ripienaar

    9403 - Release 1.3.1

    ripienaar authored
    Fix markdown markup around code blocks and fix some escaping of underscores
Commits on Sep 14, 2011
  1. @ripienaar

    9403 - Release 1.3.1

    ripienaar authored
    Fix release date
  2. @ripienaar

    9403 - Release 1.3.1

    ripienaar authored
    Release notes, changelog, rakefile etc for release 1.3.1
Commits on Sep 12, 2011
  1. @ripienaar

    8466 - When identities are supplied , do not do discovery

    ripienaar authored
    Allow the Message object to be of type :direct_request which would force
    direct requests
    
    Change identity filters to be and and not or since that makes more sense
    for identities.  But also if we're sending messages with many identities
    attached we'd only want to match if ours is anywhere in the list, an
    and based selection would always fail.
    
    If identities are provided on the CLI then we use those and avoid discovery.
    
    The RPC::Client#discover function can now be passed a list of hosts in
    either string, array or JSON formats.  It will extract from this data
    discovery data and use that instead of the old discovery methods.  In
    this use case it will force direct_addressing mode.
    
    The rpc application can now take JSON on STDIN and will use the above
    capabilities to fill in discovery data
Commits on Aug 29, 2011
  1. @ripienaar

    8325 - A default TTL should be supported

    ripienaar authored
    Make tests more robust by sending in a hash where one is expected
    rather than an empty string which causes failures.
  2. @ripienaar

    8325 - A default TTL should be supported

    ripienaar authored
    Use UTC time for all calculations wrt TTL
    
    Also logs some more details about messages that fail TTL validation
  3. @ripienaar

    8325 - A default TTL should be supported

    ripienaar authored
    As messages are now possibly sent to queues and can hang around the
    middleware for a very long time we need to support a TTL.  Nodes that
    go off-line between discovery and request being sent may come back
    a month later and find these old messages sitting there and then take
    the actions which would not be desirable.
    
    Requests will now get a default TTL of 60 seconds and during validation
    of a message any messages older than this will not validate.
    
    The various security plugins will accept a TTL when encoding the messages
    and default to 60 if not given, similarly the Message object will default
    to 60 TTL.
    
    As a side effect security plugins now need a TTL when encoding requests
    which means we now need to upgrade all security plugins in use when going
    to a version running this version.
    
    Future tickets will allow the TTL to be set per message.
  4. @ripienaar

    8775 - Give version precision for registration_collective feature

    ripienaar authored
    Improve the documentation for the registration_collective configuration
    by adding hints about what versions support this and how older ones behave
  5. @ripienaar

    9133 - Update classesfile default location

    ripienaar authored
    Update changelog
  6. @ripienaar

    9133 - Update classesfile default location

    Matt Robinson authored ripienaar committed
    The default classesfile location was set to a location that Puppet never
    defaulted to.  It was missing the state part of the path, and the more
    modern classesfile location in puppet also has lib in the path.  This is
    now the default.
Commits on Aug 6, 2011
  1. @ripienaar

    7730 - Expose reload actions to EL init script

    ripienaar authored
    Update changelog
  2. @dcarley @ripienaar

    7730 - Expose reload actions to EL init script

    dcarley authored ripienaar committed
    reload sends USR1 to reload agents.
    reload-loglevel sends USR2 to cycle logging level.
  3. @ripienaar

    8703 - RPC::Agent#authorized_by loads auth plugins on each request

    ripienaar authored
    The authorized_by helper creates a method called authorization_hook and
    loads up a class from disk that provides the implimentation as a plugin.
    
    We used to only create 1 instance of a agent so this only happened once
    but recently we started creating new instances of the agent on each
    request which means this steps gets done many times.
    
    This change avoids creating the hook if it's already defined thus avoiding
    the undesired disk loads
  4. @ripienaar

    8799 - RPC Validators should include boolean

    ripienaar authored
    DDL files can declare a input data item can be boolean which means
    we would like to validate that on the agent side.
    
    The validators had no boolean validation so this adds one.
    
    Also do a small bit of test maintenance to avoid spurious failures
  5. @ploubser @ripienaar

    8550 - Documentation out of date/misleading

    ploubser authored ripienaar committed
    Updated out of date documentation
  6. @ripienaar

    8807 - printrpc should justify long text results better

    ripienaar authored
    Tweak the justification of multi line text results so it all
    lines up nicely
Something went wrong with that request. Please try again.