summaryrefslogtreecommitdiff
path: root/src/errors.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/errors.rs')
-rw-r--r--src/errors.rs15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/errors.rs b/src/errors.rs
new file mode 100644
index 0000000..607eecb
--- /dev/null
+++ b/src/errors.rs
@@ -0,0 +1,15 @@
+#[derive(Debug, thiserror::Error)]
+pub enum BumperError {
+ #[error("Failed to run git: {0}")]
+ GitInvoke(#[source] std::io::Error),
+
+ #[error("Command 'git tag' failed: {0}")]
+ GitTag(String),
+}
+
+impl BumperError {
+ pub fn git_tag(stderr: &[u8]) -> Self {
+ let stderr = String::from_utf8_lossy(stderr).into_owned();
+ Self::GitTag(stderr)
+ }
+}