Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RemoveBlob / RemoveDescriptors #84

Closed
dtrudg opened this issue Sep 26, 2024 · 0 comments · Fixed by #90
Closed

RemoveBlob / RemoveDescriptors #84

dtrudg opened this issue Sep 26, 2024 · 0 comments · Fixed by #90
Assignees

Comments

@dtrudg
Copy link
Member

dtrudg commented Sep 26, 2024

Following #80, implement functions on OCIFileImage that allow blobs and descriptors to be removed from an OCI-SIF.

It would be good to follow the ggcr layout.Path methods:

func (l Path) RemoveBlob(hash v1.Hash) error
func (l Path) RemoveDescriptors(matcher match.Matcher) error
@dtrudg dtrudg self-assigned this Sep 26, 2024
dtrudg added a commit to dtrudg/oci-tools that referenced this issue Sep 30, 2024
Implement `RemoveBlob` to remove a blob from the SIF without updating
the RootIndex.

Implement `RemoveDescriptors` to remove specified descriptors from the
SIF RootIndex, and clean up any orphan blobs.

In order that `RemoveDescriptors` can be run without requiring a temp
dir, the update code is modified to accept `OptUpdateNoTemp`. When this
is set only updates that do not require a tempdir will succeed.

Fixes sylabs#84
dtrudg added a commit to dtrudg/oci-tools that referenced this issue Sep 30, 2024
Implement `RemoveBlob` to remove a blob from the SIF without updating
the RootIndex.

Implement `RemoveDescriptors` to remove specified descriptors from the
SIF RootIndex, and clean up any orphan blobs.

In order that `RemoveDescriptors` can be run without requiring a temp
dir, the update code is modified to accept `OptUpdateNoTemp`. When this
is set only updates that do not require a tempdir will succeed...
without creating a tempDir.

Fixes sylabs#84
dtrudg added a commit to dtrudg/oci-tools that referenced this issue Oct 1, 2024
Implement `RemoveBlob` to remove a blob from the SIF without updating
the RootIndex.

Implement `RemoveDescriptors` to remove specified descriptors from the
SIF RootIndex, and clean up any orphan blobs.

In order that `RemoveDescriptors` can be run without requiring a temp
dir, the update code is modified so that cache directory creation is
lazy.

Fixes sylabs#84
dtrudg added a commit to dtrudg/oci-tools that referenced this issue Oct 1, 2024
Implement `RemoveBlob` to remove a blob from the SIF without updating
the RootIndex.

Implement `RemoveDescriptors` to remove specified descriptors from the
SIF RootIndex, and clean up any orphan blobs.

In order that `RemoveDescriptors` can be run without requiring a temp
dir, the update code is modified so that cache directory creation is
lazy.

Fixes sylabs#84
dtrudg added a commit to dtrudg/oci-tools that referenced this issue Oct 1, 2024
Implement `RemoveBlob` to remove a blob from the SIF without updating
the RootIndex.

Implement `RemoveDescriptors` to remove specified descriptors from the
SIF RootIndex, and clean up any orphan blobs.

In order that `RemoveDescriptors` can be run without requiring a temp
dir, the update code is modified so that cache directory creation is
lazy.

Fixes sylabs#84
dtrudg added a commit to dtrudg/oci-tools that referenced this issue Oct 1, 2024
Implement `RemoveBlob` to remove a blob from the SIF without updating
the RootIndex.

Implement `RemoveDescriptors` to remove specified descriptors from the
SIF RootIndex, and clean up any orphan blobs.

In order that `RemoveDescriptors` can be run without requiring a temp
dir, the update code is modified so that cache directory creation is
lazy.

Fixes sylabs#84
@dtrudg dtrudg closed this as completed in #90 Oct 1, 2024
@dtrudg dtrudg closed this as completed in c08a662 Oct 1, 2024
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 a pull request may close this issue.

1 participant