mirror of
https://forgejo.ellis.link/continuwuation/continuwuity.git
synced 2026-05-26 20:49:55 +00:00
fix: Don't panic when running startup admin commands
This commit is contained in:
@@ -26,7 +26,7 @@ pub(super) async fn console_auto_stop(&self) {
|
||||
|
||||
/// Execute admin commands after startup
|
||||
#[implement(super::Service)]
|
||||
pub(crate) async fn startup_execute(&self) -> Result {
|
||||
pub async fn startup_execute(&self) -> Result {
|
||||
// List of commands to execute
|
||||
let commands = &self.services.server.config.admin_execute;
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ use std::{
|
||||
|
||||
use askama::Template;
|
||||
use async_trait::async_trait;
|
||||
use conduwuit::{Result, utils::ReadyExt};
|
||||
use conduwuit::{Result, info, utils::ReadyExt};
|
||||
use futures::StreamExt;
|
||||
use ruma::{UserId, events::room::message::RoomMessageEventContent};
|
||||
|
||||
@@ -146,6 +146,8 @@ impl Service {
|
||||
.send_loud_message(RoomMessageEventContent::text_markdown(welcome_message))
|
||||
.await?;
|
||||
|
||||
info!("{user} has been invited to the admin room as the first user.");
|
||||
|
||||
Ok(true)
|
||||
}
|
||||
|
||||
@@ -162,7 +164,7 @@ impl Service {
|
||||
}
|
||||
}
|
||||
|
||||
pub(crate) fn print_first_run_banner(&self) {
|
||||
pub fn print_first_run_banner(&self) {
|
||||
use yansi::Paint;
|
||||
// This function is specially called by the core after all other
|
||||
// services have started. It runs last to ensure that the banner it
|
||||
|
||||
@@ -149,13 +149,6 @@ impl Services {
|
||||
|
||||
debug_info!("Services startup complete.");
|
||||
|
||||
// Run startup admin commands
|
||||
self.admin.startup_execute().await?;
|
||||
|
||||
// Prin first-run banner if necessary. This needs to be done after the startup
|
||||
// admin commands are run in case one of them created the first user.
|
||||
self.firstrun.print_first_run_banner();
|
||||
|
||||
Ok(Arc::clone(self))
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user