yq to get values from key value pair

Viewed 10141

I have a simple values.yaml file which has below data:

images:
  tags:
    one: abc:v0.3-16-07
    two: xyz:ng-0.23.0
    pq: qaa:0df1e21e752b3d3.2020-04-27_1

Using

yq -r --yaml-output ".images.tags" values.yaml

I can get below output

one: abc:v0.3-16-07
two: xyz:ng-0.23.0
pq: qaa:0df1e21e752b3d3.2020-04-27_1

But how can i get the values from the above?

2 Answers

You don't need to use --yaml-output flag, which tries to parse the output of the filter defined as a YAML entity. For getting the raw strings, use a filter in the JSON context itself

yq -r '.images.tags[]'

Found the answer, Inian kind of posted an answer but there was a small change

yq -r '.images.tags | to_entries[].value | split(":")[0]' values.yaml

Related