forked from code100x/cms
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'code100x:main' into main
- Loading branch information
Showing
104 changed files
with
3,376 additions
and
1,228 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
name: Continuous Deployment | ||
on: | ||
push: | ||
branches: [ main ] | ||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v2 | ||
with: | ||
fetch-depth: 0 | ||
|
||
- name: Docker login | ||
uses: docker/login-action@v2 | ||
with: | ||
username: ${{ secrets.DOCKERHUB_USERNAME }} | ||
password: ${{ secrets.DOCKERHUB_TOKEN }} | ||
|
||
- name: Set up Docker Buildx | ||
uses: docker/setup-buildx-action@v2 | ||
|
||
- name: Build and push | ||
uses: docker/build-push-action@v4 | ||
with: | ||
context: . | ||
file: ./Dockerfile.prod | ||
push: true | ||
tags: 100xdevs/cms-staging:${{ github.sha }} | ||
build-args: | | ||
DATABASE_URL=${{ secrets.STAGING_DATABASE }} | ||
- name: Clone staging-ops repo, update, and push | ||
env: | ||
PAT: ${{ secrets.PAT }} | ||
run: | | ||
git clone https://github.com/code100x/staging-ops.git | ||
cd staging-ops | ||
sed -i 's|image: 100xdevs/cms-staging:.*|image: 100xdevs/cms-staging:${{ github.sha }}|' staging/cms/deployment.yml | ||
git config user.name "GitHub Actions Bot" | ||
git config user.email "[email protected]" | ||
git add staging/cms/deployment.yml | ||
git commit -m "Update cms image to ${{ github.sha }}" | ||
git push https://${PAT}@github.com/code100x/staging-ops.git main |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
name: Continuous Deployment (Prod) | ||
on: | ||
push: | ||
branches: [ production ] | ||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v2 | ||
with: | ||
fetch-depth: 0 | ||
|
||
- name: Docker login | ||
uses: docker/login-action@v2 | ||
with: | ||
username: ${{ secrets.DOCKERHUB_USERNAME }} | ||
password: ${{ secrets.DOCKERHUB_TOKEN }} | ||
|
||
- name: Set up Docker Buildx | ||
uses: docker/setup-buildx-action@v2 | ||
|
||
- name: Build and push | ||
uses: docker/build-push-action@v4 | ||
with: | ||
context: . | ||
file: ./Dockerfile.prod | ||
push: true | ||
tags: 100xdevs/cms:${{ github.sha }} | ||
build-args: | | ||
DATABASE_URL=${{ secrets.PROD_DATABASE }} | ||
- name: Clone staging-ops repo, update, and push | ||
env: | ||
PAT: ${{ secrets.PAT }} | ||
run: | | ||
git clone https://github.com/code100x/staging-ops.git | ||
cd staging-ops | ||
sed -i 's|image: 100xdevs/cms:.*|image: 100xdevs/cms:${{ github.sha }}|' prod/cms/deployment.yml | ||
git config user.name "GitHub Actions Bot" | ||
git config user.email "[email protected]" | ||
git add prod/cms/deployment.yml | ||
git commit -m "Update cms image to ${{ github.sha }}" | ||
git push https://${PAT}@github.com/code100x/staging-ops.git main |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
legacy-peer-deps = true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,14 +1,31 @@ | ||
FROM node:20-alpine | ||
ARG DATABASE_URL | ||
FROM node:20-alpine AS build | ||
|
||
WORKDIR /usr/src/app | ||
ARG DATABASE_URL | ||
ENV DATABASE_URL=${DATABASE_URL} | ||
|
||
COPY . . | ||
|
||
RUN npm install | ||
RUN DATABASE_URL=$DATABASE_URL npx prisma generate | ||
RUN DATABASE_URL=$DATABASE_URL npm run build | ||
RUN npm install -g pnpm && \ | ||
pnpm install && \ | ||
pnpm add sharp && \ | ||
pnpm run build | ||
|
||
RUN DATABASE_URL=${DATABASE_URL} pnpm dlx prisma generate | ||
|
||
FROM node:20-alpine AS run | ||
|
||
RUN mkdir /.npm && chown -R 1001:1001 /.npm | ||
|
||
USER 1001:1001 | ||
WORKDIR /usr/src/app | ||
|
||
COPY --from=build --chown=1001:1001 usr/src/app/.next/standalone ./ | ||
COPY --from=build --chown=1001:1001 usr/src/app/.next/static ./.next/static | ||
COPY --from=build --chown=1001:1001 usr/src/app/public ./public | ||
|
||
EXPOSE 3000 | ||
ENV NODE_ENV production | ||
ENV PORT 3000 | ||
ENV HOSTNAME "0.0.0.0" | ||
|
||
CMD ["npm", "run", "start"] | ||
CMD [ "node", "server.js" ] |
Oops, something went wrong.