From: Dietmar Maurer Date: Thu, 26 Jul 2018 07:50:25 +0000 (+0200) Subject: PVE::CLIFormatter - new 'yaml' renderer X-Git-Url: https://git.proxmox.com/?p=pve-common.git;a=commitdiff_plain;h=ba752c806222675c4d94c6253e2720cd8d81b881;hp=2e2a45027220fb291bb9a3c8cd304907ac76d9c2 PVE::CLIFormatter - new 'yaml' renderer Generates nice and readable output for list of string and simple objects. --- diff --git a/src/PVE/CLIFormatter.pm b/src/PVE/CLIFormatter.pm index 8bb42ca..f9eb03f 100644 --- a/src/PVE/CLIFormatter.pm +++ b/src/PVE/CLIFormatter.pm @@ -4,6 +4,7 @@ use strict; use warnings; use I18N::Langinfo; use POSIX qw(strftime); +use CPAN::Meta::YAML; # comes with perl-modules use PVE::JSONSchema; use PVE::PTY; @@ -81,6 +82,17 @@ sub render_bytes { PVE::JSONSchema::register_renderer('bytes', \&render_bytes); +sub render_yaml { + my ($value) = @_; + + my $data = CPAN::Meta::YAML::Dump($value); + $data =~ s/^---[\n\s]//; # remove yaml marker + + return $data; +} + +PVE::JSONSchema::register_renderer('yaml', \&render_yaml); + sub query_terminal_options { my ($options) = @_;