# Copyright 2021 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: ISO creation - centos block: - name: Create custom ISO command: >- mkisofs -o /tmp/{{ centos_iso_filename }} -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot -e images/efiboot.img -no-emul-boot -J -R -V "CentOS 7 x86_64" {{ tmp_iso_dir }} changed_when: true register: centos_iso_status tags: install args: chdir: "{{ tmp_iso_dir }}" - name: Custom ISO creation status check assert: that: - "'Total directory bytes:' in centos_iso_status.stderr" - "'Path table size(bytes):' in centos_iso_status.stderr" - "'Max brk space used' in centos_iso_status.stderr" - "'extents written' in centos_iso_status.stderr" success_msg: "{{ custom_iso_success_msg }}" fail_msg: "{{ custom_iso_fail_msg }}" - name: Copy ISO file to nfs share copy: src: "/tmp/{{ centos_iso_filename }}" dest: "{{ nfs_share_offline_repo }}/{{ centos_iso_filename }}" mode: preserve tags: install when: provision_os == os_supported_centos - name: ISO creation - rocky block: - name: Fetch rocky profile name shell: set -o pipefail && grep 'Rocky-8' {{ tmp_iso_dir }}{{ grub_cfg_path }} | head -1 register: rocky_profile_name changed_when: false - name: Create custom ISO command: >- mkisofs -o /tmp/{{ rocky_iso_filename }} -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot -e images/efiboot.img -no-emul-boot -J -R -V {{ rocky_profile_name.stdout.split(' ')[4] | replace("'","") }} {{ tmp_iso_dir }} changed_when: true register: rocky_iso_status tags: install args: chdir: "{{ tmp_iso_dir }}" - name: Custom ISO creation status check assert: that: - "'Total directory bytes:' in rocky_iso_status.stderr" - "'Path table size(bytes):' in rocky_iso_status.stderr" - "'Max brk space used' in rocky_iso_status.stderr" - "'extents written' in rocky_iso_status.stderr" success_msg: "{{ custom_iso_success_msg }}" fail_msg: "{{ custom_iso_fail_msg }}" - name: Copy ISO file to nfs share copy: src: "/tmp/{{ rocky_iso_filename }}" dest: "{{ nfs_share_offline_repo }}/{{ rocky_iso_filename }}" mode: preserve tags: install when: provision_os == os_supported_rocky - name: Remove the kickstart file file: path: "{{ role_path }}/files/{{ idrac_kickstart_file }}" state: absent tags: install