- Reorganized examples into osiris/, sal/, and utils/ folders - Moved hardcoded scripts to separate .rhai files - Added signature() method to JobBuilder for job signing - Updated OSIRIS context to use block_in_place instead of runtime - Removed runtime field from OsirisContext - Added typed save() methods for Note and Event objects - Updated all examples to use new structure and APIs
		
			
				
	
	
		
			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}`);
 |