Fix the usability of templateFolder and outputFolder #87
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This updates the
templateFolder
andoutputFolder
helpers to return absolute paths instead of the raw, relative paths. Using relative paths breaks the intended usage of these functions, which is to create relative paths in templates. Specifically, these functions return garbage values when using relative path inputs to--template-url
and--output-folder
, as these get repeated in the boilerplate blueprints, leading to broken relative pathing.Using absolute paths ensure that the relative paths constructed in the boilerplate templates always point to the intended locations.
TODOs
Please ensure all of these TODOs are completed before asking for a review.
feature/new-vpc-endpoints-955
orbug/missing-count-param-434
.Note on backward compatibility
I intend to release this as backward incompatible release given that the output of
templateFolder
andoutputFolder
changes, which will break anything that renders it in, say, docs, but for most use cases of those helpers, this should be functionally equivalent. E.g., I don't expect these changes to break our Reference Architecture.All this is to say that there will be an explanation, but no migration guide will be provided given the functional equivalence.