OpenAPITools / OpenAPITools/openapi-generator-cli
[BUG] Error when working with npm workspaces
Open
@kay-schecker is already working on this.
Since Jan 30, 2022.
bug
- Dominant language
- TypeScript
- Stars
- 2k
- Forks
- 208
- Avg merge
- 7h 12m
- Merged PRs (30d)
- 6
Description
🐛 Bug Report:
Describe the bug
The generator crashes with the [error] Required option '-i' is missing error when running with different cwd.
Steps to Reproduce
Steps to reproduce the behavior:
- Create a npm project with two workspaces:
packages/clientandpackages/server(server probably isn't even necessary) - Save a spec in
packages/openapi.yaml - Reference it in
packages/client/openapitools.jsonvia"inputSpec": "../openapi.yaml" - Add a script in client:
"openapi": "openapi-generator-cli generate"and run it- It works ✔️
- Add a script in root
"openapi": "npm run openapi --workspaces --if-present"and run it- See error ❌
- Generates a
openapitools.jsonin the root directory
Failing workaround
I created a packages/client/openapi.js script and let it run in client via "openapi": "node openapi.js" , but this also fails in the same way.
// try forcing the cwd to the client directory (works when checking with pwd command)
const child = require('child_process').exec('openapi-generator-cli generate', { cwd: __dirname });
child.stdout.pipe(process.stdout);
child.stderr.pipe(process.stderr);
child.on('exit', code => process.exit(code));
Expected behavior
I expect the generator to always find the file.
Operation System:
- OS: Windows
- Version 10
Package System:
- npm v8.3.0
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.