Skip to content

ubuntuhammer Builder

This content pack contains the workflows and profiles needed to build ubuntuhammer on ubuntu 22.04 Ubuntuhammer is what RackN uses to do image deployments while using the latest curtin code since it has so many dependencies on Ubuntu libraries. Currently Ubuntuhammer is not supported for discovery or other workflows, or tasks that rely on sledgehammer.

Design

Following the standard RackN Digital Rebar methods, a workflow is used to build the new ubuntuhammer on a machine. The machine can be virtual or physical, but must have internet access.

The process drives the machine through an ubuntu 22.04 installation, customizes the image for ubuntuhammer usage, and uploads the resulting image and profiles into DRP for usage.

Customizations can be done through the use of parameters. This includes injecting additional tasks or data. See the ubuntuhammer/customize-tasks parameter for more details.

Prerequisites

DRP Requirements

DRP requires a couple of things to make this happen.

  1. The drp-community-content content pack needs to be loaded. This can be done through the Catalog UX page.
  2. The ubuntuhammer-builder content pack needs to be loaded. This can be done through the Catalog UX page.
  3. The ubuntu 22.04 iso needs to be loaded into DRP. This can be done by running: drpcli bootenvs uploadiso ubuntuhammer-builder-install

That should prepare DRP for building ubuntuhammer.

Machine Requirements

To build ubuntuhammer, a machine is needed to do an install of ubuntu 22.04 and then post installation work to capture the image.

The machine needs at least 4GB of memory and 20GB of storage. The machine needs to be able to PXE to DRP and get discovered. Additionally, the machine needs to be able to access the internet. This could be through a second interface with DHCP, see the ubuntuhammer/extra-ifs parameter. The RackN team uses a UEFI booting VM when building and testing the build process.

Note

This will be destructive to the machine in question.

Outbound Access

The target machine MUST have outbound internet access to get packages and components needed to build ubuntuhammer. To that end, there is a parameter, ubuntuhammer/extra-ifs that can be used to cause DHCP to run on secondary interfaces. This is particularly useful for VMs that have a second interface that has internet access.

Building ubuntuhammer

The following steps will produce a new ubuntuhammer image.

  1. Discover machine into DRP as normal.
  2. Set the workflow on the machine to: ubuntuhammer-build
  3. Wait for the workflow to complete.

Upon completion, there will be a new iso in the isos directory and a new profile in the profiles view for the new ubuntuhammer. These are named by the checksum of the image. The last job log for the process contains the name if you are running this multiple times.