diff --git a/.goreleaser.yaml b/.goreleaser.yaml index 9138da31..6c4a4e60 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -55,12 +55,10 @@ archives: format: binary name_template: "{{ .Binary }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}" allow_different_binary_count: true - - id: rootfs - format: tar.gz - name_template: "{{ .ProjectName }}_{{ .Version }}" - files: - - rootfs.ext4 - allow_different_binary_count: true + +release: + extra_files: + - glob: ./rootfs.ext4.gz changelog: sort: asc diff --git a/agent/fc-image/rootfs.go b/agent/fc-image/rootfs.go index 2c362c9e..88d17622 100644 --- a/agent/fc-image/rootfs.go +++ b/agent/fc-image/rootfs.go @@ -1,6 +1,7 @@ package main import ( + "compress/gzip" "context" "fmt" "os" @@ -162,7 +163,17 @@ func build(ctx context.Context, tempdir string, mountPoint string) error { if err != nil { return err } - err = os.WriteFile("rootfs.ext4", input, 0644) + + rfs, err := os.Create("rootfs.ext4.gz") + if err != nil { + return err + } + defer rfs.Close() + + gw := gzip.NewWriter(rfs) + defer gw.Close() + + _, err = gw.Write(input) if err != nil { return err }