mirror of
https://github.com/Specoolazius/mcserver-discordbot.git
synced 2024-11-25 00:29:43 +01:00
admin extension with update and restart command
This commit is contained in:
parent
33a0340c3c
commit
670cec5335
@ -0,0 +1,37 @@
|
||||
import asyncio
|
||||
import os
|
||||
|
||||
import discord
|
||||
from discord.commands import SlashCommandGroup
|
||||
|
||||
from libs import Client
|
||||
|
||||
|
||||
class Admin(discord.Cog):
|
||||
"""< discord.Cog >
|
||||
|
||||
Some developer tools for managing the bot.
|
||||
"""
|
||||
|
||||
def __init__(self, bot: Client):
|
||||
self.bot = bot
|
||||
|
||||
__dev_group = SlashCommandGroup(name='dev', description='Developer settings')
|
||||
|
||||
@__dev_group.command(name='update')
|
||||
async def __update_bot(self, ctx: discord.ApplicationContext) -> None:
|
||||
await ctx.respond('starting update...')
|
||||
|
||||
if 0 == await self.bot.execute_shell('update.sh'):
|
||||
await ctx.respond('Updated bot from https://github.com/Specoolazius/mcserver-discordbot\n'
|
||||
'You may need to restart the bot')
|
||||
|
||||
else:
|
||||
await ctx.respond(f'Failed to update bot. Check {os.path.join(self.bot.config.log_path, "discord.log")} '
|
||||
f'for more detailed information')
|
||||
|
||||
@__dev_group.command(name='restart')
|
||||
async def __restart_service(self, ctx: discord.ApplicationContext) -> None:
|
||||
await ctx.respond('attempting restart...')
|
||||
await asyncio.create_subprocess_shell(f'sudo systemctl restart')
|
||||
|
Loading…
Reference in New Issue
Block a user