Skip to content

Commit f15ed6d

Browse files
committed
feat: switch to environment variable
1 parent 88596bd commit f15ed6d

File tree

4 files changed

+46
-52
lines changed

4 files changed

+46
-52
lines changed

Cargo.lock

Lines changed: 0 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

check-cmt/Cargo.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ rusoto_s3 = "0.48.0"
1919
serde = { version = "1.0.210", features = ["derive"] }
2020
serde_json = "1.0.128"
2121
serde_yaml = "0.9.34"
22-
structopt = "0.3.26"
2322
tokio = { version = "1.40.0", features = ["full"] }
2423
webp = "0.3.0"
2524
zip = "2.2.2"

check-cmt/src/main.rs

Lines changed: 27 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ use rusoto_s3::{Object, S3Client, S3};
66
use serde::Serialize;
77
use serde_json::{json, to_string_pretty};
88
use std::{collections::HashSet, path::Path};
9-
use structopt::StructOpt;
109
use tokio::fs::File;
1110
use tokio::{
1211
self,
@@ -52,52 +51,50 @@ enum Status {
5251
Uploaded,
5352
}
5453

55-
#[derive(StructOpt)]
5654
struct Input {
57-
#[structopt(
58-
short = "d",
59-
long = "dir",
60-
help = "The metadata path to check",
61-
required = true
62-
)]
6355
dir: String,
64-
#[structopt(short = "u", long = "url", help = "S3 url", required = true)]
6556
s3_url: String,
66-
#[structopt(short = "b", long = "backend", help = "Backend url", required = true)]
6757
backend_url: String,
68-
#[structopt(short = "t", long = "token", help = "Token", required = true)]
6958
backend_token: String,
70-
#[structopt(
71-
short = "a",
72-
long = "ACCESS_KEY_ID",
73-
help = "ACCESS_KEY_ID",
74-
required = true
75-
)]
7659
assess_key_id: String,
77-
#[structopt(
78-
short = "s",
79-
long = "SECRET_ACCESS_KEY",
80-
help = "SECRET_ACCESS_KEY",
81-
required = true
82-
)]
8360
secret_access_key: String,
84-
#[structopt(short = "c", long = "bucket", help = "bucket name", required = true)]
8561
bucket: String,
86-
#[structopt(long = "r2_url", help = "R2 url", required = true)]
8762
r2_url: String,
88-
#[structopt(long = "r2_acc", help = "R2 ACCESS_KEY_ID", required = true)]
8963
r2_access_key_id: String,
90-
#[structopt(long = "r2_secret", help = "R2 SECRET", required = true)]
9164
r2_secret_access_key: String,
92-
#[structopt(long = "r2_bucket", help = "R2 bucket", required = true)]
9365
r2_bucket: String,
94-
#[structopt(long = "filelist_url", help = "Filelist URL", required = true)]
9566
filelist_url: String,
9667
}
9768

69+
impl Input {
70+
fn new() -> Self {
71+
Self {
72+
dir: std::env::var("DIR").expect("DIR environment variable not set"),
73+
s3_url: std::env::var("S3_URL").expect("S3_URL environment variable not set"),
74+
backend_url: std::env::var("BACKEND_URL")
75+
.expect("BACKEND_URL environment variable not set"),
76+
backend_token: std::env::var("BACKEND_TOKEN")
77+
.expect("BACKEND_TOKEN environment variable not set"),
78+
assess_key_id: std::env::var("ACCESS_KEY_ID")
79+
.expect("ACCESS_KEY_ID environment variable not set"),
80+
secret_access_key: std::env::var("SECRET_ACCESS_KEY")
81+
.expect("SECRET_ACCESS_KEY environment variable not set"),
82+
bucket: std::env::var("BUCKET").expect("BUCKET environment variable not set"),
83+
r2_url: std::env::var("R2_URL").expect("R2_URL environment variable not set"),
84+
r2_access_key_id: std::env::var("R2_ACCESS_KEY_ID")
85+
.expect("R2_ACCESS_KEY_ID environment variable not set"),
86+
r2_secret_access_key: std::env::var("R2_SECRET_ACCESS_KEY")
87+
.expect("R2_SECRET_ACCESS_KEY environment variable not set"),
88+
r2_bucket: std::env::var("R2_BUCKET").expect("R2_BUCKET environment variable not set"),
89+
filelist_url: std::env::var("FILELIST_URL")
90+
.expect("FILELIST_URL environment variable not set"),
91+
}
92+
}
93+
}
94+
9895
#[tokio::main]
9996
async fn main() -> anyhow::Result<()> {
100-
let input = Input::from_args();
97+
let input = Input::new();
10198

10299
if !Path::new(&input.dir).exists() {
103100
eprintln!("The metadata directory does not exist: {}", input.dir);

check-pr/src/main.rs

Lines changed: 19 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3,42 +3,41 @@ mod metadata;
33
use rusoto_core::HttpClient;
44
use rusoto_s3::S3;
55
use std::path::Path;
6-
use structopt::StructOpt;
76
use tokio::{
87
self,
98
io::{AsyncReadExt, BufReader},
109
};
1110

1211
use crate::metadata::*;
1312

14-
#[derive(StructOpt)]
1513
struct Input {
16-
#[structopt(short = "d", long = "dir", help = "The path to check", required = true)]
1714
dir: String,
18-
#[structopt(short = "u", long = "url", help = "S3 url", required = true)]
1915
s3_url: String,
20-
#[structopt(short = "b", long = "backend", help = "Backend url", required = true)]
2116
backend_url: String,
22-
#[structopt(short = "t", long = "token", help = "Token", required = true)]
2317
backend_token: String,
24-
#[structopt(
25-
short = "a",
26-
long = "ACCESS_KEY_ID",
27-
help = "ACCESS_KEY_ID",
28-
required = true
29-
)]
3018
assess_key_id: String,
31-
#[structopt(
32-
short = "s",
33-
long = "SECRET_ACCESS_KEY",
34-
help = "SECRET_ACCESS_KEY",
35-
required = true
36-
)]
3719
secret_access_key: String,
38-
#[structopt(short = "c", long = "bucket", help = "bucket name", required = true)]
3920
bucket: String,
4021
}
4122

23+
impl Input {
24+
fn new() -> Self {
25+
Input {
26+
dir: std::env::var("DIR").expect("DIR environment variable not set"),
27+
s3_url: std::env::var("S3_URL").expect("S3_URL environment variable not set"),
28+
backend_url: std::env::var("BACKEND_URL")
29+
.expect("BACKEND_URL environment variable not set"),
30+
backend_token: std::env::var("BACKEND_TOKEN")
31+
.expect("BACKEND_TOKEN environment variable not set"),
32+
assess_key_id: std::env::var("ACCESS_KEY_ID")
33+
.expect("ACCESS_KEY_ID environment variable not set"),
34+
secret_access_key: std::env::var("SECRET_ACCESS_KEY")
35+
.expect("SECRET_ACCESS_KEY environment variable not set"),
36+
bucket: std::env::var("BUCKET").expect("BUCKET environment variable not set"),
37+
}
38+
}
39+
}
40+
4241
#[derive(serde::Deserialize, Debug)]
4342
#[allow(dead_code)]
4443
struct ApiResult {
@@ -76,7 +75,7 @@ enum Status {
7675

7776
#[tokio::main]
7877
async fn main() -> anyhow::Result<()> {
79-
let input = Input::from_args();
78+
let input = Input::new();
8079

8180
let end_point = input.s3_url;
8281
let http_client = HttpClient::new()?;

0 commit comments

Comments
 (0)