Store VM metadata as JSON
This commit is contained in:
parent
bbd57d8dd2
commit
7af04b7535
11 changed files with 188 additions and 178 deletions
22
ps.sh
22
ps.sh
|
|
@ -3,20 +3,14 @@ set -euo pipefail
|
|||
|
||||
shopt -s nullglob
|
||||
|
||||
get_prop() {
|
||||
local info="$1"
|
||||
local key="$2"
|
||||
awk -F= -v k="$key" '$1==k {print $2}' "$info"
|
||||
}
|
||||
|
||||
for info in state/vms/*/info; do
|
||||
id="$(get_prop "$info" "id")"
|
||||
name="$(get_prop "$info" "name")"
|
||||
created_at="$(get_prop "$info" "created_at")"
|
||||
guest_ip="$(get_prop "$info" "guest_ip")"
|
||||
pid="$(get_prop "$info" "pid")"
|
||||
tap="$(get_prop "$info" "tap")"
|
||||
api_sock="$(get_prop "$info" "api_sock")"
|
||||
for vm_json in state/vms/*/vm.json; do
|
||||
id="$(jq -r '.meta.id // empty' "$vm_json")"
|
||||
name="$(jq -r '.meta.name // empty' "$vm_json")"
|
||||
created_at="$(jq -r '.meta.created_at // empty' "$vm_json")"
|
||||
guest_ip="$(jq -r '.meta.guest_ip // empty' "$vm_json")"
|
||||
pid="$(jq -r '.meta.pid // empty' "$vm_json")"
|
||||
tap="$(jq -r '.meta.tap // empty' "$vm_json")"
|
||||
api_sock="$(jq -r '.meta.api_sock // empty' "$vm_json")"
|
||||
|
||||
if [[ -z "$pid" || -z "$api_sock" ]]; then
|
||||
continue
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue