mirror of
https://github.com/edgelesssys/constellation.git
synced 2025-08-05 21:44:15 -04:00
upgrade: support Kubernetes components (#839)
* upgrade: add Kubernetes components to NodeVersion * update rfc
This commit is contained in:
parent
4b43311fbd
commit
f14af0c3eb
56 changed files with 897 additions and 738 deletions
|
@ -36,9 +36,9 @@ spec:
|
|||
description: JoiningNodeSpec defines the components hash which the node
|
||||
should be annotated with.
|
||||
properties:
|
||||
componentshash:
|
||||
description: ComponentsHash is the hash of the components that were
|
||||
sent to the node by the join service.
|
||||
componentsreference:
|
||||
description: ComponentsReference is the reference to the ConfigMap
|
||||
containing the components.
|
||||
type: string
|
||||
deadline:
|
||||
description: Deadline is the time after which the joining node is
|
||||
|
|
|
@ -5,20 +5,20 @@ metadata:
|
|||
annotations:
|
||||
controller-gen.kubebuilder.io/version: v0.9.0
|
||||
creationTimestamp: null
|
||||
name: nodeimages.update.edgeless.systems
|
||||
name: nodeversions.update.edgeless.systems
|
||||
spec:
|
||||
group: update.edgeless.systems
|
||||
names:
|
||||
kind: NodeImage
|
||||
listKind: NodeImageList
|
||||
plural: nodeimages
|
||||
singular: nodeimage
|
||||
kind: NodeVersion
|
||||
listKind: NodeVersionList
|
||||
plural: nodeversions
|
||||
singular: nodeversion
|
||||
scope: Cluster
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: NodeImage is the Schema for the nodeimages API.
|
||||
description: NodeVersion is the Schema for the nodeversions API.
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
|
@ -33,7 +33,7 @@ spec:
|
|||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: NodeImageSpec defines the desired state of NodeImage.
|
||||
description: NodeVersionSpec defines the desired state of NodeVersion.
|
||||
properties:
|
||||
image:
|
||||
description: ImageReference is the image to use for all nodes.
|
||||
|
@ -42,9 +42,13 @@ spec:
|
|||
description: ImageVersion is the CSP independent version of the image
|
||||
to use for all nodes.
|
||||
type: string
|
||||
kubernetesComponentsReference:
|
||||
description: KubernetesComponentsReference is a reference to the ConfigMap
|
||||
containing the Kubernetes components to use for all nodes.
|
||||
type: string
|
||||
type: object
|
||||
status:
|
||||
description: NodeImageStatus defines the observed state of NodeImage.
|
||||
description: NodeVersionStatus defines the observed state of NodeVersion.
|
||||
properties:
|
||||
budget:
|
||||
description: Budget is the amount of extra nodes that can be created
|
|
@ -57,7 +57,7 @@ spec:
|
|||
format: int32
|
||||
type: integer
|
||||
nodeImage:
|
||||
description: NodeImage is the name of the NodeImage resource.
|
||||
description: NodeVersion is the name of the NodeVersion resource.
|
||||
type: string
|
||||
role:
|
||||
description: Role is the role of the nodes in the scaling group.
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# since it depends on service name and namespace that are out of this kustomize package.
|
||||
# It should be run by config/default
|
||||
resources:
|
||||
- bases/update.edgeless.systems_nodeimages.yaml
|
||||
- bases/update.edgeless.systems_nodeversions.yaml
|
||||
- bases/update.edgeless.systems_joiningnodes.yaml
|
||||
- bases/update.edgeless.systems_autoscalingstrategies.yaml
|
||||
- bases/update.edgeless.systems_scalinggroups.yaml
|
||||
|
@ -12,7 +12,7 @@ resources:
|
|||
patchesStrategicMerge:
|
||||
# [WEBHOOK] To enable webhook, uncomment all the sections with [WEBHOOK] prefix.
|
||||
# patches here are for enabling the conversion webhook for each CRD
|
||||
#- patches/webhook_in_nodeimages.yaml
|
||||
#- patches/webhook_in_nodeversions.yaml
|
||||
#- patches/webhook_in_joiningnodes.yaml
|
||||
#- patches/webhook_in_autoscalingstrategies.yaml
|
||||
#- patches/webhook_in_scalinggroups.yaml
|
||||
|
@ -21,7 +21,7 @@ patchesStrategicMerge:
|
|||
|
||||
# [CERTMANAGER] To enable cert-manager, uncomment all the sections with [CERTMANAGER] prefix.
|
||||
# patches here are for enabling the CA injection for each CRD
|
||||
#- patches/cainjection_in_nodeimages.yaml
|
||||
#- patches/cainjection_in_nodeversions.yaml
|
||||
#- patches/cainjection_in_joiningnodes.yaml
|
||||
#- patches/cainjection_in_autoscalingstrategies.yaml
|
||||
#- patches/cainjection_in_scalinggroups.yaml
|
||||
|
|
|
@ -4,4 +4,4 @@ kind: CustomResourceDefinition
|
|||
metadata:
|
||||
annotations:
|
||||
cert-manager.io/inject-ca-from: $(CERTIFICATE_NAMESPACE)/$(CERTIFICATE_NAME)
|
||||
name: nodeimages.update.edgeless.systems
|
||||
name: nodeversions.update.edgeless.systems
|
|
@ -2,7 +2,7 @@
|
|||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: nodeimages.update.edgeless.systems
|
||||
name: nodeversions.update.edgeless.systems
|
||||
spec:
|
||||
conversion:
|
||||
strategy: Webhook
|
|
@ -5,6 +5,12 @@ generatorOptions:
|
|||
disableNameSuffixHash: true
|
||||
|
||||
configMapGenerator:
|
||||
- name: manager-config
|
||||
files:
|
||||
- files:
|
||||
- controller_manager_config.yaml
|
||||
name: manager-config
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
images:
|
||||
- name: controller
|
||||
newName: ghcr.io/edgelesssys/constellation/node-operator
|
||||
newTag: v0.0.1
|
||||
|
|
|
@ -16,10 +16,10 @@ spec:
|
|||
kind: AutoscalingStrategy
|
||||
name: autoscalingstrategies.update.edgeless.systems
|
||||
version: v1alpha1
|
||||
- description: NodeImage is the Schema for the nodeimages API.
|
||||
displayName: Node Image
|
||||
kind: NodeImage
|
||||
name: nodeimages.update.edgeless.systems
|
||||
- description: NodeVersion is the Schema for the nodeversions API.
|
||||
displayName: Node Version
|
||||
kind: NodeVersion
|
||||
name: nodeversions.update.edgeless.systems
|
||||
version: v1alpha1
|
||||
- description: PendingNode is the Schema for the pendingnodes API.
|
||||
displayName: Pending Node
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
# permissions for end users to edit nodeimages.
|
||||
# permissions for end users to edit nodeversions.
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
name: nodeimage-editor-role
|
||||
name: nodeversion-editor-role
|
||||
rules:
|
||||
- apiGroups:
|
||||
- update.edgeless.systems
|
||||
resources:
|
||||
- nodeimages
|
||||
- nodeversions
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
|
@ -19,6 +19,6 @@ rules:
|
|||
- apiGroups:
|
||||
- update.edgeless.systems
|
||||
resources:
|
||||
- nodeimages/status
|
||||
- nodeversions/status
|
||||
verbs:
|
||||
- get
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
# permissions for end users to view nodeimages.
|
||||
# permissions for end users to view nodeversions.
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
name: nodeimage-viewer-role
|
||||
name: nodeversion-viewer-role
|
||||
rules:
|
||||
- apiGroups:
|
||||
- update.edgeless.systems
|
||||
resources:
|
||||
- nodeimages
|
||||
- nodeversions
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
|
@ -15,6 +15,6 @@ rules:
|
|||
- apiGroups:
|
||||
- update.edgeless.systems
|
||||
resources:
|
||||
- nodeimages/status
|
||||
- nodeversions/status
|
||||
verbs:
|
||||
- get
|
||||
|
|
|
@ -101,7 +101,7 @@ rules:
|
|||
- apiGroups:
|
||||
- update.edgeless.systems
|
||||
resources:
|
||||
- nodeimage
|
||||
- nodeversion
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
|
@ -109,7 +109,13 @@ rules:
|
|||
- apiGroups:
|
||||
- update.edgeless.systems
|
||||
resources:
|
||||
- nodeimages
|
||||
- nodeversion/status
|
||||
verbs:
|
||||
- get
|
||||
- apiGroups:
|
||||
- update.edgeless.systems
|
||||
resources:
|
||||
- nodeversions
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
|
@ -121,13 +127,13 @@ rules:
|
|||
- apiGroups:
|
||||
- update.edgeless.systems
|
||||
resources:
|
||||
- nodeimages/finalizers
|
||||
- nodeversions/finalizers
|
||||
verbs:
|
||||
- update
|
||||
- apiGroups:
|
||||
- update.edgeless.systems
|
||||
resources:
|
||||
- nodeimages/status
|
||||
- nodeversions/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
## Append samples you want in your CSV to this file as resources ##
|
||||
resources:
|
||||
- update_v1alpha1_nodeimage.yaml
|
||||
- update_v1alpha1_nodeversion.yaml
|
||||
- update_v1alpha1_autoscalingstrategy.yaml
|
||||
- update_v1alpha1_scalinggroup.yaml
|
||||
- update_v1alpha1_pendingnode.yaml
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
apiVersion: update.edgeless.systems/v1alpha1
|
||||
kind: NodeImage
|
||||
kind: NodeVersion
|
||||
metadata:
|
||||
name: constellation-os-azure
|
||||
namespace: kube-system
|
||||
|
@ -7,7 +7,7 @@ spec:
|
|||
image: "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Compute/galleries/<gallery-name>/images/<image-definition-name>/versions/<version>"
|
||||
---
|
||||
apiVersion: update.edgeless.systems/v1alpha1
|
||||
kind: NodeImage
|
||||
kind: NodeVersion
|
||||
metadata:
|
||||
name: constellation-os-gcp
|
||||
namespace: kube-system
|
Loading…
Add table
Add a link
Reference in a new issue