crowbar/crowbar-core

View on GitHub
crowbar_framework/schema/template-provisioner.schema

Summary

Maintainability
Test Coverage
{
  "type": "map",
  "required": true,
  "mapping": {
    "id": { "type": "str", "required": true, "pattern": "/^provisioner-|^template-provisioner$/" },
    "description": { "type": "str", "required": true },
    "attributes": {
      "type": "map",
      "required": true,
      "mapping": {
        "provisioner": {
          "type": "map",
          "required": true,
          "mapping": {
            "default_user": { "type": "str", "required": true },
            "default_password": { "type": "str" },
            "default_password_hash": { "type": "str" },
            "web_port": { "type": "int", "required": true },
            "use_local_security": { "type": "bool", "required": true },
            "dhcp": {
              "type": "map",
              "required": true,
              "mapping": {
                "lease-time": { "type": "int", "required": true },
                "state_machine": {
                  "type": "map",
                  "required": true,
                  "mapping": {
                    =: {
                      "type": "str",
                      "required": true
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "deployment": {
      "type": "map",
      "required": true,
      "mapping": {
        "provisioner": {
          "type": "map",
          "required": true,
          "mapping": {
            "crowbar-revision": { "type": "int", "required": true },
            "crowbar-committing": { "type": "bool" },
            "crowbar-queued": { "type": "bool" },
            "element_states": {
              "type": "map",
              "mapping": {
                = : {
                  "type": "seq",
                  "required": true,
                  "sequence": [ { "type": "str" } ]
                }
              }
            },
            "elements": {
              "type": "map",
              "required": true,
              "mapping": {
                = : {
                  "type": "seq",
                  "required": true,
                  "sequence": [ { "type": "str" } ]
                }
              }
            },
            "element_order": {
              "type": "seq",
              "required": true,
              "sequence": [ {
                "type": "seq",
                "sequence": [ { "type": "str" } ]
              } ]
            },
            "config": {
              "type": "map",
              "required": true,
              "mapping": {
                "environment": { "type": "str", "required": true },
                "mode": { "type": "str", "required": true },
                "transitions": { "type": "bool", "required": true },
                "transition_list": {
                  "type": "seq",
                  "required": true,
                  "sequence": [ { "type": "str" } ]
                }
              }
            }
          }
        }
      }
    }
  }
}