Please check if the PR fulfills these requirements
[x] The commit message describes your change
[x] Tests for the changes have been added if possible (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)
[ ] Changes are mentioned in the changelog (for bug fixes / features)
What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
If there is no source schema/definition provided for any of the projen component types introduced by cdk-serverless, the framework should be able to bootstrap placeholders, so a working project can be generated and amended with proper definitions later.
What is the current behavior? (You can also link to an open issue here)
cdk-serverless needs to be applied to an already-synthesized projen project and if any of the generator components are used, the schema or definition files (e.g. an openapi.yaml) must already exist at the correct locations, or projen will crash and fail to synthesize a project.
What is the new behavior (if this is a feature change)?
If the given definition file name can not be found, it will now be populated with a tiny placeholder so projen can synthesize a project and the user can place the correct file later.
Does this PR introduce a breaking change? (What changes might users need to make in their setup due to this PR?)
This PR will make cdk-serverless succeed in several cases which would cause a projen synth failure before. This PR also revises code generation for cdk-serverless to take place during the projen synthesize step rather than on component construction. This PR also refactors several paths to be relative to the project directory rather than the cwd of the node process running projen.
Please check if the PR fulfills these requirements
[x] The commit message describes your change
[x] Tests for the changes have been added if possible (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)
[ ] Changes are mentioned in the changelog (for bug fixes / features)
What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
If there is no source schema/definition provided for any of the projen component types introduced by cdk-serverless, the framework should be able to bootstrap placeholders, so a working project can be generated and amended with proper definitions later.
cdk-serverless needs to be applied to an already-synthesized projen project and if any of the generator components are used, the schema or definition files (e.g. an openapi.yaml) must already exist at the correct locations, or projen will crash and fail to synthesize a project.
If the given definition file name can not be found, it will now be populated with a tiny placeholder so projen can synthesize a project and the user can place the correct file later.
This PR will make cdk-serverless succeed in several cases which would cause a projen synth failure before. This PR also revises code generation for cdk-serverless to take place during the projen synthesize step rather than on component construction. This PR also refactors several paths to be relative to the project directory rather than the cwd of the node process running projen.
Status: