diff --git a/Changes.md b/Changes.md index d0da1a1c..b984ca9a 100644 --- a/Changes.md +++ b/Changes.md @@ -75,3 +75,5 @@ * Switch to patternizer and remove common * Stop deploying storagesystem as ODF does not need it anymore (as of 4.18/4.20) * Update Ansible linter +* Require metal nodes as workers - remove code to create machinesets +* Add ODF console plugin diff --git a/Makefile b/Makefile index d3bbbd07..be8aa3ed 100644 --- a/Makefile +++ b/Makefile @@ -1,10 +1 @@ include Makefile-common - -.PHONY: default -default: help - -deploy-kubevirt-worker: ## Deploy the metal node worker (from workstation). This is normally done in-cluster - ./scripts/deploy_kubevirt_worker.sh - -configure-controller: ## Configure AAP operator (from workstation). This is normally done in-cluster - ansible-playbook ./scripts/ansible_load_controller.sh -e "aeg_project_repo=$(TARGET_REPO) aeg_project_branch=$(TARGET_BRANCH)" diff --git a/ansible/check_kubevirt_worker.yml b/ansible/check_kubevirt_worker.yml deleted file mode 100644 index e97b9db7..00000000 --- a/ansible/check_kubevirt_worker.yml +++ /dev/null @@ -1,51 +0,0 @@ -#!/usr/bin/env ansible-playbook ---- -- name: Install manifest on AAP controller - become: false - connection: local - hosts: localhost - gather_facts: false - vars: - kubeconfig: "{{ lookup('env', 'KUBECONFIG') }}" - tasks: - - name: Fetch infrastructure values - kubernetes.core.k8s_info: - kind: Infrastructure - namespace: "" - name: cluster - register: infra_values - - # Do platform specific set facts here - - - name: Check for metal machinesets - kubernetes.core.k8s_info: - api: machine.openshift.io/v1beta1 - kind: MachineSet - namespace: openshift-machine-api - register: metal_machinesets - - - name: Display metal machinesets - ansible.builtin.debug: - msg: "{{ metal_machinesets }}" - - - name: End play early if found - ansible.builtin.meta: end_play - when: metal_machinesets.resources | length > 0 - - - name: End play - ansible.builtin.meta: end_play - - - name: Display infrastructure values - ansible.builtin.debug: - msg: "{{ infra_values }}" - - - name: Fetch machinesets - kubernetes.core.k8s_info: - api: machine.openshift.io/v1beta1 - kind: MachineSet - namespace: openshift-machine-api - register: machine_sets - - - name: Display machineset values - ansible.builtin.debug: - msg: "{{ machine_sets.resources[0] }}" diff --git a/ansible/deploy_kubevirt_worker.yml b/ansible/deploy_kubevirt_worker.yml deleted file mode 100644 index 4b854f53..00000000 --- a/ansible/deploy_kubevirt_worker.yml +++ /dev/null @@ -1,111 +0,0 @@ -#!/usr/bin/env ansible-playbook ---- -- name: Install a metal worker - become: false - connection: local - hosts: localhost - gather_facts: false - vars: - kubeconfig: "{{ lookup('env', 'KUBECONFIG') }}" - machineset_instance_type: m5.metal - machineset_machine_role: worker - machineset_machine_type: worker - machineset_name: metal-worker - machineset_node_labels: - node-role.kubernetes.io/worker: "" - machineset_replicas: 1 - machineset_user_data_secret: worker-user-data - machineset_user_data_namespace: openshift-machine-api - tasks: - - name: Query Cluster Infrastructure Name - kubernetes.core.k8s_info: - api_version: config.openshift.io/v1 - kind: Infrastructure - name: cluster - register: cluster_info - - - name: Assert Platform is AWS - ansible.builtin.assert: - fail_msg: Platform for OpenShift cluster must be AWS! - that: - - cluster_info.resources[0].status.platform == "AWS" - - - name: Query MachineSets - kubernetes.core.k8s_info: - api_version: machine.openshift.io/v1beta1 - kind: MachineSet - namespace: openshift-machine-api - register: cluster_machinesets - - - name: Set Dynamic MachineSet Facts - ansible.builtin.set_fact: - machineset_ami_id: "{{ cluster_machinesets.resources[0].spec.template.spec.providerSpec.value.ami.id }}" - machineset_subnet: "{{ cluster_machinesets.resources[0].spec.template.spec.providerSpec.value.subnet.filters[0]['values'][0] }}" - machineset_tags: "{{ cluster_machinesets.resources[0].spec.template.spec.providerSpec.value.tags }}" - machineset_blockdevices: "{{ cluster_machinesets.resources[0].spec.template.spec.providerSpec.value.blockDevices }}" - machineset_securitygroups: "{{ cluster_machinesets.resources[0].spec.template.spec.providerSpec.value.securityGroups }}" - machineset_zone: "{{ cluster_machinesets.resources[0].spec.template.spec.providerSpec.value.placement.availabilityZone }}" - infrastructure_name: "{{ cluster_info.resources[0].status.infrastructureName }}" - infrastructure_region: "{{ cluster_info.resources[0].status.platformStatus.aws.region }}" - - - name: Define template for creating machineset - ansible.builtin.set_fact: - machineset_yaml: | - apiVersion: machine.openshift.io/v1beta1 - kind: MachineSet - metadata: - labels: - machine.openshift.io/cluster-api-cluster: "{{ infrastructure_name }}" - edge-gitops-role: kubevirt-worker - name: "{{ infrastructure_name }}-{{ machineset_name }}-{{ machineset_zone }}" - namespace: openshift-machine-api - spec: - replicas: {{ machineset_replicas | int }} - selector: - matchLabels: - machine.openshift.io/cluster-api-cluster: "{{ infrastructure_name }}" - machine.openshift.io/cluster-api-machineset: "{{ infrastructure_name }}-{{ machineset_name }}-{{ machineset_zone }}" - template: - metadata: - labels: - machine.openshift.io/cluster-api-cluster: "{{ infrastructure_name }}" - machine.openshift.io/cluster-api-machine-role: "{{ machineset_machine_role }}" - machine.openshift.io/cluster-api-machine-type: "{{ machineset_machine_type }}" - machine.openshift.io/cluster-api-machineset: "{{ infrastructure_name }}-{{ machineset_name }}-{{ machineset_zone }}" - {% if machineset_os is defined %} - machine.openshift.io/os-id: {{ machineset_os }} - {% endif %} - spec: - metadata: - labels: {{ machineset_node_labels }} - providerSpec: - value: - ami: - id: "{{ machineset_ami_id }}" - apiVersion: awsproviderconfig.openshift.io/v1beta1 - blockDevices: {{ machineset_blockdevices }} - credentialsSecret: - name: aws-cloud-credentials - deviceIndex: 0 - iamInstanceProfile: - id: "{{ infrastructure_name }}-worker-profile" - instanceType: "{{ machineset_instance_type }}" - kind: AWSMachineProviderConfig - placement: - availabilityZone: "{{ machineset_zone }}" - region: "{{ infrastructure_region }}" - securityGroups: {{ machineset_securitygroups }} - subnet: - filters: - - name: tag:Name - values: - - "{{ machineset_subnet }}" - tags: {{ machineset_tags }} - userDataSecret: - name: "{{ machineset_user_data_secret }}" - namespace: "{{ machineset_user_data_namespace }}" - - - name: Create MachineSet - kubernetes.core.k8s: - definition: "{{ machineset_yaml | from_yaml }}" - state: present diff --git a/overrides/values-console-plugins.yaml b/overrides/values-console-plugins.yaml new file mode 100644 index 00000000..cb8ba9e8 --- /dev/null +++ b/overrides/values-console-plugins.yaml @@ -0,0 +1,3 @@ +--- +ensureConsolePlugins: + - odf-console diff --git a/overrides/values-egv-vms.yaml b/overrides/values-egv-vms.yaml index b9ea7005..eb3b63c3 100644 --- a/overrides/values-egv-vms.yaml +++ b/overrides/values-egv-vms.yaml @@ -1,4 +1,6 @@ --- +waitForMetalNode: false + vms: kiosk: count: 2 diff --git a/pattern-metadata.yaml b/pattern-metadata.yaml index c713fabe..388da610 100644 --- a/pattern-metadata.yaml +++ b/pattern-metadata.yaml @@ -23,7 +23,7 @@ requirements: platform: aws: replicas: 3 - type: m5.4xlarge + type: m5.metal # Loosely defined extra features like hypershift support, non-openshift # kubernetes support, spoke support diff --git a/scripts/check_kubevirt_worker.sh b/scripts/check_kubevirt_worker.sh deleted file mode 100755 index 389cf57c..00000000 --- a/scripts/check_kubevirt_worker.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env ansible-playbook ---- -- name: Check on Kubevirt Worker Status - ansible.builtin.import_playbook: ../ansible/check_kubevirt_worker.yml diff --git a/scripts/deploy_kubevirt_worker.sh b/scripts/deploy_kubevirt_worker.sh deleted file mode 100755 index 552dd1e1..00000000 --- a/scripts/deploy_kubevirt_worker.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env ansible-playbook ---- -- name: Deploy KubeVirt Worker - ansible.builtin.import_playbook: ../ansible/deploy_kubevirt_worker.yml diff --git a/values-hub.yaml b/values-hub.yaml index dcff3dd7..52736b00 100644 --- a/values-hub.yaml +++ b/values-hub.yaml @@ -61,6 +61,14 @@ clusterGroup: chartVersion: 0.2.* extraValueFiles: - $patternref/overrides/values-odf-chart.yaml + ensure-openshift-console-plugins: + name: ensure-openshift-console-plugins + namespace: openshift-console + project: hub + chart: ensure-openshift-console-plugins + chartVersion: 0.1.* + extraValueFiles: + - '$patternref/overrides/values-console-plugins.yaml' openshift-cnv: name: openshift-cnv namespace: openshift-cnv @@ -78,7 +86,6 @@ clusterGroup: - apiGroups: - '*' resources: - - machinesets - persistentvolumeclaims - datavolumes - dataimportcrons @@ -94,10 +101,7 @@ clusterGroup: - list - watch jobs: - - name: deploy-kubevirt-worker - playbook: ansible/deploy_kubevirt_worker.yml - verbosity: -vvv - name: clean-golden-images playbook: ansible/odf_fix_dataimportcrons.yml verbosity: -vvv - managedClusterGroups: [] + managedClusterGroups: {}