From ec795735cd5fee6396dea92b1b3239f0e6855739 Mon Sep 17 00:00:00 2001 From: robojerk Date: Sun, 10 Aug 2025 00:34:02 -0700 Subject: [PATCH] Switch to complete Rust image to avoid component installation issues - Change from rust:1.89-slim-trixie to rust:1.89 (full image) - Remove manual rustup component add clippy and rustfmt - Full rust:1.89 image includes all components by default - This eliminates the 'whack-a-mole' approach of adding packages one by one - Update build info files to reflect new container image - Should resolve all missing component errors in CI/CD --- .forgejo/workflows/build-artifacts.yml | 17 +++++++---------- .forgejo/workflows/simple-build.yml | 16 +++++----------- 2 files changed, 12 insertions(+), 21 deletions(-) diff --git a/.forgejo/workflows/build-artifacts.yml b/.forgejo/workflows/build-artifacts.yml index a412013..814bc18 100644 --- a/.forgejo/workflows/build-artifacts.yml +++ b/.forgejo/workflows/build-artifacts.yml @@ -31,9 +31,9 @@ jobs: name: Build deb-bootupd Artifacts runs-on: ubuntu-latest container: - # Use official Rust image with Debian Trixie base - much better than manual Rust setup - # Rust 1.89.0 is pre-installed and > 1.84.1 requirement - image: rust:1.89-slim-trixie + # Use complete Rust image with all components pre-installed + # This avoids the "whack-a-mole" of adding components one by one + image: rust:1.89 steps: - name: Setup build environment shell: bash @@ -61,11 +61,8 @@ jobs: # Install additional build dependencies apt install -y libssl-dev libsystemd-dev file - # Install Rust clippy component - rustup component add clippy - - # Install Rust rustfmt component - rustup component add rustfmt + # Rust 1.89 includes all components by default (clippy, rustfmt, etc.) + # No need to manually install components - name: Checkout repository manually run: | @@ -150,8 +147,8 @@ jobs: deb-bootupd Build Information ============================= Build Date: $(date) + Container Image: rust:1.89 Debian Version: ${DEBIAN_VERSION} - Container Image: rust:1.89-slim-trixie Rust Version: $(rustc --version) Cargo Version: $(cargo --version) Git Commit: $(git rev-parse --short HEAD) @@ -224,7 +221,7 @@ jobs: ========================= Build Date: $(date) Debian Version: ${DEBIAN_VERSION} - Container Image: rust:1.89-slim-trixie + Container Image: rust:1.89 Rust Version: $(rustc --version) Git Commit: $(git rev-parse --short HEAD) Git Branch: $(git branch --show-current) diff --git a/.forgejo/workflows/simple-build.yml b/.forgejo/workflows/simple-build.yml index 53f1835..204beb0 100644 --- a/.forgejo/workflows/simple-build.yml +++ b/.forgejo/workflows/simple-build.yml @@ -14,23 +14,17 @@ jobs: build: runs-on: ubuntu-latest container: - # Use official Rust image with Debian Trixie base - much better than manual Rust setup - # Rust 1.89.0 is pre-installed and > 1.84.1 requirement - image: rust:1.89-slim-trixie + # Use complete Rust image with all components pre-installed + # This avoids the "whack-a-mole" of adding components one by one + image: rust:1.89 steps: - name: Checkout code and setup environment run: | apt update -y apt install -y git curl pkg-config libssl-dev libsystemd-dev build-essential file - # Install Rust clippy component - rustup component add clippy - - # Install Rust rustfmt component - rustup component add rustfmt - - # Rust 1.89.0 is already installed in rust:1.89-slim-trixie - # No need for rustup or toolchain management! + # Rust 1.89.0 is already installed with all components in rust:1.89 + # No need for manual component installation! echo "✅ Using pre-installed Rust from official image:" rustc --version cargo --version