Serge Logvinov 06fea24414
feat: expand platform metadata resources
* add IPv6 to the ExternalIPs resource.
* platformMetadata can define Spot instances.

Signed-off-by: Serge Logvinov <serge.logvinov@sinextra.dev>
Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-11-07 18:57:17 +04:00

66 lines
1.6 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 "resource/definitions/enums/enums.proto";
// 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;
}
// 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;
}
// MountStatusSpec describes status of the defined sysctls.
message MountStatusSpec {
string source = 1;
string target = 2;
string filesystem_type = 3;
repeated string options = 4;
}
// 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;
}
// UnmetCondition is a failure which prevents machine from being ready at the stage.
message UnmetCondition {
string name = 1;
string reason = 2;
}