release

package
v0.2.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 24, 2026 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Overview

Package release writes reproducible release archives.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Archive

func Archive(output io.Writer, source fs.FS, paths []string) error

Archive writes a deterministic gzip-compressed tar archive. source must be immutable or snapshotted: generic mutable fs.FS values cannot close symlink TOCTOU races. ArchiveRoot provides rooted live-filesystem confinement.

func ArchiveRoot

func ArchiveRoot(output io.Writer, source *os.Root, paths []string) error

ArchiveRoot writes an archive from a live, rooted source. os.Root confines symlink resolution beneath source during concurrent filesystem changes.

func PublicBundle added in v0.1.1

func PublicBundle(ctx context.Context, destination *os.Root, releaseID string, source fs.FS, paths []string) error

PublicBundle copies one immutable release beneath releases/<releaseID>. Existing equal bytes are retained; differing bytes are a collision.

func TarGZ

func TarGZ(output io.Writer, source fs.FS, paths []string) error

TarGZ writes a deterministic gzip-compressed tar archive. source has the same immutable-or-snapshotted contract as Archive.

func ZIP

func ZIP(output io.Writer, source fs.FS, paths []string) error

ZIP writes a deterministic ZIP archive. source must be immutable or snapshotted; use ZIPRoot for a live disk-backed source.

func ZIPRoot

func ZIPRoot(output io.Writer, source *os.Root, paths []string) error

ZIPRoot writes a ZIP archive from a live, rooted source.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL