interop/README.rst
robhirschfeld 6af4f22837 Housekeeping to move Wiki docs to process/ directory
And update the readme to point to those docs.

Replaces an earlier patch for housekeeping with merge issues.

Change-Id: Ie8fba36b9033531d5ff90cde4e55631746116a14
2015-04-14 15:20:47 -05:00

2.6 KiB

Understanding the DefCore Guidelines

This repository contains DefCore committee managed files that provide guidance for the OpenStack community.

NOTE: Changes to file requires approval of the DefCore committee chair(s).

DefCore Process Documentation

The /process directory contains details about the DefCore process.

Core Definition

process/CoreDefinition.rst

Process Goverance

process/2015A.rst (please check for latest)

Designated Sections

process/DesignatedSections.rst

Core Criteria

process/CoreCriteria.rst

DefCore Governance

process/GovernanceProcess.rst

Platform and Components

process/PlatformCap.rst

DefCore Cycles

process/ProcessCycles.rst

Terminology

process/Lexicon.rst

JSON Schema

The JSON files have a specific schema to support

{ "id": "2015.03",        # Spec name (date based)
  "source": "http://git.openstack.org/cgit/openstack/defcore/",   # git repo for files
  "schema": "1.2",        # Schema version
  "status": "approved",   # can be draft, review or approved
  "replaces": "2014.07",  # previous spec
  "releases": ["icehouse"], # array of releases, lower case
  "platform": {           # platform components
    "required": ["compute", "object"],  # array
    "advisory": [],       # incoming array
    "depricated": [],     # outgoing array
    "removed": []         # removed array
    },
  "components": {         # components detail
    "compute": {          # component name
      "required": [       # required array
        "compute-auth"],
      "advisory": [       # incoming array
        "compute-servers-metadata"],
      "deprecated": [],   # outgoing array
      "removed": [        # removed array
        "volume"]
      },
    },
  "criteria" : {          # explains achievements
      "atomic" : { "Description" : "blah blah blah",
      "name" : "Atomic", 
      "weight": 8
      },
  "capabilities": {       # capabilities listed in components
    "example-cap" :       # capability
      { "achievements" :  # array of criteria met
        [ "deployed",
          "future",
          "complete"],
      "admin" : false,    # is admin API
      "status" : "required",  # de-normalized from components
      "description" : "Helpful Description",
      "flagged" : [  ],   # flagged tests array
      "name" : "Friendly Short Name",
      "tests" :           # list of tests (please use UUIDs)
        [ "tempest.api.project.file.class.test_name" ]
    },