From 2959f6b2ae984c082c5c2c4fe2795f7ce51cbfb5 Mon Sep 17 00:00:00 2001 From: Rajan Mishra Date: Tue, 20 Aug 2024 16:10:08 +0200 Subject: [PATCH] scaleapi code fixes in the development branch Signed-off-by: Rajan Mishra --- roles/core_install/tasks/install_nodeid.yml | 39 ++++++++++++------- .../core_install/tasks/install_repository.yml | 10 +++++ roles/core_install/tasks/main.yml | 8 ++++ .../core_upgrade/tasks/install_repository.yml | 11 ++++++ 4 files changed, 54 insertions(+), 14 deletions(-) diff --git a/roles/core_install/tasks/install_nodeid.yml b/roles/core_install/tasks/install_nodeid.yml index ea1acc91..338ecefe 100644 --- a/roles/core_install/tasks/install_nodeid.yml +++ b/roles/core_install/tasks/install_nodeid.yml @@ -6,46 +6,57 @@ - block: - name: install| Creates default directory file: - path: "{{ scale_node_id_config.cert_dir_location }}" + path: "{{ hostvars[inventory_hostname].cert_dir_location }}" state: directory mode: '0600' recurse: yes - when: scale_node_id_config.cert_dir_location is defined + when: hostvars[inventory_hostname].cert_dir_location is defined - name: install | Copy installation package to node copy: - src: "{{ scale_node_id_config.cert }}" - dest: "{{ scale_node_id_config.cert }}" + src: "{{ hostvars[inventory_hostname].node_cert }}" + dest: "{{ hostvars[inventory_hostname].node_cert }}" mode: '0600' - name: install | Copy installation package to node copy: - src: "{{ scale_node_id_config.key }}" - dest: "{{ scale_node_id_config.key }}" + src: "{{ hostvars[inventory_hostname].node_cert_key }}" + dest: "{{ hostvars[inventory_hostname].node_cert_key }}" mode: '0600' - name: install | Copy installation package to node copy: - src: "{{ scale_node_id_config.chain }}" - dest: "{{ scale_node_id_config.chain }}" + src: "{{ hostvars[inventory_hostname].node_cert_chain }}" + dest: "{{ hostvars[inventory_hostname].node_cert_chain }}" mode: '0600' - name: cluster | Node identity - command: /usr/lpp/mmfs/bin/scalectl nodeid get + command: /usr/lpp/mmfs/bin/scalectl node config get register: nodeidentity_exist_results + ignore_errors: yes + failed_when: false + + - name: cluster | Restart scaleadmd ( workaround) + command: systemctl restart scaleadmd + ignore_errors: yes + failed_when: false + when: + - nodeidentity_exist_results.stderr is defined + - '"/var/mmfs/run/grpc.admin.sock" in nodeidentity_exist_results.stderr' - debug: msg: "{{nodeidentity_exist_results}}" - name: cluster | Node identity - command: /usr/lpp/mmfs/bin/scalectl nodeid import --cert {{ scale_node_id_config.cert }} --key {{ scale_node_id_config.key }} --chain {{ scale_node_id_config.chain }} + command: /usr/lpp/mmfs/bin/scalectl node config set --cert {{ hostvars[inventory_hostname].node_cert }} --key {{ hostvars[inventory_hostname].node_cert_key }} --chain {{ hostvars[inventory_hostname].node_cert_chain }} register: nodeidentity_results + retries: 5 + delay: 30 when: nodeidentity_exist_results.stdout_lines | length < 1 when: - - scale_node_id_config is defined - - scale_node_id_config.cert is defined - - scale_node_id_config.key is defined - - scale_node_id_config.chain is defined + - hostvars[inventory_hostname].node_cert is defined + - hostvars[inventory_hostname].node_cert_key is defined + - hostvars[inventory_hostname].node_cert_chain is defined - debug: msg: "{{ nodeidentity_results.cmd }}" diff --git a/roles/core_install/tasks/install_repository.yml b/roles/core_install/tasks/install_repository.yml index f04f0865..abfd8dbc 100644 --- a/roles/core_install/tasks/install_repository.yml +++ b/roles/core_install/tasks/install_repository.yml @@ -76,3 +76,13 @@ scale_install_all_packages: "{{ scale_install_all_packages + [ item ] }}" when: scale_install_gplbin_package is undefined with_items: "{{ scale_install_gplsrc_packages }}" + +# +# Add GPFS packages for building scale-api from source +# +- name: install | Add scale api package to list + set_fact: + scale_install_all_packages: "{{ scale_install_all_packages + [ item ] }}" + when: scale_type is defined + with_items: + - gpfs.scaleapi diff --git a/roles/core_install/tasks/main.yml b/roles/core_install/tasks/main.yml index 36c12afd..bc8740c3 100644 --- a/roles/core_install/tasks/main.yml +++ b/roles/core_install/tasks/main.yml @@ -6,3 +6,11 @@ - import_tasks: build.yml tags: build + +- import_tasks: install_nodeid.yml + tags: install + when: + - scale_scaleadmd is defined + - hostvars[inventory_hostname].node_cert is defined and hostvars[inventory_hostname].node_cert != "None" + - hostvars[inventory_hostname].node_cert_key is defined and hostvars[inventory_hostname].node_cert_key != "None" + - hostvars[inventory_hostname].node_cert_chain is defined and hostvars[inventory_hostname].node_cert_chain != "None" diff --git a/roles/core_upgrade/tasks/install_repository.yml b/roles/core_upgrade/tasks/install_repository.yml index 169ff26f..9b925252 100644 --- a/roles/core_upgrade/tasks/install_repository.yml +++ b/roles/core_upgrade/tasks/install_repository.yml @@ -128,3 +128,14 @@ with_items: - gpfs.java* when: (is_scale_java_pkg_installed | bool) + + +# +# Add GPFS packages for building scale-api from source +# +- name: install | Add scale api package to list + set_fact: + scale_install_all_packages: "{{ scale_install_all_packages + [ item ] }}" + when: scale_type is defined + with_items: + - gpfs.scaleapi