hetzner_rhai/test.rhai
2025-07-15 17:03:44 +02:00

39 lines
1.4 KiB
Plaintext

// Create client to communicate with Hetzner API
let client = new_hetzner_client(HETZNER_API_TOKEN);
// List all servers and print in table
print("Listing all servers...");
let servers = client.list_servers();
print(servers.show_table());
// List all SSH keys and print in table
print("Listing all SSH keys...");
let ssh_keys = client.list_ssh_keys();
print(ssh_keys.show_table());
// Get server through ID and print details in table
print("Listing details from server with ID 104301883...");
let test_server = client.get_server(104301883);
print(test_server.show_details());
// Enable rescue mode flag on server
// print(`Enabling rescue mode on server with ID: ${test_server.id}`);
// let root_password = client.enable_rescue_mode(test_server.id, 1337);
// print(`Root password is: ${root_password}`);
// Enable rescue mode with multiple keys from array
let ssh_keys = [100324992, 100325001];
let root_password = client.enable_rescue_mode(test_server.id, ssh_keys);
// // read SSH key from env var and use it for rescue mode
// let ssh_key_from_env = get_env("SSH_KEY_ID");
// if ssh_key_from_env != "" {
// client.enable_rescue_mode(test_server.id, ssh_key_from_env.parse_int());
// }
// Disable rescue mode flag on server
print(`Disabling rescue mode on server with ID: ${test_server.id}`);
client.disable_rescue_mode(test_server.id);
// Reboot server
print(`Rebooting server with ID: ${test_server.id}`);
client.reboot(test_server.id);