Skip to content

Commit

Permalink
nixos-http: use incus-specific image for unstable
Browse files Browse the repository at this point in the history
Signed-off-by: Adam Stephens <adam@valkor.net>
  • Loading branch information
adamcstephens authored and stgraber committed Sep 4, 2024
1 parent 2739bda commit 536b37d
Showing 1 changed file with 14 additions and 6 deletions.
20 changes: 14 additions & 6 deletions sources/nixos-http.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,20 +12,28 @@ type nixos struct {
}

func (s *nixos) Run() error {
hydraRelease := fmt.Sprintf("release-%s", s.definition.Image.Release)
hydraProject := "nixos"

hydraJobset := fmt.Sprintf("release-%s", s.definition.Image.Release)
releaseAttr := "lxdContainerImage"
hydraBuildProduct := "system-tarball"

if s.definition.Image.Release == "unstable" {
hydraRelease = "trunk-combined"
hydraJobset = "trunk-combined"
releaseAttr = "incusContainerImage"
hydraBuildProduct = "squashfs-image"
}

tarballURL := fmt.Sprintf("https://hydra.nixos.org/job/nixos/%s/nixos.lxdContainerImage.%s-linux/latest/download-by-type/file/system-tarball", hydraRelease, s.definition.Image.ArchitectureMapped)
hydraJob := fmt.Sprintf("nixos.%s.%s-linux", releaseAttr, s.definition.Image.ArchitectureMapped)

imageURL := fmt.Sprintf("https://hydra.nixos.org/job/%s/%s/%s/latest/download-by-type/file/%s", hydraProject, hydraJobset, hydraJob, hydraBuildProduct)

fpath, err := s.DownloadHash(s.definition.Image, tarballURL, "", nil)
fpath, err := s.DownloadHash(s.definition.Image, imageURL, "", nil)
if err != nil {
return fmt.Errorf("Failed downloading tarball: %w", err)
return fmt.Errorf("Failed downloading rootfs: %w", err)
}

err = shared.Unpack(filepath.Join(fpath, "system-tarball"), s.rootfsDir)
err = shared.Unpack(filepath.Join(fpath, hydraBuildProduct), s.rootfsDir)
if err != nil {
return fmt.Errorf("Failed unpacking rootfs: %w", err)
}
Expand Down

0 comments on commit 536b37d

Please sign in to comment.