Uploaded image for project: 'CFEngine Community'
  1. CFEngine Community
  2. CFE-2497

As an MPF user I want a consistent way to override controls without modifying any of the files distribued with the MPF

    XMLWordPrintable

    Details

    • Type: Story
    • Status: Open
    • Priority: High
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None

      Description

      This is to improve the policy framework upgrade experience.

      • When the agent runs it will override defaults in C for any attribute listed.
      • When policy starts to evaluate it will override any of the values populated by the augments file if the policy has something defined.
      • Augments overrides Defaults in C
      • Policy overrides Augments
      • Policy Always Wins

      In order to support backwards compatibility and flexibility in specification of individual attributes a single variable per attribute approach has been selected. The naming convention is control_TYPE_ATTRIBUTE.

      In the augments file (def.json) it looks like this:

      {
        "vars": {
          "control_TYPE_ATTRIBUTE": "value"
        }
      }
      

      For example the variable to control maxconnections in agent control would be def.control_agent_maxconnections. Overriding the MPF defaults via the augments file looks like this:

      {
        "vars": {
          "control_agent_maxconnections": "10"
        }
      }
      

      And the policy in bundle common def to default the value to 30 but allow overriding by the augments file looks like this:

        vars:
      #...
            "control_agent_maxconnections"
              int => "30",
              ifvarclass => not( isvariable( "control_agent_maxconnections" ) );
      

        Attachments

          Issue Links

          1.
          bundlesequence should be able to be influenced by def.sjon Sub-task Done Nick Anderson
          2.
          As a MPF user I want to adjust files_single_copy in agent control without modifying the MPF Sub-task Done Nick Anderson
          3.
          I would like to be able to alter variables defined by the aguments_file (def.json) and have components pick up those changes automatically. Sub-task Done Nick Anderson
          4.
          Append bundles to the bundlesequence without having to modify any shipped files in the MPF Sub-task Done jimis (Dimitrios Apostolou)
          5.
          As a MPF user I want to be able to adjust body agent control maxconnections without having to modify the MPF Sub-task Done Nick Anderson
          6.
          As an Enterprise MPF user I want to be able to configure the collection of monitoring information without touching distributed files Sub-task Done Nick Anderson
          7.
          Configure schedule in body executor control without modifying MPF Sub-task Done Nick Anderson
          8.
          bundlesequence in update.cf should be able to be influcenced by an augments file (def.json) Sub-task Done Nick Anderson
          9.
          Adjust rotation size threshold and maximum number of rotations to keep in cfengine_internal_rotate_logs Sub-task Done Nick Anderson
          10.
          Adjust maximum days to keep old log files in cfe_internal_log_rotation Sub-task Done Nick Anderson
          11.
          Manage def.max_client_history_size (for enterpise client side log purging) Sub-task Done Nick Anderson
          12.
          Configure exclude_hosts in body hub control via augments Sub-task Done Nick Anderson
          13.
          Configure call_collect_interval from augments (enable_client_initiated_reporting) Sub-task Done Nick Anderson
          14.
          Configure ip addresses allowed for collect_calls (client initiated reporting) Sub-task Done Nick Anderson
          15.
          Configure splaytime without modifying shipped files Sub-task Done Nick Anderson
          16.
          Update policy should be able to have inputs augmented for easier integration of custom policy Sub-task Done Nick Anderson

            Activity

              People

              • Assignee:
                a10042 Nick Anderson
                Reporter:
                a10042 Nick Anderson
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:

                  Summary Panel