Skip to content

feat: cache compressed archives for package uploads#2929

Open
mattevans wants to merge 1 commit intokurtosis-tech:mainfrom
mattevans:feat/archive-caching
Open

feat: cache compressed archives for package uploads#2929
mattevans wants to merge 1 commit intokurtosis-tech:mainfrom
mattevans:feat/archive-caching

Conversation

@mattevans
Copy link

@mattevans mattevans commented Mar 5, 2026

Description

  • Caches the compressed tarball of Starlark packages by content hash in ~/.kurtosis/archive-cache/
  • Repeated runs with unchanged packages skip compression entirely
  • Adds .kurtosisignore support. A .gitignore-style file at the package root to exclude files/directories from hashing and compression (e.g. .git/, large static files, test fixtures)
  • Adds ComputeContentHash as a public function in path-compression

What?

.kurtosisignore is a file users create in their package root (e.g. ethereum-package/.kurtosisignore) to exclude files/dirs from being hashed and compressed during upload. Think .gitignore but for kurtosis run.

Without it, things like .git/, large test fixtures, or static data files all get tarball'd and uploaded every run, even though Kurtosis doesn't need them.

Is this change user facing?

NO

Each kurtosis run the Starlark package is tarball'd. This caches the
compressed archive by a content hash, so repeated runs with unchanged
packages skip compression entirely.

Includes ComputeContentHash and .kurtosisignore support from
path-compression as dependencies for the content hash computation.
@mattevans mattevans marked this pull request as draft March 5, 2026 04:50
@mattevans mattevans marked this pull request as ready for review March 5, 2026 05:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant