bootc-dev / bootc-dev/bootc

hardlink swapping across multiple layers fail

Aperta
#1,126 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub
area/container-compatibility
Lingua principale
Rust
Stelle
2.3k
Fork
230
Merge medio
3g 3h
PR unite (30g)
36

Descrizione

Saw this on an image built with kaniko with the symlink prefix patch. Anaconda was from 9.4

> 22:53:33,417 INF program: error: Performing deployment: Importing: Parsing layer blob sha256:0be089d5aab4c35a9c9dce1f00d4c5b02112972a2e62886fed445d380920616f: error: ostree-tar: Processing deferred hardlink etc/sysconfig/iptables-config: Failed to find object: No such file or directory: etc: Processing tar via ostree: Failed to commit tar: ExitStatus(unix_wait_status(256))

Inspecting the layer:
```
$ tar -P --verbatim-files-from -tvf 0be089d5aab4c35a9c9dce1f00d4c5b02112972a2e62886fed445d380920616f.tar.gz | grep iptables-config
-rw------- 0/0 2153 2024-12-10 16:36 etc/sysconfig/iptables-config
hrw------- 0/0 0 2024-12-10 16:36 sysroot/ostree/repo/objects/04/34708d463840ebb8071a370470df6607eaf187f2cd7686cbab04216c8b7743.file link to etc/sysconfig/iptables-config
```

The link is there.

If I grep all the layers though, there's this:

```
ls *.tar.gz | while read line; do tar -P --verbatim-files-from -tvf $line| grep 'iptables-config'; done
-rw------- 0/0 2153 2024-12-10 16:36 etc/sysconfig/iptables-config
hrw------- 0/0 0 2024-12-10 16:36 sysroot/ostree/repo/objects/04/34708d463840ebb8071a370470df6607eaf187f2cd7686cbab04216c8b7743.file link to etc/sysconfig/iptables-config
hrw------- 0/0 0 1969-12-31 16:00 etc/sysconfig/iptables-config link to sysroot/ostree/repo/objects/04/34708d463840ebb8071a370470df6607eaf187f2cd7686cbab04216c8b7743.file
```

Did kaniko produce another bad image, or is kaniko producing a valid image and bootc is just seeing something its not prepared to handle?

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Non è indicato alcun file sorgente, test o punto di ingresso. Inizia con gli elenchi tar dei layer forniti e riproduci l'importazione usando l'immagine o il set di layer referenziato, confrontando il modo in cui gli hardlink vengono gestiti tra i layer. Il lavoro è completato quando viene confermato se kaniko ha prodotto un'immagine non valida oppure se bootc deve gestire questo layout.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
rust
Ambito
operating-systems
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.