diff --git a/.dev.env b/.dev.env index d1b74b1..2975055 100644 --- a/.dev.env +++ b/.dev.env @@ -16,6 +16,8 @@ BOT_ENV=4 ABOUT_FUNDING= ABOUT_REPO= +DATA_DIR= + DB_HOST=127.0.0.1 DB_PORT=3301 DB_NAME=carddrop diff --git a/.prod.env b/.prod.env index 0755c1e..9ff63e3 100644 --- a/.prod.env +++ b/.prod.env @@ -16,6 +16,8 @@ BOT_ENV=1 ABOUT_FUNDING= ABOUT_REPO= +DATA_DIR=/home/vylpes/appdata/card-drop/card-drop_prod + DB_HOST=127.0.0.1 DB_PORT=3321 DB_NAME=carddrop diff --git a/.stage.env b/.stage.env index 4f70991..a839d96 100644 --- a/.stage.env +++ b/.stage.env @@ -16,6 +16,8 @@ BOT_ENV=2 ABOUT_FUNDING= ABOUT_REPO= +DATA_DIR=/home/vylpes/appdata/card-drop/card-drop_stage + DB_HOST=127.0.0.1 DB_PORT=3311 DB_NAME=carddrop diff --git a/src/Functions/CardMetadataFunction.ts b/src/Functions/CardMetadataFunction.ts index 1d52a27..eefe2a7 100644 --- a/src/Functions/CardMetadataFunction.ts +++ b/src/Functions/CardMetadataFunction.ts @@ -26,7 +26,7 @@ export default class CardMetadataFunction { private static async FindMetadataJSONs(): Promise { const res: SeriesMetadata[] = []; - const seriesJSONs = await glob(path.join(process.cwd(), 'cards', '/**/*.json')); + const seriesJSONs = await glob(path.join(process.env.DATA_DIR!, 'cards', '/**/*.json')); for (let jsonPath of seriesJSONs) { console.log(`Reading file ${jsonPath}`); diff --git a/src/bot.ts b/src/bot.ts index 8bddbf4..d880244 100644 --- a/src/bot.ts +++ b/src/bot.ts @@ -14,6 +14,7 @@ const requiredConfigs: string[] = [ "BOT_OWNERID", "BOT_CLIENTID", "BOT_ENV", + "DATA_DIR", "DB_HOST", "DB_PORT", "DB_AUTH_USER", @@ -39,7 +40,7 @@ Registry.RegisterCommands(); Registry.RegisterEvents(); Registry.RegisterButtonEvents(); -if (!existsSync(`${process.cwd()}/cards`) && process.env.GDRIVESYNC_AUTO && process.env.GDRIVESYNC_AUTO == 'true') { +if (!existsSync(`${process.env.DATA_DIR}/cards`) && process.env.GDRIVESYNC_AUTO && process.env.GDRIVESYNC_AUTO == 'true') { console.log("Card directory not found, syncing..."); CoreClient.AllowDrops = false; diff --git a/src/buttonEvents/Reroll.ts b/src/buttonEvents/Reroll.ts index 3b86e72..7241db7 100644 --- a/src/buttonEvents/Reroll.ts +++ b/src/buttonEvents/Reroll.ts @@ -31,7 +31,7 @@ export default class Reroll extends ButtonEvent { let image: Buffer; const imageFileName = randomCard.card.path.split("/").pop()!; - image = readFileSync(path.join(process.cwd(), 'cards', randomCard.card.path)); + image = readFileSync(path.join(process.env.DATA_DIR!, 'cards', randomCard.card.path)); await interaction.deferReply(); diff --git a/src/commands/drop.ts b/src/commands/drop.ts index 5a8ccd9..a591fbd 100644 --- a/src/commands/drop.ts +++ b/src/commands/drop.ts @@ -39,7 +39,7 @@ export default class Drop extends Command { let image: Buffer; const imageFileName = randomCard.card.path.split("/").pop()!; - image = readFileSync(path.join(process.cwd(), 'cards', randomCard.card.path)); + image = readFileSync(path.join(process.env.DATA_DIR!, 'cards', randomCard.card.path)); await interaction.deferReply(); diff --git a/src/commands/gdrivesync.ts b/src/commands/gdrivesync.ts index 8b60722..169e63c 100644 --- a/src/commands/gdrivesync.ts +++ b/src/commands/gdrivesync.ts @@ -29,7 +29,7 @@ export default class Gdrivesync extends Command { CoreClient.AllowDrops = false; - exec(`rclone sync card-drop-gdrive: ${process.cwd()}/cards`, async (error: ExecException | null) => { + exec(`rclone sync card-drop-gdrive: ${process.env.DATA_DIR}/cards`, async (error: ExecException | null) => { if (error) { await interaction.editReply(`Error while running sync command. Safe Mode has been activated. Code: ${error.code}`); await Config.SetValue('safemode', 'true');