Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] The image list packing part of the build script should be architecture-aware #5313

Closed
starbops opened this issue Mar 7, 2024 · 5 comments
Assignees
Labels
area/installer kind/bug Issues that are defects reported by users or that we know have reached a real release not-require/test-plan Skip to create a e2e automation test issue reproduce/needed Reminder to add a reproduce label and to remove this one severity/needed Reminder to add a severity label and to remove this one
Milestone

Comments

@starbops
Copy link
Member

starbops commented Mar 7, 2024

Describe the bug

We will soon publish ARM64 artifacts for the v1.3.0 release. The build pipeline includes an image list packing stage, which packs the image lists for the current and previous versions (ref). It isn't arch-aware yet, so the results (the packed image lists) will be the same for both AMD64 and ARM64 built artifacts.

The packed image lists inside the built ISO will be referenced in the final stage of Harvester upgrades to purge unneeded container images. If the image lists contain wrong image names, the container images cannot be removed.

In addition, future releases will publish the image lists with ARCH as the name suffix. We need to adapt this to prevent build failure.

To Reproduce
Steps to reproduce the behavior:

  1. Build the v1.3.0-rc4 ISO image
  2. Examine the built image, check the packed image list

Expected behavior

Fetch the correct image list according to the target architecture and pack them into the ISO image.

Support bundle

N/A

Environment

  • Harvester ISO version: v1.3.0-rc4
  • Underlying Infrastructure (e.g. Baremetal with Dell PowerEdge R630): not relevant

Additional context

N/A

@starbops starbops added kind/bug Issues that are defects reported by users or that we know have reached a real release area/installer reproduce/needed Reminder to add a reproduce label and to remove this one severity/needed Reminder to add a severity label and to remove this one labels Mar 7, 2024
@brandboat brandboat self-assigned this Mar 25, 2024
@harvesterhci-io-github-bot
Copy link

harvesterhci-io-github-bot commented Mar 25, 2024

Pre Ready-For-Testing Checklist

  • If labeled: require/HEP Has the Harvester Enhancement Proposal PR submitted?
    The HEP PR is at:

  • Where is the reproduce steps/test steps documented?
    The reproduce steps/test steps are at:

    1. arm64/amd64 iso should build up successfully.
    2. mount iso and check if v1.3.0/v1.3.1/v1.3.2 image-lists exist under {MOUNT_PATH}/bundle/harvester/images-lists-archive
      e.g. sudo mount -o loop ./harvester-v1.4.0-rc2-amd64.iso /mnt/iso_image, and check those image lists
➜ brandboat@suse  /mnt/iso_image/bundle/harvester/images-lists-archive  ls -la
total 26
drwxr-xr-x 1 root root 2048 Oct  9 17:56 .
drwxr-xr-x 1 root root 2048 Oct  9 17:56 ..
drwxr-xr-x 1 root root 2048 Oct  9 17:56 current
drwxr-xr-x 1 root root 2048 Oct  9 17:56 v1.1.0
drwxr-xr-x 1 root root 2048 Oct  9 17:56 v1.1.1
drwxr-xr-x 1 root root 2048 Oct  9 17:56 v1.1.2
drwxr-xr-x 1 root root 2048 Oct  9 17:56 v1.1.3
drwxr-xr-x 1 root root 2048 Oct  9 17:56 v1.2.0
drwxr-xr-x 1 root root 2048 Oct  9 17:56 v1.2.1
drwxr-xr-x 1 root root 2048 Oct  9 17:56 v1.2.2
drwxr-xr-x 1 root root 2048 Oct  9 17:56 v1.3.0
drwxr-xr-x 1 root root 2048 Oct  9 17:56 v1.3.1
drwxr-xr-x 1 root root 2048 Oct  9 17:56 v1.3.2
  • Is there a workaround for the issue? If so, where is it documented?
    The workaround is at:

  • Have the backend code been merged (harvester, harvester-installer, etc) (including backport-needed/*)?
    The PR is at: Make image list packing architecture-awared harvester-installer#682

    • Does the PR include the explanation for the fix or the feature?

    • Does the PR include deployment change (YAML/Chart)? If so, where are the PRs for both YAML file and Chart?
      The PR for the YAML change is at:
      The PR for the chart change is at:

  • If labeled: area/ui Has the UI issue filed or ready to be merged?
    The UI issue/PR is at:

  • If labeled: require/doc, require/knowledge-base Has the necessary document PR submitted or merged?
    The documentation/KB PR is at:

  • If NOT labeled: not-require/test-plan Has the e2e test plan been merged? Have QAs agreed on the automation test case? If only test case skeleton w/o implementation, have you created an implementation issue?

    • The automation skeleton PR is at:
    • The automation test case PR is at:
  • If the fix introduces the code for backward compatibility Has a separate issue been filed with the label release/obsolete-compatibility?
    The compatibility issue is filed at:

@harvesterhci-io-github-bot

Automation e2e test issue: harvester/tests#1185

@lanfon72
Copy link
Member

lanfon72 commented May 14, 2024

milestone/release required.

@brandboat brandboat added this to the v1.4.0 milestone Jun 26, 2024
@brandboat
Copy link
Contributor

brandboat commented Jun 26, 2024

thanks @lanfon72 , milestone added, this one should be included in v1.4.0 and backport to v1.3 (it was merged, and I thought is in v1.3.1 release... harvester/harvester-installer#691)

@albinsun albinsun self-assigned this Oct 16, 2024
@albinsun albinsun added the not-require/test-plan Skip to create a e2e automation test issue label Oct 16, 2024
@albinsun
Copy link

Test PASS, both AMD64 and ARM64 arch has image_list_all.txt for v1.3.0, v1.3.1 and v1.3.2, close as fixed.

Environment

  • Harvester Image
    • harvester-v1.4.0-rc2-amd64.iso
    • harvester-v1.4.0-rc2-arm64.iso

Test Steps

  1. Mount Harvester AMD64 and ARM64 ISOs

    image

  2. Check AMD64 v1.3.0, v1.3.1 and v1.3.2 image_list_all.txt exists

    image

  3. Check ARM v1.3.0, v1.3.1 and v1.3.2 image_list_all.txt exists

    image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/installer kind/bug Issues that are defects reported by users or that we know have reached a real release not-require/test-plan Skip to create a e2e automation test issue reproduce/needed Reminder to add a reproduce label and to remove this one severity/needed Reminder to add a severity label and to remove this one
Projects
None yet
Development

No branches or pull requests

5 participants