Docker & Versions

This commit is contained in:
Vladimir (unknowableshade) Eremin committed 2023-05-09 04:11:25 +03:00
1 parent af57e4a25f
commit 8050f0a874
6 files changed
+71 -54

No files matched your search

+3 -1
View File
@@ -6,9 +6,11 @@
# Source
!src/
!prisma/
# Dependencies
!package*.json
!package.json
!pnpm-lock.yaml
# Typescript compiller config
!tsconfig.json
@@ -1,15 +1,48 @@
name: Docker
name: actions
on:
workflow_run:
workflows: ["Mocha"]
types:
- completed
push:
tags:
- "*"
jobs:
build:
mocha:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
pnpm-version: [8]
steps:
- name: Check out the repo
uses: actions/checkout@v3
- uses: pnpm/action-setup@v2
with:
version: ${{ matrix.pnpm-version }}
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Install dependencies
run: pnpm install
- name: ESLint & Prettier
run: pnpm run lint
- name: Build
run: pnpm run build
- name: Test
run: pnpm run --if-present test
docker:
runs-on: ubuntu-latest
needs: mocha
steps:
- name: Check out the repo
uses: actions/checkout@v3
-40
View File
@@ -1,40 +0,0 @@
name: Mocha
on:
push:
tags:
- "*"
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
pnpm-version: [8]
steps:
- name: Check out the repo
uses: actions/checkout@v3
- uses: pnpm/action-setup@v2
with:
version: ${{ matrix.pnpm-version }}
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: ESLint && Prettier
run: pnpm run lint --if-present
- name: Install dependencies
run: pnpm ci
- name: Build
run: pnpm run build --if-present
- name: Test
run: pnpm test --if-present
+27 -4
View File
@@ -1,3 +1,17 @@
FROM node:18-alpine as builder
RUN npm install -g pnpm
WORKDIR /usr/src/app
COPY package.json pnpm-lock.yaml ./
RUN pnpm install
COPY . .
RUN pnpm run build
FROM node:18-alpine
RUN apk update
@@ -8,13 +22,22 @@ RUN apk add --no-cache python3
RUN npm install -g pnpm
ENV NODE_ENV production
USER node
WORKDIR /usr/src/app
RUN mkdir bin
RUN curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/src/app/bin/youtube-dl
RUN chmod a+rx /usr/src/app/bin/youtube-dl
RUN curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -o /usr/src/app/bin/yt-dlp
RUN chmod a+rx /usr/src/app/bin/yt-dlp
COPY . .
RUN pnpm install
COPY prisma/ .
COPY package.json pnpm-lock.yaml ./
RUN pnpm install --prod
RUN pnpx prisma generate
COPY --from=builder /usr/src/app/dist ./dist
CMD [ "pnpm", "start" ]
+1 -2
View File
@@ -27,8 +27,7 @@
"build": "pnpm exec tsc --build",
"clean": "pnpm exec tsc --build --clean",
"lint": "pnpm exec eslint --fix . && pnpm exec prettier --write .",
"preinstall": "pnpx only-allow pnpm",
"prebuild": "pnpm exec prisma migrate deploy"
"preinstall": "pnpx only-allow pnpm"
},
"dependencies": {
"@discordjs/opus": "^0.9.0",
+1 -1
View File
@@ -4,7 +4,7 @@ import { fileURLToPath } from "url";
const name = "server";
const description = "Server utilities module";
const author = "unknowableshade";
const tag = "1.0.0";
const tag = "0.0.1";
const rootDir = path.dirname(fileURLToPath(import.meta.url));