@@ -6,36 +6,71 @@ if ! [ -d output ]; then
66 mkdir output
77fi
88
9+ exit_code=0
10+
911echo ' Converting 3.1 spec to 3.0'
10- docker run --rm -i openapi-spec-converter:latest -t 3.0 -f yaml \
12+ if docker run --rm -i openapi-spec-converter:latest -t 3.0 -f yaml \
1113 < specs/31-spec-with-differences-from-30.yaml \
1214 > output/31-spec-with-differences-from-30.converted-30.yaml
15+ then
16+ echo ' Validating 3.1 spec converted to 3.0'
17+ if ! node_modules/.bin/swagger-cli validate output/31-spec-with-differences-from-30.converted-30.yaml; then
18+ exit_code=1
19+ fi
1320
14- exit_code=0
21+ echo ' Converting 3.1 spec to Swagger'
22+ if docker run --rm -i openapi-spec-converter:latest -t swagger -f yaml \
23+ < specs/31-spec-with-differences-from-30.yaml \
24+ > output/31-spec-with-differences-from-30.converted-swagger.yaml
25+ then
26+ echo ' Validating 3.1 spec converted to Swagger'
27+ if ! node_modules/.bin/swagger-cli validate output/31-spec-with-differences-from-30.converted-swagger.yaml; then
28+ exit_code=1
29+ fi
1530
16- echo ' Validating 3.1 spec converted to 3.0'
17- if ! node_modules/.bin/swagger-cli validate output/31-spec-with-differences-from-30.converted-30.yaml; then
31+ # Up convert Swagger file back to OpenAPI 3.1 again, and output as JSON
32+ echo ' Converting 3.1 to Swagger spec back to 3.1 again'
33+ if docker run --rm -i openapi-spec-converter:latest -t 3.1 -f json \
34+ < output/31-spec-with-differences-from-30.converted-swagger.yaml \
35+ > output/31-spec-with-differences-from-30.back-to-31.json
36+ then
37+ echo ' Validating 3.1 spec converted back from Swagger'
38+ if ! node_modules/.bin/redocly lint output/31-spec-with-differences-from-30.back-to-31.json 2>&1 ; then
39+ exit_code=1
40+ fi
41+ else
42+ exit_code=1
43+ fi
44+ else
45+ exit_code=1
46+ fi
47+ else
1848 exit_code=1
1949fi
2050
21- echo ' Converting 3.1 spec to Swagger'
22- docker run --rm -i openapi-spec-converter:latest -t swagger -f yaml \
23- < specs/31-spec-with-differences-from-30.yaml \
24- > output/31-spec-with-differences-from-30.converted-swagger.yaml
25-
26- echo ' Validating 3.1 spec converted to Swagger'
27- if ! node_modules/.bin/swagger-cli validate output/31-spec-with-differences-from-30.converted-swagger.yaml; then
51+ echo ' Converting OpenAI OpenAPI 3.0 spec to 3.1'
52+ if docker run --rm -i openapi-spec-converter:latest -t 3.1 -f json \
53+ < specs/openapi.yaml \
54+ > output/openapi-31.json
55+ then
56+ echo ' Validating OpenAI OpenAPI spec converted to 3.0'
57+ if ! node_modules/.bin/swagger-cli validate output/openapi-31.json; then
58+ exit_code=1
59+ fi
60+ else
2861 exit_code=1
2962fi
3063
31- # Up convert Swagger file back to OpenAPI 3.1 again, and output as JSON
32- echo ' Converting 3.1 to Swagger spec back to 3.1 again'
33- docker run --rm -i openapi-spec-converter:latest -t 3.1 -f json \
34- < output/31-spec-with-differences-from-30.converted-swagger.yaml \
35- > output/31-spec-with-differences-from-30.back-to-31.json
36-
37- echo ' Validating 3.1 spec converted back from Swagger'
38- if ! node_modules/.bin/redocly lint output/31-spec-with-differences-from-30.back-to-31.json 2>&1 ; then
64+ echo ' Converting OpenAI OpenAPI 3.0 spec to Swagger'
65+ if docker run --rm -i openapi-spec-converter:latest -t swagger -f json \
66+ < specs/openapi.yaml \
67+ > output/openapi-swagger.json
68+ then
69+ echo ' Validating OpenAI OpenAPI spec converted to Swagger'
70+ if ! node_modules/.bin/swagger-cli validate output/openapi-swagger.json; then
71+ exit_code=1
72+ fi
73+ else
3974 exit_code=1
4075fi
4176
0 commit comments