Files
DRBv3/.gitea/workflows/DRBv3_tests.yaml
Logan Cusano 67c29f1d72
Some checks failed
DRB Build Tests / build (push) Failing after 8s
DRB Build Tests / drb_build_and_test (push) Failing after 1m1s
Remove gitea debug after potential resolution
2024-04-28 06:07:06 -04:00

115 lines
2.8 KiB
YAML

name: DRB Build Tests
on:
pull_request:
branches:
- master
push:
branches:
- master
env:
NODE_ENV: development
MONGO_INITDB_ROOT_USERNAME: admin
MONGO_INITDB_ROOT_PASSWORD: admin
MONGO_INITDB_DATABASE: drb
SERVER_PORT: 3000
MONGO_URL: "mongodb://mongodb:27017/drb"
DISCORD_TOKEN: ${{ secrets.DISCORD_TOKEN }}
TEST_GUILD_ID: ${{ secrets.TEST_GUILD_ID }}
TEST_CLIENT_TOKEN: ${{ secrets.TEST_CLIENT_TOKEN }}
TEST_CHANNEL_ID: ${{ secrets.TEST_CHANNEL_ID }}
TEST_SYSTEM: ${{ secrets.TEST_SYSTEM }}
EXPECTED_CLIENT_ID: ${{ secrets.TEST_CLIENT_ID }}
EXPECTED_USERNAME: ${{ secrets.EXPECTED_USERNAME }}
PDAB_PORT: ${{ vars.PDAB_PORT }}
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build
uses: docker/build-push-action@v5
with:
working-directory: './server'
context: .
load: true
tags: drb-server:latest
- name: Inspect
run: |
docker image inspect drb-server:latest
- name: Wait for server to start
run: sleep 10
- name: Check open docker containers
run: docker ps
- name: Test server accessibility
run: curl -v http://localhost:3000
- name: Stop Docker container
run: docker stop drb
drb_build_and_test:
runs-on: ubuntu-latest
services:
mongodb:
image: mongo:latest
ports:
- 27017:27017
options: >-
--health-cmd mongo
--health-interval 10s
--health-timeout 5s
--health-retries 5
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Remove package-lock.json (Server)
working-directory: "./server"
run: rm package-lock.json
- name: Install Node-GYP (Server)
working-directory: "./server"
run: npm install -g node-gyp
- name: Install dependencies (Server)
working-directory: "./server"
run: npm install
- name: Remove package-lock.json (Client)
working-directory: "./client"
run: rm package-lock.json
- name: Install dependencies (Client)
working-directory: "./client"
run: npm install
- run: echo "Node has finished installing dependencies"
- name: Run Server tests
working-directory: "./server"
run: npm test
- name: Run Client tests
working-directory: "./client"
run: npm test
- run: echo "Completed the DRB tests"