Skip to content

Commit a43b5eb

Browse files
authored
fix readme, adds custom generator config on docker
1 parent c061797 commit a43b5eb

File tree

1 file changed

+11
-29
lines changed

1 file changed

+11
-29
lines changed

README.md

Lines changed: 11 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,9 @@ Check out [OpenAPI Specification](https://github.com/OAI/OpenAPI-Specification)
2424
- [Docker](#docker)
2525
- [Development in Docker](#development-in-docker)
2626
- [Run docker in Vagrant](#run-docker-in-vagrant)
27-
- [Public Docker image](#public-docker-image)
27+
- [Public Docker image](#public-pre-built-docker-images)
28+
- [Swagger Generator Docker Image](#swagger-generator--docker-image)
29+
2830
- [Homebrew](#homebrew)
2931
- [Getting Started](#getting-started)
3032
- Generators
@@ -164,8 +166,8 @@ See also [online generators](#online-generators)
164166
The Swagger Generator image provides a ready to use web application (swagger-generator) providing code generation services.
165167

166168
Image accepts the following env variables:
167-
JAVA_MEM e.g. 1024m
168169

170+
- `JAVA_MEM` e.g. `1024m`
169171
- `HTTP_PORT` e.g. `8080`
170172
- `HIDDEN_OPTIONS_PATH` (alternative to `HIDDEN_OPTIONS`): useful if attaching a volume containing a `hiddenOptions.yaml` file definining which languages to hide. e.g. `/data/hiddenOptions.yaml`
171173
- `HIDDEN_OPTIONS` (alternative to `HIDDEN_OPTIONS_PATH`): allows to pass hidden options as an env variable, in the format `{category}:{language},{language},{language}|{category}:{language},{language},{language}`
@@ -181,6 +183,10 @@ or
181183

182184
`docker run -e "HIDDEN_OPTIONS_PATH=/hiddenOptions.yaml" -e "JAVA_MEM=1024m" -e "HTTP_PORT=80" -p 80:80 --name swagger-generator-v3 swaggerapi/swagger-generator-v3`
183185

186+
This docker image supports custom generators by dropping the generator jar into `/jetty_home/lib/ext` directory (typically via a docker volume); e.g having on host `/my/custom/coolgenerator.jar` and `/my/custom/weirdgenerator.jar` the following would have them added to generator service generators:
187+
188+
`docker run -e "HIDDEN_OPTIONS_PATH=/hiddenOptions.yaml" -e "JAVA_MEM=1024m" -e "HTTP_PORT=80" -p 80:80 --name swagger-generator-v3 -v /my/custom:/jetty_home/lib/shared swaggerapi/swagger-generator-v3`
189+
184190
##### Swagger Generator "Minimal" Docker Image
185191

186192
See also [online generators](#online-generators)
@@ -668,9 +674,7 @@ curl -X POST \
668674
-H 'content-type: application/json' \
669675
-d '{
670676
"specURL" : "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml",
671-
"options" : {
672-
"lang" : "java"
673-
},
677+
"lang" : "java",
674678
"type" : "CLIENT",
675679
"codegenVersion" : "V3"
676680
}'
@@ -681,8 +685,8 @@ To customize the SDK, you can specify language specific options with the follow
681685
```json
682686
{
683687
"specURL" : "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml",
688+
"lang" : "java",
684689
"options" : {
685-
"lang" : "java",
686690
"additionalProperties" : {
687691
"useRuntimeException": true,
688692
"useRxJava" : true
@@ -694,7 +698,7 @@ To customize the SDK, you can specify language specific options with the follow
694698
```
695699
in which the `options` `additionalProperties` for a language can be obtained by submitting a `GET` request to `https://generator3.swagger.io/api/options?language={language}&version={codegenVersion}`:
696700

697-
For example, `curlhttps://generator3.swagger.io/api/options?language=java&version=V3` returns (truncated output):
701+
For example, `curl https://generator3.swagger.io/api/options?language=java&version=V3` returns (truncated output):
698702

699703
```json
700704
{
@@ -739,28 +743,6 @@ Instead of using `specURL` with an URL to the OpenAPI/Swagger spec, one can incl
739743
}
740744
```
741745

742-
743-
### Docker image (`swaggerapi/swagger-generator-v3`)
744-
745-
Docker image accepts the following env variables:
746-
747-
- `JAVA_MEM` e.g. `1024m`
748-
- `HTTP_PORT` e.g. `8080`
749-
- `HIDDEN_OPTIONS_PATH` (alternative to `HIDDEN_OPTIONS`): useful if attaching a volume containing a `hiddenOptions.yaml` file definining which languages to hide. e.g. `/data/hiddenOptions.yaml`
750-
- `HIDDEN_OPTIONS` (alternative to `HIDDEN_OPTIONS_PATH`): allows to pass hidden options as an env variable, in the format `{category}:{language},{language},{language}|{category}:{language},{language},{language}`
751-
e.g. `servers:foo,bar|clientsV3:wtf,isthis` where `category` can be `clients`, `servers`, `clientsV3`, `serversV3`
752-
753-
An example of running the container:
754-
755-
`docker run -e "HIDDEN_OPTIONS=servers:foo,bar|clientsV3:fgf,sdsd" -e "JAVA_MEM=1024m" -e "HTTP_PORT=80" -p 80:80 --name swagger-generator-v3 swaggerapi/swagger-generator-v3:3.0.0`
756-
757-
or
758-
759-
`docker run -e "HIDDEN_OPTIONS_PATH=/hiddenOptions.yaml" -e "JAVA_MEM=1024m" -e "HTTP_PORT=80" -p 80:80 --name swagger-generator-v3 swaggerapi/swagger-generator-v3:3.0.0`
760-
761-
762-
763-
764746
Guidelines for Contribution
765747
---------------------------
766748

0 commit comments

Comments
 (0)