diff --git a/.forgejo/workflows/build-deploy.yml b/.forgejo/workflows/build-deploy.yml index adae29d..0bc9881 100644 --- a/.forgejo/workflows/build-deploy.yml +++ b/.forgejo/workflows/build-deploy.yml @@ -3,11 +3,30 @@ name: Build and Deploy Website on: [push] jobs: + build-dev: + name: Build Dev Website + runs-on: docker + container: + image: node:lts + if: github.ref != 'refs/heads/main' + steps: + - uses: actions/checkout@v4 + - name: Install Dependencies + run: npm install + - name: Build English Version + run: npm run build:dev + - name: Build German Version + run: npm run build:dev:de + - uses: actions/upload-artifact@v3 + with: + name: build + path: dist/ build: name: Build Website runs-on: docker container: image: node:lts + if: github.ref == 'refs/heads/main' steps: - uses: actions/checkout@v4 - name: Install Dependencies @@ -25,7 +44,7 @@ jobs: runs-on: docker container: image: node:lts-alpine - needs: [build] + needs: [build-dev] if: github.ref == 'refs/heads/develop' steps: - uses: actions/download-artifact@v3 diff --git a/package.json b/package.json index c98e439..3fc19d9 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,9 @@ "start": "eleventy --serve --watch", "start:de": "LANGUAGE=de eleventy --serve --watch", "build": "eleventy && npm run minify-css", - "build:de": "LANGUAGE=de eleventy && npm run minify-css" + "build:de": "LANGUAGE=de eleventy && npm run minify-css", + "build:dev": "BUILD=dev eleventy && npm run minify-css", + "build:dev:de": "BUILD=dev LANGUAGE=de eleventy && npm run minify-css" }, "author": "samuel-p", "repository": { @@ -25,7 +27,6 @@ "@node-minify/crass": "^8.0.6", "@node-minify/html-minifier": "^8.0.6", "@sardine/eleventy-plugin-tinyhtml": "^0.2.0", - "cpx": "^1.5.0", "eleventy-plugin-rev": "^2.0.0", "eleventy-sass": "^2.2.4", "glob": "^10.3.12", diff --git a/src/_data/global.dev.json b/src/_data/global.dev.json new file mode 100644 index 0000000..cdaf3e7 --- /dev/null +++ b/src/_data/global.dev.json @@ -0,0 +1,17 @@ +{ + "title": "DEV Samuel Philipp", + "languages": [ + { + "label": "English", + "code": "en", + "icon": "us", + "url": "https://dev.samuel-philipp.com" + }, + { + "label": "Deutsch", + "code": "de", + "icon": "de", + "url": "https://dev.samuel-philipp.de" + } + ] +} diff --git a/src/_data/site.js b/src/_data/site.js index b22ee0f..73458ad 100644 --- a/src/_data/site.js +++ b/src/_data/site.js @@ -1,6 +1,11 @@ +const fs = require("fs"); const site = require("./global.json"); -site.buildTime = new Date(); +site.buildName = process.env.BUILD || 'prod'; +if (fs.existsSync(`${__dirname}/global.${site.buildName}.json`)) { + Object.assign(site, require(`./global.${site.buildName}.json`)); +} +site.buildTime = new Date().toISOString(); site.lang = process.env.LANGUAGE || 'en'; site.language = site.languages.find(l => l.code === site.lang); site.strings = require(`./i18n/${site.lang}.json`);