optimus
optimus copied to clipboard
feat : Yaml based Plugin for CLI features
Below are powered via YAML instead of binaries:
- Survey questions for job_create & job_adhook
- Plugin Info
Changes include:
- model
Pluginto containYamlModreference toPluginSpecwhich implementsCommandLineModInterface. - Plugin discovery:
- load binary plugins first
- then load yaml plugin only if a binary (with the same name) is not loaded
-
Plugin.YamlModto drive survey (job create & add hook); instead of CLIMod if plugin is loaded as yaml - Sorting Plugins listing
- Add yaml plugin validation (strict)
optimus plugin validate --path {{yaml || dir}} (--print)
Pull Request Test Coverage Report for Build 2999216758
- 156 of 169 (92.31%) changed or added relevant lines in 2 files are covered.
- 215 unchanged lines in 5 files lost coverage.
- Overall coverage increased (+1.4%) to 77.223%
| Changes Missing Coverage | Covered Lines | Changed/Added Lines | % |
|---|---|---|---|
| plugin/yaml/plugin.go | 84 | 88 | 95.45% |
| models/plugin.go | 72 | 81 | 88.89% |
| <!-- | Total: | 156 | 169 |
| Files with Coverage Reduction | New Missed Lines | % |
|---|---|---|
| models/plugin.go | 1 | 52.68% |
| api/handler/v1beta1/job_spec.go | 15 | 71.43% |
| models/job.go | 23 | 46.91% |
| ext/scheduler/airflow2/airflow.go | 41 | 83.22% |
| job/service.go | 135 | 55.15% |
| <!-- | Total: | 215 |
| Totals | |
|---|---|
| Change from base Build 2918369205: | 1.4% |
| Covered Lines: | 7615 |
| Relevant Lines: | 9861 |