# Copyright 2022 Dell Inc. or its subsidiaries. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. --- - name: Add leap src repo zypper_repository: name: "{{ src_repo_name }}" repo: "{{ src_repo_path }}" state: present autorefresh: yes - name: Install tar packages zypper: name: "{{ item }}" state: present with_items: - tar - bzip2 - name: Install source slurm command: zypper --non-interactive si slurm changed_when: true - name: Find tar.bz2 slurm file name command: find "{{ slurm_src_package_path }}" -name "slurm*tar.bz2" changed_when: false register: slurm_tar_file - name: Set slurm tar file and folder path set_fact: slurm_tar_file: "{{ slurm_tar_file.stdout.split(slurm_src_package_path)[1] }}" slurm_folder_path: "{{ slurm_tar_file.stdout.split(slurm_src_package_path)[1].split('.tar')[0] }}" - name: Copy slurm tar file to lib folder copy: src: "{{ slurm_src_package_path }}{{ slurm_tar_file }}" dest: "{{ slurm_lib_path }}{{ slurm_tar_file }}" remote_src: true mode: preserve - name: Untar the slurm tar file command: tar --bzip -x -f "{{ slurm_lib_path }}{{ slurm_tar_file }}" "{{ slurm_folder_path }}/" changed_when: true args: chdir: "{{ slurm_lib_path }}" warn: false - name: Configure slurmrestd command: ./configure --prefix "{{ slurm_lib_path }}" --enable-slurmrestd --with-jwt=/usr/local changed_when: true args: chdir: "{{ slurm_lib_path }}{{ slurm_folder_path }}" - name: Execute make command: make changed_when: true register: make until: make is not failed retries: "{{ make_command_retries }}" args: chdir: "{{ slurm_lib_path }}{{ slurm_folder_path }}" - name: Execute make install command: make install changed_when: true register: make_install until: make_install is not failed retries: "{{ make_command_retries }}" args: chdir: "{{ slurm_lib_path }}{{ slurm_folder_path }}" - name: Check lib64 auth_jwt file path stat: path: "{{ slurm_lib64_auth_jwt_src }}/{{ auth_jwt_file_name }}" register: auth_jwt_lib64_path - name: Check lib auth_jwt file path stat: path: "{{ slurm_lib_auth_jwt_src }}/{{ auth_jwt_file_name }}" register: auth_jwt_lib_path - name: Copy lib64 auth_jwt files shell: "cp {{ slurm_lib64_auth_jwt_src }}/auth_jwt.* {{ slurm_lib64_auth_jwt_dest }}" changed_when: true when: auth_jwt_lib64_path.stat.exists - name: Copy lib auth_jwt files shell: "cp {{ slurm_lib_auth_jwt_src }}/auth_jwt.* {{ slurm_lib64_auth_jwt_dest }}" changed_when: true when: auth_jwt_lib_path.stat.exists - name: Check lib64 auth_jwt file path stat: path: "{{ slurm_lib64_libjwt_src }}/{{ libjwt_file_name }}" register: libjwt_lib64_path - name: Check lib auth_jwt file path stat: path: "{{ slurm_lib_libjwt_src }}/{{ libjwt_file_name }}" register: libjwt_lib_path - name: Copy lib64 libjwt files shell: "cp {{ slurm_lib64_libjwt_src }}/libjwt.* {{ slurm_lib64_libjwt_dest }}" changed_when: true when: libjwt_lib64_path.stat.exists - name: Copy lib libjwt files shell: "cp {{ slurm_lib_libjwt_src }}/libjwt.* {{ slurm_lib64_libjwt_dest }}" changed_when: true when: libjwt_lib_path.stat.exists