API Reference
Packages
Section titled “Packages”- iam.miloapis.com/v1alpha1
- networking.datumapis.com/v1alpha
- resourcemanager.miloapis.com/v1alpha1
- telemetry.miloapis.com/v1alpha1
iam.miloapis.com/v1alpha1
Section titled “iam.miloapis.com/v1alpha1”Package v1alpha1 contains API Schema definitions for the iam v1alpha1 API group
Resource Types
Section titled “Resource Types”Group is the Schema for the groups API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersionstring | iam.miloapis.com/v1alpha1 | ||
kindstring | Group | ||
metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
statusGroupStatus |
GroupMembership
Section titled “GroupMembership”GroupMembership is the Schema for the groupmemberships API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersionstring | iam.miloapis.com/v1alpha1 | ||
kindstring | GroupMembership | ||
metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
specGroupMembershipSpec | |||
statusGroupMembershipStatus |
GroupMembershipSpec
Section titled “GroupMembershipSpec”GroupMembershipSpec defines the desired state of GroupMembership
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
userRefUserReference | UserRef is a reference to the User that is a member of the Group. User is a cluster-scoped resource. | Required: {} | |
groupRefGroupReference | GroupRef is a reference to the Group. Group is a namespaced resource. | Required: {} |
GroupMembershipStatus
Section titled “GroupMembershipStatus”GroupMembershipStatus defines the observed state of GroupMembership
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
conditionsCondition array | Conditions represent the latest available observations of an object’s current state. |
GroupReference
Section titled “GroupReference”GroupReference contains information that points to the Group being referenced. Group is a namespaced resource.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
namestring | Name is the name of the Group being referenced. | Required: {} | |
namespacestring | Namespace of the referenced Group. | Required: {} |
GroupStatus
Section titled “GroupStatus”GroupStatus defines the observed state of Group
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
conditionsCondition array | Conditions represent the latest available observations of an object’s current state. |
MachineAccount
Section titled “MachineAccount”MachineAccount is the Schema for the machine accounts API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersionstring | iam.miloapis.com/v1alpha1 | ||
kindstring | MachineAccount | ||
metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
specMachineAccountSpec | |||
statusMachineAccountStatus |
MachineAccountKey
Section titled “MachineAccountKey”MachineAccountKey is the Schema for the machineaccountkeys API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersionstring | iam.miloapis.com/v1alpha1 | ||
kindstring | MachineAccountKey | ||
metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
specMachineAccountKeySpec | |||
statusMachineAccountKeyStatus |
MachineAccountKeySpec
Section titled “MachineAccountKeySpec”MachineAccountKeySpec defines the desired state of MachineAccountKey
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
machineAccountNamestring | MachineAccountName is the name of the MachineAccount that owns this key. | Required: {} | |
expirationDateTime | ExpirationDate is the date and time when the MachineAccountKey will expire. If not specified, the MachineAccountKey will never expire. | Optional: {} | |
publicKeystring | PublicKey is the public key of the MachineAccountKey. If not specified, the MachineAccountKey will be created with an auto-generated public key. | Optional: {} |
MachineAccountKeyStatus
Section titled “MachineAccountKeyStatus”MachineAccountKeyStatus defines the observed state of MachineAccountKey
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
authProviderKeyIdstring | AuthProviderKeyID is the unique identifier for the key in the auth provider. This field is populated by the controller after the key is created in the auth provider. For example, when using Zitadel, a typical value might be: “326102453042806786” | ||
conditionsCondition array | Conditions provide conditions that represent the current status of the MachineAccountKey. | [map[lastTransitionTime:1970-01-01T00:00:00Z message:Waiting for control plane to reconcile reason:Unknown status:Unknown type:Ready]] | Optional: {} |
MachineAccountSpec
Section titled “MachineAccountSpec”MachineAccountSpec defines the desired state of MachineAccount
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
statestring | The state of the machine account. This state can be safely changed as needed. States: - Active: The machine account can be used to authenticate. - Inactive: The machine account is prohibited to be used to authenticate, and revokes all existing sessions. | Active | Enum: [Active Inactive] Optional: {} |
MachineAccountStatus
Section titled “MachineAccountStatus”MachineAccountStatus defines the observed state of MachineAccount
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
emailstring | The computed email of the machine account following the pattern: {metadata.name}@{metadata.namespace}.{project.metadata.name}.{global-suffix} | ||
statestring | State represents the current activation state of the machine account from the auth provider. This field tracks the state from the previous generation and is updated when state changes are successfully propagated to the auth provider. It helps optimize performance by only updating the auth provider when a state change is detected. | Enum: [Active Inactive] | |
conditionsCondition array | Conditions provide conditions that represent the current status of the MachineAccount. |
ParentResourceRef
Section titled “ParentResourceRef”ParentResourceRef defines the reference to a parent resource
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
apiGroupstring | APIGroup is the group for the resource being referenced. If APIGroup is not specified, the specified Kind must be in the core API group. For any other third-party types, APIGroup is required. | Optional: {} | |
kindstring | Kind is the type of resource being referenced. | Required: {} |
PolicyBinding
Section titled “PolicyBinding”PolicyBinding is the Schema for the policybindings API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersionstring | iam.miloapis.com/v1alpha1 | ||
kindstring | PolicyBinding | ||
metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
specPolicyBindingSpec | |||
statusPolicyBindingStatus |
PolicyBindingSpec
Section titled “PolicyBindingSpec”PolicyBindingSpec defines the desired state of PolicyBinding
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
roleRefRoleReference | RoleRef is a reference to the Role that is being bound. This can be a reference to a Role custom resource. | Required: {} | |
subjectsSubject array | Subjects holds references to the objects the role applies to. | MinItems: 1 Required: {} | |
resourceSelectorResourceSelector | ResourceSelector defines which resources the subjects in the policy binding should have the role applied to. Options within this struct are mutually exclusive. | Required: {} |
PolicyBindingStatus
Section titled “PolicyBindingStatus”PolicyBindingStatus defines the observed state of PolicyBinding
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
observedGenerationinteger | ObservedGeneration is the most recent generation observed for this PolicyBinding by the controller. | Optional: {} | |
conditionsCondition array | Conditions provide conditions that represent the current status of the PolicyBinding. | [map[lastTransitionTime:1970-01-01T00:00:00Z message:Waiting for control plane to reconcile reason:Unknown status:Unknown type:Ready]] | Optional: {} |
ProtectedResourceSpec
Section titled “ProtectedResourceSpec”ProtectedResourceSpec defines the desired state of ProtectedResource
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
serviceRefServiceReference | ServiceRef references the service definition this protected resource belongs to. | Required: {} | |
kindstring | The kind of the resource. This will be in the format Workload. | Required: {} | |
singularstring | The singular form for the resource type, e.g. ‘workload’. Must follow camelCase format. | Required: {} | |
pluralstring | The plural form for the resource type, e.g. ‘workloads’. Must follow camelCase format. | Required: {} | |
parentResourcesParentResourceRef array | A list of resources that are registered with the platform that may be a parent to the resource. Permissions may be bound to a parent resource so they can be inherited down the resource hierarchy. | Optional: {} | |
permissionsstring array | A list of permissions that are associated with the resource. | Required: {} |
ProtectedResourceStatus
Section titled “ProtectedResourceStatus”ProtectedResourceStatus defines the observed state of ProtectedResource
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
conditionsCondition array | Conditions provide conditions that represent the current status of the ProtectedResource. | [map[lastTransitionTime:1970-01-01T00:00:00Z message:Waiting for control plane to reconcile reason:Unknown status:Unknown type:Ready]] | Optional: {} |
observedGenerationinteger | ObservedGeneration is the most recent generation observed for this ProtectedResource. It corresponds to the ProtectedResource’s generation, which is updated on mutation by the API Server. | Optional: {} |
ResourceKind
Section titled “ResourceKind”ResourceKind contains enough information to identify a resource type.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
apiGroupstring | APIGroup is the group for the resource type being referenced. If APIGroup is not specified, the specified Kind must be in the core API group. | Optional: {} | |
kindstring | Kind is the type of resource being referenced. | Required: {} |
ResourceReference
Section titled “ResourceReference”ResourceReference contains enough information to let you identify a specific API resource instance.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
apiGroupstring | APIGroup is the group for the resource being referenced. If APIGroup is not specified, the specified Kind must be in the core API group. For any other third-party types, APIGroup is required. | Optional: {} | |
kindstring | Kind is the type of resource being referenced. | Required: {} | |
namestring | Name is the name of resource being referenced. | Required: {} | |
uidstring | UID is the unique identifier of the resource being referenced. | Required: {} | |
namespacestring | Namespace is the namespace of resource being referenced. Required for namespace-scoped resources. Omitted for cluster-scoped resources. | Optional: {} |
ResourceSelector
Section titled “ResourceSelector”ResourceSelector defines which resources the policy binding applies to. Either resourceRef or resourceKind must be specified, but not both.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
resourceRefResourceReference | ResourceRef provides a reference to a specific resource instance. Mutually exclusive with resourceKind. | Optional: {} | |
resourceKindResourceKind | ResourceKind specifies that the policy binding should apply to all resources of a specific kind. Mutually exclusive with resourceRef. | Optional: {} |
RoleReference
Section titled “RoleReference”RoleReference contains information that points to the Role being used
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
namestring | Name is the name of resource being referenced | Required: {} | |
namespacestring | Namespace of the referenced Role. If empty, it is assumed to be in the PolicyBinding’s namespace. | Optional: {} |
RoleSpec
Section titled “RoleSpec”RoleSpec defines the desired state of Role
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
includedPermissionsstring array | The names of the permissions this role grants when bound in an IAM policy. All permissions must be in the format: \{service\}.\{resource\}.\{action\}(e.g. compute.workloads.create). | Optional: {} | |
launchStagestring | Defines the launch stage of the IAM Role. Must be one of: Early Access, Alpha, Beta, Stable, Deprecated. | Required: {} | |
inheritedRolesScopedRoleReference array | The list of roles from which this role inherits permissions. Each entry must be a valid role resource name. | Optional: {} |
RoleStatus
Section titled “RoleStatus”RoleStatus defines the observed state of Role
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
parentstring | The resource name of the parent the role was created under. | Optional: {} | |
conditionsCondition array | Conditions provide conditions that represent the current status of the Role. | Optional: {} | |
observedGenerationinteger | ObservedGeneration is the most recent generation observed by the controller. |
ScopedRoleReference
Section titled “ScopedRoleReference”ScopedRoleReference defines a reference to another Role, scoped by namespace. This is used for purposes like role inheritance where a simple name and namespace is sufficient to identify the target role.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
namestring | Name of the referenced Role. | Required: {} | |
namespacestring | Namespace of the referenced Role. If not specified, it defaults to the namespace of the resource containing this reference. | Optional: {} |
ServiceReference
Section titled “ServiceReference”ServiceReference holds a reference to a service definition.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
namestring | Name is the resource name of the service definition. | Required: {} |
Subject
Section titled “Subject”Subject contains a reference to the object or user identities a role binding applies to. This can be a User or Group.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
kindstring | Kind of object being referenced. Values defined in Kind constants. | Enum: [User Group] Required: {} | |
namestring | Name of the object being referenced. A special group name of ”system:authenticated-users” can be used to refer to all authenticated users. | Required: {} | |
namespacestring | Namespace of the referenced object. If DNE, then for an SA it refers to the PolicyBinding resource’s namespace. For a User or Group, it is ignored. | Optional: {} | |
uidstring | UID of the referenced object. Optional for system groups (groups with names starting with “system:”). | Optional: {} |
UserDeactivation
Section titled “UserDeactivation”UserDeactivation is the Schema for the userdeactivations API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersionstring | iam.miloapis.com/v1alpha1 | ||
kindstring | UserDeactivation | ||
metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
specUserDeactivationSpec | |||
statusUserDeactivationStatus |
UserDeactivationSpec
Section titled “UserDeactivationSpec”UserDeactivationSpec defines the desired state of UserDeactivation
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
userRefUserReference | UserRef is a reference to the User being deactivated. User is a cluster-scoped resource. | Required: {} | |
reasonstring | Reason is the internal reason for deactivation. | Required: {} | |
descriptionstring | Description provides detailed internal description for the deactivation. | Optional: {} | |
deactivatedBystring | DeactivatedBy indicates who initiated the deactivation. | Required: {} |
UserDeactivationStatus
Section titled “UserDeactivationStatus”UserDeactivationStatus defines the observed state of UserDeactivation
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
conditionsCondition array | Conditions represent the latest available observations of an object’s current state. | [map[lastTransitionTime:1970-01-01T00:00:00Z message:Waiting for control plane to reconcile reason:Unknown status:Unknown type:Ready]] | Optional: {} |
UserInvitationSpec
Section titled “UserInvitationSpec”UserInvitationSpec defines the desired state of UserInvitation
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
emailstring | The email of the user being invited. | Required: {} | |
givenNamestring | The first name of the user being invited. | Optional: {} | |
familyNamestring | The last name of the user being invited. | Optional: {} | |
rolesRoleReference array | The roles that will be assigned to the user when they accept the invitation. | Optional: {} |
UserInvitationStatus
Section titled “UserInvitationStatus”UserInvitationStatus defines the observed state of UserInvitation
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
conditionsCondition array | Conditions provide conditions that represent the current status of the UserInvitation. | [map[lastTransitionTime:1970-01-01T00:00:00Z message:Waiting for control plane to reconcile reason:Unknown status:Unknown type:Ready]] | Optional: {} |
UserPreferenceSpec
Section titled “UserPreferenceSpec”UserPreferenceSpec defines the desired state of UserPreference
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
userRefUserReference | Reference to the user these preferences belong to. | Required: {} | |
themestring | The user’s theme preference. | system | Enum: [light dark system] Optional: {} |
UserPreferenceStatus
Section titled “UserPreferenceStatus”UserPreferenceStatus defines the observed state of UserPreference
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
conditionsCondition array | Conditions provide conditions that represent the current status of the UserPreference. | [map[lastTransitionTime:1970-01-01T00:00:00Z message:Waiting for control plane to reconcile reason:Unknown status:Unknown type:Ready]] | Optional: {} |
UserReference
Section titled “UserReference”UserReference contains information that points to the User being referenced. User is a cluster-scoped resource, so Namespace is not needed.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
namestring | Name is the name of the User being referenced. | Required: {} |
UserSpec
Section titled “UserSpec”UserSpec defines the desired state of User
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
emailstring | The email of the user. | Required: {} | |
givenNamestring | The first name of the user. | Optional: {} | |
familyNamestring | The last name of the user. | Optional: {} |
UserState
Section titled “UserState”Underlying type: string
Appears in:
| Field | Description | | Active | | | Inactive | |
UserStatus
Section titled “UserStatus”UserStatus defines the observed state of User
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
conditionsCondition array | Conditions provide conditions that represent the current status of the User. | [map[lastTransitionTime:1970-01-01T00:00:00Z message:Waiting for control plane to reconcile reason:Unknown status:Unknown type:Ready]] | Optional: {} |
stateUserState | State represents the current activation state of the user account from the auth provider. This field is managed exclusively by the UserDeactivation CRD and cannot be changed directly by the user. When a UserDeactivation resource is created for the user, the user is deactivated in the auth provider; when the UserDeactivation is deleted, the user is reactivated. States: - Active: The user can be used to authenticate. - Inactive: The user is prohibited to be used to authenticate, and revokes all existing sessions. | Active | Enum: [Active Inactive] |
networking.datumapis.com/v1alpha
Section titled “networking.datumapis.com/v1alpha”Package v1alpha contains API Schema definitions for the networking v1alpha API group.
Resource Types
Section titled “Resource Types”DNSVerificationRecord
Section titled “DNSVerificationRecord”DNSVerificationRecord represents a DNS record required for verification
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
namestring | |||
typestring | |||
contentstring |
Domain
Section titled “Domain”Domain represents a domain name in the Datum system
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersionstring | networking.datumapis.com/v1alpha | ||
kindstring | Domain | ||
metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
specDomainSpec | Required: {} | ||
statusDomainStatus | { conditions:[map[lastTransitionTime:1970-01-01T00:00:00Z message:Waiting for controller reason:Pending status:Unknown type:Verified] map[lastTransitionTime:1970-01-01T00:00:00Z message:Waiting for controller reason:Pending status:Unknown type:VerifiedDNS] map[lastTransitionTime:1970-01-01T00:00:00Z message:Waiting for controller reason:Pending status:Unknown type:VerifiedHTTP]] } |
DomainSpec
Section titled “DomainSpec”DomainSpec defines the desired state of Domain
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
domainNamestring | DomainName is the fully qualified domain name (FQDN) to be managed | MaxLength: 253 MinLength: 1 Pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$Required: {} |
DomainStatus
Section titled “DomainStatus”DomainStatus defines the observed state of Domain
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
verificationDomainVerificationStatus | |||
conditionsCondition array |
DomainVerificationStatus
Section titled “DomainVerificationStatus”DomainVerificationStatus represents the verification status of a domain
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
dnsRecordDNSVerificationRecord | |||
httpTokenHTTPVerificationToken | |||
nextVerificationAttemptTime |
HTTPProxy
Section titled “HTTPProxy”An HTTPProxy builds on top of Gateway API resources to provide a more convenient method to manage simple reverse proxy use cases.
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersionstring | networking.datumapis.com/v1alpha | ||
kindstring | HTTPProxy | ||
metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
specHTTPProxySpec | Spec defines the desired state of an HTTPProxy. | Required: {} | |
statusHTTPProxyStatus | Status defines the current state of an HTTPProxy. | { conditions:[map[lastTransitionTime:1970-01-01T00:00:00Z message:Waiting for controller reason:Pending status:Unknown type:Accepted] map[lastTransitionTime:1970-01-01T00:00:00Z message:Waiting for controller reason:Pending status:Unknown type:Programmed]] } |
HTTPProxyRule
Section titled “HTTPProxyRule”HTTPProxyRule defines semantics for matching an HTTP request based on conditions (matches), processing it (filters), and forwarding the request to backends.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
nameSectionName | Name is the name of the route rule. This name MUST be unique within a Route if it is set. | ||
matchesHTTPRouteMatch array | Matches define conditions used for matching the rule against incoming HTTP requests. Each match is independent, i.e. this rule will be matched if any one of the matches is satisfied. See documentation for the matches field in the HTTPRouteRule type athttps://gateway-api.sigs.k8s.io/reference/spec/#httprouterule | [map[path:map[type:PathPrefix value:/]]] | MaxItems: 64 MinItems: 1 |
filtersHTTPRouteFilter array | Filters define the filters that are applied to requests that match this rule. See documentation for the filters field in the HTTPRouteRule type athttps://gateway-api.sigs.k8s.io/reference/spec/#httprouterule | MaxItems: 16 | |
backendsHTTPProxyRuleBackend array | Backends defines the backend(s) where matching requests should be sent. Note: While this field is a list, only a single element is permitted at this time due to underlying Gateway limitations. Once addressed, MaxItems will be increased to allow for multiple backends on any given route. | MaxItems: 1 MinItems: 0 |
HTTPProxyRuleBackend
Section titled “HTTPProxyRuleBackend”Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
endpointstring | Endpoint for the backend. Must be a valid URL. Supports http and https protocols, IPs or DNS addresses in the host, custom ports, and paths. | Required: {} | |
filtersHTTPRouteFilter array | Filters defined at this level should be executed if and only if the request is being forwarded to the backend defined here. | MaxItems: 16 |
HTTPProxySpec
Section titled “HTTPProxySpec”HTTPProxySpec defines the desired state of HTTPProxy.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
hostnamesHostname array | Hostnames defines a set of hostnames that should match against the HTTP Host header to select a HTTPProxy used to process the request. Valid values for Hostnames are determined by RFC 1123 definition of a hostname with 1 notable exception: 1. IPs are not allowed. Hostnames must be verified before being programmed. This is accomplished via the use of Domain resources. A hostname is considered verified if anyverified Domain resource exists in the same namespace where thespec.domainName of the resource either exactly matches the hostname, oris a suffix match of the hostname. That means that a Domain with a spec.domainName of example.com will match a hostname oftest.example.com, foo.test.example.com, and exactly example.com, butnot a hostname of test-example.com. If a Domain resource does not existthat matches a hostname, one will automatically be created when the system attempts to program the HTTPProxy. In addition to verifying ownership, hostnames must be unique across the platform. If a hostname is already programmed on another resource, a conflict will be encountered and communicated in the HostnamesVerifiedcondition. Hostnames which have been programmed will be listed in the status.hostnames field. Any hostname which has not been programmed willbe listed in the message field of the HostnamesVerified condition withan indication as to why it was not programmed. The system may automatically generate and associate hostnames with the HTTPProxy. In such cases, these will be listed in the status.hostnamesfield and do not require additional configuration by the user. Wildcard hostnames are not supported at this time. | MaxItems: 16 Optional: {} | |
rulesHTTPProxyRule array | Rules are a list of HTTP matchers, filters and actions. | MaxItems: 16 MinItems: 1 Required: {} |
HTTPProxyStatus
Section titled “HTTPProxyStatus”HTTPProxyStatus defines the observed state of HTTPProxy.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
addressesGatewayStatusAddress array | Addresses lists the network addresses that have been bound to the HTTPProxy. This field will not contain custom hostnames defined in the HTTPProxy. See the hostnames field | MaxItems: 16 | |
hostnamesHostname array | Hostnames lists the hostnames that have been bound to the HTTPProxy. If this list does not match that defined in the HTTPProxy, see the HostnamesVerified condition message for details. | ||
conditionsCondition array | Conditions describe the current conditions of the HTTPProxy. |
HTTPVerificationToken
Section titled “HTTPVerificationToken”Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
urlstring | |||
bodystring |
resourcemanager.miloapis.com/v1alpha1
Section titled “resourcemanager.miloapis.com/v1alpha1”Resource Types
Section titled “Resource Types”MemberReference
Section titled “MemberReference”MemberReference contains information that points to the User being referenced.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
namestring | Name is the name of resource being referenced | Required: {} |
Organization
Section titled “Organization”Use lowercase for path, which influences plural name. Ensure kind is Organization. Organization is the Schema for the Organizations API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersionstring | resourcemanager.miloapis.com/v1alpha1 | ||
kindstring | Organization | ||
metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
specOrganizationSpec | Required: {} | ||
statusOrganizationStatus |
OrganizationMembership
Section titled “OrganizationMembership”OrganizationMembership is the Schema for the organizationmemberships API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersionstring | resourcemanager.miloapis.com/v1alpha1 | ||
kindstring | OrganizationMembership | ||
metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
specOrganizationMembershipSpec | |||
statusOrganizationMembershipStatus |
OrganizationMembershipOrganizationStatus
Section titled “OrganizationMembershipOrganizationStatus”OrganizationMembershipOrganizationStatus defines the observed state of an organization in a membership.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
typestring | Type is the type of the organization in the membership. | Optional: {} | |
displayNamestring | DisplayName is the display name of the organization in the membership. | Optional: {} |
OrganizationMembershipSpec
Section titled “OrganizationMembershipSpec”OrganizationMembershipSpec defines the desired state of OrganizationMembership
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
organizationRefOrganizationReference | OrganizationRef is a reference to the Organization that the user is a member of. | Required: {} | |
userRefMemberReference | UserRef is a reference to the User that is a member of the Organization. | Required: {} |
OrganizationMembershipStatus
Section titled “OrganizationMembershipStatus”OrganizationMembershipStatus defines the observed state of OrganizationMembership
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
observedGenerationinteger | ObservedGeneration is the most recent generation observed for this OrganizationMembership by the controller. | Optional: {} | |
conditionsCondition array | Conditions provide conditions that represent the current status of the OrganizationMembership. | [map[lastTransitionTime:1970-01-01T00:00:00Z message:Waiting for control plane to reconcile reason:Unknown status:Unknown type:Ready]] | Optional: {} |
userOrganizationMembershipUserStatus | User contains information about the user in the membership. | Optional: {} | |
organizationOrganizationMembershipOrganizationStatus | Organization contains information about the organization in the membership. | Optional: {} |
OrganizationMembershipUserStatus
Section titled “OrganizationMembershipUserStatus”OrganizationMembershipUserStatus defines the observed state of a user in a membership.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
emailstring | Email is the email of the user in the membership. | Optional: {} | |
givenNamestring | GivenName is the given name of the user in the membership. | Optional: {} | |
familyNamestring | FamilyName is the family name of the user in the membership. | Optional: {} |
OrganizationReference
Section titled “OrganizationReference”OrganizationReference contains information that points to the Organization being referenced.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
namestring | Name is the name of resource being referenced | Required: {} |
OrganizationSpec
Section titled “OrganizationSpec”OrganizationSpec defines the desired state of Organization
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
typestring | The type of organization. | Enum: [Personal Standard] Required: {} |
OrganizationStatus
Section titled “OrganizationStatus”OrganizationStatus defines the observed state of Organization
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
observedGenerationinteger | ObservedGeneration is the most recent generation observed for this Organization by the controller. | ||
conditionsCondition array | Conditions represents the observations of an organization’s current state. Known condition types are: “Ready” | [map[lastTransitionTime:1970-01-01T00:00:00Z message:Waiting for control plane to reconcile reason:Unknown status:Unknown type:Ready]] |
OwnerReference
Section titled “OwnerReference”OwnerReference is a reference to the owner of the project.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
kindstring | Kind is the kind of the resource. | Enum: [Organization] Required: {} | |
namestring | Name is the name of the resource. | Required: {} |
Project
Section titled “Project”Project is the Schema for the projects API.
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersionstring | resourcemanager.miloapis.com/v1alpha1 | ||
kindstring | Project | ||
metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
specProjectSpec | Required: {} | ||
statusProjectStatus |
ProjectSpec
Section titled “ProjectSpec”ProjectSpec defines the desired state of Project.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
ownerRefOwnerReference | OwnerRef is a reference to the owner of the project. Must be a valid resource. | Required: {} |
ProjectStatus
Section titled “ProjectStatus”ProjectStatus defines the observed state of Project.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
conditionsCondition array | Represents the observations of a project’s current state. Known condition types are: “Ready” | [map[lastTransitionTime:1970-01-01T00:00:00Z message:Waiting for control plane to reconcile reason:Unknown status:Unknown type:Ready]] |
telemetry.miloapis.com/v1alpha1
Section titled “telemetry.miloapis.com/v1alpha1”Package v1alpha1 contains API Schema definitions for the telemetry v1alpha1 API group.
Resource Types
Section titled “Resource Types”Authentication
Section titled “Authentication”Configures how the sink will authenticate with the configured endpoint. These options are mutually exclusive.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
basicAuthBasicAuthAuthentication | Configures the sink to use basic auth to authenticate with the configured endpoint. |
BasicAuthAuthentication
Section titled “BasicAuthAuthentication”Underlying type: struct{SecretRef LocalSecretReference "json:\"secretRef\""}
Configures how the sink should use Basic Auth for authenticating with a telemetry endpoint.
Appears in:
Configures the batching behavior the sink will use to batch requests before publishing them to the endpoint.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
timeoutDuration | Batch timeout before sending telemetry. Must be a duration (e.g. 5s). | Required: {} | |
maxSizeinteger | Maximum number of telemetry entries per batch. | Maximum: 5000 Minimum: 1 Required: {} |
ExportPolicy
Section titled “ExportPolicy”ExportPolicy is the Schema for the export policy API.
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersionstring | telemetry.miloapis.com/v1alpha1 | ||
kindstring | ExportPolicy | ||
metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
specExportPolicySpec | Describes the expected state of the ExportPolicy’s configuration. The control plane will constantly evaluate the current state of exporters that are deployed and ensure it matches the expected configuration. This field is required when configuring an export policy. | ||
statusExportPolicyStatus | Provides information on the current state of the export policy that was observed by the control plane. This will be continuously updated as the control plane monitors exporters. |
ExportPolicySpec
Section titled “ExportPolicySpec”ExportPolicySpec defines the desired state of ExportPolicy.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
sourcesTelemetrySource array | Defines how the export policy should source telemetry data to publish to the configured sinks. An export policy can define multiple telemetry sources. The export policy will not de-duplicate telemetry data that matches multiple sources. | MaxItems: 20 MinItems: 1 Required: {} | |
sinksTelemetrySink array | Configures how telemetry data should be sent to a third-party telemetry platforms. | MaxItems: 20 MinItems: 1 Required: {} |
ExportPolicyStatus
Section titled “ExportPolicyStatus”ExportPolicyStatus defines the observed state of ExportPolicy.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
conditionsCondition array | Provides summary status information on the export policy as a whole. Review the sink status information for detailed information on each sink. Known condition types are: “Ready” | ||
sinksSinkStatus array | Provides status information on each sink that’s configured. |
MetricSource
Section titled “MetricSource”A metric source configures the metric data that should be exported to the configured sinks. The options below are expected to be mutually exclusive.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
metricsqlstring | The MetricSQL option allows to user to provide a metricsql query that can be used to select and filter metric data that should be published by the export policy. Here’s an example of a metricsql query that will publish gateway metrics: \{service_name=“networking.miloapis.com”, resource_kind="Gateway"\}See: https://docs.victoriametrics.com/metricsql/ |
PrometheusRemoteWriteSink
Section titled “PrometheusRemoteWriteSink”Configures how the sink should send data to a OTLP HTTP endpoint.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
authenticationAuthentication | Configures how the sink should authenticate with the HTTP endpoint. | ||
endpointstring | Configure an HTTP endpoint to use for publishing telemetry data. | Required: {} | |
batchBatch | Configures how telemetry data should be batched before sending to the sink. By default, the sink will batch telemetry data every 5 seconds or when the batch size reaches 500 entries, whichever comes first. | { maxSize:500 timeout:5s } | |
retryRetry | Configures the export policies’ retry behavior when it fails to send requests to the sink’s endpoint. There’s no guarantees that the export policy will retry until success if the endpoint is not available or configured incorrectly. | { backoffDuration:5s maxAttempts:3 } |
Configures the retry behavior of the sink when it fails to send telemetry data to the configured endpoint.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
maxAttemptsinteger | Maximum number of attempts before telemetry data should be dropped. | Maximum: 10 Minimum: 1 Required: {} | |
backoffDurationDuration | Backoff duration that should be used to backoff when retrying requests. | Required: {} |
SinkStatus
Section titled “SinkStatus”SinkStatus provides status information on the current status of a sink. This can be used to determine whether a sink is configured correctly and is exporting telemetry data.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
namestring | The name of the corresponding sink configuration in the spec of the export policy. | ||
conditionsCondition array | Provides status information on the current status of the sink. This can be used to determine whether a sink is configured correctly and is exporting telemetry data. Known condition types are: “Ready” |
SinkTarget
Section titled “SinkTarget”Configures the target of the telemetry sink. The target defines the protocol that’s used to send telemetry data to the sink. Only one target protocol can be configured per sink.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
prometheusRemoteWritePrometheusRemoteWriteSink | Configures the export policy to publish telemetry using the Prometheus Remote Write protocol. |
TelemetrySink
Section titled “TelemetrySink”Configures how telemetry data should be sent to a third-party platform. As of now there are no guarantees around delivery of telemetry data, especially if the sink’s endpoint is unavailable.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
namestring | A name provided to the telemetry sink that’s unique within the export policy. | MaxLength: 63 MinLength: 1 Pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$Required: {} | |
sourcesstring array | A list of sources that should be sent to the telemetry sink. | MaxItems: 20 MinItems: 1 Required: {} | |
targetSinkTarget | Configures the target of the telemetry sink. | Required: {} |
TelemetrySource
Section titled “TelemetrySource”Defines how the export policy should source telemetry data from resources on the platform.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
namestring | A unique name given to the telemetry source within an export policy. Must be a valid DNS label. | MaxLength: 63 MinLength: 1 Pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$Required: {} | |
metricsMetricSource | Configures how the telemetry source should retrieve metric data from the Datum Cloud platform. |