Open HackXIt opened 1 year ago
I think I figured it out.
According to https://github.com/geofffranks/spruce/blob/main/doc/array-merging.md the identifier 'name' is special and in the default behavior of merge
, it will merge existing items based on the value of the key.
I would need the ability to use the (( merge in <key> ))
function inside aviator, to tell it to merge on the key get
, so that I can add multiple inputs.
Hello,
I'm using
aviator
(version 1.9.0) to create a complex, or rather lengthy, pipeline. The pipeline consists of over a dozen resources, and it would be hard to maintain or add to the pipeline if created by hand.My aviator file is supposed to create an
all_resources.yml
, but it's not working as intended. The file contains the full list of resources with their respective repo-names and repo-urls, and additionally it also contains a job, where all those resources are fetched withget
as input to a compilation task. I managed to get the part of theresources:
section working and made a really identical part for theplan:
section, but SOMEHOW, the- get
lines overwrite each other, which ends up with only the last resource in the final file.I'm really at a dead end here, because I can't see anything I'm doing wrong. Can you help me out here?
This is my
aviator.yml
file:And these are the stubs: meta-resource.stub.yml
all-resources-stub.yml
When run, it correctly produces the
all-resources.yml
but inside, it failed to add each resource in thejobs
section, instead it overwrites itself, so only the last resource was added. Theresources
section correctly produces ALL generated resources.I don't know what's wrong, since the two sections are near-identical And also, I know that the resulting file currently is not correct in terms of concourse syntax, but I reduced it to a minimal example to figure out what's wrong.