Skip to content

Conversation

@frhuelsz
Copy link
Contributor

🔍 Description

In the past we were doing tricks to locally build trident and then use it in AzL3. However, Ubuntu 24 has newer libs than AzL, meaning that the trick no longer works well.

This PR introduces a minute middle step to build the binary in a short-lived azl3 container so that we can still get a relatively quick build that is 100% compatible with AzL3.

The makefile also adds detection so that make run-netlaunch grabs the simple build when possible, and does the container build when needed.

The container image needs to be created once (takes a couple minutes) and then can be started quickly just for a build. Crates are prefetched for convenience.

@frhuelsz frhuelsz requested a review from a team as a code owner January 16, 2026 22:46
Copilot AI review requested due to automatic review settings January 16, 2026 22:46
@frhuelsz frhuelsz changed the title infra: Support easy building binary on ubuntu 24 infra: Support easy trident binary building on ubuntu 24 Jan 16, 2026
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces support for building Trident binaries for Azure Linux 3 (AzL3) on Ubuntu 24, addressing library compatibility issues between newer Ubuntu versions and AzL3. It adds a containerized build process using an AzL3 base image and automatic OS detection to select the appropriate binary for local testing.

Changes:

  • Added Docker-based build infrastructure for Azure Linux 3 compatibility
  • Modified download service to fetch the AzL3-specific binary
  • Enhanced Makefile with OS detection to automatically select correct binary for testing

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
packaging/docker/Dockerfile.azl3-builder New Dockerfile defining AzL3 builder image with build dependencies and pre-fetched cargo packages
Makefile Added azl3-builder-image, build-azl3, and bin/trident-azl3 targets; added OS detection logic for run-netlaunch to select appropriate binary
tests/images/trident-mos/files/download-trident.service Updated curl command to download trident-azl3 instead of trident

@frhuelsz frhuelsz merged commit fa7d241 into main Jan 17, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants