1 use {
2 smbcloud_network::environment::Environment,
3 smbcloud_networking::{smb_base_url_builder, smb_client::SmbClient},
4 };
5
6 pub(crate) fn build_deploy_repos_url(env: Environment, client: (&SmbClient, &str)) -> String {
7 let mut url_builder = smb_base_url_builder(env, client);
8 url_builder.add_route("v1/deploy_repos");
9 url_builder.build()
10 }
11
12 pub(crate) fn build_frontend_apps_url(env: Environment, client: (&SmbClient, &str)) -> String {
13 let mut url_builder = smb_base_url_builder(env, client);
14 url_builder.add_route("v1/frontend_apps");
15 url_builder.build()
16 }
17
18 pub(crate) fn build_frontend_app_update_deploy_config_url(
19 env: Environment,
20 client: (&SmbClient, &str),
21 frontend_app_id: &str,
22 ) -> String {
23 let mut url_builder = smb_base_url_builder(env, client);
24 url_builder.add_route("v1/frontend_apps");
25 url_builder.add_route(frontend_app_id);
26 url_builder.build()
27 }
28
29 pub(crate) fn build_frontend_app_deploy_config_url(
30 env: Environment,
31 client: (&SmbClient, &str),
32 frontend_app_id: &str,
33 ) -> String {
34 let mut url_builder = smb_base_url_builder(env, client);
35 url_builder.add_route("v1/frontend_apps");
36 url_builder.add_route(frontend_app_id);
37 url_builder.add_route("deploy_config");
38 url_builder.build()
39 }
40
41 // Private functions
42
43 pub(crate) fn build_project_url(env: Environment, client: (&SmbClient, &str)) -> String {
44 let mut url_builder = smb_base_url_builder(env, client);
45 url_builder.add_route("v1/projects");
46 url_builder.build()
47 }
48
49 pub(crate) fn build_project_url_with_id(
50 env: Environment,
51 client: (&SmbClient, &str),
52 id: String,
53 ) -> String {
54 let mut url_builder = smb_base_url_builder(env, client);
55 url_builder.add_route("v1/projects");
56 url_builder.add_route(id.as_str());
57 url_builder.build()
58 }
59
60 pub(crate) fn build_project_deployment_index(
61 env: Environment,
62 client: (&SmbClient, &str),
63 project_id: String,
64 ) -> String {
65 let mut url_builder = smb_base_url_builder(env, client);
66 url_builder.add_route("v1/projects");
67 url_builder.add_route(project_id.as_str());
68 url_builder.add_route("deployment");
69 url_builder.build()
70 }
71
72 pub(crate) fn build_project_deployment(
73 env: Environment,
74 client: (&SmbClient, &str),
75 project_id: String,
76 id: String,
77 ) -> String {
78 let mut url_builder = smb_base_url_builder(env, client);
79 url_builder.add_route("v1/projects");
80 url_builder.add_route(project_id.as_str());
81 url_builder.add_route("deployment");
82 url_builder.add_route(id.as_str());
83 url_builder.build()
84 }