File tree Expand file tree Collapse file tree 4 files changed +45
-32
lines changed Expand file tree Collapse file tree 4 files changed +45
-32
lines changed Original file line number Diff line number Diff line change 2
2
name : Build fat image
3
3
' on ' :
4
4
workflow_dispatch :
5
- inputs :
6
- use_RL9 :
7
- required : true
8
- description : Include RL9 image build
9
- type : boolean
10
- default : false
5
+ # inputs:
6
+ # use_RL9:
7
+ # required: true
8
+ # description: Include RL9 image build
9
+ # type: boolean
10
+ # default: false
11
+ push :
12
+ branches :
13
+ - ofed
11
14
jobs :
12
15
openstack :
13
16
name : openstack-imagebuild
@@ -16,11 +19,11 @@ jobs:
16
19
strategy :
17
20
matrix :
18
21
os_version : [RL8, RL9]
19
- rl9_selected :
20
- - ${{ inputs.use_RL9 == true }} # only potentially true for workflow_dispatch
21
- exclude :
22
- - os_version : RL9
23
- rl9_selected : false
22
+ # rl9_selected:
23
+ # - ${{ inputs.use_RL9 == true }} # only potentially true for workflow_dispatch
24
+ # exclude:
25
+ # - os_version: RL9
26
+ # rl9_selected: false
24
27
env :
25
28
ANSIBLE_FORCE_COLOR : True
26
29
OS_CLOUD : openstack
Original file line number Diff line number Diff line change @@ -5,22 +5,21 @@ ofed_distro_version: "{{ ansible_distribution_version }}" # e.g. '8.9'
5
5
ofed_arch : " {{ ansible_architecture }}"
6
6
ofed_tmp_dir : /tmp
7
7
ofed_update_firmware : false
8
- ofed_build_packages :
9
- - perl
10
- - createrepo
11
- - kernel-rpm-macros
12
- - libtool
13
- - python36
8
+ ofed_build_packages : # may require additional packages depending on ofed_package_selection
14
9
- autoconf
15
10
- automake
16
11
- gcc
17
- - rpm-build
12
+ - kernel-devel-{{ _ofed_loaded_kernel.stdout | trim }}
13
+ - kernel-rpm-macros
14
+ - libtool
18
15
- lsof
19
- - gdb-headless
20
16
- patch
21
- - kernel-devel-{{ _ofed_loaded_kernel.stdout | trim }}
22
17
- pciutils
23
- - kernel-modules-extra
24
- - tk
25
- - gcc-gfortran
26
- - tcl
18
+ - perl
19
+ - rpm-build
20
+ ofed_build_rl8_packages :
21
+ - gdb-headless
22
+ - python36
23
+ ofed_package_selection : # list of package selection flags for mlnxofedinstall script
24
+ - hpc
25
+ - with-nfsrdma
Original file line number Diff line number Diff line change 26
26
changed_when : false
27
27
failed_when :
28
28
- _ofed_info.rc > 0
29
- - " 'No such file or directory' not in ofed_info .msg"
29
+ - " 'No such file or directory' not in _ofed_info .msg"
30
30
register : _ofed_info
31
31
32
32
- name : Install build prerequisites
33
+ dnf :
34
+ name : " {{ ofed_build_packages + (ofed_build_rl8_packages if ofed_distro_version == '8.9' else []) }}"
33
35
when : " 'MLNX_OFED_LINUX-' + ofed_version not in _ofed_info.stdout"
34
36
# don't want to install a load of prereqs unnecessarily
35
- dnf :
36
- name : " {{ ofed_build_packages }}"
37
37
38
38
- name : Download and unpack Mellanox OFED tarball
39
39
ansible.builtin.unarchive :
45
45
46
46
# Below from https://docs.nvidia.com/networking/display/mlnxofedv24010331/user+manual
47
47
- name : Run OFED install script
48
- shell :
49
- cmd : " {{ ofed_tmp_dir }}/MLNX_OFED_LINUX-{{ ofed_version }}/mlnxofedinstall --add-kernel-support {% if not ofed_update_firmware %}--without-fw-update{% endif %} --force"
48
+ command :
49
+ cmd : >
50
+ ./mlnxofedinstall
51
+ --add-kernel-support
52
+ {% if not ofed_update_firmware %}--without-fw-update{% endif %}
53
+ --force
54
+ --skip-repo
55
+ {% for pkgsel in ofed_package_selection %}
56
+ --{{ pkgsel }}
57
+ {% endfor %}
58
+ chdir : " {{ ofed_tmp_dir }}/MLNX_OFED_LINUX-{{ ofed_version }}-{{ ofed_distro }}{{ ofed_distro_version }}-{{ ofed_arch }}/"
50
59
register : _ofed_install
51
60
when : " 'MLNX_OFED_LINUX-' + ofed_version not in _ofed_info.stdout"
61
+ async : " {{ 45 * 60 }}" # wait for up to 45 minutes
62
+ poll : 15 # check every 15 seconds
52
63
53
64
- name : Update initramfs
54
65
command :
Original file line number Diff line number Diff line change @@ -162,7 +162,7 @@ source "openstack" "openhpc" {
162
162
# "fat" image builds:
163
163
build {
164
164
165
- # non-CUDA :
165
+ # non-OFED :
166
166
source "source.openstack.openhpc" {
167
167
name = " openhpc"
168
168
floating_ip_network = " ${ var . floating_ip_network } "
@@ -171,9 +171,9 @@ build {
171
171
image_name = " ${ source . name } -${ var . os_version } -${ local . timestamp } -${ substr (local. git_commit , 0 , 8 )} " # similar to name from slurm_image_builder
172
172
}
173
173
174
- # CUDA :
174
+ # OFED :
175
175
source "source.openstack.openhpc" {
176
- name = " openhpc-cuda " # this is the only difference from the above
176
+ name = " openhpc-ofed " # this is the only difference from the above
177
177
floating_ip_network = " ${ var . floating_ip_network } "
178
178
source_image = " ${ var . fatimage_source_image [var . os_version ]} "
179
179
source_image_name = " ${ var . fatimage_source_image_name [var . os_version ]} "
You can’t perform that action at this time.
0 commit comments