OCE-Build
OCE-Build copied to clipboard
Refactor logging DI and pipeline parameters
Currently, interactive/configurable logging is only contained in the CLI, which limits the observability of the build pipeline beyond CLI-defined methods. It would be better to allow for logging to be configured/injected into the library for better interop with built-in Python logging (as well as external solutions).
Additionally, parameters passed through multiple stages of the pipeline for now were conspicuously left grouped into what can be identified as two separate categories of variables. They can instead be grouped into a build configuration and lockfile class object that performs serialization/deserialization without needing specialized handling in the CLI:
https://github.com/Qonfused/OCE-Build/blob/74c30e12cee8f23b5a3477fe68410e6e2e1de07d/ocebuild_cli/commands/build.py#L245-L251
https://github.com/Qonfused/OCE-Build/blob/74c30e12cee8f23b5a3477fe68410e6e2e1de07d/ocebuild_cli/commands/build.py#L264-L269
https://github.com/Qonfused/OCE-Build/blob/74c30e12cee8f23b5a3477fe68410e6e2e1de07d/ocebuild_cli/commands/build.py#L287-L292