Skip to content

Commit

Permalink
feat: Add json schema (#1114)
Browse files Browse the repository at this point in the history
* feat: Add json schema

* fix schema  path

---------

Co-authored-by: Julien Vaumoron <julien.vaumoron@kanoma.fr>
  • Loading branch information
Sukaato and Julien Vaumoron committed Jun 21, 2024
1 parent 3056a18 commit 5dcb72d
Show file tree
Hide file tree
Showing 6 changed files with 383 additions and 1 deletion.
3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,8 @@
"bin",
"config",
"lib",
"test"
"test",
"schema"
],
"scripts": {
"knip": "knip",
Expand Down
97 changes: 97 additions & 0 deletions schema/git.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
{
"$schema": "http://json-schema.org/draft-07/schema",
"$id": "release-it#git",
"title": "JSON schema for Release-it git property configuration",
"type": "object",
"additionalItems": false,
"properties": {
"changelog": {
"type": "string",
"default": "git log --pretty=format:\"* %s (%h)\" ${from}...${to}"
},
"requireCleanWorkingDir": {
"type": "boolean",
"default": true
},
"requireBranch": {
"type": "boolean",
"default": false
},
"requireUpstream": {
"type": "boolean",
"default": true
},
"requireCommits": {
"type": "boolean",
"default": false
},
"requireCommitsFail": {
"type": "boolean",
"default": true
},
"commitsPath": {
"type": "string",
"default": ""
},
"addUntrackedFiles": {
"type": "string",
"default": ""
},
"commit": {
"type": "boolean",
"default": true
},
"commitArgs": {
"type": "array",
"uniqueItems": true,
"items": {
"type": "string"
},
"default": []
},
"tag": {
"type": "boolean",
"default": true
},
"tagExclude": {
"type": "string",
"default": null
},
"tagMatch": {
"type": "string",
"default": null
},
"getLatestTagFromAllRefs": {
"type": "boolean",
"default": false
},
"tagAnnotation": {
"type": "string",
"default": "Release ${version}"
},
"tagArgs": {
"type": "array",
"uniqueItems": true,
"items": {
"type": "string"
},
"default": []
},
"push": {
"type": "boolean",
"default": true
},
"pushArgs": {
"type": "array",
"uniqueItems": true,
"items": {
"type": "string"
},
"default": ["--follow-tags"]
},
"pushRepo": {
"type": "string",
"default": ""
}
}
}
77 changes: 77 additions & 0 deletions schema/github.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
{
"$schema": "http://json-schema.org/draft-07/schema",
"$id": "release-it#github",
"title": "JSON schema for Release-it Github property configuration",
"type": "object",
"additionalItems": false,
"properties": {
"release": {
"type": "boolean",
"default": false
},
"releaseName": {
"type": "string",
"default": "Release ${version}"
},
"releaseNotes": {
"default": null
},
"autoGenerate": {
"type": "boolean",
"default": false
},
"preRelease": {
"type": "boolean",
"default": false
},
"draft": {
"type": "boolean",
"default": false
},
"tokenRef": {
"type": "string",
"default": "GITHUB_TOKEN"
},
"assets": {
"default": null
},
"host": {
"type": "string",
"default": null
},
"timeout": {
"type": "integer",
"default": 0
},
"proxy": {
"type": "string",
"default": null
},
"skipChecks": {
"type": "boolean",
"default": false
},
"web": {
"type": "boolean",
"default": false
},
"comments": {
"type": "object",
"additionalProperties": false,
"properties": {
"submit": {
"type": "boolean",
"default": false
},
"issue": {
"type": "string",
"default": ":rocket: _This issue has been resolved in v${version}. See [${releaseName}](${releaseUrl}) for release notes._"
},
"pr": {
"type": "string",
"default": ":rocket: _This pull request is included in v${version}. See [${releaseName}](${releaseUrl}) for release notes._"
}
}
}
}
}
61 changes: 61 additions & 0 deletions schema/gitlab.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
{
"$schema": "http://json-schema.org/draft-07/schema",
"$id": "release-it#gitlab",
"title": "JSON schema for Release-it Github property configuration",
"type": "object",
"additionalItems": false,
"properties": {
"release": {
"type": "boolean",
"default": false
},
"releaseName": {
"type": "string",
"default": "Release ${version}"
},
"releaseNotes": {
"default": null
},
"autoGenerate": {
"type": "boolean",
"default": false
},
"preRelease": {
"type": "boolean",
"default": false
},
"draft": {
"type": "boolean",
"default": false
},
"milesstones": {
"type": "array",
"items": {
"type": "string"
},
"default": []
},
"tokenRef": {
"type": "string",
"default": "GITLAB_TOKEN"
},
"tokenHeader": {
"type": "string",
"default": "Private-Token"
},
"certificateAuthorityFile": {
"default": null
},
"assets": {
"default": null
},
"origin": {
"type": "string",
"default": null
},
"skipChecks": {
"type": "boolean",
"default": false
}
}
}
57 changes: 57 additions & 0 deletions schema/npm.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
{
"$schema": "http://json-schema.org/draft-07/schema",
"$id": "release-it#npm",
"title": "JSON schema for Release-it NPM property configuration",
"type": "object",
"additionalItems": false,
"properties": {
"publish": {
"type": "boolean",
"default": true
},
"publishPath": {
"type": "string",
"default": "."
},
"publishArgs": {
"type": "array",
"uniqueItems": true,
"items": {
"type": "string"
},
"default": []
},
"tag": {
"type": "string",
"default": null
},
"otp": {
"type": "string",
"default": null
},
"ignoreVersion": {
"type": "boolean",
"default": false
},
"allowSameVersion": {
"type": "boolean",
"default": false
},
"versionArgs": {
"type": "array",
"uniqueItems": true,
"items": {
"type": "string"
},
"default": []
},
"skipChecks": {
"type": "boolean",
"default": false
},
"timeout": {
"type": "integer",
"default": 10
}
}
}
Loading

0 comments on commit 5dcb72d

Please sign in to comment.