@smbcloud / cli / commits / c16e746

remove env

Seto Elkahfi committed Sep 11, 2023 at 16:12 UTC c16e746c5b4262960637efa34aa4b2e0327fc7e0
13 files changed +41 -66
.env
.env.local deleted
-3
@@ -1,3 +0,0 @@
1 -GH_OAUTH_CLIENT_ID=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
2 -GH_OAUTH_CLIENT_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
3 -GH_OAUTH_REDIRECT_URI=http://localhost:8808/
\ No newline at end of file
Cargo.lock
-22
@@ -269,24 +269,6 @@ dependencies = [
269 "winapi",
270 ]
271
272 -[[package]]
273 -name = "dotenvy"
274 -version = "0.15.7"
275 -source = "registry+https://github.com/rust-lang/crates.io-index"
276 -checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b"
277 -
278 -[[package]]
279 -name = "dotenvy_macro"
280 -version = "0.15.7"
281 -source = "registry+https://github.com/rust-lang/crates.io-index"
282 -checksum = "cb0235d912a8c749f4e0c9f18ca253b4c28cfefc1d2518096016d6e3230b6424"
283 -dependencies = [
284 - "dotenvy",
285 - "proc-macro2",
286 - "quote",
287 - "syn 1.0.107",
288 -]
289 -
272 [[package]]
273 name = "encode_unicode"
274 version = "0.3.6"
@@ -1235,8 +1217,6 @@ dependencies = [
1217 "console",
1218 "dialoguer",
1219 "dirs",
1238 - "dotenvy",
1239 - "dotenvy_macro",
1220 "home",
1221 "log",
1222 "open",
@@ -1274,8 +1254,6 @@ dependencies = [
1254 "anyhow",
1255 "async-trait",
1256 "dirs",
1277 - "dotenvy",
1278 - "dotenvy_macro",
1257 "home",
1258 "log",
1259 "maybe-async",
smbpndk-cli/Cargo.toml
-2
@@ -22,8 +22,6 @@ clap_mangen = "0.2.10"
22 console = "0.15.0"
23 dialoguer = "0.10.4"
24 dirs = "4.0.0"
25 -dotenvy = "0.15"
26 -dotenvy_macro = "0.15"
25 home = "0.5.4"
26 log = "0.4.14"
27 open = "4.0.1"
smbpndk-cli/src/account/forgot/mod.rs
+9 -3
@@ -4,7 +4,7 @@ use dialoguer::{theme::ColorfulTheme, Input, Password};
4 use reqwest::{Client, StatusCode};
5 use serde::{Deserialize, Serialize};
6 use smbpndk_model::CommandResult;
7 -use smbpndk_networking::constants::BASE_URL;
7 +use smbpndk_networking::smb_base_url_builder;
8 use smbpndk_utils::email_validation;
9 use spinners::Spinner;
10
@@ -35,7 +35,7 @@ pub async fn process_forgot() -> Result<CommandResult> {
35 };
36
37 let response = Client::new()
38 - .post([BASE_URL, "/v1/users/password"].join(""))
38 + .post(build_smb_forgot_url())
39 .json(&params)
40 .send()
41 .await?;
@@ -112,7 +112,7 @@ async fn input_code() -> Result<CommandResult> {
112 );
113
114 let response = Client::new()
115 - .put([BASE_URL, "/v1/users/password"].join(""))
115 + .put(build_smb_forgot_url())
116 .json(&params)
117 .send()
118 .await?;
@@ -141,3 +141,9 @@ async fn input_code() -> Result<CommandResult> {
141 }),
142 }
143 }
144 +
145 +fn build_smb_forgot_url() -> String {
146 + let mut url_builder = smb_base_url_builder();
147 + url_builder.add_route("v1/users/password");
148 + url_builder.build()
149 +}
smbpndk-cli/src/account/lib.rs
+7 -18
@@ -1,13 +1,15 @@
1 use super::{model::User, signup::GithubEmail};
2 use anyhow::{anyhow, Result};
3 use console::style;
4 -use dotenvy_macro::dotenv;
4 use log::debug;
5 use regex::Regex;
6 use reqwest::{Client, Response, StatusCode};
7 use serde::{Deserialize, Serialize};
8 use serde_repr::Deserialize_repr;
10 -use smbpndk_networking::smb_base_url_builder;
9 +use smbpndk_networking::{
10 + constants::{GH_OAUTH_CLIENT_ID, GH_OAUTH_REDIRECT_HOST, GH_OAUTH_REDIRECT_PORT},
11 + smb_base_url_builder,
12 +};
13 use spinners::Spinner;
14 use std::{
15 fmt::{Display, Formatter},
@@ -106,11 +108,7 @@ pub async fn authorize_github() -> Result<SmbAuthorization> {
108 }
109
110 fn setup_oauth_callback_server(tx: Sender<String>) {
109 - let port = dotenv!(
110 - "GH_OAUTH_REDIRECT_PORT",
111 - "Please set GH_OAUTH_REDIRECT_PORT"
112 - );
113 - let listener = TcpListener::bind(format!("127.0.0.1:{}", port)).unwrap();
111 + let listener = TcpListener::bind(format!("127.0.0.1:{}", GH_OAUTH_REDIRECT_PORT)).unwrap();
112 for stream in listener.incoming() {
113 let stream = stream.unwrap();
114 handle_connection(stream, tx.clone());
@@ -221,22 +219,13 @@ fn build_github_oauth_url() -> String {
219 }
220
221 fn github_base_url_builder() -> URLBuilder {
224 - let client_id = dotenv!("GH_OAUTH_CLIENT_ID", "Please set GH_OAUTH_CLIENT_ID");
225 - let redirect_host = dotenv!(
226 - "GH_OAUTH_REDIRECT_HOST",
227 - "Please set GH_OAUTH_REDIRECT_HOST"
228 - );
229 - let redirect_port = dotenv!(
230 - "GH_OAUTH_REDIRECT_PORT",
231 - "Please set GH_OAUTH_REDIRECT_PORT"
232 - );
233 - let redirect_url = format!("{}:{}", &redirect_host, &redirect_port);
222 + let redirect_url = format!("{}:{}", GH_OAUTH_REDIRECT_HOST, GH_OAUTH_REDIRECT_PORT);
223
224 let mut url_builder = URLBuilder::new();
225 url_builder
226 .set_protocol("https")
227 .set_host("github.com")
239 - .add_param("client_id", &client_id)
228 + .add_param("client_id", GH_OAUTH_CLIENT_ID)
229 .add_param("redirect_uri", &redirect_url);
230 url_builder
231 }
smbpndk-cli/src/main.rs
-2
@@ -1,7 +1,6 @@
1 use anyhow::{anyhow, Result};
2 use clap::Parser;
3 use console::style;
4 -use dotenvy::dotenv;
4 use smbpndk_cli::{
5 account::process_account,
6 cli::{Cli, Commands},
@@ -62,7 +61,6 @@ fn setup_logging(level: Option<EnvFilter>) -> Result<()> {
61
62 #[tokio::main]
63 async fn main() {
65 - dotenv().ok();
64 match run().await {
65 Ok(result) => {
66 let mut spinner = result.spinner;
smbpndk-model/src/lib.rs
+1 -1
@@ -6,7 +6,7 @@ mod ar_date_format {
6 use chrono::{DateTime, TimeZone, Utc};
7 use serde::{self, Deserialize, Deserializer, Serializer};
8
9 - const FORMAT: &'static str = "%Y-%m-%dT%H:%M:%S%.f%#z";
9 + const FORMAT: &str = "%Y-%m-%dT%H:%M:%S%.f%#z";
10
11 // The signature of a serialize_with function must follow the pattern:
12 //
smbpndk-networking-project/src/lib.rs
+1 -1
@@ -60,7 +60,7 @@ pub async fn get_project(id: String) -> Result<Project> {
60 match response.status() {
61 reqwest::StatusCode::OK => {
62 let project: Project = response.json().await?;
63 - println!("Project requested: {project:#?}");
63 + //println!("Project requested: {project:#?}");
64 Ok(project)
65 }
66 _ => Err(anyhow!("Failed to request a project.")),
smbpndk-networking/.env
smbpndk-networking/Cargo.toml
-2
@@ -15,8 +15,6 @@ categories = ["command-line-utilities", "command-line-interface", "cryptography:
15 anyhow = "1.0.58"
16 async-trait = { version = "0.1.51", optional = true }
17 dirs = "4.0.0"
18 -dotenvy = "0.15"
19 -dotenvy_macro = "0.15"
18 home = "0.5.4"
19 log = "0.4.14"
20 maybe-async = { version = "0.2", features = ["is_sync"] }
smbpndk-networking/src/constants.rs
+18 -3
@@ -1,7 +1,22 @@
1 +pub const TOKEN_PATH_STR: &str = ".smb/token";
2 +
3 #[cfg(debug_assertions)]
2 -pub const BASE_URL: &str = "http://localhost:3000/";
4 +pub const GH_OAUTH_CLIENT_ID: &str = "053e152f1b78ecee552b";
5 +#[cfg(not(debug_assertions))]
6 +pub const GH_OAUTH_CLIENT_ID: &str = "bf1f12d97659a6495e43";
7 +
8 +pub const GH_OAUTH_REDIRECT_HOST: &str = "http://localhost";
9 +pub const GH_OAUTH_REDIRECT_PORT: &str = "8808";
10 +
11 +pub const SMB_CLIENT_ID: &str = "cli";
12 +pub const SMB_CLIENT_SECRET: &str = "secretttttttt";
13
14 +#[cfg(debug_assertions)]
15 +pub const SMB_API_PROTOCOL: &str = "http";
16 #[cfg(not(debug_assertions))]
5 -pub const BASE_URL: &str = "https://api.smbpndk.com/";
17 +pub const SMB_API_PROTOCOL: &str = "https";
18
7 -pub const TOKEN_PATH_STR: &str = ".smb/token";
19 +#[cfg(debug_assertions)]
20 +pub const SMB_API_HOST: &str = "localhost:8088";
21 +#[cfg(not(debug_assertions))]
22 +pub const SMB_API_HOST: &str = "api.smbpndk.com";
smbpndk-networking/src/lib.rs
+5 -9
@@ -2,7 +2,7 @@ pub mod constants;
2
3 use crate::constants::TOKEN_PATH_STR;
4 use anyhow::{anyhow, Result};
5 -use dotenvy_macro::dotenv;
5 +use constants::{SMB_API_HOST, SMB_API_PROTOCOL, SMB_CLIENT_ID, SMB_CLIENT_SECRET};
6 use log::debug;
7 use std::path::PathBuf;
8 use url_builder::URLBuilder;
@@ -36,15 +36,11 @@ pub fn smb_token_file_path() -> Option<PathBuf> {
36 }
37
38 pub fn smb_base_url_builder() -> URLBuilder {
39 - let client_id = dotenv!("SMB_CLIENT_ID", "Please set SMB_CLIENT_ID");
40 - let client_secret = dotenv!("SMB_CLIENT_SECRET", "Please set SMB_CLIENT_SECRET");
41 - let api_host = dotenv!("SMB_API_HOST", "Please set SMB_API_HOST");
42 - let api_protocol = dotenv!("SMB_API_PROTOCOL", "Please set SMB_API_PROTOCOL");
39 let mut url_builder = URLBuilder::new();
40 url_builder
45 - .set_protocol(&api_protocol)
46 - .set_host(&api_host)
47 - .add_param("client_id", &client_id)
48 - .add_param("client_secret", &client_secret);
41 + .set_protocol(SMB_API_PROTOCOL)
42 + .set_host(SMB_API_HOST)
43 + .add_param("client_id", SMB_CLIENT_ID)
44 + .add_param("client_secret", SMB_CLIENT_SECRET);
45 url_builder
46 }