Open ngarg-vail opened 2 years ago
The openapi generator specifies the ability to provide custom files/templates (https://openapi-generator.tech/docs/customization). This feature does not work with the current version of the CLI.
Steps to reproduce the behavior:
Install latest version of openapi-generator-cli (currently 5.4.0) npm install openapi-generator-cli@5.4.0
npm install openapi-generator-cli@5.4.0
Provide the following for the openapitools.json file (note the files keyword), e.g.
openapitools.json
files
{ "$schema": "/path/to/schema", "generator-cli": { "version": "5.4.0", "generators": { "nodejs": { "templateDir": "#{cwd}/nodejs/templates", "generator-name": "typescript", "output": "#{cwd}/nodejs/sdk", "inputSpec": "#{cwd}/openapi.json", "additionalProperties": { "esTargetVersion": "ES2020", "moduleResolution": "nodejs", "framework": "fetch-api", "platform": "node", "license": "MIT", "useInversify": false, "legacyDiscriminatorBehavior": false }, "files": { "api_test.mustache": { "templateType": "ApiTests", "destinationFilename": "spec/api_test.spec.ts" } } } } } } }
Execute the generator openapi-generator-cli generate --generator-key nodejs
openapi-generator-cli generate --generator-key nodejs
See error
[[nodejs] #{cwd}/openapi.json] [error] Found unexpected parameters: [--files=api_test.mustache=[object Object]] [[nodejs] #{cwd}/openapi.json] [[nodejs] #{cwd}/openapi.json] See 'openapi-generator-cli help' for usage. java -jar "node_modules/@openapitools/openapi-generator-cli/versions/5.4.0.jar" generate --input-spec="/openapi.json" --template-dir="/openapi-spec/nodejs/templates" --generator-name="typescript" --output="/nodejs/sdk" --additional-properties="esTargetVersion=ES2020,moduleResolution=nodejs,framework=fetch-api,platform=node,license=MIT,useInversify=false,legacyDiscriminatorBehavior=false" --files="api_test.mustache=[object Object]" exited with code 1
the "files" keyword gets resolved properly and all sub-properties are provided to the cli.
The typescript generator doesn't ship with a test runtime, so I was in the process of using the customization feature - ran into this instead.
Is there any update on this?
🐛 Bug Report:
Describe the bug
The openapi generator specifies the ability to provide custom files/templates (https://openapi-generator.tech/docs/customization). This feature does not work with the current version of the CLI.
Steps to Reproduce
Steps to reproduce the behavior:
Install latest version of openapi-generator-cli (currently 5.4.0)
npm install openapi-generator-cli@5.4.0
Provide the following for the
openapitools.json
file (note thefiles
keyword), e.g.{ "$schema": "/path/to/schema", "generator-cli": { "version": "5.4.0", "generators": { "nodejs": { "templateDir": "#{cwd}/nodejs/templates", "generator-name": "typescript", "output": "#{cwd}/nodejs/sdk", "inputSpec": "#{cwd}/openapi.json", "additionalProperties": { "esTargetVersion": "ES2020", "moduleResolution": "nodejs", "framework": "fetch-api", "platform": "node", "license": "MIT", "useInversify": false, "legacyDiscriminatorBehavior": false }, "files": { "api_test.mustache": { "templateType": "ApiTests", "destinationFilename": "spec/api_test.spec.ts" } } } } } } }
Execute the generator
openapi-generator-cli generate --generator-key nodejs
See error
Expected behavior
the "files" keyword gets resolved properly and all sub-properties are provided to the cli.
Operation System (please complete the following information):
Package System (please complete the following information):
Additional context
The typescript generator doesn't ship with a test runtime, so I was in the process of using the customization feature - ran into this instead.