refstack/defcore
Paul Van Eck 649137a0b0 Adjust html and js to use new capabilities format
Since the new capabilities files now use 'status' fields
instead of 'core' fields, the static files were adjusted to
account for these changes. The report page will now give the
option to filter by required, advisory, deprecated, and removed
capabilitiy statuses. For now, the new capabilities file is mirrored
in the defcore folder of refstack.

Change-Id: I79a12e94b32a89c08e8046a427553d1c156c1a2d
2015-04-06 20:19:22 +00:00
..
drafts Complete Havana capabilities as passed by the Board in July 2014 2014-08-23 08:19:41 -05:00
js Adjust html and js to use new capabilities format 2015-04-06 20:19:22 +00:00
2015.03.json Adjust html and js to use new capabilities format 2015-04-06 20:19:22 +00:00
capabilities.html Adjust html and js to use new capabilities format 2015-04-06 20:19:22 +00:00
havanacore.json Remove XML tests in the havancore.json file. 2015-02-13 10:49:41 -08:00
havanasections.json Approved by the OpenStack Board Dec 2014 2014-12-23 17:02:30 -06:00
icehousecore.json Add capabilitiees to icehousecore.json 2014-11-21 12:57:02 +02:00
junocore.json Add capabilitiees to junocore.json 2014-11-21 14:05:16 +02:00
README.rst Complete Havana capabilities as passed by the Board in July 2014 2014-08-23 08:19:41 -05: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