The json
command just flips the format from YAML to json.
The diff
command will diff the contents of the yaml, not the actual
text. This is needed since sometimes keys are printed in different
order. -- Note this command is pretty hard to make useful.
The sortkeys
command will print the yaml out again (not necessarily
formatted the same way) but with the keys of all mappings sorted.
The kubediff
command will read a kubernetes resource yaml and
compare it to the one on the server, printing out a diff. It relies
on kubectl being installed and configured on the system.
You'll need rust to build
shyaml
.
Once you've cloned this repo, just use cargo to run shyaml:
cargo sortkeys ~/a_yaml_file.yaml
cargo run kubediff ~/kubefiles/foo.yaml