1mod clientsession;
2mod validation;
3mod version;
4
5use crate::{
6 cli::{Action, Client},
7 client::clientsession::ClientSession,
8 protocol::{self},
9};
10use clientsession::ClientError;
11
12pub fn client(config: Client) -> Result<(), ClientError> {
13 let (action, args) = match config.action {
14 Action::Upload(args) => (protocol::Action::Upload, args),
15 Action::Run(args) => (protocol::Action::Run(args.brickrun), args),
16 };
17
18 let mut session = ClientSession::connect(args, action)?;
19 session.dispatch()?;
20
21 Ok(())
22}