Rob Hirschfeld 6a0f16a515 Using 2015.03 as template, create the 2015.next files.
Target date for this version will be 2015.04.

To accelerate the process, we are using the 2015.03 file
before it has landed.  This was discussed in the 3/13/15
DefCore meeting and allowed to help ensure additional
community revew time in Gerrit for the 2015.04 Guideline.

Change-Id: I169d5ce70f296b2974db0bb45045dbff5bb49f94
2015-03-13 23:43:59 -05:00
2014-12-29 18:33:56 +02:00

Understanding the DefCore JSON Schema

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

Assets for each release are tracked in dedicated subdirectories so JSON schema may change per release if needed.

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

DefCore Process Flow

See: https://wiki.openstack.org/w/images/6/68/DefCoreProcessFlow.pdf

Terminology

See: https://wiki.openstack.org/wiki/Governance/DefCoreLexicon

The JSON files have a specific schema to support

{ "release": "havana",
  "schema": "1.0",
  "criteria" : { 
      "atomic" : { "Description" : "blah blah blah",
      "name" : "Atomic", 
      "weight": 8
      },
  "capabilities": {
    "example-cap" : { "achievements" : [ "deployed",
          "future",
          "complete"],
      "admin" : true,
      "core" : false,
      "description" : "Helpful Description",
      "flagged" : [  ],
      "name" : "Friendly Short Name",
      "tests" : [ "tempest.api.project.file.class.test_name" ]
    },

Schema Explanation:

  • release: provides the release described in the JSON file
  • schema: version of the schema
  • criteria: block describing the scoring criteria for the release
    • criteria/[id]: block for a specific criteria (using an ID)
    • criteria/[id]/name: friendly name for the criteria
    • criteria/[id]/description: longer description for the criteria
    • criteria/[id]/weight: weight applied. All criteria together should = 100
  • capabilities: block describing all the capabilities identified for the release
    • capabilities/[id]: block for a specific capability (using an ID)
    • capabilities/[id]/name: friend name for the capability
    • capabilities/[id]/description: longer description for the capability
    • capabilities/[id]/core: boolean set by Board if capability is required
    • capabilities/[id]/admin: boolean set by PTL if capability is for admin use
    • capabilities/[id]/achievements: list of criteria passed for this capability (set by Board)
    • capabilities/[id]/tests: list of tests included in the capability (set by PTL)
    • capabilities/[id]/flagged: tests that have been excluded for this capability (set by Board)

Ownership for Changes

TC/PTL

  1. Capabilities Description
  2. Capabilities Test List

DefCore

  1. Flagged Tests
  2. Capabilities "Score
  3. Criteria Names and Descriptions
Description
Data and documentation maintained by the Interop Working Group
Readme 7.3 MiB
Languages
Python 61.3%
Shell 23.3%
JavaScript 10.7%
HTML 4.7%