From ac25eb37084d1de70ce955316bd3adbff58a62a9 Mon Sep 17 00:00:00 2001 From: Neshura <neshura@proton.me> Date: Fri, 9 Dec 2022 22:02:27 +0100 Subject: [PATCH 01/16] Typo in Dockerfile --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index cc2de22..f12604d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -26,7 +26,7 @@ RUN yarn build FROM node:16-alpine AS runner LABEL author="neshura@proton.me" -WORKDIR /usr/src/ap +WORKDIR /usr/src/app ENV NODE_ENV production From aaad32a51dd33f36766fd8663c9e35155ec2c9b7 Mon Sep 17 00:00:00 2001 From: Neshura <neshura@proton.me> Date: Wed, 14 Dec 2022 18:39:39 +0100 Subject: [PATCH 02/16] Renamed Sidebar component and updated Node Version --- Dockerfile | 4 ++-- pages/api/navbar.tsx | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index f12604d..b5a9bf4 100644 --- a/Dockerfile +++ b/Dockerfile @@ -11,7 +11,7 @@ RUN yarn install --frozen-lockfile ## BUILD STEP # Rebuild the source code only when needed -FROM node:16-alpine AS builder +FROM node:18-alpine AS builder WORKDIR /app @@ -23,7 +23,7 @@ COPY . . RUN yarn build ## RUN STEP -FROM node:16-alpine AS runner +FROM node:18-alpine AS runner LABEL author="neshura@proton.me" WORKDIR /usr/src/app diff --git a/pages/api/navbar.tsx b/pages/api/navbar.tsx index 18ea552..1ec8953 100644 --- a/pages/api/navbar.tsx +++ b/pages/api/navbar.tsx @@ -3,7 +3,7 @@ import fsPromises from 'fs/promises' import path from 'path' import ReadyOrNotMap from '../../interfaces/ReadyOrNot' -export default async function TobarApi(req: any, res: any) { +export default async function SidebarAPI(req: any, res: any) { try { // get list of all folders(maps) in the readyornot folder - maybe there is a cleaner way to do this? var fs = require('fs') From 098a4cad1d75113ec4a6fbd9ac05bc52af7d9f23 Mon Sep 17 00:00:00 2001 From: Neshura <neshura@proton.me> Date: Sat, 14 Jan 2023 21:09:01 +0100 Subject: [PATCH 03/16] URL-fix --- components/layout.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/components/layout.tsx b/components/layout.tsx index 6163070..7425eee 100644 --- a/components/layout.tsx +++ b/components/layout.tsx @@ -11,12 +11,12 @@ const LayoutReadyOrNot = ({ children }: { children: React.ReactNode }) => { var _paq = window._paq = window._paq || []; /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ _paq.push(["setDocumentTitle", document.domain + "/" + document.title]); - _paq.push(["setCookieDomain", "readyornot.neshura-server.net"]); + _paq.push(["setCookieDomain", "readyornot.neshweb.net"]); _paq.push(["disableCookies"]); _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function() { - var u="//temp.neshura-server.net/"; + var u="//tracking.neshweb.net/"; _paq.push(['setTrackerUrl', u+'matomo.php']); _paq.push(['setSiteId', '2']); var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; From 9406dbdc5de7dfd42d576f4bfb66f0d6f6f16d95 Mon Sep 17 00:00:00 2001 From: Neshura <neshura@proton.me> Date: Mon, 6 Mar 2023 18:29:59 +0100 Subject: [PATCH 04/16] Change Port to 8002 --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 19e5582..4d7884b 100644 --- a/package.json +++ b/package.json @@ -3,8 +3,8 @@ "version": "0.1.0", "private": true, "scripts": { - "dev:debug": "NODE_OPTIONS='--inspect' next dev -p 4042", - "dev": "next dev", + "dev:debug": "NODE_OPTIONS='--inspect' next dev -p 8002", + "dev": "next dev -p 8002", "build": "next build", "start": "next start", "lint": "next lint" From 8a2e88e3024b66cc9c5726ad9e1128ccd4bdf114 Mon Sep 17 00:00:00 2001 From: Neshura <neshura@proton.me> Date: Mon, 6 Mar 2023 18:39:37 +0100 Subject: [PATCH 05/16] Changed Port for Production --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 4d7884b..116ade8 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "dev:debug": "NODE_OPTIONS='--inspect' next dev -p 8002", "dev": "next dev -p 8002", "build": "next build", - "start": "next start", + "start": "next start -p 8002", "lint": "next lint" }, "dependencies": { From 12c7ef2a8ee1ea89aceb160f64236754971d2887 Mon Sep 17 00:00:00 2001 From: Neshura <neshura@proton.me> Date: Mon, 6 Mar 2023 18:47:14 +0100 Subject: [PATCH 06/16] Change Host to IPv6 --- package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 116ade8..9158e47 100644 --- a/package.json +++ b/package.json @@ -3,10 +3,10 @@ "version": "0.1.0", "private": true, "scripts": { - "dev:debug": "NODE_OPTIONS='--inspect' next dev -p 8002", - "dev": "next dev -p 8002", + "dev:debug": "NODE_OPTIONS='--inspect' next dev -H :: -p 8002", + "dev": "next dev -H :: -p 8002", "build": "next build", - "start": "next start -p 8002", + "start": "next start -H :: -p 8002", "lint": "next lint" }, "dependencies": { From 41174772830e929e94c49300c9a8b05510c58ba3 Mon Sep 17 00:00:00 2001 From: Neshura <neshura@proton.me> Date: Mon, 6 Mar 2023 19:07:52 +0100 Subject: [PATCH 07/16] Update package.json --- package.json | 3 ++- yarn.lock | 5 +++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 9158e47..2a9cd26 100644 --- a/package.json +++ b/package.json @@ -17,9 +17,10 @@ "swr": "^1.3.0" }, "devDependencies": { + "@types/node": "18.14.6", + "@types/react": "^18.0.14", "eslint": "^8.23.1", "eslint-config-next": "12.2.0", - "@types/react": "^18.0.14", "typescript": "4.9.3" } } diff --git a/yarn.lock b/yarn.lock index 23a6f54..b9af874 100644 --- a/yarn.lock +++ b/yarn.lock @@ -166,6 +166,11 @@ resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== +"@types/node@18.14.6": + version "18.14.6" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.14.6.tgz#ae1973dd2b1eeb1825695bb11ebfb746d27e3e93" + integrity sha512-93+VvleD3mXwlLI/xASjw0FzKcwzl3OdTCzm1LaRfqgS21gfFtK3zDXM5Op9TeeMsJVOaJ2VRDpT9q4Y3d0AvA== + "@types/prop-types@*": version "15.7.5" resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf" From 9d7109d66cafb0ef8329e7a83545631ad35efdd7 Mon Sep 17 00:00:00 2001 From: Neshura <neshura@neshweb.net> Date: Wed, 20 Dec 2023 22:03:04 +0100 Subject: [PATCH 08/16] Update Dockerfile --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index b5a9bf4..de808cd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,6 @@ ## INIT STEP # Install dependencies only when needed -FROM node:16-alpine AS deps +FROM node:18-alpine AS deps RUN apk add --no-cache libc6-compat WORKDIR /app @@ -25,7 +25,7 @@ RUN yarn build ## RUN STEP FROM node:18-alpine AS runner -LABEL author="neshura@proton.me" +LABEL author="neshura@neshweb.net" WORKDIR /usr/src/app ENV NODE_ENV production From 4bc9ef0804c215bd8e6ef1fe81d5dd5cbe7fb43b Mon Sep 17 00:00:00 2001 From: Neshura <neshura@neshweb.net> Date: Wed, 20 Dec 2023 22:03:28 +0100 Subject: [PATCH 09/16] Update .gitignore --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index c29dfdc..72d7a01 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,5 @@ yarn-error.log* build/ data/ confs/ + +.idea/ From 929df2f3bbb88f51b4032f1cffb67fa22c832e28 Mon Sep 17 00:00:00 2001 From: Neshura <neshura@neshweb.net> Date: Wed, 20 Dec 2023 22:03:36 +0100 Subject: [PATCH 10/16] Add Forgejo Actions --- .forgejo/workflows/build+release.yml | 82 ++++++++++++++++++++++++++++ .forgejo/workflows/test.yml | 35 ++++++++++++ 2 files changed, 117 insertions(+) create mode 100644 .forgejo/workflows/build+release.yml create mode 100644 .forgejo/workflows/test.yml diff --git a/.forgejo/workflows/build+release.yml b/.forgejo/workflows/build+release.yml new file mode 100644 index 0000000..570df28 --- /dev/null +++ b/.forgejo/workflows/build+release.yml @@ -0,0 +1,82 @@ +name: 'Build and Release Docker Image' +author: 'Neshura' + +on: + push: + tags: + - '[0-9]+.[0-9]+.[0-9]+' + - '[0-9]+.[0-9]+.[0-9]+rc[0-9]+' +jobs: + test: + runs-on: docker + steps: + - + name: Checking Out Repository Code + uses: https://code.forgejo.org/actions/checkout@v3 + - + name: Get Yarn Cache Directory + id: yarn-cache-dir-path + run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT + - + name: Set Up Yarn Cache + uses: actions/cache@v3 + id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) + with: + path: ${{ steps.yarn-cache-dir-path.outputs.dir }} + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + restore-keys: | + ${{ runner.os }}-yarn- + - + name: Install Dependencies + run: yarn install + - + name: Run Linter + run: yarn lint + - + name: Check if Version in package.json matches Tag + run: | + echo "Test" + VERSION=$(cat package.json | grep "version" | sed 's/.*://' | tr -d , | tr -d \" ) + if test $VERSION != "${{ github.ref_name }}"; then + echo "Expected Version is: '${{ github.ref_name }}' actual Version is: '$VERSION'"; + exit 1 + else + echo "Version is: '$VERSION'"; + fi + + build: + needs: test + if: success() + runs-on: dind + steps: + - + name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + - + name: Login to Docker Hub + uses: docker/login-action@v3 + with: + registry: forgejo.neshweb.net + username: ${{ secrets.FORGEJO_USERNAME }} + password: ${{ secrets.FORGEJO_TOKEN }} + - + name: Push to Package Registry + uses: docker/build-push-action@v5 + with: + push: true + tags: forgejo.neshweb.net/neshweb-sites/readyornot:${{ github.ref_name }}, forgejo.neshweb.net/neshweb-sites/readyornot:latest + + release: + needs: build + if: success() + runs-on: docker + steps: + - + name: Release New Version + uses: actions/forgejo-release@v1 + with: + direction: upload + url: https://forgejo.neshweb.net + release-dir: release + token: ${{ secrets.FORGEJO_TOKEN }} + tag: ${{ github.ref_name }} \ No newline at end of file diff --git a/.forgejo/workflows/test.yml b/.forgejo/workflows/test.yml new file mode 100644 index 0000000..570d370 --- /dev/null +++ b/.forgejo/workflows/test.yml @@ -0,0 +1,35 @@ +name: 'Run Tests on Code' +author: 'Neshura' + +on: + push: + tags-ignore: + - '**' + branches: + - '**' +jobs: + test: + runs-on: docker + steps: + - + name: Checking Out Repository Code + uses: https://code.forgejo.org/actions/checkout@v3 + - + name: Get Yarn Cache Directory + id: yarn-cache-dir-path + run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT + - + name: Set Up Yarn Cache + uses: actions/cache@v3 + id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) + with: + path: ${{ steps.yarn-cache-dir-path.outputs.dir }} + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + restore-keys: | + ${{ runner.os }}-yarn- + - + name: Install Dependencies + run: yarn install + - + name: Run Linter + run: yarn lint \ No newline at end of file From 46c5b39d6b7e83cdd837104cbef8d6a8626f5a1d Mon Sep 17 00:00:00 2001 From: Neshura <neshura@neshweb.net> Date: Wed, 20 Dec 2023 22:04:41 +0100 Subject: [PATCH 11/16] Release 0.1.7 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 2a9cd26..1f521bc 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "readyornot", - "version": "0.1.0", + "version": "0.1.7", "private": true, "scripts": { "dev:debug": "NODE_OPTIONS='--inspect' next dev -H :: -p 8002", From 197b10cccf6c40c5fe1a70f2aa5abb06f78e5910 Mon Sep 17 00:00:00 2001 From: Neshura <neshura@noreply.forgejo.neshweb.net> Date: Wed, 20 Dec 2023 21:27:22 +0000 Subject: [PATCH 12/16] Update .forgejo/workflows/build+release.yml --- .forgejo/workflows/build+release.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.forgejo/workflows/build+release.yml b/.forgejo/workflows/build+release.yml index 570df28..6c1955b 100644 --- a/.forgejo/workflows/build+release.yml +++ b/.forgejo/workflows/build+release.yml @@ -35,8 +35,7 @@ jobs: - name: Check if Version in package.json matches Tag run: | - echo "Test" - VERSION=$(cat package.json | grep "version" | sed 's/.*://' | tr -d , | tr -d \" ) + VERSION=$(cat package.json | grep "version" | sed 's/.*://' | tr -d , | tr -d \" | tr -d " " ) if test $VERSION != "${{ github.ref_name }}"; then echo "Expected Version is: '${{ github.ref_name }}' actual Version is: '$VERSION'"; exit 1 From 8fda8a730950a0c59e1fed6c3cda8fa24a9ba989 Mon Sep 17 00:00:00 2001 From: Neshura <neshura@neshweb.net> Date: Wed, 20 Dec 2023 22:32:28 +0100 Subject: [PATCH 13/16] Remove Gitlab CI & Fix Dockerfile --- .gitlab-ci.yml | 65 -------------------------------------------------- Dockerfile | 1 + 2 files changed, 1 insertion(+), 65 deletions(-) delete mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml deleted file mode 100644 index e8e1c18..0000000 --- a/.gitlab-ci.yml +++ /dev/null @@ -1,65 +0,0 @@ -stages: - - lint - #- test - - build - - deploy - -variables: - IMAGE_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG - IMAGE_LATEST: $CI_REGISTRY_IMAGE:develop - - -.node: - image: ${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/node:latest - - -.docker: - image: ${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/docker:20 - rules: - - if: $CI_COMMIT_TAG && $CI_COMMIT_TAG !~ /(^t)+.*/ - variables: - IMAGE_LATEST: $CI_REGISTRY_IMAGE:latest - - if: $CI_COMMIT_TAG - - -linter: - image: !reference [.node, image] - stage: lint - before_script: - - yarn install - script: - - yarn lint - - -build: - image: !reference [.docker, image] - stage: build - before_script: - - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - script: - - docker build -t $IMAGE_TAG . - after_script: - - docker save $IMAGE_TAG > docker.tar - artifacts: - expire_in: 30 mins - paths: - - docker.tar - rules: - - !reference [.docker, rules] - - -push: - image: !reference [.docker, image] - stage: deploy - needs: - - job: build - artifacts: true - before_script: - - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - - docker load -i docker.tar - script: - - docker tag $IMAGE_TAG $IMAGE_LATEST - - docker push $IMAGE_TAG - - docker push $IMAGE_LATEST - rules: - - !reference [.docker, rules] diff --git a/Dockerfile b/Dockerfile index de808cd..645c82d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,6 +7,7 @@ WORKDIR /app # Copy the files needed to install deps COPY package.json yarn.lock ./ +RUN yarn add sharp RUN yarn install --frozen-lockfile ## BUILD STEP From a5e6c6fa3b2690645ebd3c69fa476493414cc58b Mon Sep 17 00:00:00 2001 From: Neshura <neshura@neshweb.net> Date: Wed, 20 Dec 2023 22:32:39 +0100 Subject: [PATCH 14/16] Release 0.1.8 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 1f521bc..f5d1313 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "readyornot", - "version": "0.1.7", + "version": "0.1.8", "private": true, "scripts": { "dev:debug": "NODE_OPTIONS='--inspect' next dev -H :: -p 8002", From a54baf4b3dd740d9e5c862c7d2a884a734c11203 Mon Sep 17 00:00:00 2001 From: Neshura <neshura@noreply.forgejo.neshweb.net> Date: Mon, 1 Jan 2024 20:42:26 +0000 Subject: [PATCH 15/16] Setup registry for buildx + Update CI to current defaults --- .forgejo/workflows/build+release.yml | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/.forgejo/workflows/build+release.yml b/.forgejo/workflows/build+release.yml index 6c1955b..44bb69d 100644 --- a/.forgejo/workflows/build+release.yml +++ b/.forgejo/workflows/build+release.yml @@ -5,7 +5,7 @@ on: push: tags: - '[0-9]+.[0-9]+.[0-9]+' - - '[0-9]+.[0-9]+.[0-9]+rc[0-9]+' + - '[0-9]+.[0-9]+.[0-9]+-rc.[0-9]+' jobs: test: runs-on: docker @@ -51,6 +51,10 @@ jobs: - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 + with: + config-inline: | + [registry."docker.io"] + mirrors = ["https://docker-cache.neshweb.net"] - name: Login to Docker Hub uses: docker/login-action@v3 @@ -58,12 +62,22 @@ jobs: registry: forgejo.neshweb.net username: ${{ secrets.FORGEJO_USERNAME }} password: ${{ secrets.FORGEJO_TOKEN }} + - + name: Determine Docker tags + id: tags + run: | + if echo ${{ github.ref_name }} | grep -qi '\-rc' ; then + echo latest=forgejo.neshweb.net/neshweb-sites/${{ github.event.repository.name }}:preview >> $GITHUB_OUTPUT; + else + echo latest=forgejo.neshweb.net/neshweb-sites/${{ github.event.repository.name }}:latest >> $GITHUB_OUTPUT; + fi + echo version=forgejo.neshweb.net/neshweb-sites/${{ github.event.repository.name }}:${{ github.ref_name }} >> $GITHUB_OUTPUT; - name: Push to Package Registry uses: docker/build-push-action@v5 with: push: true - tags: forgejo.neshweb.net/neshweb-sites/readyornot:${{ github.ref_name }}, forgejo.neshweb.net/neshweb-sites/readyornot:latest + tags: ${{ steps.tags.outputs.version }}, ${{ steps.tags.outputs.latest }} release: needs: build From 025ff6a42fd934fbb9e244d49321c1c7da91a5b7 Mon Sep 17 00:00:00 2001 From: Neshura <neshura@noreply.forgejo.neshweb.net> Date: Mon, 1 Jan 2024 20:51:22 +0000 Subject: [PATCH 16/16] Fix indenting --- .forgejo/workflows/build+release.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.forgejo/workflows/build+release.yml b/.forgejo/workflows/build+release.yml index 44bb69d..2b43104 100644 --- a/.forgejo/workflows/build+release.yml +++ b/.forgejo/workflows/build+release.yml @@ -37,10 +37,10 @@ jobs: run: | VERSION=$(cat package.json | grep "version" | sed 's/.*://' | tr -d , | tr -d \" | tr -d " " ) if test $VERSION != "${{ github.ref_name }}"; then - echo "Expected Version is: '${{ github.ref_name }}' actual Version is: '$VERSION'"; - exit 1 + echo "Expected Version is: '${{ github.ref_name }}' actual Version is: '$VERSION'"; + exit 1 else - echo "Version is: '$VERSION'"; + echo "Version is: '$VERSION'"; fi build: