feat: info & stats commands

This commit is contained in:
CyberL1 2024-11-30 15:12:32 +01:00
parent ad8211243d
commit 9bf26341aa

35
dlinux
View File

@ -13,23 +13,52 @@ print_help() {
printf " printf "
$0 hello - Get a hello message $0 hello - Get a hello message
$0 name - Get your SSHID $0 name - Get your SSHID
$0 info - Get info about your container
$0 stats - Get your container memory usage statistics
" "
} }
# Helper function # Helper function
call_api() { call_api() {
curl -X $1 -H "x-ssh-auth: $API_KEY" "https://api.ssh.surf/$2" curl -X $1 -H "x-ssh-auth: $API_KEY" "https://api.ssh.surf/$2" 2> /dev/null
} }
# Commands # Commands
command_hello() { command_hello() {
call_api GET hello | jq .message call_api GET hello | jq -r .message
} }
command_name() { command_name() {
call_api GET name | jq .message call_api GET name | jq -r .message
}
command_info() {
data=$(call_api GET info)
printf "
Name: $(echo $data | jq -r .data.name)
IP Address: $(echo $data | jq -r .data.IPAddress)
MAC Address: $(echo $data | jq -r .data.MACAddress)
Memory: $(echo $data | jq -r .data.memory)
CPUs: $(echo $data | jq -r .data.cpus)
Restart policy: $(echo $data | jq -r .data.restartPolicy.Name)
Restarts: $(echo $data | jq -r .data.restarts)
State: $(echo $data | jq -r .data.state.Status)
Pid: $(echo $data | jq -r .data.state.Pid)
Started at: $(echo $data | jq -r .data.state.StartedAt)
"
}
command_stats() {
data=$(call_api GET stats)
printf "
Raw: $(echo $data | jq -r .data.memory.raw)
Percentage: $(echo $data | jq -r .data.memory.percent)%
CPU: $(echo $data | jq -r .data.cpu)%
"
} }
# Command handler # Command handler