about summary refs log tree commit diff
path: root/tvix/derivation/src/errors.rs
diff options
context:
space:
mode:
authorFlorian Klink <flokli@flokli.de>2023-01-17T11·04+0100
committerflokli <flokli@flokli.de>2023-01-18T17·13+0000
commit6e7f06d942a5e54d20d4441ff196ce3ffc99855a (patch)
treec20593cc69b5b2fb9cfe815f4119668606c6736f /tvix/derivation/src/errors.rs
parenteebb3ce028e56872cdfee462dd6556e33d2f204e (diff)
refactor(tvix/derivation): use DerivationError in Output::validate r/5696
Change-Id: I7dbd3b8ff9ef92acddde2e579fb24b8311c34d8f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7852
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Diffstat (limited to 'tvix/derivation/src/errors.rs')
-rw-r--r--tvix/derivation/src/errors.rs12
1 files changed, 9 insertions, 3 deletions
diff --git a/tvix/derivation/src/errors.rs b/tvix/derivation/src/errors.rs
index baf1d6ca5398..75b101efddae 100644
--- a/tvix/derivation/src/errors.rs
+++ b/tvix/derivation/src/errors.rs
@@ -13,9 +13,8 @@ pub enum DerivationError {
     MoreThanOneOutputButFixed(),
     #[error("Invalid output name for fixed-output derivation: {0}.")]
     InvalidOutputNameForFixed(String),
-    #[error("Unable to parse path of output {0}: {1}.")]
-    InvalidOutputPath(String, ParseStorePathError),
-
+    #[error("Unable to validate output {0}: {1}.")]
+    InvalidOutput(String, OutputError),
     // input derivation
     #[error("Unable to parse input derivation path {0}: {1}.")]
     InvalidInputDerivationPath(String, ParseStorePathError),
@@ -42,3 +41,10 @@ pub enum DerivationError {
     #[error("Invalid environment key {0}")]
     InvalidEnvironmentKey(String),
 }
+
+/// Errors that can occur during the validation of a specific [Output] of a [Derviation].
+#[derive(Debug, Error)]
+pub enum OutputError {
+    #[error("Invalid ouput path {0}: {1}")]
+    InvalidOutputPath(String, ParseStorePathError),
+}