mirror of
https://github.com/siderolabs/talos.git
synced 2025-10-08 14:11:13 +02:00
`structprotogen` now supports generating enums directly instead of using predeclared file and hardcoded types. To use this functionality, simply put `structprotogen:gen_enum` in the comment above const block, you want to have the proto definitions for. Closes #6215 Signed-off-by: Dmitriy Matrenichev <dmitry.matrenichev@siderolabs.com>
334 lines
7.8 KiB
Protocol Buffer
Executable File
334 lines
7.8 KiB
Protocol Buffer
Executable File
syntax = "proto3";
|
|
|
|
package talos.resource.definitions.enums;
|
|
|
|
option go_package = "github.com/siderolabs/talos/pkg/machinery/api/resource/definitions/enums";
|
|
|
|
// MachineType represents a machine type.
|
|
enum MachineType {
|
|
// TypeUnknown represents undefined node type, when there is no machine configuration yet.
|
|
TYPE_UNKNOWN = 0;
|
|
// TypeInit type designates the first control plane node to come up. You can think of it like a bootstrap node.
|
|
// This node will perform the initial steps to bootstrap the cluster -- generation of TLS assets, starting of the control plane, etc.
|
|
TYPE_INIT = 1;
|
|
// TypeControlPlane designates the node as a control plane member.
|
|
// This means it will host etcd along with the Kubernetes controlplane components such as API Server, Controller Manager, Scheduler.
|
|
TYPE_CONTROL_PLANE = 2;
|
|
// TypeWorker designates the node as a worker node.
|
|
// This means it will be an available compute node for scheduling workloads.
|
|
TYPE_WORKER = 3;
|
|
}
|
|
|
|
// NethelpersAddressFlag wraps IFF_* constants.
|
|
enum NethelpersAddressFlag {
|
|
NETHELPERS_ADDRESSFLAG_UNSPECIFIED = 0;
|
|
ADDRESS_TEMPORARY = 1;
|
|
ADDRESS_NO_DAD = 2;
|
|
ADDRESS_OPTIMISTIC = 4;
|
|
ADDRESS_DAD_FAILED = 8;
|
|
ADDRESS_HOME = 16;
|
|
ADDRESS_DEPRECATED = 32;
|
|
ADDRESS_TENTATIVE = 64;
|
|
ADDRESS_PERMANENT = 128;
|
|
ADDRESS_MANAGEMENT_TEMP = 256;
|
|
ADDRESS_NO_PREFIX_ROUTE = 512;
|
|
ADDRESS_MC_AUTO_JOIN = 1024;
|
|
ADDRESS_STABLE_PRIVACY = 2048;
|
|
}
|
|
|
|
// NethelpersADSelect is ADSelect.
|
|
enum NethelpersADSelect {
|
|
AD_SELECT_STABLE = 0;
|
|
AD_SELECT_BANDWIDTH = 1;
|
|
AD_SELECT_COUNT = 2;
|
|
}
|
|
|
|
// NethelpersARPAllTargets is an ARP targets mode.
|
|
enum NethelpersARPAllTargets {
|
|
ARP_ALL_TARGETS_ANY = 0;
|
|
ARP_ALL_TARGETS_ALL = 1;
|
|
}
|
|
|
|
// NethelpersARPValidate is an ARP Validation mode.
|
|
enum NethelpersARPValidate {
|
|
ARP_VALIDATE_NONE = 0;
|
|
ARP_VALIDATE_ACTIVE = 1;
|
|
ARP_VALIDATE_BACKUP = 2;
|
|
ARP_VALIDATE_ALL = 3;
|
|
}
|
|
|
|
// NethelpersBondMode is a bond mode.
|
|
enum NethelpersBondMode {
|
|
BOND_MODE_ROUNDROBIN = 0;
|
|
BOND_MODE_ACTIVE_BACKUP = 1;
|
|
BOND_MODE_XOR = 2;
|
|
BOND_MODE_BROADCAST = 3;
|
|
BOND_MODE8023_AD = 4;
|
|
BOND_MODE_TLB = 5;
|
|
BOND_MODE_ALB = 6;
|
|
}
|
|
|
|
// NethelpersBondXmitHashPolicy is a bond hash policy.
|
|
enum NethelpersBondXmitHashPolicy {
|
|
BOND_XMIT_POLICY_LAYER2 = 0;
|
|
BOND_XMIT_POLICY_LAYER34 = 1;
|
|
BOND_XMIT_POLICY_LAYER23 = 2;
|
|
BOND_XMIT_POLICY_ENCAP23 = 3;
|
|
BOND_XMIT_POLICY_ENCAP34 = 4;
|
|
}
|
|
|
|
// NethelpersDuplex wraps ethtool.Duplex for YAML marshaling.
|
|
enum NethelpersDuplex {
|
|
HALF = 0;
|
|
FULL = 1;
|
|
UNKNOWN = 255;
|
|
}
|
|
|
|
// NethelpersFailOverMAC is a MAC failover mode.
|
|
enum NethelpersFailOverMAC {
|
|
FAIL_OVER_MAC_NONE = 0;
|
|
FAIL_OVER_MAC_ACTIVE = 1;
|
|
FAIL_OVER_MAC_FOLLOW = 2;
|
|
}
|
|
|
|
// NethelpersFamily is a network family.
|
|
enum NethelpersFamily {
|
|
NETHELPERS_FAMILY_UNSPECIFIED = 0;
|
|
FAMILY_INET4 = 2;
|
|
FAMILY_INET6 = 10;
|
|
}
|
|
|
|
// NethelpersLACPRate is a LACP rate.
|
|
enum NethelpersLACPRate {
|
|
LACP_RATE_SLOW = 0;
|
|
LACP_RATE_FAST = 1;
|
|
}
|
|
|
|
// NethelpersLinkType is a link type.
|
|
enum NethelpersLinkType {
|
|
option allow_alias = true;
|
|
LINK_NETROM = 0;
|
|
LINK_ETHER = 1;
|
|
LINK_EETHER = 2;
|
|
LINK_AX25 = 3;
|
|
LINK_PRONET = 4;
|
|
LINK_CHAOS = 5;
|
|
LINK_IEE802 = 6;
|
|
LINK_ARCNET = 7;
|
|
LINK_ATALK = 8;
|
|
LINK_DLCI = 15;
|
|
LINK_ATM = 19;
|
|
LINK_METRICOM = 23;
|
|
LINK_IEEE1394 = 24;
|
|
LINK_EUI64 = 27;
|
|
LINK_INFINIBAND = 32;
|
|
LINK_SLIP = 256;
|
|
LINK_CSLIP = 257;
|
|
LINK_SLIP6 = 258;
|
|
LINK_CSLIP6 = 259;
|
|
LINK_RSRVD = 260;
|
|
LINK_ADAPT = 264;
|
|
LINK_ROSE = 270;
|
|
LINK_X25 = 271;
|
|
LINK_HWX25 = 272;
|
|
LINK_CAN = 280;
|
|
LINK_PPP = 512;
|
|
LINK_CISCO = 513;
|
|
LINK_HDLC = 513;
|
|
LINK_LAPB = 516;
|
|
LINK_DDCMP = 517;
|
|
LINK_RAWHDLC = 518;
|
|
LINK_TUNNEL = 768;
|
|
LINK_TUNNEL6 = 769;
|
|
LINK_FRAD = 770;
|
|
LINK_SKIP = 771;
|
|
LINK_LOOPBCK = 772;
|
|
LINK_LOCALTLK = 773;
|
|
LINK_FDDI = 774;
|
|
LINK_BIF = 775;
|
|
LINK_SIT = 776;
|
|
LINK_IPDDP = 777;
|
|
LINK_IPGRE = 778;
|
|
LINK_PIMREG = 779;
|
|
LINK_HIPPI = 780;
|
|
LINK_ASH = 781;
|
|
LINK_ECONET = 782;
|
|
LINK_IRDA = 783;
|
|
LINK_FCPP = 784;
|
|
LINK_FCAL = 785;
|
|
LINK_FCPL = 786;
|
|
LINK_FCFABRIC = 787;
|
|
LINK_FCFABRIC1 = 788;
|
|
LINK_FCFABRIC2 = 789;
|
|
LINK_FCFABRIC3 = 790;
|
|
LINK_FCFABRIC4 = 791;
|
|
LINK_FCFABRIC5 = 792;
|
|
LINK_FCFABRIC6 = 793;
|
|
LINK_FCFABRIC7 = 794;
|
|
LINK_FCFABRIC8 = 795;
|
|
LINK_FCFABRIC9 = 796;
|
|
LINK_FCFABRIC10 = 797;
|
|
LINK_FCFABRIC11 = 798;
|
|
LINK_FCFABRIC12 = 799;
|
|
LINK_IEE802TR = 800;
|
|
LINK_IEE80211 = 801;
|
|
LINK_IEE80211PRISM = 802;
|
|
LINK_IEE80211_RADIOTAP = 803;
|
|
LINK_IEE8021154 = 804;
|
|
LINK_IEE8021154MONITOR = 805;
|
|
LINK_PHONET = 820;
|
|
LINK_PHONETPIPE = 821;
|
|
LINK_CAIF = 822;
|
|
LINK_IP6GRE = 823;
|
|
LINK_NETLINK = 824;
|
|
LINK6_LOWPAN = 825;
|
|
LINK_VOID = 65535;
|
|
LINK_NONE = 65534;
|
|
}
|
|
|
|
// NethelpersOperationalState wraps rtnetlink.OperationalState for YAML marshaling.
|
|
enum NethelpersOperationalState {
|
|
OPER_STATE_UNKNOWN = 0;
|
|
OPER_STATE_NOT_PRESENT = 1;
|
|
OPER_STATE_DOWN = 2;
|
|
OPER_STATE_LOWER_LAYER_DOWN = 3;
|
|
OPER_STATE_TESTING = 4;
|
|
OPER_STATE_DORMANT = 5;
|
|
OPER_STATE_UP = 6;
|
|
}
|
|
|
|
// NethelpersPort wraps ethtool.Port for YAML marshaling.
|
|
enum NethelpersPort {
|
|
TWISTED_PAIR = 0;
|
|
AUI = 1;
|
|
MII = 2;
|
|
FIBRE = 3;
|
|
BNC = 4;
|
|
DIRECT_ATTACH = 5;
|
|
NONE = 239;
|
|
OTHER = 255;
|
|
}
|
|
|
|
// NethelpersPrimaryReselect is an ARP targets mode.
|
|
enum NethelpersPrimaryReselect {
|
|
PRIMARY_RESELECT_ALWAYS = 0;
|
|
PRIMARY_RESELECT_BETTER = 1;
|
|
PRIMARY_RESELECT_FAILURE = 2;
|
|
}
|
|
|
|
// NethelpersRouteFlag wraps RTM_F_* constants.
|
|
enum NethelpersRouteFlag {
|
|
NETHELPERS_ROUTEFLAG_UNSPECIFIED = 0;
|
|
ROUTE_NOTIFY = 256;
|
|
ROUTE_CLONED = 512;
|
|
ROUTE_EQUALIZE = 1024;
|
|
ROUTE_PREFIX = 2048;
|
|
ROUTE_LOOKUP_TABLE = 4096;
|
|
ROUTE_FIB_MATCH = 8192;
|
|
ROUTE_OFFLOAD = 16384;
|
|
ROUTE_TRAP = 32768;
|
|
}
|
|
|
|
// NethelpersRouteProtocol is a routing protocol.
|
|
enum NethelpersRouteProtocol {
|
|
PROTOCOL_UNSPEC = 0;
|
|
PROTOCOL_REDIRECT = 1;
|
|
PROTOCOL_KERNEL = 2;
|
|
PROTOCOL_BOOT = 3;
|
|
PROTOCOL_STATIC = 4;
|
|
PROTOCOL_RA = 9;
|
|
PROTOCOL_MRT = 10;
|
|
PROTOCOL_ZEBRA = 11;
|
|
PROTOCOL_BIRD = 12;
|
|
PROTOCOL_DNROUTED = 13;
|
|
PROTOCOL_XORP = 14;
|
|
PROTOCOL_NTK = 15;
|
|
PROTOCOL_DHCP = 16;
|
|
PROTOCOL_MRTD = 17;
|
|
PROTOCOL_KEEPALIVED = 18;
|
|
PROTOCOL_BABEL = 42;
|
|
PROTOCOL_OPENR = 99;
|
|
PROTOCOL_BGP = 186;
|
|
PROTOCOL_ISIS = 187;
|
|
PROTOCOL_OSPF = 188;
|
|
PROTOCOL_RIP = 189;
|
|
PROTOCOL_EIGRP = 192;
|
|
}
|
|
|
|
// NethelpersRouteType is a route type.
|
|
enum NethelpersRouteType {
|
|
TYPE_UNSPEC = 0;
|
|
TYPE_UNICAST = 1;
|
|
TYPE_LOCAL = 2;
|
|
TYPE_BROADCAST = 3;
|
|
TYPE_ANYCAST = 4;
|
|
TYPE_MULTICAST = 5;
|
|
TYPE_BLACKHOLE = 6;
|
|
TYPE_UNREACHABLE = 7;
|
|
TYPE_PROHIBIT = 8;
|
|
TYPE_THROW = 9;
|
|
TYPE_NAT = 10;
|
|
TYPE_X_RESOLVE = 11;
|
|
}
|
|
|
|
// NethelpersRoutingTable is a routing table ID.
|
|
enum NethelpersRoutingTable {
|
|
TABLE_UNSPEC = 0;
|
|
TABLE_DEFAULT = 253;
|
|
TABLE_MAIN = 254;
|
|
TABLE_LOCAL = 255;
|
|
}
|
|
|
|
// NethelpersScope is an address scope.
|
|
enum NethelpersScope {
|
|
SCOPE_GLOBAL = 0;
|
|
SCOPE_SITE = 200;
|
|
SCOPE_LINK = 253;
|
|
SCOPE_HOST = 254;
|
|
SCOPE_NOWHERE = 255;
|
|
}
|
|
|
|
// NethelpersVLANProtocol is a VLAN protocol.
|
|
enum NethelpersVLANProtocol {
|
|
NETHELPERS_VLANPROTOCOL_UNSPECIFIED = 0;
|
|
VLAN_PROTOCOL8021_Q = 33024;
|
|
VLAN_PROTOCOL8021_AD = 34984;
|
|
}
|
|
|
|
// KubespanPeerState is KubeSpan peer current state.
|
|
enum KubespanPeerState {
|
|
PEER_STATE_UNKNOWN = 0;
|
|
PEER_STATE_UP = 1;
|
|
PEER_STATE_DOWN = 2;
|
|
}
|
|
|
|
// NetworkConfigLayer describes network configuration layers, with lowest priority first.
|
|
enum NetworkConfigLayer {
|
|
CONFIG_DEFAULT = 0;
|
|
CONFIG_CMDLINE = 1;
|
|
CONFIG_PLATFORM = 2;
|
|
CONFIG_OPERATOR = 3;
|
|
CONFIG_MACHINE_CONFIGURATION = 4;
|
|
}
|
|
|
|
// NetworkOperator enumerates Talos network operators.
|
|
enum NetworkOperator {
|
|
OPERATOR_DHCP4 = 0;
|
|
OPERATOR_DHCP6 = 1;
|
|
OPERATOR_VIP = 2;
|
|
}
|
|
|
|
// RuntimeMachineStage describes the stage of the machine boot/run process.
|
|
enum RuntimeMachineStage {
|
|
MACHINE_STAGE_UNKNOWN = 0;
|
|
MACHINE_STAGE_BOOTING = 1;
|
|
MACHINE_STAGE_INSTALLING = 2;
|
|
MACHINE_STAGE_MAINTENANCE = 3;
|
|
MACHINE_STAGE_RUNNING = 4;
|
|
MACHINE_STAGE_REBOOTING = 5;
|
|
MACHINE_STAGE_SHUTTING_DOWN = 6;
|
|
MACHINE_STAGE_RESETTING = 7;
|
|
MACHINE_STAGE_UPGRADING = 8;
|
|
}
|
|
|