archive

package
v0.1.0-dev.20260222182334 Latest Latest
Warning

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

Go to latest
Published: Feb 22, 2026 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Register

func Register(reg *execution.ActionRegistry)

Register registers all archive actions with the given registry.

Types

type Extract

type Extract struct{ Impl *Provider }

Extract — Extract extracts an archive (tar.gz or zip) from source into the prefix directory. The archive format is detected from the file extension. Returns compensation state with the list of created files.

func (*Extract) Do

func (*Extract) Name

func (o *Extract) Name() string

func (*Extract) Undo

func (o *Extract) Undo(state execution.UndoState) error

type Provider

type Provider struct{}

Provider provides archive extraction actions.

Compensable Forward methods return (string, map[string]any, error): the extraction directory, the compensation receipt, and an error. The map is opaque to the executor, meaningful only to the corresponding Compensate* Backward method.

func (*Provider) CompensateExtract

func (p *Provider) CompensateExtract(state any) error

CompensateExtract removes files created during extraction, then cleans up empty directories under dest.

func (*Provider) Extract

func (p *Provider) Extract(source, prefix string) (string, map[string]any, error)

Extract extracts an archive (tar.gz or zip) from source into the prefix directory. The archive format is detected from the file extension. Returns compensation state with the list of created files.

Parameters:

  • source: Path to the archive file (tar.gz, tgz, or zip)
  • prefix: Directory to extract into

Jump to

Keyboard shortcuts

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