Closed jeremy-wl closed 5 years ago
/cc @kevinrizza @MartinBasti
@jeremylinlin Your PR description describes the limitations of what is happening now in terms of how you wanted the code to be refactored, but it does not actually describe what has changed from the perspective of how the API is affected. Could you please explain in your description (and commit message) which edge cases this PR is attempting to resolve, and what is expected from this?
@kevinrizza Thanks for the comment! I've updated the description and commit message.
@kevinrizza Thanks for the comments! I have addressed them and please take a look for new changes.
/lgtm
Hey @MartinBasti, could you please also review it when you get a chance? Thank you!
New changes are detected. LGTM label has been removed.
@MartinBasti Thank you very much for the comments! I have addressed all of them and please take a look when you are free.
We previously require the nested manifest directories to have a SemVer name. But this blocks builds from another team that uses courier in their pipeline.
So we need to relax that requirement and parse all directories even if it does not have a SemVer name.
The requirement is removed in https://github.com/operator-framework/operator-courier/pull/116 and https://github.com/operator-framework/operator-courier/pull/118 when we verify manifest directory and run
flatten
command. But we need to further refactor it to only parse valid manifest folders, and ignore the rest (instead of raising errors when invalid folders are parsed). In the meantime, we also need to properly identify whether the input source directory structure is flat or nested after parsing all directories and files, and perform different actions accordingly.APIs affected:
build_and_verify(source_dir, ...)
build_verify_and_push(source_dir, ...)
flatten
CLI subcommands affected
verify
push
flatten
Valid Nested Layout
Valid Flat Layout