@@ -60,9 +60,14 @@ Trident RPMs).
6060
6161| Image | Output File | Bootloader | Integrity | Configurations |
6262| -------| ------------| -----------| -----------| ----------------|
63- | ` trident-container-testimage ` | ` container.cosi ` | grub2 | None | base, encrypted-partition, encrypted-raid, encrypted-swap, extensions, health-checks-install, misc, raid-mirrored, raid-resync-small, raid-small, simple |
64- | ` trident-container-verity-testimage ` | ` container-verity.cosi ` | grub2 | Root dm-verity | root-verity |
65- | ` trident-container-usrverity-testimage ` | ` container-usrverity.cosi ` | systemd-boot | ` /usr ` dm-verity (UKI) | combined, rerun, usr-verity, usr-verity-raid |
63+ | ` trident-container-testimage ` | ` regular.cosi ` | grub2 | None | base, encrypted-partition, encrypted-raid, encrypted-swap, extensions, health-checks-install, misc, raid-mirrored, raid-resync-small, raid-small, simple |
64+ | ` trident-container-verity-testimage ` | ` verity.cosi ` | grub2 | Root dm-verity | root-verity |
65+ | ` trident-container-usrverity-testimage ` | ` usrverity.cosi ` | systemd-boot | ` /usr ` dm-verity (UKI) | combined, rerun, usr-verity, usr-verity-raid |
66+
67+ Container images use the ** same output filenames** as their host counterparts
68+ (` regular.cosi ` , ` verity.cosi ` , ` usrverity.cosi ` ). This matches the pipeline's
69+ ` storm-trident helper prepare-images ` behavior and means Host Configuration
70+ image URLs work unchanged for both runtimes.
6671
6772Container test images do ** not** include Trident RPMs — Trident runs from a
6873Docker container (` trident-container.tar.gz ` ) loaded at runtime. The images
@@ -207,28 +212,30 @@ mv artifacts/test-image/trident-usrverity-testimage_1.cosi artifacts/test-image/
207212#### Container Runtime Images
208213
209214Container images include Docker and a ` trident-container.service ` but omit
210- Trident RPMs — Trident runs from the container tarball instead:
215+ Trident RPMs — Trident runs from the container tarball instead. Rename the
216+ output files to match the host image filenames so Host Configuration image
217+ URLs work unchanged:
211218
212219``` bash
213220mkdir -p artifacts/test-image
214221
215222# Regular container image
216223sudo ./tests/images/testimages.py build trident-container-testimage \
217224 --output-dir ./artifacts/test-image --clones 2
218- mv artifacts/test-image/trident-container-testimage_0.cosi artifacts/test-image/container .cosi
219- mv artifacts/test-image/trident-container-testimage_1.cosi artifacts/test-image/container_v2 .cosi
225+ mv artifacts/test-image/trident-container-testimage_0.cosi artifacts/test-image/regular .cosi
226+ mv artifacts/test-image/trident-container-testimage_1.cosi artifacts/test-image/regular_v2 .cosi
220227
221228# Verity container image (for root-verity configuration)
222229sudo ./tests/images/testimages.py build trident-container-verity-testimage \
223230 --output-dir ./artifacts/test-image --clones 2
224- mv artifacts/test-image/trident-container-verity-testimage_0.cosi artifacts/test-image/container- verity.cosi
225- mv artifacts/test-image/trident-container-verity-testimage_1.cosi artifacts/test-image/container- verity_v2.cosi
231+ mv artifacts/test-image/trident-container-verity-testimage_0.cosi artifacts/test-image/verity.cosi
232+ mv artifacts/test-image/trident-container-verity-testimage_1.cosi artifacts/test-image/verity_v2.cosi
226233
227234# UKI/usr-verity container image (for usr-verity, combined configurations)
228235sudo ./tests/images/testimages.py build trident-container-usrverity-testimage \
229236 --output-dir ./artifacts/test-image --clones 2
230- mv artifacts/test-image/trident-container-usrverity-testimage_0.cosi artifacts/test-image/container- usrverity.cosi
231- mv artifacts/test-image/trident-container-usrverity-testimage_1.cosi artifacts/test-image/container- usrverity_v2.cosi
237+ mv artifacts/test-image/trident-container-usrverity-testimage_0.cosi artifacts/test-image/usrverity.cosi
238+ mv artifacts/test-image/trident-container-usrverity-testimage_1.cosi artifacts/test-image/usrverity_v2.cosi
232239```
233240
234241The images use the Image Customizer container from
@@ -286,8 +293,7 @@ make starter-configuration
286293```
287294
288295This copies ` tests/e2e_tests/trident_configurations/simple/trident-config.yaml `
289- to ` input/trident.yaml ` . Edit it to add your SSH public key under
290- ` os.users[0].sshPublicKeys ` .
296+ to ` input/trident.yaml ` .
291297
292298Alternatively, copy a configuration directly from any test configuration
293299directory:
@@ -297,16 +303,39 @@ mkdir -p input
297303cp tests/e2e_tests/trident_configurations/< config> /trident-config.yaml input/trident.yaml
298304```
299305
306+ #### Add your SSH public key
307+
308+ The test configurations ship with an empty ` sshPublicKeys ` list. Add your
309+ public key so pytest can SSH into the VM after install:
310+
311+ ``` yaml
312+ os :
313+ users :
314+ - name : testing-user
315+ sshPublicKeys :
316+ - <contents of artifacts/id_rsa.pub>
317+ sshMode : key-only
318+ ` ` `
319+
320+ :::tip
321+ If you generated keys with ` make artifacts/id_rsa`, paste the contents of
322+ ` artifacts/id_rsa.pub` into the list.
323+ :: :
324+
325+ # ### Image URLs
326+
300327The Host Configuration references image URLs like
301328` http://NETLAUNCH_HOST_ADDRESS/files/regular.cosi` . Netlaunch automatically
302329replaces `NETLAUNCH_HOST_ADDRESS` with its own `<host-IP>:<port>` at runtime,
303330so the VM can reach the files served by netlaunch.
304331
305- :::note Container runtime Host Configuration
332+ Because both host and container COSI images are renamed to the same output
333+ filenames (see [Build COSI Images](#8-build-cosi-images)), the image URLs in
334+ the Host Configuration work unchanged for both runtimes.
335+
336+ :::note Container runtime — additional configuration
306337For the **container** runtime, the Host Configuration must include an
307- ` additionalFiles ` entry to copy the Trident container tarball onto the VM.
308- Storm-trident and the pipeline's ` edit_host_config.py ` add this automatically
309- when ` --runtimeEnv container ` is specified:
338+ `additionalFiles` entry to copy the Trident container tarball onto the VM :
310339
311340` ` ` yaml
312341os:
315344 destination: /var/lib/trident/trident-container.tar.gz
316345` ` `
317346
318- If running manually with the container runtime, add this entry to your Host
319- Configuration .
347+ Storm-trident and the pipeline's `edit_host_config.py` add this automatically
348+ when `--runtimeEnv container` is specified. It is only needed for manual runs .
320349:: :
321350
322351# ## 3. Run netlaunch
0 commit comments