88 lines
2.2 KiB
Plaintext
88 lines
2.2 KiB
Plaintext
export def _ansi [
|
|
arg: string
|
|
]: nothing -> string {
|
|
if (is-terminal --stdout) {
|
|
$"(ansi $arg)"
|
|
} else {
|
|
""
|
|
}
|
|
}
|
|
|
|
export def log_debug [
|
|
msg: string
|
|
]: nothing -> nothing {
|
|
use std
|
|
std log debug $msg
|
|
}
|
|
|
|
export def format_out [
|
|
data: string
|
|
src?: string
|
|
mode?: string
|
|
]: nothing -> string {
|
|
let msg = match $src {
|
|
"json" => ($data | from json),
|
|
_ => $data,
|
|
}
|
|
match $mode {
|
|
"table" => {
|
|
($msg | table -i false)
|
|
},
|
|
_ => { $msg }
|
|
}
|
|
}
|
|
export def _print [
|
|
data: string
|
|
src?: string
|
|
context?: string
|
|
mode?: string
|
|
]: nothing -> nothing {
|
|
if ($env.PROVISIONING_OUT | is-empty) {
|
|
print (format_out $data $src $mode)
|
|
} else {
|
|
match $env.PROVISIONING_OUT {
|
|
"json" => {
|
|
if $context != "result" { return }
|
|
if $src == "json" {
|
|
print ($data)
|
|
} else {
|
|
print ($data | to json)
|
|
}
|
|
},
|
|
"yaml" | "yml" => {
|
|
if $context != "result" { return }
|
|
if $src == "json" {
|
|
print ($data | from json | to yaml)
|
|
} else {
|
|
print ($data | to yaml)
|
|
}
|
|
},
|
|
"text" | "txt" => {
|
|
if $context != "result" { return }
|
|
print (format_out $data $src $mode)
|
|
},
|
|
_ => {
|
|
if ($env.PROVISIONING_OUT | str ends-with ".json" ) {
|
|
if $context != "result" { return }
|
|
(if $src == "json" {
|
|
($data)
|
|
} else {
|
|
($data | to json)
|
|
} | save --force $env.PROVISIONING_OUT)
|
|
} else if ($env.PROVISIONING_OUT | str ends-with ".yaml" ) {
|
|
if $context != "result" { return }
|
|
(if $src == "json" {
|
|
($data | from json | to yaml)
|
|
} else {
|
|
($data | to yaml)
|
|
} | save --force $env.PROVISIONING_OUT)
|
|
} else if ($env.PROVISIONING_OUT | str ends-with ".text" ) or ($env.PROVISIONING_OUT | str ends-with ".txt" ) {
|
|
if $context != "result" { return }
|
|
format_out $data $src $mode | save --force $env.PROVISIONING_OUT
|
|
} else {
|
|
format_out $data $src $mode | save --append $env.PROVISIONING_OUT
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |