functions/vault.ps1

1
2
3
4
5
6
7
8
9
10
11
12
function Export-VaultCache([Parameter(Mandatory=$true,ValueFromPipeline=$true)]$data, [Parameter(Mandatory=$true)]$container) {
    invoke vault write $container "value=$data" -showoutput:$false
}

function Import-VaultCache([Parameter(Mandatory=$true)]$container) {    
    $json = invoke vault read "-format=json" $container -passthru -showoutput:$false -nothrow -passerrorstream | out-string
    if ($lastexitcode -ne 0) {
        throw "vault read failed: $json"
    }
    $data = ConvertFrom-Json $json
    return $data.data
}