|
| 1 | +==== |
| 2 | +OFED |
| 3 | +==== |
| 4 | + |
| 5 | +Warning: Experimental workflow subject to change |
| 6 | + |
| 7 | +This section documents the workflow for building OFED packages for Release train integration. |
| 8 | + |
| 9 | +The workflow builds the OFED kernel modules against the latest available kernel in Release train |
| 10 | +(as configured in SKC) and compiles them into RPM packages to be uploaded to Ark. Addtionally, |
| 11 | +this workflow downloads the userspace OFED packages from the Nvidia repository and uploads these |
| 12 | +to Ark. |
| 13 | + |
| 14 | +Workflow |
| 15 | +======== |
| 16 | + |
| 17 | +The workflow uses workflow_dispatch to manually request an OFED build, which will deploy a builder |
| 18 | +VM, apply kayobe config to the builder, upgrade the kernel, reboot, then run two Ansible playbooks |
| 19 | +for building and uploading OFED to Ark. |
| 20 | + |
| 21 | +Pre-requisites |
| 22 | +-------------- |
| 23 | + |
| 24 | +Before building OFED packages, the workflow will ensure that: |
| 25 | + |
| 26 | +* A full distro-sync has taken place, ensuring the kernel is upgraded. |
| 27 | + |
| 28 | +* The bootloader has been configured to use the latest kernel |
| 29 | + |
| 30 | +* noexec is disabled in the temporary logical volume. |
| 31 | + |
| 32 | +build-ofed |
| 33 | +---------- |
| 34 | + |
| 35 | +Currently we only support building Rocky Linux 9 OFED packages. |
| 36 | + |
| 37 | +In order to setup OFED, we're required to build kernel modules for the OFED drivers as |
| 38 | +the kernels we provide in release train are unsupported by OFED. To accomplish this we |
| 39 | +will need to use the doca-kernel-support from the doca-extra repository. |
| 40 | + |
| 41 | +We will need to instll dependencies in order to build the OFED kernel modules, and these |
| 42 | +are installed at the beginning of the build playbook. We also install base and appstream |
| 43 | +dependencies of userspace OFED packages here, this is intended to stop these dependencies |
| 44 | +being pulled in later when we download the OFED packages from the doca-host repository. |
| 45 | + |
| 46 | +At the end of the playbook following the kernel module build, the OFED userspace packages |
| 47 | +are downloaded from the upstream repository in order to upload these to Ark. |
| 48 | + |
| 49 | +push-ofed |
| 50 | +--------- |
| 51 | + |
| 52 | +As we're not syncing OFED from any upstream source, and are instead creating our own |
| 53 | +repository of custom packages, we will be required to setup the Pulp distribution/publication |
| 54 | +and upload the content directly to Ark. This playbook uses the Pulp CLI to upload the RPMs |
| 55 | +to Ark. |
0 commit comments