Replies: 3 comments 7 replies
-
What is too coupled with an otomi-values repository?
Maybe give it a meaningful name:
We will hopefully not do any gotmpl parsing in typescript, as that now involves helmfile and all of our gotmpl architecture. I also don't share your conclusion to do so.
I am not following you here. We just want:
No need for anything interactive.
That is not a concern now. We are one team and have no issues with this mono repo setup. Actually only benefits. |
Beta Was this translation helpful? Give feedback.
-
Do I understand correctly from:
That you would migrate the values throughout the full git history? |
Beta Was this translation helpful? Give feedback.
-
Thanks, that is the upgrade path indeed. So to summarize all: Upgrade path
Rollback path
|
Beta Was this translation helpful? Give feedback.
-
Splits: #259.
Proposal for interface in
otomi-tasks
This REQ discussion is my proposal for a decoupled interface with respect to this #259. My idea is to provide a CLI with positional arguments in
otomi-tasks
. The advantage of creating such a flexible tool is that it isn't coupled tootomi-core
, promotes reuse (as a tool forotomi-core
and as a potentially stand-alone application).Basically, the requirements for #259 dictate that we should have a mechanism/tool to apply some transformations to
.yaml
files:To achieve this, I want to start with the end in mind. I've mocked an interface with the
yargs
library. The preview I present is split up between code and a quick demo.If you remember my demo, I've already showed one of the transformations (locations) as a proof of concept. There is definitely a lot of code re-use possible, but my concern is that it is too coupled with an
otomi-values
repository.Code
Demo
Explanation
.ts
file, but imagine an executable likeyq-recipes
.yq-recipes
, because it basically implements advancedyq
commands. Yes, it could be implemented withyq
andbash
, but I suppose it's quite convoluted for generalising certain commands, e.g.: https://stackoverflow.com/questions/42214984/jq-how-to-move-the-child-members-to-parent provides an example how to transforma
tob
. Buta.b.c.d
->a.b.c.e
is another matter, and other transformations, become tricky to maintain without abstracting the plumbing.Use in
otomi-core
I imagine we will use the executable to apply the changes
yaml
. E.g.:We need the forward script to:
the backward logic:
otomi
command that works with valuesotomi migrate-values $SEMVER
tl;dr
otomi-tasks
story andotomi-core
story. Both will be re-estimated.Beta Was this translation helpful? Give feedback.
All reactions