class MU::Config::Collection

Basket of Kittens config schema and parser logic. See modules/mu/providers/*/collection.rb

Public Class Methods

schema() click to toggle source

Base configuration schema for a Collection @return [Hash]

# File modules/mu/config/collection.rb, line 22
def self.schema
  {
    "type" => "object",
    "required" => ["name"],
    "additionalProperties" => false,
    "description" => "Create an Amazon CloudFormation stack.",
    "properties" => {
      "name" => {"type" => "string"},
      "tags" => MU::Config.tags_primitive,
      "parameters" => {
          "type" => "array",
          "items" => {
              "type" => "object",
              "description" => "set cloudformation template parameter",
              "required" => ["parameter_key", "parameter_value"],
              "additionalProperties" => false,
              "properties" => {
                  "parameter_key" => {"type" => "string"},
                  "parameter_value" => {"type" => "string"}
              }
          }
      },
      "pass_deploy_key_as" => {
          "type" => "string",
          "description" => "Pass in the deploy key for this stack as a CloudFormation parameter. Set this to the CloudFormation parameter name.",
      },
      "pass_parent_parameters" => {
        "type" => "boolean",
        "default" => true,
        "description" => "If targeting CloudFormation, this will pass all of the parent template's parameters to the nested template"
      },
      "on_failure" => {
          "type" => "string",
          "enum" => ["DO_NOTHING", "ROLLBACK", "DELETE"],
          "default" => "ROLLBACK"
      },
      "template_file" => {"type" => "string"},
      "timeout" => {
        "type" => "string",
        "description" => "Timeout (in minutes) for building this Collection.",
        "default" => "45"
      },
      "template_url" => {
          "type" => "string",
          "pattern" => "^#{URI::regexp(%w(http https))}$"
      },
      "creation_style" => {
          "type" => "string",
          "enum" => ["existing", "new"]
      }
    }
  }
end
validate(_stack, _configurator) click to toggle source

Generic pre-processing of {MU::Config::BasketofKittens::collections}, bare and unvalidated. @param _stack [Hash]: The resource to process and validate @param _configurator [MU::Config]: The overall deployment configurator of which this resource is a member @return [Boolean]: True if validation succeeded, False otherwise

# File modules/mu/config/collection.rb, line 80
def self.validate(_stack, _configurator)
  ok = true
  ok
end