forked from commercetools/commercetools-api-reference
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
59 lines (42 loc) · 1.7 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
SHELL := /bin/bash
CHANGES_PENDING := `git status --porcelain -- ':(exclude)*gen.properties' | grep -c ^ || true`
build: install_deps generate lint cleanup
install_deps: codegen_install composer_install yarn_install
lint: check_markdown format_raml validate_raml
generate: generate_oas
oas_convert: oas_convert3
codegen_install:
curl -o- -s https://raw.githubusercontent.com/vrapio/rmf-codegen/master/scripts/install.sh | bash
composer_install:
composer install --no-ansi --no-interaction --no-progress --no-suggest
yarn_install:
yarn install
check_markdown: yarn_install
node bin/explode-raml.js
lint_raml: yarn_install
yarn run lint:raml
format_raml: yarn_install
yarn run format:raml
validate_raml: codegen_install format_raml
rmf-codegen verify api-specs/api/api.raml
generate_oas: codegen_install format_raml
rmf-codegen generate -o oas -t OAS api-specs/api/api.raml
raml_doc_convert: codegen_install format_raml
rmf-codegen generate -o tmpdoc -t RAML_DOC api-specs/api/api.raml
oas_convert3: lint raml_doc_convert
node bin/doc-convert-oas3.js
rm -rf tmpdoc
sed -ibak -e "s/includePath/x-annotation-includePath/g" api.swagger3.json
sed -ibak -e "s/example/x-annotation-example/g" api.swagger3.json
sed -ibak -e "s/additionalProperties/x-annotation-additionalProperties/g" api.swagger3.json
yarn run swagger-cli validate api.swagger3.json
rm api.swagger3.jsonbak
oas_convert2: lint raml_doc_convert
node bin/doc-convert-oas2.js
rm -rf tmpdoc
sed -ibak -e "s/additionalProperties/x-annotation-additionalProperties/g" api.swagger.json
sed -ibak -e "s/\"oneOf\"/\"x-annotation-oneOfDef\"/g" api.swagger.json
yarn run swagger-cli validate api.swagger.json
rm api.swagger.jsonbak
cleanup:
rm -rf tmpdoc