-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
No Pipeline Block #3
base: main
Are you sure you want to change the base?
Conversation
Split parsing code into more specific files Get rid of unused code Get rid of defaultCtx, just use an empty one insteads
Pass library.Ctx to pipeline parsing so that we can use the functions that return mover descriptions SpecMap replaced with a []*Spec, specs are now only named by themselves
Since we get the mover options as cty values that are already decoded, the hcl body decoding was pretty redundant. In the future, we'll no longer make a parser, we'll just decode with regular `cty:` tags Building pipelines no longer need an evalctx. The one responsible for meta-producers needs the library context
Drop support for `psy:` struct tags, no longer use the fork providing FromCtyValueTagged
Remove pipeline blocks from the spec, replacing it with implicit decleration - that is, all of the movers of a particular group of files are implied to be of the same, single pipeline.
Since the functions kinda morphed into the same thing
Pipelines now live in `group {}` blocks. IDK if this is better than the `pipeline {}` blocks we started with, but I think so? When we want to build an executable pipeline, we monify the group. Still need to make the groups filterable with the cli
Move some more specific code for transforming pipeline and file groups into main Split out code that parses values + pipelines into full, final name TBD Move MonifyGroup into main
Create a file type in parse that has all the parsing stuff for files attached to it. Move the file group parsing stuff to its own type that implements file
The "root group" is inserted at the front of the groups list
Allow `GroupDesc` to be filtered by group names
print error in hcl diag
Codecov ReportAttention: Patch coverage is
❗ Your organization needs to install the Codecov GitHub app to enable full functionality. Additional details and impacted files@@ Coverage Diff @@
## main #3 +/- ##
===========================================
+ Coverage 33.95% 44.10% +10.14%
===========================================
Files 23 19 -4
Lines 1013 959 -54
===========================================
+ Hits 344 423 +79
+ Misses 617 503 -114
+ Partials 52 33 -19 ☔ View full report in Codecov by Sentry. |
The
single-pipeline
branch refactors the language to remove thepipeline
block, instead composing all of the mover descriptions into a single pipeline. Mover descriptions can be at the root level ( which can be excluded with-no-root
), or in agroup "name"
block ( which be included with the-group <name>
).The
parse
( renamed fromconfigure
) has been refactored along with this. AFile
interface impl exists for single files and groups of files, which provides a way to parse groups. Groups can be monified into a single pipeline