Uploaded image for project: 'Image Builder'
  1. Image Builder
  2. COMPOSER-2013

Improve testing of image definitions

XMLWordPrintable

    • Tests in osbuild/images
    • 40
    • False
    • None
    • False
    • Testable
    • To Do
    • RHELBU-2122 - Image Builder's image definitions is created as an independent project
    • 0% To Do, 0% In Progress, 100% Done

      Goal:

      • The image definitions repository (osbuild/images) should test all images that it defines. osbuild-composer CI, as a dependent project of images, should not need to build, boot, and verify every image that is buildable by the images project.

      Acceptance Criteria:

      • images CI builds at least one of every image type that it defines whenever the definition changes. [Done]
      • images CI saves every artifact that it builds for reuse. [Done]
      • images CI uses every customization and build option at least once. [Moved to COMPOSER-2356]
      • osbuild-composer CI reuses the artifacts built by images CI instead of rebuilding them. [Moved to COMPOSER-2356]

      Proposed steps

      1. Dynamically build every image definition that changes in images CI. [Done]
      2. Store all artifacts that are built in images CI. [Done]
      3. On successful build, upload the image to the appropriate cloud platform and boot it.
      4. In osbuild-composer CI, instead of rebuilding images, download them from the images CI store.

      For step 4, we could use an osbuild wrapper that finds the appropriate image by the manifest ID and downloads it to return to osbuild-composer. This way, end-to-end tests can be set up the same way they are now, but would run faster as they wouldn't need to build every image.

              akoutsou@redhat.com Achilleas Koutsou
              akoutsou@redhat.com Achilleas Koutsou
              Achilleas Koutsou
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: