feat: Enable Docker deployment and CD
All checks were successful
Create and publish a Docker image / build-and-push-image (push) Successful in 8m1s
All checks were successful
Create and publish a Docker image / build-and-push-image (push) Successful in 8m1s
Closes #8, partially addresses #6
This commit is contained in:
@@ -1,9 +1,10 @@
|
||||
mod commands;
|
||||
pub mod error;
|
||||
mod events;
|
||||
pub mod utils;
|
||||
pub mod error;
|
||||
|
||||
use poise::FrameworkBuilder;
|
||||
use tracing::info;
|
||||
use utils::serenity;
|
||||
|
||||
use commands::logging;
|
||||
@@ -19,24 +20,30 @@ pub type Result = ::std::result::Result<(), Error>;
|
||||
///
|
||||
/// Panics if the environment `DISCORD_TOKEN` is unavailable.
|
||||
pub fn make_bot() -> FrameworkBuilder<BotData, Error> {
|
||||
poise::Framework::builder()
|
||||
.options(poise::FrameworkOptions {
|
||||
commands: vec![logging()],
|
||||
event_handler: |ctx, event, framework, data| {
|
||||
Box::pin(event_handler(ctx, event, framework, data))
|
||||
},
|
||||
..Default::default()
|
||||
})
|
||||
.token(std::env::var("DISCORD_TOKEN").expect("missing DISCORD_TOKEN"))
|
||||
.intents(serenity::GatewayIntents::non_privileged())
|
||||
.setup(|ctx, _ready, framework| {
|
||||
Box::pin(async move {
|
||||
poise::builtins::register_globally(
|
||||
ctx,
|
||||
&framework.options().commands,
|
||||
)
|
||||
.await?;
|
||||
Ok(BotData::new().await?)
|
||||
})
|
||||
})
|
||||
match std::env::var("DISCORD_TOKEN") {
|
||||
Ok(token) => {
|
||||
info!("Launching bot with token {token}");
|
||||
poise::Framework::builder()
|
||||
.options(poise::FrameworkOptions {
|
||||
commands: vec![logging()],
|
||||
event_handler: |ctx, event, framework, data| {
|
||||
Box::pin(event_handler(ctx, event, framework, data))
|
||||
},
|
||||
..Default::default()
|
||||
})
|
||||
.token(token)
|
||||
.intents(serenity::GatewayIntents::non_privileged())
|
||||
.setup(|ctx, _ready, framework| {
|
||||
Box::pin(async move {
|
||||
poise::builtins::register_globally(
|
||||
ctx,
|
||||
&framework.options().commands,
|
||||
)
|
||||
.await?;
|
||||
Ok(BotData::new().await?)
|
||||
})
|
||||
})
|
||||
}
|
||||
Err(_) => panic!("DISCORD_TOKEN environment variable is missing."),
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user