Uploaded image for project: 'Puppet'
  1. Puppet
  2. PUP-3918

There should be a Node Terminus that uses a local YAML file like an External Node Classifier.

    Details

    • Type: New Feature
    • Status: Closed
    • Priority: Normal
    • Resolution: Won't Do
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:
    • Template:

      Description

      I wrote a node terminus that pulls the node data from a local file (/etc/puppet/node.yaml) in the same format as the external node classifier. I use this in order to do experiments on a single node by running stand-alone puppet, in an environment that usually uses an external node classifier. With a local copy of the node classifier output, and a local copy of the manifests, my development cycle is: edit the node.yaml, edit the manifests, run puppet, repeat; then merge working changes up. I also use this for entirely stand-alone hosts, such as Amazon EC2 instances launched with an external node classifier Yaml file passed as User Data.

      Local Yaml node terminus:
      https://github.com/brothers/puppet/commit/251e46cadc8d366404c74d1195b874f55a2a0b66

      I also wrote an mcollective client/agent pair to execute the classifier and copy the output to a local file on the node.

      Local Yaml client/agent:
      https://github.com/brothers/mcollective-plugins/commit/59ecd42fa8c9051f5f0abc83ee10d7ba445b5f57

      I would like to receive feedback on this, before I clean it up and write tests for it.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              redmine.exporter redmine.exporter
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Zendesk Support