feat: nodejs 20 #1

Merged
Fascinated merged 3 commits from development into main 2023-10-11 22:59:34 +00:00
2 changed files with 29 additions and 4 deletions

@ -4,12 +4,17 @@ on:
push:
branches:
- "main"
- "development"
jobs:
docker:
runs-on: ubuntu-22.04
container: fascinated/docker-images:node-latest
steps:
- name: Get branch name
id: branch-name
uses: tj-actions/branch-names@v7
- name: checkout
uses: actions/checkout@v3
@ -22,9 +27,29 @@ jobs:
username: ${{ secrets.REPO_USERNAME }}
password: ${{ secrets.REPO_TOKEN }}
- name: Build and push
- name: Restore Docker Build Cache
uses: actions/cache@v3
id: build-cache
with:
path: /tmp/.buildx-cache
key: ${{ runner.os }}-buildx
- name: Build and Push (Latest)
uses: docker/build-push-action@v4
if: steps.branch-name.outputs.current_branch == 'master'
with:
push: true
context: .
tags: fascinated/beatsaber-overlay:latest
cache-from: type=local,src=/tmp/.buildx-cache
cache-to: type=local,dest=/tmp/.buildx-cache
- name: Build and Push (Other Branches)
uses: docker/build-push-action@v4
if: steps.branch-name.outputs.current_branch != 'master'
with:
push: true
context: .
tags: fascinated/beatsaber-overlay:${{ steps.branch-name.outputs.current_branch }}
cache-from: type=local,src=/tmp/.buildx-cache
cache-to: type=local,dest=/tmp/.buildx-cache

@ -1,5 +1,5 @@
# Install dependencies only when needed
FROM node:19 AS deps
FROM node:20 AS deps
# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed.
#RUN apk add libc6-compat
WORKDIR /app
@ -20,7 +20,7 @@ RUN \
fi
# Rebuild the source code only when needed
FROM node:19 AS builder
FROM node:20 AS builder
WORKDIR /app
COPY --from=deps /app/node_modules ./node_modules
COPY . .
@ -31,7 +31,7 @@ ENV NEXT_TELEMETRY_DISABLED 1
RUN yarn build
# Production image, copy all the files and run next
FROM node:19-alpine AS runner
FROM node:20-alpine AS runner
WORKDIR /app
ENV NODE_ENV production