OpenAPITools / OpenAPITools/openapi-generator-cli

[BUG] openapi-generator-cli fails silently when it cannot create openapitools.json

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

@kay-schecker arbeitet bereits daran.

Seit 18.6.2021.

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

Beschreibung

🐛 Bug Report:

Describe the bug

openapi-generator-cli fails silently when it cannot create openapitools.json

Steps to Reproduce

Steps to reproduce the behavior:

~/openapi-test
❯ node --version
v12.15.0

~/openapi-test
❯ npm --version
6.13.4

~/openapi-test
❯ java --version
openjdk 11.0.6 2020-01-14
OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.6+10)
OpenJDK 64-Bit Server VM AdoptOpenJDK (build 11.0.6+10, mixed mode)

❯ npm install @openapitools/openapi-generator-cli@2.3.5
...

~/openapi-test
❯ cat swagger.yaml
swagger: "2.0"
info:
  version: v1
  title: Our API
  description: The REST API for interacting with Our API
host: localhost:1234
schemes:
  - http
paths:
  "/api/job/{jobid}/status":
    get:
      summary: getJobStatus
      description: Get the current status for a job.
      operationId: getJobStatus
      produces:
        - application/json;charset=utf-8
      parameters:
        - required: true
          in: path
          name: jobid
          type: string
      responses:
        "200":
          schema:
            $ref: "#/definitions/JobStatus"
          description: ""
        "404":
          description: "`jobid` not found"
definitions:
  JobStatus:
    type: string

~/openapi-test
❯ $(npm bin)/openapi-generator-cli generate -i swagger.yaml --generator-name typescript-fetch
...

~/openapi-test
❯ ls apis/
DefaultApi.ts  index.ts

~/openapi-test
❯ mkdir readonly

~/openapi-test
❯ chmod u-w readonly

~/openapi-test
❯ cd readonly

~/openapi-test/readonly
❯ touch test
touch: cannot touch 'test': Permission denied

~/openapi-test/readonly
❯ $(npm bin)/openapi-generator-cli generate -i ../swagger.yaml --generator-name typescript-fetch --output ..

~/openapi-test/readonly
❯ echo $?
1

~/openapi-test/readonly
❯ chmod u+w .

~/openapi-test/readonly
❯ cp ../openapitools.json .

~/openapi-test/readonly
❯ ls
openapitools.json

~/openapi-test/readonly
❯ chmod u-w .

~/openapi-test/readonly
❯ $(npm bin)/openapi-generator-cli generate -i ../swagger.yaml --generator-name typescript-fetch --output ..
... (works)
Expected behavior

The command prints an explanation of why the command is failing, or any next steps on how to debug

Operation System (please complete the following information):
  • OS: Ubuntu 18 LTS
Package System (please complete the following information):

See reproduction for versions

Additional context

This cost me many, many hours of debugging because it only occurred in CI where volumes with no writes expected are mounted readonly, and during local testing we tend to already have an openapitools.json

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.