mirror of
https://github.com/onsonr/sonr.git
synced 2025-03-10 13:07:09 +00:00
59 lines
2.2 KiB
YAML
59 lines
2.2 KiB
YAML
|
version: '3'
|
||
|
|
||
|
vars:
|
||
|
PROXY: package://pkg.pkl-lang.org/pkl-pantry
|
||
|
NAME: org.json_schema.contrib
|
||
|
VERSION: 1.1.3
|
||
|
PKG: "{{.PROXY}}/{{.NAME}}@{{.VERSION}}#"
|
||
|
ROOT_DIR:
|
||
|
sh: git rev-parse --show-toplevel
|
||
|
|
||
|
tasks:
|
||
|
jsonpkl-*:
|
||
|
dir: '{{.ROOT_DIR}}'
|
||
|
vars:
|
||
|
FILE: '{{index .MATCH 0}}'
|
||
|
cmds:
|
||
|
- task: schemagen-{{.FILE}}
|
||
|
- task: gojson-{{.FILE}}
|
||
|
|
||
|
pkljson-*:
|
||
|
dir: '{{.ROOT_DIR}}'
|
||
|
vars:
|
||
|
INPUT: '{{index .MATCH 0}}'
|
||
|
cmds:
|
||
|
- pkl eval {{.PKG}}/generate.pkl -m . -p source=types/schemas/{{.INPUT}}
|
||
|
- mv *.pkl pkl/
|
||
|
|
||
|
gojson-*:
|
||
|
dir: '{{.ROOT_DIR}}'
|
||
|
vars:
|
||
|
INPUT: '{{index .MATCH 0}}'
|
||
|
GOOUT:
|
||
|
sh: echo {{.INPUT}} | sed 's/\.json//'
|
||
|
FLAGS: --schema-output=http://json-schema.org/draft-04/schema#=internal/models/{{.GOOUT}}.go --schema-package=http://json-schema.org/draft-04/schema#=github.com/prnk28/gh-pm
|
||
|
cmds:
|
||
|
- go-jsonschema {{.FLAGS}} -p models types/schemas/{{.INPUT}} > internal/models/{{.GOOUT}}.go
|
||
|
|
||
|
schemagen-*:
|
||
|
dir: '{{.ROOT_DIR}}'
|
||
|
vars:
|
||
|
INPUT: '{{index .MATCH 0}}'
|
||
|
OUTPUT:
|
||
|
sh: basename {{.INPUT}}
|
||
|
cmds:
|
||
|
- mkdir -p types/schemas
|
||
|
- json-schema-generator -f types/base/{{.INPUT}} -o types/schemas/{{.OUTPUT}}
|
||
|
|
||
|
fetch-data:
|
||
|
dir: '{{.ROOT_DIR}}'
|
||
|
cmds:
|
||
|
- mkdir -p types/base
|
||
|
- gh project item-list 4 --owner coindotfi --format json --jq .items > types/base/cards.json
|
||
|
- gh issue ls --repo=coindotfi/coind --json author,assignees,body,id,labels,milestone,number,projectCards,projectItems,state,stateReason,title,url > types/base/issues.json
|
||
|
- gh project ls --owner=coindotfi --format json --jq .projects > types/base/projects.json
|
||
|
- gh api user > types/base/user.json
|
||
|
- gh pr ls --json "id" --json "title" --json "headRefName" --json "createdAt" --json "author" --json "number" > types/base/prs.json
|
||
|
- gh release list --repo onsonr/sonr --json "name" --json "tagName" --json "publishedAt" --json "isDraft" --json "isLatest" > types/base/releases.json
|
||
|
- gh milestone ls --repo onsonr/sonr --state all --json title,number,url,id,progressPercentage,state | sed 's/\[onsonr\/sonr onsonr sonr\]//' | tee types/base/milestones.json
|