Skip to main content

qualia_cli/cli/
solid.rs

1use clap::Subcommand;
2use std::path::PathBuf;
3
4#[derive(Subcommand, Debug, Clone)]
5pub enum SolidAction {
6    Serve {
7        #[arg(long, default_value = "127.0.0.1")]
8        host: String,
9        #[arg(long, default_value = "4243")]
10        port: u16,
11        #[arg(long)]
12        data_root: Option<PathBuf>,
13        #[arg(long)]
14        public_base: Option<String>,
15        #[arg(long, default_value_t = true)]
16        demo_oidc: bool,
17        #[arg(long, default_value_t = false)]
18        no_demo_oidc: bool,
19    },
20    Fetch {
21        url: String,
22        #[arg(long)]
23        token: Option<String>,
24        #[arg(long)]
25        out: Option<PathBuf>,
26    },
27    Put {
28        url: String,
29        file: PathBuf,
30        #[arg(long, default_value = "text/turtle")]
31        content_type: String,
32        #[arg(long)]
33        token: Option<String>,
34    },
35    Post {
36        container: String,
37        file: PathBuf,
38        #[arg(long, default_value = "text/turtle")]
39        content_type: String,
40        #[arg(long)]
41        slug: Option<String>,
42        #[arg(long)]
43        token: Option<String>,
44    },
45}