-
Notifications
You must be signed in to change notification settings - Fork 176
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
feat: json-parse promotion step #3327
base: main
Are you sure you want to change the base?
Conversation
✅ Deploy Preview for docs-kargo-io ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #3327 +/- ##
==========================================
+ Coverage 52.25% 52.33% +0.07%
==========================================
Files 290 291 +1
Lines 26306 26378 +72
==========================================
+ Hits 13747 13805 +58
- Misses 11809 11822 +13
- Partials 750 751 +1 ☔ View full report in Codecov by Sentry. |
3787aaf
to
f6143e5
Compare
Sorry for the delay in the latest round of reviews here. The schema is looking pretty good. 👍 I appreciate us reaching consensus on that before starting on the implementation. There's another detail that's just occurred to me, and I'd like to invite @hiddeco and @jessesuen to weight in. Had we been thinking of a single I think I may have a slight preference for separate I wouldn't die on this hill. |
@jessesuen and I discussed this offline and agreed on separate steps (which can share a lot of common code underneath). They can even share the schema. This plan gives us the flexibility to add file parsers for additional formats in the future which may not conform to the general "shape" of these two. |
@krancour I'm still considering a couple of different conditions. Before proceeding i wanted to confirm: Do we need to support an array of files in the schema or should we assume that the json-parse step processes only one file at a time? for instance, instead of this approach:
with the corresponding config structure:
should we instead use a simpler structure like this?
with the corresponding config:
the second approach keeps it simple, and I don’t see a strong reason to introduce an object for multiple files. can you confirm if this aligns with the intended design? also i think keeping it this way maintains consistency with other steps like |
Single-file multi-output is likely the best option to keep things simple (i.e., the second option). |
Agree with @hiddeco. Most existing steps deal with one file (or one thing -- one HTTP request, one PR, etc.) at a time. |
a4de8cf
to
8154259
Compare
955ad18
to
b439000
Compare
34c6326
to
b439000
Compare
Signed-off-by: Faeka Ansari <[email protected]>
Signed-off-by: Faeka Ansari <[email protected]>
d116907
to
7b7368c
Compare
Signed-off-by: Faeka Ansari <[email protected]> docs Signed-off-by: Faeka Ansari <[email protected]> nit docs Signed-off-by: Faeka Ansari <[email protected]>
7b7368c
to
927753e
Compare
Signed-off-by: Faeka Ansari <[email protected]>
closes #3240
parse-file
step allows users to specify file paths and extract specific values using expressions. ThefromExpression
field accepts direct expressions without${{}}
wrappers, as evaluation happens within the step logic itself.eg.