Feature #223
Define Mandatory fields in distributions and recipes and implement validation
| Status: | Closed | Start date: | 2014-04-03 | |
|---|---|---|---|---|
| Priority: | Normal | Due date: | ||
| Assignee: | % Done: | 0% | ||
| Category: | Recipe | Spent time: | 0.50 hour | |
| Target version: | Toolkit 0.1 |
Description
I would like to add to distributions:
"catalogue.system": [ "", "" ],
"catalogue.system.version": [ "", "" ],
History
#1
Updated by Jan Moringen over 11 years ago
Maybe
"catalogue.system.node-id": "NODE-ID", "catalogue.system.version-node-ids": [ "NODE-ID", "NODE-ID" ],
?
#2
Updated by Florian Lier over 11 years ago
"catalogue.system.node.id": "NODE-ID", "catalogue.system.title": "TITLE", "catalogue.system.version.node.id": [ "NODE-ID" ], "catalogue.system.version.title": [ "TITLE" ]
If I am right, a distribution is always a version, e.g, nightly, 0.9, 0.7 so we don't need multiple
version id's per distro. Also, I would like to validate against the title and the NID.
#3
Updated by Jan Moringen over 11 years ago
Florian Lier wrote:
If I am right, a distribution is always a version, e.g, nightly, 0.9, 0.7 so we don't need multiple version id's per distro.
Right. We don't have to use arrays then:
"catalogue.system.node.id": "NODE-ID", "catalogue.system.title": "TITLE", "catalogue.system.version.node.id": "NODE-ID", "catalogue.system.version.title": "TITLE"
#4
Updated by Florian Lier over 11 years ago
I added the fields to the toolkit-nightly master and the rsb-java project.
Syntax is as follows:
"catalogue.system.node.id": "0", "catalogue.system.title": "toolkit", "catalogue.system.version.node.id": "0", "catalogue.system.version.title": "nightly",
"versions": [
{
"name": "master",
"catalogue.release.title": "master",
"catalogue.release.nid": "0",
"variables": {
"extra-requires": [ [ "cmake", "RSBProtocol", "0.11" ],
"@{next-value|[]}" ],
"maven.properties": [ "pbuf.protoc=/usr/bin/protoc",
"pbuf.protopath=${dependency-dir}/share/rsbprotocol0.11",
"spread.daemon=${dependency-dir}/sbin/spread",
"@{next-value|[]}" ]
}
},
{
"name": "0.10",
"catalogue.release.title": "0.10",
"catalogue.release.nid": "0",
"variables": {
"extra-requires": [ [ "cmake", "RSBProtocol", "0.10" ],
"@{next-value|[]}" ],
"maven.properties": [ "pbuf.protoc=/usr/bin/protoc",
"pbuf.protopath=${dependency-dir}/share/rsbprotocol0.10",
"spread.daemon=${dependency-dir}/sbin/spread",
"@{next-value|[]}" ]
}
},
#5
Updated by Florian Lier over 11 years ago
I just realised we can provide the NID's for releases aka "branches" more easily, e.g,:
"branches": [ "master", "0.10", "0.9" ], "catalogue.release.nid: [ "234", "235", "236" ],
The title for the release is then $projectname-$branches[idx]
That way, we can omit filling out these values for the "version" field.
#6
Updated by Florian Lier over 10 years ago
- Status changed from New to Closed
We should document mandatory fields, the generator and the sync tool are implicitly validating recipes now.