Migrate to forgejo runner
This commit is contained in:
parent
2bce901d63
commit
ed42ceaca4
9 changed files with 181 additions and 163 deletions
|
@ -7,12 +7,11 @@
|
||||||
# any secret values.
|
# any secret values.
|
||||||
|
|
||||||
BOT_TOKEN=
|
BOT_TOKEN=
|
||||||
BOT_VER=0.5.1
|
BOT_VER=0.5.0
|
||||||
BOT_AUTHOR=Vylpes
|
BOT_AUTHOR=Vylpes
|
||||||
BOT_OWNERID=147392775707426816
|
BOT_OWNERID=147392775707426816
|
||||||
BOT_CLIENTID=682942374040961060
|
BOT_CLIENTID=682942374040961060
|
||||||
BOT_ENV=4
|
BOT_ENV=4
|
||||||
BOT_LOGLEVEL=info
|
|
||||||
BOT_ADMINS=147392775707426816,887272961504071690
|
BOT_ADMINS=147392775707426816,887272961504071690
|
||||||
|
|
||||||
ABOUT_FUNDING=
|
ABOUT_FUNDING=
|
||||||
|
@ -20,13 +19,14 @@ ABOUT_REPO=
|
||||||
|
|
||||||
DATA_DIR=
|
DATA_DIR=
|
||||||
|
|
||||||
DB_HOST=127.0.0.1
|
DB_HOST=
|
||||||
DB_PORT=3301
|
DB_PORT=
|
||||||
DB_NAME=carddrop
|
DB_NAME=
|
||||||
DB_AUTH_USER=dev
|
DB_AUTH_USER=
|
||||||
DB_AUTH_PASS=dev
|
DB_AUTH_PASS=
|
||||||
DB_SYNC=true
|
DB_SYNC=
|
||||||
DB_LOGGING=true
|
DB_LOGGING=
|
||||||
|
DB_DATA_LOCATION=~/.docker
|
||||||
|
|
||||||
DB_CARD_FILE=:memory:
|
DB_CARD_FILE=:memory:
|
||||||
|
|
70
.forgejo/workflows/production.yml
Normal file
70
.forgejo/workflows/production.yml
Normal file
|
@ -0,0 +1,70 @@
|
||||||
|
name: Deploy To Production
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
environment: prod
|
||||||
|
|
||||||
|
runs-on: docker
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: Use Node.js
|
||||||
|
uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 18.x
|
||||||
|
- run: npm ci
|
||||||
|
- run: npm run build
|
||||||
|
- run: npm test
|
||||||
|
|
||||||
|
- name: "Copy files over to location"
|
||||||
|
run: cp -r . ${{ secrets.PROD_REPO_PATH }}
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
environment: prod
|
||||||
|
needs: build
|
||||||
|
runs-on: docker
|
||||||
|
steps:
|
||||||
|
- uses: https://github.com/appleboy/ssh-action@v1.0.0
|
||||||
|
env:
|
||||||
|
DB_NAME: ${{ secrets.PROD_DB_NAME }}
|
||||||
|
DB_AUTH_USER: ${{ secrets.PROD_DB_AUTH_USER }}
|
||||||
|
DB_AUTH_PASS: ${{ secrets.PROD_DB_AUTH_PASS }}
|
||||||
|
DB_HOST: ${{ secrets.PROD_DB_HOST }}
|
||||||
|
DB_PORT: ${{ secrets.PROD_DB_PORT }}
|
||||||
|
DB_ROOT_HOST: ${{ secrets.PROD_DB_ROOT_HOST }}
|
||||||
|
DB_SYNC: ${{ secrets.PROD_DB_SYNC }}
|
||||||
|
DB_LOGGING: ${{ secrets.PROD_DB_LOGGING }}
|
||||||
|
DB_DATA_LOCATION: ${{ secrets.PROD_DB_DATA_LOCATION }}
|
||||||
|
SERVER_PATH: ${{ secrets.PROD_SSH_SERVER_PATH }}
|
||||||
|
BOT_TOKEN: ${{ secrets.PROD_BOT_TOKEN }}
|
||||||
|
BOT_VER: ${{ vars.PROD_BOT_VER }}
|
||||||
|
BOT_AUTHOR: ${{ vars.PROD_BOT_AUTHOR }}
|
||||||
|
BOT_OWNERID: ${{ vars.PROD_BOT_OWNERID }}
|
||||||
|
BOT_CLIENTID: ${{ vars.PROD_BOT_CLIENTID }}
|
||||||
|
BOT_ENV: ${{ vars.PROD_BOT_ENV }}
|
||||||
|
BOT_ADMINS: ${{ vars.PROD_BOT_ADMINS }}
|
||||||
|
ABOUT_FUNDING: ${{ vars.PROD_ABOUT_FUNDING }}
|
||||||
|
ABOUT_REPO: ${{ vars.PROD_ABOUT_REPO }}
|
||||||
|
DATA_DIR: ${{ secrets.PROD_DATA_DIR }}
|
||||||
|
GDRIVESYNC_AUTO: ${{ vars.PROD_GDRIVESYNC_AUTO }}
|
||||||
|
EXPRESS_PORT: ${{ secrets.PROD_EXPRESS_PORT }}
|
||||||
|
with:
|
||||||
|
host: ${{ secrets.PROD_SSH_HOST }}
|
||||||
|
username: ${{ secrets.PROD_SSH_USER }}
|
||||||
|
key: ${{ secrets.PROD_SSH_KEY }}
|
||||||
|
port: ${{ secrets.PROD_SSH_PORT }}
|
||||||
|
envs: DB_NAME,DB_AUTH_USER,DB_AUTH_PASS,DB_HOST,DB_PORT,DB_ROOT_HOST,DB_SYNC,DB_LOGGING,DB_DATA_LOCATION,BOT_TOKEN,BOT_VER,BOT_AUTHOR,BOT_OWNERID,BOT_CLIENTID,ABOUT_FUNDING,ABOUT_REPO,BOT_ENV,BOT_ADMINS,DATA_DIR,GDRIVESYNC_AUTO,SERVER_PATH,EXPRESS_PORT
|
||||||
|
script: |
|
||||||
|
cd /home/vylpes/apps/card-drop/card-drop_prod \
|
||||||
|
&& docker compose down \
|
||||||
|
&& (pm2 stop card-drop_prod || true) \
|
||||||
|
&& (pm2 delete card-drop_prod || true) \
|
||||||
|
&& docker compose up -d \
|
||||||
|
&& sleep 10 \
|
||||||
|
&& yarn run db:up \
|
||||||
|
&& pm2 start --name card-drop_prod dist/bot.js
|
70
.forgejo/workflows/stage.yml
Normal file
70
.forgejo/workflows/stage.yml
Normal file
|
@ -0,0 +1,70 @@
|
||||||
|
name: Deploy To Stage
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- develop
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
environment: stage
|
||||||
|
|
||||||
|
runs-on: docker
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: Use Node.js
|
||||||
|
uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 18.x
|
||||||
|
- run: npm ci
|
||||||
|
- run: npm run build
|
||||||
|
- run: npm test
|
||||||
|
|
||||||
|
- name: "Copy files over to location"
|
||||||
|
run: cp -r . ${{ secrets.STAGE_REPO_PATH }}
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
environment: prod
|
||||||
|
needs: build
|
||||||
|
runs-on: docker
|
||||||
|
steps:
|
||||||
|
- uses: https://github.com/appleboy/ssh-action@v1.0.0
|
||||||
|
env:
|
||||||
|
DB_NAME: ${{ secrets.STAGE_DB_NAME }}
|
||||||
|
DB_AUTH_USER: ${{ secrets.STAGE_DB_AUTH_USER }}
|
||||||
|
DB_AUTH_PASS: ${{ secrets.STAGE_DB_AUTH_PASS }}
|
||||||
|
DB_HOST: ${{ secrets.STAGE_DB_HOST }}
|
||||||
|
DB_PORT: ${{ secrets.STAGE_DB_PORT }}
|
||||||
|
DB_ROOT_HOST: ${{ secrets.STAGE_DB_ROOT_HOST }}
|
||||||
|
DB_SYNC: ${{ secrets.STAGE_DB_SYNC }}
|
||||||
|
DB_LOGGING: ${{ secrets.STAGE_DB_LOGGING }}
|
||||||
|
DB_DATA_LOCATION: ${{ secrets.STAGE_DB_DATA_LOCATION }}
|
||||||
|
SERVER_PATH: ${{ secrets.STAGE_SSH_SERVER_PATH }}
|
||||||
|
BOT_TOKEN: ${{ secrets.STAGE_BOT_TOKEN }}
|
||||||
|
BOT_VER: ${{ vars.STAGE_BOT_VER }}
|
||||||
|
BOT_AUTHOR: ${{ vars.STAGE_BOT_AUTHOR }}
|
||||||
|
BOT_OWNERID: ${{ vars.STAGE_BOT_OWNERID }}
|
||||||
|
BOT_CLIENTID: ${{ vars.STAGE_BOT_CLIENTID }}
|
||||||
|
BOT_ENV: ${{ vars.STAGE_BOT_ENV }}
|
||||||
|
BOT_ADMINS: ${{ vars.STAGE_BOT_ADMINS }}
|
||||||
|
ABOUT_FUNDING: ${{ vars.STAGE_ABOUT_FUNDING }}
|
||||||
|
ABOUT_REPO: ${{ vars.STAGE_ABOUT_REPO }}
|
||||||
|
DATA_DIR: ${{ secrets.STAGE_DATA_DIR }}
|
||||||
|
GDRIVESYNC_AUTO: ${{ vars.STAGE_GDRIVESYNC_AUTO }}
|
||||||
|
EXPRESS_PORT: ${{ secrets.STAGE_EXPRESS_PORT }}
|
||||||
|
with:
|
||||||
|
host: ${{ secrets.STAGE_SSH_HOST }}
|
||||||
|
username: ${{ secrets.STAGE_SSH_USER }}
|
||||||
|
key: ${{ secrets.STAGE_SSH_KEY }}
|
||||||
|
port: ${{ secrets.STAGE_SSH_PORT }}
|
||||||
|
envs: DB_NAME,DB_AUTH_USER,DB_AUTH_PASS,DB_HOST,DB_PORT,DB_ROOT_HOST,DB_SYNC,DB_LOGGING,DB_DATA_LOCATION,BOT_TOKEN,BOT_VER,BOT_AUTHOR,BOT_OWNERID,BOT_CLIENTID,ABOUT_FUNDING,ABOUT_REPO,BOT_ENV,BOT_ADMINS,DATA_DIR,GDRIVESYNC_AUTO,SERVER_PATH,EXPRESS_PORT
|
||||||
|
script: |
|
||||||
|
cd /home/vylpes/apps/card-drop/card-drop_stage \
|
||||||
|
&& docker compose down \
|
||||||
|
&& (pm2 stop card-drop_stage || true) \
|
||||||
|
&& (pm2 delete card-drop_stage || true) \
|
||||||
|
&& docker compose up -d \
|
||||||
|
&& sleep 10 \
|
||||||
|
&& yarn run db:up \
|
||||||
|
&& pm2 start --name card-drop_stage dist/bot.js
|
24
.forgejo/workflows/test.yml
Normal file
24
.forgejo/workflows/test.yml
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
name: Test
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- feature/*
|
||||||
|
- hotfix/*
|
||||||
|
- renovate/*
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
environment: stage
|
||||||
|
|
||||||
|
runs-on: node
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: Use Node.js
|
||||||
|
uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 18.x
|
||||||
|
- run: npm ci
|
||||||
|
- run: npm run build
|
||||||
|
- run: npm test
|
35
.prod.env
35
.prod.env
|
@ -1,35 +0,0 @@
|
||||||
# Security Warning! Do not commit this file to any VCS!
|
|
||||||
# This is a local file to speed up development process,
|
|
||||||
# so you don't have to change your environment variables.
|
|
||||||
#
|
|
||||||
# This is not applied to `.env.template`!
|
|
||||||
# Template files must be committed to the VCS, but must not contain
|
|
||||||
# any secret values.
|
|
||||||
|
|
||||||
BOT_TOKEN=
|
|
||||||
BOT_VER=0.5.1
|
|
||||||
BOT_AUTHOR=Vylpes
|
|
||||||
BOT_OWNERID=147392775707426816
|
|
||||||
BOT_CLIENTID=1093810443589529631
|
|
||||||
BOT_ENV=1
|
|
||||||
BOT_LOGLEVEL=info
|
|
||||||
BOT_ADMINS=147392775707426816,887272961504071690
|
|
||||||
|
|
||||||
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
|
|
||||||
DB_AUTH_USER=prod
|
|
||||||
DB_AUTH_PASS=prod
|
|
||||||
DB_SYNC=false
|
|
||||||
DB_LOGGING=false
|
|
||||||
|
|
||||||
DB_CARD_FILE=:memory:
|
|
||||||
|
|
||||||
EXPRESS_PORT=3323
|
|
||||||
|
|
||||||
GDRIVESYNC_AUTO=false
|
|
35
.stage.env
35
.stage.env
|
@ -1,35 +0,0 @@
|
||||||
# Security Warning! Do not commit this file to any VCS!
|
|
||||||
# This is a local file to speed up development process,
|
|
||||||
# so you don't have to change your environment variables.
|
|
||||||
#
|
|
||||||
# This is not applied to `.env.template`!
|
|
||||||
# Template files must be committed to the VCS, but must not contain
|
|
||||||
# any secret values.
|
|
||||||
|
|
||||||
BOT_TOKEN=
|
|
||||||
BOT_VER=0.5.1
|
|
||||||
BOT_AUTHOR=Vylpes
|
|
||||||
BOT_OWNERID=147392775707426816
|
|
||||||
BOT_CLIENTID=1147976642942214235
|
|
||||||
BOT_ENV=2
|
|
||||||
BOT_LOGLEVEL=info
|
|
||||||
BOT_ADMINS=147392775707426816,887272961504071690
|
|
||||||
|
|
||||||
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
|
|
||||||
DB_AUTH_USER=stage
|
|
||||||
DB_AUTH_PASS=stage
|
|
||||||
DB_SYNC=false
|
|
||||||
DB_LOGGING=false
|
|
||||||
|
|
||||||
DB_CARD_FILE=:memory:
|
|
||||||
|
|
||||||
EXPRESS_PORT=3313
|
|
||||||
|
|
||||||
GDRIVESYNC_AUTO=false
|
|
|
@ -1,31 +0,0 @@
|
||||||
version: "3.9"
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
prod_database_data:
|
|
||||||
|
|
||||||
services:
|
|
||||||
# discord:
|
|
||||||
# build: .
|
|
||||||
|
|
||||||
database:
|
|
||||||
image: mysql/mysql-server
|
|
||||||
command: --default-authentication-plugin=mysql_native_password
|
|
||||||
restart: always
|
|
||||||
environment:
|
|
||||||
- MYSQL_DATABASE=carddrop
|
|
||||||
- MYSQL_USER=prod
|
|
||||||
- MYSQL_PASSWORD=prod
|
|
||||||
- MYSQL_ROOT_PASSWORD=root
|
|
||||||
- MYSQL_ROOT_HOST=0.0.0.0
|
|
||||||
ports:
|
|
||||||
- "3321:3306"
|
|
||||||
volumes:
|
|
||||||
- prod_database_data:/var/lib/mysql
|
|
||||||
|
|
||||||
phpmyadmin:
|
|
||||||
image: phpmyadmin
|
|
||||||
restart: always
|
|
||||||
ports:
|
|
||||||
- "3322:80"
|
|
||||||
environment:
|
|
||||||
- PMA_ARBITRARY=1
|
|
|
@ -1,31 +0,0 @@
|
||||||
version: "3.9"
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
stage_database_data:
|
|
||||||
|
|
||||||
services:
|
|
||||||
# discord:
|
|
||||||
# build: .
|
|
||||||
|
|
||||||
database:
|
|
||||||
image: mysql/mysql-server
|
|
||||||
command: --default-authentication-plugin=mysql_native_password
|
|
||||||
restart: always
|
|
||||||
environment:
|
|
||||||
- MYSQL_DATABASE=carddrop
|
|
||||||
- MYSQL_USER=stage
|
|
||||||
- MYSQL_PASSWORD=stage
|
|
||||||
- MYSQL_ROOT_PASSWORD=root
|
|
||||||
- MYSQL_ROOT_HOST=0.0.0.0
|
|
||||||
ports:
|
|
||||||
- "3311:3306"
|
|
||||||
volumes:
|
|
||||||
- stage_database_data:/var/lib/mysql
|
|
||||||
|
|
||||||
phpmyadmin:
|
|
||||||
image: phpmyadmin
|
|
||||||
restart: always
|
|
||||||
ports:
|
|
||||||
- "3312:80"
|
|
||||||
environment:
|
|
||||||
- PMA_ARBITRARY=1
|
|
|
@ -1,31 +1,17 @@
|
||||||
version: "3.9"
|
version: "3.9"
|
||||||
|
|
||||||
volumes:
|
|
||||||
dev_database_data:
|
|
||||||
|
|
||||||
services:
|
services:
|
||||||
# discord:
|
|
||||||
# build: .
|
|
||||||
|
|
||||||
database:
|
database:
|
||||||
image: mysql/mysql-server
|
image: mysql/mysql-server
|
||||||
command: --default-authentication-plugin=mysql_native_password
|
command: --default-authentication-plugin=mysql_native_password
|
||||||
restart: always
|
restart: always
|
||||||
environment:
|
environment:
|
||||||
- MYSQL_DATABASE=carddrop
|
- MYSQL_DATABASE=$DB_NAME
|
||||||
- MYSQL_USER=dev
|
- MYSQL_USER=$DB_AUTH_USER
|
||||||
- MYSQL_PASSWORD=dev
|
- MYSQL_PASSWORD=$DB_AUTH_PASS
|
||||||
- MYSQL_ROOT_PASSWORD=root
|
- MYSQL_ROOT_PASSWORD=$DB_AUTH_PASS
|
||||||
- MYSQL_ROOT_HOST=0.0.0.0
|
- MYSQL_ROOT_HOST=$DB_ROOT_HOST
|
||||||
ports:
|
ports:
|
||||||
- "3301:3306"
|
- "$DB_PORT:3306"
|
||||||
volumes:
|
volumes:
|
||||||
- dev_database_data:/var/lib/mysql
|
- $DB_DATA_LOCATION:/var/lib/mysql
|
||||||
|
|
||||||
phpmyadmin:
|
|
||||||
image: phpmyadmin
|
|
||||||
restart: always
|
|
||||||
ports:
|
|
||||||
- "3302:80"
|
|
||||||
environment:
|
|
||||||
- PMA_ARBITRARY=1
|
|
Loading…
Reference in a new issue