mirror of
				https://github.com/siderolabs/talos.git
				synced 2025-10-31 16:31:13 +01:00 
			
		
		
		
	Talos diagnostics analyzes current system state and comes up with detailed warnings on the system misconfiguration which might be tricky to figure out other way. Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
		
			
				
	
	
		
			151 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			151 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
		
			Executable File
		
	
	
	
	
| syntax = "proto3";
 | |
| 
 | |
| package talos.resource.definitions.runtime;
 | |
| 
 | |
| option go_package = "github.com/siderolabs/talos/pkg/machinery/api/resource/definitions/runtime";
 | |
| 
 | |
| import "common/common.proto";
 | |
| import "google/protobuf/duration.proto";
 | |
| import "resource/definitions/enums/enums.proto";
 | |
| 
 | |
| // DevicesStatusSpec is the spec for devices status.
 | |
| message DevicesStatusSpec {
 | |
|   bool ready = 1;
 | |
| }
 | |
| 
 | |
| // DiagnosticSpec is the spec for devices status.
 | |
| message DiagnosticSpec {
 | |
|   string message = 1;
 | |
|   repeated string details = 2;
 | |
| }
 | |
| 
 | |
| // EventSinkConfigSpec describes configuration of Talos event log streaming.
 | |
| message EventSinkConfigSpec {
 | |
|   string endpoint = 1;
 | |
| }
 | |
| 
 | |
| // ExtensionServiceConfigFile describes extensions service config files.
 | |
| message ExtensionServiceConfigFile {
 | |
|   string content = 1;
 | |
|   string mount_path = 2;
 | |
| }
 | |
| 
 | |
| // ExtensionServiceConfigSpec describes status of rendered extensions service config files.
 | |
| message ExtensionServiceConfigSpec {
 | |
|   repeated ExtensionServiceConfigFile files = 1;
 | |
|   repeated string environment = 2;
 | |
| }
 | |
| 
 | |
| // ExtensionServiceConfigStatusSpec describes status of rendered extensions service config files.
 | |
| message ExtensionServiceConfigStatusSpec {
 | |
|   string spec_version = 1;
 | |
| }
 | |
| 
 | |
| // KernelModuleSpecSpec describes Linux kernel module to load.
 | |
| message KernelModuleSpecSpec {
 | |
|   string name = 1;
 | |
|   repeated string parameters = 2;
 | |
| }
 | |
| 
 | |
| // KernelParamSpecSpec describes status of the defined sysctls.
 | |
| message KernelParamSpecSpec {
 | |
|   string value = 1;
 | |
|   bool ignore_errors = 2;
 | |
| }
 | |
| 
 | |
| // KernelParamStatusSpec describes status of the defined sysctls.
 | |
| message KernelParamStatusSpec {
 | |
|   string current = 1;
 | |
|   string default = 2;
 | |
|   bool unsupported = 3;
 | |
| }
 | |
| 
 | |
| // KmsgLogConfigSpec describes configuration for kmsg log streaming.
 | |
| message KmsgLogConfigSpec {
 | |
|   repeated common.URL destinations = 1;
 | |
| }
 | |
| 
 | |
| // MachineStatusSpec describes status of the defined sysctls.
 | |
| message MachineStatusSpec {
 | |
|   talos.resource.definitions.enums.RuntimeMachineStage stage = 1;
 | |
|   MachineStatusStatus status = 2;
 | |
| }
 | |
| 
 | |
| // MachineStatusStatus describes machine current status at the stage.
 | |
| message MachineStatusStatus {
 | |
|   bool ready = 1;
 | |
|   repeated UnmetCondition unmet_conditions = 2;
 | |
| }
 | |
| 
 | |
| // MaintenanceServiceConfigSpec describes configuration for maintenance service API.
 | |
| message MaintenanceServiceConfigSpec {
 | |
|   string listen_address = 1;
 | |
|   repeated common.NetIP reachable_addresses = 2;
 | |
| }
 | |
| 
 | |
| // MetaKeySpec describes status of the defined sysctls.
 | |
| message MetaKeySpec {
 | |
|   string value = 1;
 | |
| }
 | |
| 
 | |
| // MetaLoadedSpec is the spec for meta loaded. The Done field is always true when resource exists.
 | |
| message MetaLoadedSpec {
 | |
|   bool done = 1;
 | |
| }
 | |
| 
 | |
| // MountStatusSpec describes status of the defined sysctls.
 | |
| message MountStatusSpec {
 | |
|   string source = 1;
 | |
|   string target = 2;
 | |
|   string filesystem_type = 3;
 | |
|   repeated string options = 4;
 | |
|   bool encrypted = 5;
 | |
|   repeated string encryption_providers = 6;
 | |
| }
 | |
| 
 | |
| // PlatformMetadataSpec describes platform metadata properties.
 | |
| message PlatformMetadataSpec {
 | |
|   string platform = 1;
 | |
|   string hostname = 2;
 | |
|   string region = 3;
 | |
|   string zone = 4;
 | |
|   string instance_type = 5;
 | |
|   string instance_id = 6;
 | |
|   string provider_id = 7;
 | |
|   bool spot = 8;
 | |
|   string internal_dns = 9;
 | |
|   string external_dns = 10;
 | |
| }
 | |
| 
 | |
| // SecurityStateSpec describes the security state resource properties.
 | |
| message SecurityStateSpec {
 | |
|   bool secure_boot = 1;
 | |
|   string uki_signing_key_fingerprint = 2;
 | |
|   string pcr_signing_key_fingerprint = 3;
 | |
| }
 | |
| 
 | |
| // UniqueMachineTokenSpec is the spec for the machine unique token. Token can be empty if machine wasn't assigned any.
 | |
| message UniqueMachineTokenSpec {
 | |
|   string token = 1;
 | |
| }
 | |
| 
 | |
| // UnmetCondition is a failure which prevents machine from being ready at the stage.
 | |
| message UnmetCondition {
 | |
|   string name = 1;
 | |
|   string reason = 2;
 | |
| }
 | |
| 
 | |
| // WatchdogTimerConfigSpec describes configuration of watchdog timer.
 | |
| message WatchdogTimerConfigSpec {
 | |
|   string device = 1;
 | |
|   google.protobuf.Duration timeout = 2;
 | |
| }
 | |
| 
 | |
| // WatchdogTimerStatusSpec describes configuration of watchdog timer.
 | |
| message WatchdogTimerStatusSpec {
 | |
|   string device = 1;
 | |
|   google.protobuf.Duration timeout = 2;
 | |
|   google.protobuf.Duration feed_interval = 3;
 | |
| }
 | |
| 
 |