summaryrefslogtreecommitdiff
path: root/src/marlin.agents.shell/IArtifactStore.cs
diff options
context:
space:
mode:
authorMelodi <62381002+Melodi17@users.noreply.github.com>2026-10-28 21:40:13 +1000
committerMelodi <62381002+Melodi17@users.noreply.github.com>2026-10-28 21:40:13 +1000
commit1e892b09b46de9908ddbdc895031895101313a26 (patch)
tree5e3316e036a538473eeb662fbcde1c7eb55b7123 /src/marlin.agents.shell/IArtifactStore.cs
parent38a050c8151b9894c62b2d49ef482807412ea98c (diff)
refactor: initial artifact cleanup and implementationmain
Diffstat (limited to 'src/marlin.agents.shell/IArtifactStore.cs')
-rw-r--r--src/marlin.agents.shell/IArtifactStore.cs15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/marlin.agents.shell/IArtifactStore.cs b/src/marlin.agents.shell/IArtifactStore.cs
new file mode 100644
index 0000000..2d6338c
--- /dev/null
+++ b/src/marlin.agents.shell/IArtifactStore.cs
@@ -0,0 +1,15 @@
+namespace marlin.agents.shell;
+
+public interface IArtifactStore
+{
+ /// Extracts given artifacts into shared flat blob storage
+ Task Stow(Guid jobId, string stepId, string artifactId, string basePath, string glob);
+
+ /// Constructs virtual directory structure to access a given artifact
+ Task<IArtifactAccessHandle> Access(Guid jobId, string stepId, string artifactId);
+}
+
+public interface IArtifactAccessHandle : IDisposable
+{
+ public string Path { get; }
+} \ No newline at end of file