Draft: Shadow refactor
Progress on #590 (closed)
- Deduplicate the shadow yaml a bit.
- Convert the yaml to a python script that outputs the yaml. This is made a bit easier by the previous step.
- Do a bit more deduplication that we can do in python that we couldn't do in yaml.
There's a good bit more we can do here, but having the config generation in python is a big step towards being able to do more automation, and makes it easier to see differences between similar hosts and processes that previously had a fair bit of duplicated boilerplate.
In terms of the simulation itself, this is nearly a pure refactor. I manually reviewed diffs in shadow's generated processed-config.yaml
at each step. It's nearly the same as before, except:
- For simplicity, all processes now get the same set of environment variables.
- Process argument order is different in a few places
Edited by Jim Newsome