42 lines
1.2 KiB
Plaintext
42 lines
1.2 KiB
Plaintext
// Basic example of using the Zinit client in Rhai
|
|
|
|
// Socket path for Zinit
|
|
let socket_path = "/tmp/zinit.sock";
|
|
|
|
// Create a new service
|
|
print("\nCreating a new service:");
|
|
let new_service = "rhai-test-service";
|
|
let exec_command = "echo 'Hello from Rhai'";
|
|
let oneshot = true;
|
|
|
|
let result = zinit_create_service(socket_path, new_service, exec_command, oneshot);
|
|
print(`Service created: ${result}`);
|
|
|
|
// Monitor the service
|
|
print("\nMonitoring the service:");
|
|
let monitor_result = zinit_monitor(socket_path, new_service);
|
|
print(`Service monitored: ${monitor_result}`);
|
|
|
|
// Start the service
|
|
print("\nStarting the service:");
|
|
let start_result = zinit_start(socket_path, new_service);
|
|
print(`Service started: ${start_result}`);
|
|
|
|
// Get logs for a specific service
|
|
print("\nGetting logs:");
|
|
let logs = zinit_logs(socket_path, new_service);
|
|
|
|
for log in logs {
|
|
print(log);
|
|
}
|
|
// Clean up
|
|
print("\nCleaning up:");
|
|
let stop_result = zinit_stop(socket_path, new_service);
|
|
print(`Service stopped: ${stop_result}`);
|
|
|
|
let forget_result = zinit_forget(socket_path, new_service);
|
|
print(`Service forgotten: ${forget_result}`);
|
|
|
|
let delete_result = zinit_delete_service(socket_path, new_service);
|
|
print(`Service deleted: ${delete_result}`);
|