OpenAPITools / OpenAPITools/openapi-generator-cli

Unable to provide custom files for generation [BUG]

Offen
#668 1 Kommentar 1 Reaktion 1 zugewiesene Person Auf GitHub ansehen

@kay-schecker arbeitet bereits daran.

Seit 01.11.2022.

bug
Vorherrschende Sprache
TypeScript
Sterne
2k
Forks
208
Ø Merge
7 Std. 12 Min.
Gemergte PRs (30 T.)
6

Beschreibung

🐛 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:

  1. Install latest version of openapi-generator-cli (currently 5.4.0) npm install openapi-generator-cli@5.4.0

  2. Provide the following for the openapitools.json file (note the files 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"
                         }
                       }
                    }
                 }
            }
        }
    }
    
  3. Execute the generator
    openapi-generator-cli generate --generator-key nodejs

  4. 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
Expected behavior

the "files" keyword gets resolved properly and all sub-properties are provided to the cli.

Operation System (please complete the following information):
  • OS: MacOS
  • Version 12.6.1
Package System (please complete the following information):
  • Version 5.4.0
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.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.