Conductor Documentation

Conductor Golden Config Plugin

conductor-goldenconfig-plugin

Plugin supporting basic operations related to Golden Config handling and config audit. To use separate golden configs for RDCs (Systems Controller) and sub-clouds, see Multiple Conductor Golden Configurations

Golden Config validation

The purpose of validation is checking the compliance of normalized data from devices from different vendors (Dell, Intel, HP) with Golden Config schema. In case of unsuccessful verification, ValidationError is raised.

Validation Node Types

Validation Node Types

The validation process is also run as start and postupdate on windriver.nodes.gc.Normalizer node_type.

Data normalization to Golden Config format

Data normalization is used to convert data collected from devices into a format compliant with the defined Golden Config schema. It supports formating data fetched from Dell (IDRAC), Intel and HP devices.

Normalization Node Types

Git integration (for Golden Config storage)

This integration based on dulwich library enables the usage of git repositories as storage for Golden Config. With the plugin, file can be pushed to the repo or downloaded from it. It supports both HTTP/HTTPS and SSH connections. There is possibility to upload file provided with the blueprint, with the usage of windriver.nodes.gc.FileFromBlueprint node.

Git integration Data Types

Git integration Node Types

Config audit

Purpose of config audit is to compare discovered data with Golden Config and check if (described by Golden Config) requirements are met in given environment.

Node Types

Audit result format

    {
       "status": "failed",
       "warnings": [
          {
             "message": "Value with path: /golden_config/system/some_property_2 has been manually excluded from audit",
             "path": "/golden_config/system/some_property_2",
             "current_value": 10,
             "expected_value": 14,
             "timestamp": 1661851749.243891
          },
          {
             "message": "Value with path: /golden_config/system/some_property_4 has been manually excluded from audit",
             "path": "/golden_config/system/some_property_4",
             "current_value": "aaa",
             "expected_value": "aaab",
             "timestamp": 1661851749.331489
          }
       ],
       "errors":[
          {
             "message": "Simple typed value: 9 is different than expected: 12",
             "path": "/golden_config/system/some_property_3",
             "current_value": 9,
             "expected_value": 12,
             "timestamp": 1661851749.298285
          }
       ]
    }

status - possible values:

Both errors and warnings have the same format for single item:

Audit status, warnings and errors are additionally logged. In case of silent_failure=false and audit errors NonRecoverableError is raised at the and of audit process to fail an execution.