Compare commits
2 Commits
9d45942260
...
abe6ff58ca
| Author | SHA1 | Date | |
|---|---|---|---|
|
abe6ff58ca
|
|||
|
949ba4c2ed
|
39
src/main.rs
39
src/main.rs
@@ -4,10 +4,8 @@ use opendal::{IntoOperatorUri, Operator, OperatorUri};
|
|||||||
use secrecy::{ExposeSecret, SecretString};
|
use secrecy::{ExposeSecret, SecretString};
|
||||||
use snafu::Snafu;
|
use snafu::Snafu;
|
||||||
use std::{fmt::Debug, str::FromStr};
|
use std::{fmt::Debug, str::FromStr};
|
||||||
use tracing_subscriber::fmt::format::FmtSpan;
|
use tracing_subscriber::{EnvFilter, fmt::format::FmtSpan};
|
||||||
use twilight_gateway::{
|
use twilight_gateway::{Event, EventTypeFlags, Intents, Shard, ShardId, StreamExt};
|
||||||
Event, EventTypeFlags, Intents, Shard, ShardId, StreamExt, error::ReceiveMessageErrorType,
|
|
||||||
};
|
|
||||||
use twilight_model::id::{Id, marker::UserMarker};
|
use twilight_model::id::{Id, marker::UserMarker};
|
||||||
|
|
||||||
#[derive(Clone)]
|
#[derive(Clone)]
|
||||||
@@ -46,7 +44,7 @@ impl Debug for OpendalOperator {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Parser)]
|
#[derive(Debug, Parser)]
|
||||||
struct Args {
|
struct AppArgs {
|
||||||
#[arg(long, env)]
|
#[arg(long, env)]
|
||||||
discord_token: SecretString,
|
discord_token: SecretString,
|
||||||
|
|
||||||
@@ -57,26 +55,47 @@ struct Args {
|
|||||||
bot_owner: Id<UserMarker>,
|
bot_owner: Id<UserMarker>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[derive(Parser)]
|
||||||
|
struct LoggingArgs {
|
||||||
|
#[arg(long = "logging-directives", env = "RUST_LOG", default_value = "info")]
|
||||||
|
env_filter: EnvFilter,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Parser)]
|
||||||
|
struct Args {
|
||||||
|
#[clap(flatten)]
|
||||||
|
app_args: AppArgs,
|
||||||
|
|
||||||
|
#[clap(flatten)]
|
||||||
|
logging_args: LoggingArgs,
|
||||||
|
}
|
||||||
|
|
||||||
#[derive(Debug, Snafu)]
|
#[derive(Debug, Snafu)]
|
||||||
enum MainError {}
|
enum MainError {}
|
||||||
|
|
||||||
#[snafu::report]
|
#[snafu::report]
|
||||||
#[tokio::main]
|
#[tokio::main]
|
||||||
async fn main() -> Result<(), MainError> {
|
async fn main() -> Result<(), MainError> {
|
||||||
|
let Args {
|
||||||
|
logging_args,
|
||||||
|
app_args,
|
||||||
|
} = Parser::parse();
|
||||||
|
|
||||||
|
let LoggingArgs { env_filter } = logging_args;
|
||||||
|
|
||||||
tracing_subscriber::fmt()
|
tracing_subscriber::fmt()
|
||||||
.pretty()
|
.pretty()
|
||||||
|
.with_env_filter(env_filter)
|
||||||
.with_span_events(FmtSpan::NEW | FmtSpan::CLOSE)
|
.with_span_events(FmtSpan::NEW | FmtSpan::CLOSE)
|
||||||
.init();
|
.init();
|
||||||
|
|
||||||
let args = Parser::parse();
|
tracing::debug!(?app_args, "using");
|
||||||
|
|
||||||
tracing::debug!(?args, "using");
|
let AppArgs {
|
||||||
|
|
||||||
let Args {
|
|
||||||
discord_token,
|
discord_token,
|
||||||
storage,
|
storage,
|
||||||
bot_owner,
|
bot_owner,
|
||||||
} = args;
|
} = app_args;
|
||||||
|
|
||||||
rustls::crypto::aws_lc_rs::default_provider()
|
rustls::crypto::aws_lc_rs::default_provider()
|
||||||
.install_default()
|
.install_default()
|
||||||
|
|||||||
Reference in New Issue
Block a user