apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.15.0 name: migrationplans.vjailbreak.k8s.pf9.io spec: group: vjailbreak.k8s.pf9.io names: kind: MigrationPlan listKind: MigrationPlanList plural: migrationplans singular: migrationplan scope: Namespaced versions: - name: v1alpha1 schema: openAPIV3Schema: description: MigrationPlan is the Schema for the migrationplans API 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: MigrationPlanSpec defines the desired state of MigrationPlan properties: migrationStrategy: properties: dataCopyStart: format: date-time type: string type: enum: - hot - cold type: string vmCutoverEnd: format: date-time type: string vmCutoverStart: format: date-time type: string required: - type type: object migrationTemplate: type: string retry: type: boolean virtualmachines: items: items: type: string type: array type: array required: - migrationStrategy - migrationTemplate - virtualmachines type: object status: description: MigrationPlanStatus defines the observed state of MigrationPlan properties: migrationMessage: type: string migrationStatus: type: string required: - migrationMessage - migrationStatus type: object type: object served: true storage: true subresources: status: {} --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.15.0 name: migrations.vjailbreak.k8s.pf9.io spec: group: vjailbreak.k8s.pf9.io names: kind: Migration listKind: MigrationList plural: migrations singular: migration scope: Namespaced versions: - name: v1alpha1 schema: openAPIV3Schema: description: Migration is the Schema for the migrations API 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: MigrationSpec defines the desired state of Migration properties: migrationPlan: type: string podRef: type: string vmName: type: string required: - migrationPlan - podRef - vmName type: object status: description: MigrationStatus defines the observed state of Migration properties: conditions: items: description: PodCondition contains details for the current condition of this pod. properties: lastProbeTime: description: Last time we probed the condition. format: date-time type: string lastTransitionTime: description: Last time the condition transitioned from one status to another. format: date-time type: string message: description: Human-readable message indicating details about last transition. type: string reason: description: Unique, one-word, CamelCase reason for the condition's last transition. type: string status: description: |- Status is the status of the condition. Can be True, False, Unknown. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-conditions type: string type: description: |- Type is the type of the condition. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-conditions type: string required: - status - type type: object type: array phase: type: string required: - conditions - phase type: object type: object served: true storage: true subresources: status: {} --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.15.0 name: migrationtemplates.vjailbreak.k8s.pf9.io spec: group: vjailbreak.k8s.pf9.io names: kind: MigrationTemplate listKind: MigrationTemplateList plural: migrationtemplates singular: migrationtemplate scope: Namespaced versions: - name: v1alpha1 schema: openAPIV3Schema: description: MigrationTemplate is the Schema for the migrationtemplates API 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: MigrationTemplateSpec defines the desired state of MigrationTemplate properties: destination: description: MigrationTemplateDestination defines the destination details for the migrationtemplate properties: openstackRef: type: string required: - openstackRef type: object networkMapping: type: string osType: enum: - windows - linux type: string source: description: MigrationTemplateSource defines the source details for the migrationtemplate properties: datacenter: type: string vmwareRef: type: string required: - datacenter - vmwareRef type: object storageMapping: type: string virtioWinDriver: type: string required: - destination - networkMapping - source - storageMapping type: object status: description: MigrationTemplateStatus defines the observed state of MigrationTemplate type: object type: object served: true storage: true subresources: status: {} --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.15.0 name: networkmappings.vjailbreak.k8s.pf9.io spec: group: vjailbreak.k8s.pf9.io names: kind: NetworkMapping listKind: NetworkMappingList plural: networkmappings singular: networkmapping scope: Namespaced versions: - name: v1alpha1 schema: openAPIV3Schema: description: NetworkMapping is the Schema for the networkmappings API 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: NetworkMappingSpec defines the desired state of NetworkMapping properties: networks: description: Networks is the list of networks items: properties: source: type: string target: type: string required: - source - target type: object type: array required: - networks type: object status: description: NetworkMappingStatus defines the observed state of NetworkMapping properties: networkMappingValidationMessage: type: string networkMappingValidationStatus: type: string type: object type: object served: true storage: true subresources: status: {} --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.15.0 name: openstackcreds.vjailbreak.k8s.pf9.io spec: group: vjailbreak.k8s.pf9.io names: kind: OpenstackCreds listKind: OpenstackCredsList plural: openstackcreds singular: openstackcreds scope: Namespaced versions: - name: v1alpha1 schema: openAPIV3Schema: description: OpenstackCreds is the Schema for the openstackcreds API 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: OpenstackCredsSpec defines the desired state of OpenstackCreds properties: OS_AUTH_URL: description: OsAuthURL is the OpenStack authentication URL type: string OS_DOMAIN_NAME: description: OsDomainName is the OpenStack domain name type: string OS_PASSWORD: description: OsPassword is the OpenStack password type: string OS_REGION_NAME: description: OsRegionName is the OpenStack region name type: string OS_TENANT_NAME: description: OsTenantName is the OpenStack tenant name type: string OS_USERNAME: description: OsUsername is the OpenStack username type: string type: object status: description: OpenstackCredsStatus defines the observed state of OpenstackCreds properties: openstackValidationMessage: type: string openstackValidationStatus: description: |- INSERT ADDITIONAL STATUS FIELD - define observed state of cluster Important: Run "make" to regenerate code after modifying this file type: string type: object type: object served: true storage: true subresources: status: {} --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.15.0 name: storagemappings.vjailbreak.k8s.pf9.io spec: group: vjailbreak.k8s.pf9.io names: kind: StorageMapping listKind: StorageMappingList plural: storagemappings singular: storagemapping scope: Namespaced versions: - name: v1alpha1 schema: openAPIV3Schema: description: StorageMapping is the Schema for the storagemappings API 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: StorageMappingSpec defines the desired state of StorageMapping properties: storages: items: properties: source: type: string target: type: string required: - source - target type: object type: array required: - storages type: object status: description: StorageMappingStatus defines the observed state of StorageMapping properties: storageMappingValidationMessage: type: string storageMappingValidationStatus: type: string type: object type: object served: true storage: true subresources: status: {} --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.15.0 name: vmwarecreds.vjailbreak.k8s.pf9.io spec: group: vjailbreak.k8s.pf9.io names: kind: VMwareCreds listKind: VMwareCredsList plural: vmwarecreds singular: vmwarecreds scope: Namespaced versions: - name: v1alpha1 schema: openAPIV3Schema: description: VMwareCreds is the Schema for the vmwarecreds API 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: VMwareCredsSpec defines the desired state of VMwareCreds properties: VCENTER_HOST: type: string VCENTER_INSECURE: type: boolean VCENTER_PASSWORD: type: string VCENTER_USERNAME: type: string required: - VCENTER_HOST - VCENTER_INSECURE - VCENTER_PASSWORD - VCENTER_USERNAME type: object status: description: VMwareCredsStatus defines the observed state of VMwareCreds properties: vmwareValidationMessage: type: string vmwareValidationStatus: description: |- INSERT ADDITIONAL STATUS FIELD - define observed state of cluster Important: Run "make" to regenerate code after modifying this file type: string type: object type: object served: true storage: true subresources: status: {} --- apiVersion: v1 kind: Namespace metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration control-plane: controller-manager name: migration-system --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.15.0 name: migrationplans.vjailbreak.k8s.pf9.io spec: group: vjailbreak.k8s.pf9.io names: kind: MigrationPlan listKind: MigrationPlanList plural: migrationplans singular: migrationplan scope: Namespaced versions: - name: v1alpha1 schema: openAPIV3Schema: description: MigrationPlan is the Schema for the migrationplans API 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: MigrationPlanSpec defines the desired state of MigrationPlan properties: migrationStrategy: properties: dataCopyStart: format: date-time type: string type: enum: - hot - cold type: string vmCutoverEnd: format: date-time type: string vmCutoverStart: format: date-time type: string required: - type type: object migrationTemplate: type: string retry: type: boolean virtualmachines: items: items: type: string type: array type: array required: - migrationStrategy - migrationTemplate - virtualmachines type: object status: description: MigrationPlanStatus defines the observed state of MigrationPlan properties: migrationMessage: type: string migrationStatus: type: string required: - migrationMessage - migrationStatus type: object type: object served: true storage: true subresources: status: {} --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.15.0 name: migrations.vjailbreak.k8s.pf9.io spec: group: vjailbreak.k8s.pf9.io names: kind: Migration listKind: MigrationList plural: migrations singular: migration scope: Namespaced versions: - name: v1alpha1 schema: openAPIV3Schema: description: Migration is the Schema for the migrations API 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: MigrationSpec defines the desired state of Migration properties: migrationPlan: type: string podRef: type: string vmName: type: string required: - migrationPlan - podRef - vmName type: object status: description: MigrationStatus defines the observed state of Migration properties: conditions: items: description: PodCondition contains details for the current condition of this pod. properties: lastProbeTime: description: Last time we probed the condition. format: date-time type: string lastTransitionTime: description: Last time the condition transitioned from one status to another. format: date-time type: string message: description: Human-readable message indicating details about last transition. type: string reason: description: Unique, one-word, CamelCase reason for the condition's last transition. type: string status: description: |- Status is the status of the condition. Can be True, False, Unknown. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-conditions type: string type: description: |- Type is the type of the condition. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-conditions type: string required: - status - type type: object type: array phase: type: string required: - conditions - phase type: object type: object served: true storage: true subresources: status: {} --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.15.0 name: migrationtemplates.vjailbreak.k8s.pf9.io spec: group: vjailbreak.k8s.pf9.io names: kind: MigrationTemplate listKind: MigrationTemplateList plural: migrationtemplates singular: migrationtemplate scope: Namespaced versions: - name: v1alpha1 schema: openAPIV3Schema: description: MigrationTemplate is the Schema for the migrationtemplates API 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: MigrationTemplateSpec defines the desired state of MigrationTemplate properties: destination: description: MigrationTemplateDestination defines the destination details for the migrationtemplate properties: openstackRef: type: string required: - openstackRef type: object networkMapping: type: string osType: enum: - windows - linux type: string source: description: MigrationTemplateSource defines the source details for the migrationtemplate properties: datacenter: type: string vmwareRef: type: string required: - datacenter - vmwareRef type: object storageMapping: type: string virtioWinDriver: type: string required: - destination - networkMapping - source - storageMapping type: object status: description: MigrationTemplateStatus defines the observed state of MigrationTemplate type: object type: object served: true storage: true subresources: status: {} --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.15.0 name: networkmappings.vjailbreak.k8s.pf9.io spec: group: vjailbreak.k8s.pf9.io names: kind: NetworkMapping listKind: NetworkMappingList plural: networkmappings singular: networkmapping scope: Namespaced versions: - name: v1alpha1 schema: openAPIV3Schema: description: NetworkMapping is the Schema for the networkmappings API 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: NetworkMappingSpec defines the desired state of NetworkMapping properties: networks: description: Networks is the list of networks items: properties: source: type: string target: type: string required: - source - target type: object type: array required: - networks type: object status: description: NetworkMappingStatus defines the observed state of NetworkMapping properties: networkMappingValidationMessage: type: string networkMappingValidationStatus: type: string type: object type: object served: true storage: true subresources: status: {} --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.15.0 name: openstackcreds.vjailbreak.k8s.pf9.io spec: group: vjailbreak.k8s.pf9.io names: kind: OpenstackCreds listKind: OpenstackCredsList plural: openstackcreds singular: openstackcreds scope: Namespaced versions: - name: v1alpha1 schema: openAPIV3Schema: description: OpenstackCreds is the Schema for the openstackcreds API 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: OpenstackCredsSpec defines the desired state of OpenstackCreds properties: OS_AUTH_URL: description: OsAuthURL is the OpenStack authentication URL type: string OS_DOMAIN_NAME: description: OsDomainName is the OpenStack domain name type: string OS_PASSWORD: description: OsPassword is the OpenStack password type: string OS_REGION_NAME: description: OsRegionName is the OpenStack region name type: string OS_TENANT_NAME: description: OsTenantName is the OpenStack tenant name type: string OS_USERNAME: description: OsUsername is the OpenStack username type: string type: object status: description: OpenstackCredsStatus defines the observed state of OpenstackCreds properties: openstackValidationMessage: type: string openstackValidationStatus: description: |- INSERT ADDITIONAL STATUS FIELD - define observed state of cluster Important: Run "make" to regenerate code after modifying this file type: string type: object type: object served: true storage: true subresources: status: {} --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.15.0 name: storagemappings.vjailbreak.k8s.pf9.io spec: group: vjailbreak.k8s.pf9.io names: kind: StorageMapping listKind: StorageMappingList plural: storagemappings singular: storagemapping scope: Namespaced versions: - name: v1alpha1 schema: openAPIV3Schema: description: StorageMapping is the Schema for the storagemappings API 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: StorageMappingSpec defines the desired state of StorageMapping properties: storages: items: properties: source: type: string target: type: string required: - source - target type: object type: array required: - storages type: object status: description: StorageMappingStatus defines the observed state of StorageMapping properties: storageMappingValidationMessage: type: string storageMappingValidationStatus: type: string type: object type: object served: true storage: true subresources: status: {} --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.15.0 name: vmwarecreds.vjailbreak.k8s.pf9.io spec: group: vjailbreak.k8s.pf9.io names: kind: VMwareCreds listKind: VMwareCredsList plural: vmwarecreds singular: vmwarecreds scope: Namespaced versions: - name: v1alpha1 schema: openAPIV3Schema: description: VMwareCreds is the Schema for the vmwarecreds API 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: VMwareCredsSpec defines the desired state of VMwareCreds properties: VCENTER_HOST: type: string VCENTER_INSECURE: type: boolean VCENTER_PASSWORD: type: string VCENTER_USERNAME: type: string required: - VCENTER_HOST - VCENTER_INSECURE - VCENTER_PASSWORD - VCENTER_USERNAME type: object status: description: VMwareCredsStatus defines the observed state of VMwareCreds properties: vmwareValidationMessage: type: string vmwareValidationStatus: description: |- INSERT ADDITIONAL STATUS FIELD - define observed state of cluster Important: Run "make" to regenerate code after modifying this file type: string type: object type: object served: true storage: true subresources: status: {} --- apiVersion: v1 kind: ServiceAccount metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-controller-manager namespace: migration-system --- apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-leader-election-role namespace: migration-system rules: - apiGroups: - "" resources: - configmaps verbs: - get - list - watch - create - update - patch - delete - apiGroups: - coordination.k8s.io resources: - leases verbs: - get - list - watch - create - update - patch - delete - apiGroups: - "" resources: - events verbs: - create - patch --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: migration-manager-role rules: - apiGroups: - "" resources: - configmaps verbs: - create - delete - get - list - patch - update - watch - apiGroups: - "" resources: - events verbs: - get - list - watch - apiGroups: - "" resources: - pods verbs: - create - delete - get - list - patch - update - watch - apiGroups: - "" resources: - pods/status verbs: - get - patch - update - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrationplans verbs: - create - delete - get - list - patch - update - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrationplans/finalizers verbs: - update - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrationplans/status verbs: - get - patch - update - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrations verbs: - create - delete - get - list - patch - update - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrations/status verbs: - get - patch - update - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrationtemplates verbs: - get - list - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - networkmappings verbs: - create - delete - get - list - patch - update - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - networkmappings/finalizers verbs: - update - apiGroups: - vjailbreak.k8s.pf9.io resources: - networkmappings/status verbs: - get - patch - update - apiGroups: - vjailbreak.k8s.pf9.io resources: - openstackcreds verbs: - create - delete - get - list - patch - update - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - openstackcreds/finalizers verbs: - update - apiGroups: - vjailbreak.k8s.pf9.io resources: - openstackcreds/status verbs: - get - patch - update - apiGroups: - vjailbreak.k8s.pf9.io resources: - storagemappings verbs: - create - delete - get - list - patch - update - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - storagemappings/finalizers verbs: - update - apiGroups: - vjailbreak.k8s.pf9.io resources: - storagemappings/status verbs: - get - patch - update - apiGroups: - vjailbreak.k8s.pf9.io resources: - vmwarecreds verbs: - create - delete - get - list - patch - update - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - vmwarecreds/finalizers verbs: - update - apiGroups: - vjailbreak.k8s.pf9.io resources: - vmwarecreds/status verbs: - get - patch - update --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-migration-editor-role rules: - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrations verbs: - create - delete - get - list - patch - update - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrations/status verbs: - get --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-migration-viewer-role rules: - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrations verbs: - get - list - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrations/status verbs: - get --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-migrationplan-editor-role rules: - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrationplans verbs: - create - delete - get - list - patch - update - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrationplans/status verbs: - get --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-migrationplan-viewer-role rules: - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrationplans verbs: - get - list - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrationplans/status verbs: - get --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-migrationtemplate-editor-role rules: - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrationtemplates verbs: - create - delete - get - list - patch - update - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrationtemplates/status verbs: - get --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-migrationtemplate-viewer-role rules: - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrationtemplates verbs: - get - list - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - migrationtemplates/status verbs: - get --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-networkmapping-editor-role rules: - apiGroups: - vjailbreak.k8s.pf9.io resources: - networkmappings verbs: - create - delete - get - list - patch - update - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - networkmappings/status verbs: - get --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-networkmapping-viewer-role rules: - apiGroups: - vjailbreak.k8s.pf9.io resources: - networkmappings verbs: - get - list - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - networkmappings/status verbs: - get --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-openstackcreds-editor-role rules: - apiGroups: - vjailbreak.k8s.pf9.io resources: - openstackcreds verbs: - create - delete - get - list - patch - update - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - openstackcreds/status verbs: - get --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-openstackcreds-viewer-role rules: - apiGroups: - vjailbreak.k8s.pf9.io resources: - openstackcreds verbs: - get - list - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - openstackcreds/status verbs: - get --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-storagemapping-editor-role rules: - apiGroups: - vjailbreak.k8s.pf9.io resources: - storagemappings verbs: - create - delete - get - list - patch - update - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - storagemappings/status verbs: - get --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-storagemapping-viewer-role rules: - apiGroups: - vjailbreak.k8s.pf9.io resources: - storagemappings verbs: - get - list - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - storagemappings/status verbs: - get --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-vmwarecreds-editor-role rules: - apiGroups: - vjailbreak.k8s.pf9.io resources: - vmwarecreds verbs: - create - delete - get - list - patch - update - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - vmwarecreds/status verbs: - get --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-vmwarecreds-viewer-role rules: - apiGroups: - vjailbreak.k8s.pf9.io resources: - vmwarecreds verbs: - get - list - watch - apiGroups: - vjailbreak.k8s.pf9.io resources: - vmwarecreds/status verbs: - get --- apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-leader-election-rolebinding namespace: migration-system roleRef: apiGroup: rbac.authorization.k8s.io kind: Role name: migration-leader-election-role subjects: - kind: ServiceAccount name: migration-controller-manager namespace: migration-system --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration name: migration-manager-rolebinding roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: migration-manager-role subjects: - kind: ServiceAccount name: migration-controller-manager namespace: migration-system --- apiVersion: apps/v1 kind: Deployment metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: migration control-plane: controller-manager name: migration-controller-manager namespace: migration-system spec: replicas: 1 selector: matchLabels: control-plane: controller-manager template: metadata: annotations: kubectl.kubernetes.io/default-container: manager labels: control-plane: controller-manager spec: containers: - args: - --leader-elect - --health-probe-bind-address=:8081 command: - /manager image: platform9/vjailbreak-controller:v0.1 imagePullPolicy: IfNotPresent livenessProbe: httpGet: path: /healthz port: 8081 initialDelaySeconds: 15 periodSeconds: 20 name: manager readinessProbe: httpGet: path: /readyz port: 8081 initialDelaySeconds: 5 periodSeconds: 10 resources: requests: cpu: 200m memory: 256Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL securityContext: runAsNonRoot: true serviceAccountName: migration-controller-manager terminationGracePeriodSeconds: 10