-
Notifications
You must be signed in to change notification settings - Fork 319
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
CIP-0010 | Validation by GitHub workflow (#837)
* fix spelling error which breaks structure * add CI workflow validation * correction on validation step * auto run approval * update * Changes to schema and workflow --------- Co-authored-by: Michiel <michiel.bellengmail.com>
- Loading branch information
1 parent
ea2e0e4
commit 61a7d7b
Showing
2 changed files
with
51 additions
and
60 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
name: CIP-10 - Validate Registry JSON on Pull Request | ||
|
||
on: | ||
pull_request: | ||
paths: | ||
- 'CIP-0010/registry.json' | ||
|
||
jobs: | ||
approve: # Pre-approval step | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Approve | ||
run: echo For security reasons, all pull requests need to be approved first before running any automated CI. | ||
|
||
validate-json: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout repository | ||
uses: actions/checkout@v3 | ||
|
||
- name: Set up Node.js | ||
uses: actions/setup-node@v3 | ||
with: | ||
node-version: '21' | ||
|
||
- name: Install dependencies | ||
run: npm install ajv-cli | ||
|
||
- name: Validate JSON against schema | ||
run: npx ajv validate -s CIP-0010/registry.schema.json -d CIP-0010/registry.json > /dev/null |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,64 +1,25 @@ | ||
{ | ||
"$schema": "http://json-schema.org/draft-07/schema", | ||
"$id": "https://github.com/cardano-foundation/CIPs/blob/master/CIP-0010", | ||
"type": "array", | ||
"$schema": "http://json-schema.org/draft-07/schema#", | ||
"$id": "https://github.com/cardano-foundation/CIPs/blob/master/CIP-0010", | ||
"title": "Transaction Metadata Label Registry", | ||
"description": "JSON schema for transaction metadata label registry", | ||
"default": [], | ||
"examples": [ | ||
[ | ||
{ | ||
"transaction_metadatum_label": 1967, | ||
"description": "nut.link metadata oracles registry" | ||
}, | ||
{ | ||
"transaction_metadatum_label": 1968, | ||
"description": "nut.link metadata oracles data points" | ||
} | ||
] | ||
], | ||
"additionalItems": false, | ||
"description": "JSON schema for transaction metadata label registry", | ||
"type": "array", | ||
"items": { | ||
"$id": "#/items", | ||
"anyOf": [ | ||
{ | ||
"$id": "#/items/anyOf/0", | ||
"type": "object", | ||
"title": "The first anyOf schema", | ||
"description": "An entry in the transaction metadata label registry", | ||
"default": {}, | ||
"examples": [ | ||
{ | ||
"transaction_metadatum_label": 1967, | ||
"description": "nut.link metadata oracles registry" | ||
} | ||
], | ||
"required": [ | ||
"transaction_metadatum_label", | ||
"description" | ||
], | ||
"properties": { | ||
"transaction_metadatum_label": { | ||
"$id": "#/items/anyOf/0/properties/transaction_metadatum_label", | ||
"type": "integer", | ||
"title": "The transaction_metadatum_label number", | ||
"default": 0, | ||
"examples": [ | ||
1967 | ||
] | ||
}, | ||
"description": { | ||
"$id": "#/items/anyOf/0/properties/description", | ||
"type": "string", | ||
"title": "The metadatum label description", | ||
"default": "", | ||
"examples": [ | ||
"nut.link metadata oracles registry" | ||
] | ||
} | ||
}, | ||
"additionalProperties": true | ||
} | ||
] | ||
"type": "object", | ||
"properties": { | ||
"transaction_metadatum_label": { | ||
"type": "integer", | ||
"minimum": 0 | ||
}, | ||
"description": { | ||
"type": "string", | ||
"maxLength": 256 | ||
} | ||
}, | ||
"required": [ | ||
"transaction_metadatum_label", | ||
"description" | ||
], | ||
"additionalProperties": false | ||
} | ||
} | ||
} |