8a9f755cb9
Cycle-trailing deliverables are regular cycle-following deliverables, using RCs or not not using RCs -- they just have a different deadline. Rather than using a release model, those deadline variants are better described using deliverable types, in much the same way 'library' deliverables have a specific deadline too. This simplifies the list of models significantly, and allows to have proposer validation of trailing deliverables that use RCs or not use RCs. For compatibility in old branches, setting 'cycle-trailing' is still supported, it will just overload the type to 'trailing' if specified. Change-Id: Ifce88ef3e5dd406f45f25214699f16e736ad5377
120 lines
3.1 KiB
YAML
120 lines
3.1 KiB
YAML
---
|
|
$schema: "http://json-schema.org/schema#"
|
|
$id: "https://opendev.org/openstack/releases/src/branch/master/README.rst"
|
|
|
|
# Do not allow any properties not defined here. This lets us catch
|
|
# typos.
|
|
additionalProperties: false
|
|
|
|
required:
|
|
- team
|
|
- type
|
|
|
|
properties:
|
|
team:
|
|
type: "string"
|
|
launchpad:
|
|
type: "string"
|
|
storyboard:
|
|
# TODO(fungi): Previously this was an integer but now we
|
|
# want to support strings. This can be changed to "string"
|
|
# later if all the data gets updated from numbers to names.
|
|
type: ["integer", "string"]
|
|
release-notes:
|
|
oneOf:
|
|
- type: "string"
|
|
# We don't include any details about the object form of the
|
|
# release notes because the keys are the repository names.
|
|
- type: "object"
|
|
include-pypi-link:
|
|
type: "boolean"
|
|
release-model:
|
|
type: "string"
|
|
enum: ["cycle-with-intermediary", "cycle-with-milestones", "cycle-trailing", "untagged", "cycle-with-rc", "cycle-automatic", "abandoned"]
|
|
type:
|
|
type: "string"
|
|
enum: ["horizon-plugin", "library", "client-library", "service", "tempest-plugin", "other", "trailing"]
|
|
artifact-link-mode:
|
|
type: "string"
|
|
enum: ["tarball", "none"]
|
|
repository-settings:
|
|
type: "object"
|
|
properties:
|
|
additionalProperties: False
|
|
pypi-name:
|
|
type: "string"
|
|
flags:
|
|
type: "array"
|
|
items:
|
|
type: "string"
|
|
enum: [ "no-artifact-build-job", "retired" ]
|
|
tarball-base:
|
|
type: "string"
|
|
release-type:
|
|
type: "string"
|
|
enum: [ "python-service", "python-pypi", "xstatic", "fuel",
|
|
"nodejs", "puppet", "neutron", "horizon", "openstack-manuals",
|
|
"manila-image-elements", "generic" ]
|
|
stable-branch-type:
|
|
type: "string"
|
|
enum: [ "std", "tagless", "upstream", "none", "std-with-versions" ]
|
|
cycle-highlights:
|
|
type: "array"
|
|
items:
|
|
type: "string"
|
|
releases:
|
|
type: "array"
|
|
items:
|
|
type: "object"
|
|
properties:
|
|
version:
|
|
type: "string"
|
|
projects:
|
|
type: "array"
|
|
items:
|
|
type: "object"
|
|
required:
|
|
- repo
|
|
- hash
|
|
properties:
|
|
repo:
|
|
type: "string"
|
|
hash:
|
|
type: "string"
|
|
comment:
|
|
type: "string"
|
|
tarball-base:
|
|
type: "string"
|
|
additionalProperties: False
|
|
diff-start:
|
|
type: "string"
|
|
flags:
|
|
type: "array"
|
|
items:
|
|
type: "string"
|
|
enum: [ "forced", "skipped-sig" ]
|
|
required: ["version", "projects"]
|
|
additionalProperties: False
|
|
branches:
|
|
type: "array"
|
|
items:
|
|
type: "object"
|
|
properties:
|
|
name:
|
|
type: "string"
|
|
location:
|
|
oneOf:
|
|
- type: "string"
|
|
- type: "object"
|
|
required: ["name", "location"]
|
|
additionalProperties: False
|
|
stable-status:
|
|
type: "string"
|
|
enum:
|
|
- future
|
|
- development
|
|
- maintained
|
|
- extended maintenance
|
|
- unmaintained
|
|
- end of life
|