The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

yqh - Helper wrapper around yq.

SYNOPSIS

yqh -f <yaml> -a clear_array --var <var>

yqh -f <yaml> -a clear_hash --var <var>

yqh -f <yaml> -a create_array --var <var> [--vals <vals>]

yqh -f <yaml> -a create_hash --var <var>

yqh -f <yaml> -a dedup_array --var <var>

yqh -f <yaml> -a delete --var <var>

yqh -f <yaml> -a delete_array --var <var>

yqh -f <yaml> -a delete_hash --var <var>

yqh -f <yaml> -a ensure

yqh -f <yaml> -a is_array --var <var>

yqh -f <yaml> -a is_hash --var <var>

yqh -f <yaml> -a is_defined --var <var>

yqh -f <yaml> -a merge_yaml --yaml <yaml> [--mode <mode>]

yqh -f <yaml> -a push_array --var <var> --vals <vals>

yqh -f <yaml> -a set_array --var <var> --vals <vals>

yqh -f <yaml> -a set_hash --var <var> --hash <hash>

yqh -f <yaml> -a set_in_array --var <var> --vals <vals> [--dedup]

yqh -f <yaml> -a yaml_diff --yaml <yaml_file_2>

FLAGS

-f <file>

YAML file to operate on.

Default :: undef

-a <action>

Action to perform.

Default :: undef

--var <string>

Variable to set.

Default :: undef

--vals <string>

Comma seperate list of array values.

Default :: undef

--hash <string>

Comma seperate list of hash values. Each value is a sub string with key/value seperate by a /=/.

Default :: undef

--dedup <bool>

If it should dedup the data for the op.

Default :: 1

--yaml <file>

Another YAML file to use with like the merge_yaml action or the like.

Default :: undef

--mode <mode>

Merge mode to use.

Default :: deeply

ACTIONS

clear_array

Clears the specified array.

Requires :: --var

clear_hash

Clears the specified hash.

Requires :: --var

create_array

Creates the specified array if it does not exist.

Requires :: --var

Optional :: --vals

create_hash

Creates the specified hash if it does not exist.

Requires :: --var

dedup_array

Deduplicates an array.

Requires :: --var

delete

Deletes the var without checking the type.

Requires :: --var

delete_array

Deletes the specified array.

Requires :: --var

delete_hash

Deletes the specified hash.

Requires :: --var

ensure

Ensures that the YAML starts with

    %YAML $version
    ---

This is largely for use with stuff used by LibYAML as that sometimes does not play nice when that is missing.

Version 1.1 is used if it is not set.

is_array

Returns 0 or 1 based on if it is a array.

Requires :: --var

is_hash

Returns 0 or 1 based on if it is a hash.

Requires :: --var

is_defined

Returns 0 or 1 based on if it is defined.

Requires :: --var

merge_yaml

Merges the specified YAML into the YAML.

Requires :: --yaml

Optional :: --mode

push_array

Pushes a set of items onto an array.

Requires :: --var, --vals

set_array

Clears the array and sets it to specified values.

Requires :: --var, --vals

set_hash

Clears the hash and sets it to specified values.

Requires :: --var, --hash

set_in_array

Make sure a set of values exist in a array and if not add them.

Requires :: --var, --vals

Optional :: --dedup

yaml_diff

Diffs the two YAMLs.

Requires :: --yaml