Merge branch 'develop' into feature/49-eslint

This commit is contained in:
Ethan Lane 2024-01-03 18:54:44 +00:00
commit c62b7272c1
14 changed files with 75 additions and 31 deletions

View file

@ -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

View file

@ -4,16 +4,36 @@ kind: pipeline
name: deployment
steps:
- name: deploy
image: appleboy/drone-ssh
- name: build
image: node
commands:
- npm ci
- npm run build
- name: test
image: node
commands:
- npm test
- name: deploy to prod
image: drillster/drone-rsync
secrets: [ ssh_key, bot_token_prod ]
settings:
host: 192.168.68.120
username: vylpes
password:
from_secret: ssh_password
port: 22
hosts:
- 192.168.68.120
user: vylpes
key:
from_secret: ssh_key
source: .
target: ~/apps/card-drop/card-drop_prod
recursive: true
script:
- sh /home/vylpes/scripts/card-drop/deploy_prod.sh
- export PATH="$HOME/.yarn/bin:$PATH"
- export PATH="$HOME/.nodeuse/bin:$PATH"
- export BOT_TOKEN="$BOT_TOKEN_PROD"
- cd ~/apps/card-drop/card-drop_prod
- docker compose --file docker-compose.prod.yml up -d
- sleep 10
- cp .prod.env .env
- pm2 restart card-drop_prod || pm2 start --name card-drop_prod dist/bot.js
trigger:
event:
@ -25,16 +45,36 @@ kind: pipeline
name: staging
steps:
- name: stage
image: appleboy/drone-ssh
- name: build
image: node
commands:
- npm ci
- npm run build
- name: test
image: node
commands:
- npm test
- name: deploy to stage
image: drillster/drone-rsync
secrets: [ ssh_key, bot_token_stage ]
settings:
host: 192.168.68.120
username: vylpes
password:
from_secret: ssh_password
port: 22
hosts:
- 192.168.68.120
user: vylpes
key:
from_secret: ssh_key
source: .
target: ~/apps/card-drop/card-drop_stage
recursive: true
script:
- sh /home/vylpes/scripts/card-drop/deploy_stage.sh
- export PATH="$HOME/.yarn/bin:$PATH"
- export PATH="$HOME/.nodeuse/bin:$PATH"
- export BOT_TOKEN="$BOT_TOKEN_STAGE"
- cd ~/apps/card-drop/card-drop_stage
- docker compose --file docker-compose.stage.yml up -d
- sleep 10
- cp .stage.env .env
- pm2 restart card-drop_stage || pm2 start --name card-drop_stage dist/bot.js
trigger:
branch:
@ -62,13 +102,10 @@ steps:
- name: test
image: node
commands:
- npm ci
- npm test
trigger:
branch:
- main
- develop
- hotfix/*
- feature/*
- renovate/*

View file

@ -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

View file

@ -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

6
package-lock.json generated
View file

@ -1884,9 +1884,9 @@
"license": "MIT"
},
"node_modules/@types/node": {
"version": "20.10.5",
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz",
"integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==",
"version": "20.10.6",
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.6.tgz",
"integrity": "sha512-Vac8H+NlRNNlAmDfGUP7b5h/KA+AtWIzuXy0E6OyP8f1tCLYAtPvKRRDJjAPqhpCb0t6U2j7/xqAuLEebW2kiw==",
"dependencies": {
"undici-types": "~5.26.4"
}

View file

@ -42,7 +42,6 @@
"typeorm": "0.3.17"
},
"resolutions": {
"**/undici": "^5.26.2"
},
"devDependencies": {
"@types/node": "^20.0.0",

View file

@ -1,4 +1,5 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"baseBranches": ["develop"]
"baseBranches": ["develop"],
"labels": ["type/dependencies"]
}

View file

@ -26,7 +26,7 @@ export default class CardMetadataFunction {
private static async FindMetadataJSONs(): Promise<SeriesMetadata[]> {
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 (const jsonPath of seriesJSONs) {
console.log(`Reading file ${jsonPath}`);

View file

@ -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;

View file

@ -28,7 +28,7 @@ export default class Reroll extends ButtonEvent {
}
try {
const image = readFileSync(path.join(process.cwd(), "cards", randomCard.card.path));
const image = readFileSync(path.join(process.env.DATA_DIR!, "cards", randomCard.card.path));
const imageFileName = randomCard.card.path.split("/").pop()!;
await interaction.deferReply();

View file

@ -36,7 +36,7 @@ export default class Drop extends Command {
}
try {
const image = readFileSync(path.join(process.cwd(), "cards", randomCard.card.path));
const image = readFileSync(path.join(process.env.DATA_DIR!, "cards", randomCard.card.path));
const imageFileName = randomCard.card.path.split("/").pop()!;
await interaction.deferReply();

View file

@ -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");

View file

@ -47,7 +47,7 @@ export default class Dropnumber extends Command {
const imageFileName = card.path.split("/").pop()!;
try {
image = readFileSync(path.join(process.cwd(), "cards", card.path));
image = readFileSync(path.join(process.env.DATA_DIR!, 'cards', card.path));
} catch {
await interaction.reply(`Unable to fetch image for card ${card.id}`);
return;

View file

@ -50,7 +50,7 @@ export default class Droprarity extends Command {
const imageFileName = card.card.path.split("/").pop()!;
try {
image = readFileSync(path.join(process.cwd(), "cards", card.card.path));
image = readFileSync(path.join(process.env.DATA_DIR!, 'cards', card.card.path));
} catch {
await interaction.reply(`Unable to fetch image for card ${card.card.id}`);
return;