198 lines
8.8 KiB
Django/Jinja
198 lines
8.8 KiB
Django/Jinja
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
api-approved.kubernetes.io: https://github.com/kubernetes-sigs/scheduler-plugins/pull/432 # edited manually
|
|
controller-gen.kubebuilder.io/version: v0.11.1
|
|
creationTimestamp: null
|
|
name: appgroups.appgroup.diktyo.x-k8s.io
|
|
spec:
|
|
group: appgroup.diktyo.x-k8s.io
|
|
names:
|
|
kind: AppGroup
|
|
listKind: AppGroupList
|
|
plural: appgroups
|
|
shortNames:
|
|
- ag
|
|
singular: appgroup
|
|
scope: Namespaced
|
|
versions:
|
|
- name: v1alpha1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: AppGroup is a collection of Pods belonging to the same application.
|
|
properties:
|
|
apiVersion:
|
|
description: 'APIVersion defines the versioned schema of this representation
|
|
of an object. Servers should convert recognized schemas to the latest
|
|
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
|
type: string
|
|
kind:
|
|
description: 'Kind is a string value representing the REST resource this
|
|
object represents. Servers may infer this from the endpoint the client
|
|
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
description: AppGroupSpec defines the number of Pods and which Pods belong
|
|
to the group.
|
|
properties:
|
|
numMembers:
|
|
description: NumMembers defines the number of Pods belonging to the
|
|
App Group
|
|
format: int32
|
|
minimum: 1
|
|
type: integer
|
|
topologySortingAlgorithm:
|
|
description: The preferred Topology Sorting Algorithm
|
|
type: string
|
|
workloads:
|
|
description: Workloads defines the workloads belonging to the group
|
|
items:
|
|
description: AppGroupWorkload represents the Workloads belonging
|
|
to the App Group.
|
|
properties:
|
|
dependencies:
|
|
description: Dependencies of the Workload.
|
|
items:
|
|
description: DependenciesInfo contains information about one
|
|
dependency.
|
|
properties:
|
|
maxNetworkCost:
|
|
description: Max Network Cost between workloads
|
|
format: int64
|
|
maximum: 10000
|
|
minimum: 0
|
|
type: integer
|
|
minBandwidth:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
description: MinBandwidth between workloads
|
|
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
|
|
x-kubernetes-int-or-string: true
|
|
workload:
|
|
description: Workload reference Info.
|
|
properties:
|
|
apiVersion:
|
|
description: ApiVersion defines the versioned schema
|
|
of an object.
|
|
type: string
|
|
kind:
|
|
description: 'Kind of the workload, info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"'
|
|
type: string
|
|
name:
|
|
description: 'Name represents the workload, info:
|
|
http://kubernetes.io/docs/user-guide/identifiers#names'
|
|
type: string
|
|
namespace:
|
|
description: Namespace of the workload
|
|
type: string
|
|
selector:
|
|
description: Selector defines how to find Pods related
|
|
to the Workload (key = workload). (e.g., workload=w1)
|
|
type: string
|
|
required:
|
|
- kind
|
|
- name
|
|
- selector
|
|
type: object
|
|
required:
|
|
- workload
|
|
type: object
|
|
type: array
|
|
workload:
|
|
description: Workload reference Info.
|
|
properties:
|
|
apiVersion:
|
|
description: ApiVersion defines the versioned schema of
|
|
an object.
|
|
type: string
|
|
kind:
|
|
description: 'Kind of the workload, info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"'
|
|
type: string
|
|
name:
|
|
description: 'Name represents the workload, info: http://kubernetes.io/docs/user-guide/identifiers#names'
|
|
type: string
|
|
namespace:
|
|
description: Namespace of the workload
|
|
type: string
|
|
selector:
|
|
description: Selector defines how to find Pods related to
|
|
the Workload (key = workload). (e.g., workload=w1)
|
|
type: string
|
|
required:
|
|
- kind
|
|
- name
|
|
- selector
|
|
type: object
|
|
required:
|
|
- workload
|
|
type: object
|
|
type: array
|
|
required:
|
|
- numMembers
|
|
- topologySortingAlgorithm
|
|
- workloads
|
|
type: object
|
|
status:
|
|
description: AppGroupStatus defines the observed use.
|
|
properties:
|
|
runningWorkloads:
|
|
description: The number of actively running workloads (e.g., number
|
|
of pods).
|
|
format: int32
|
|
minimum: 0
|
|
type: integer
|
|
scheduleStartTime:
|
|
description: ScheduleStartTime of the group
|
|
format: date-time
|
|
type: string
|
|
topologyCalculationTime:
|
|
description: TopologyCalculationTime of the group
|
|
format: date-time
|
|
type: string
|
|
topologyOrder:
|
|
description: Topology order for TopSort plugin (QueueSort)
|
|
items:
|
|
description: AppGroupTopologyInfo represents the calculated order
|
|
for a given Workload.
|
|
properties:
|
|
index:
|
|
description: Topology index.
|
|
format: int32
|
|
type: integer
|
|
workload:
|
|
description: Workload reference Info.
|
|
properties:
|
|
apiVersion:
|
|
description: ApiVersion defines the versioned schema of
|
|
an object.
|
|
type: string
|
|
kind:
|
|
description: 'Kind of the workload, info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"'
|
|
type: string
|
|
name:
|
|
description: 'Name represents the workload, info: http://kubernetes.io/docs/user-guide/identifiers#names'
|
|
type: string
|
|
namespace:
|
|
description: Namespace of the workload
|
|
type: string
|
|
selector:
|
|
description: Selector defines how to find Pods related to
|
|
the Workload (key = workload). (e.g., workload=w1)
|
|
type: string
|
|
required:
|
|
- kind
|
|
- name
|
|
- selector
|
|
type: object
|
|
type: object
|
|
type: array
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: true
|