aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/mozart/src/commands/repository.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/mozart/src/commands/repository.rs')
-rw-r--r--crates/mozart/src/commands/repository.rs40
1 files changed, 40 insertions, 0 deletions
diff --git a/crates/mozart/src/commands/repository.rs b/crates/mozart/src/commands/repository.rs
new file mode 100644
index 0000000..8646c06
--- /dev/null
+++ b/crates/mozart/src/commands/repository.rs
@@ -0,0 +1,40 @@
+use clap::Args;
+
+#[derive(Args)]
+pub struct RepositoryArgs {
+ /// Action (list, add, remove, set-url, get-url, enable, disable)
+ pub action: Option<String>,
+
+ /// Repository name
+ pub name: Option<String>,
+
+ /// Argument 1 (URL or type depending on action)
+ pub arg1: Option<String>,
+
+ /// Argument 2
+ pub arg2: Option<String>,
+
+ /// Apply to the global config file
+ #[arg(short, long)]
+ pub global: bool,
+
+ /// Use a specific config file
+ #[arg(short, long)]
+ pub file: Option<String>,
+
+ /// Append the repository instead of prepending it
+ #[arg(long)]
+ pub append: bool,
+
+ /// Add before a specific repository
+ #[arg(long)]
+ pub before: Option<String>,
+
+ /// Add after a specific repository
+ #[arg(long)]
+ pub after: Option<String>,
+}
+
+pub fn execute(_args: &RepositoryArgs) {
+ todo!()
+}