Compare commits

...

2 commits

Author SHA1 Message Date
83661b9d38
Implemented forgejo ci
Some checks failed
/ publish (push) Has been skipped
/ checking (push) Successful in 14s
/ unlighthouse (push) Has been skipped
/ build-site (push) Failing after 2m13s
2023-12-21 00:16:39 +01:00
73d0debc1e
small visual fixes + upgrade to astro v4 2023-12-20 23:48:28 +01:00
10 changed files with 5242 additions and 3579 deletions

View file

@ -0,0 +1,67 @@
on:
push:
tags:
- '[0-9]+\.[0-9]+\.[0-9]+pre[0-9]+'
jobs:
checking:
runs-on: docker
container: node:lts
steps:
- name: Checkout source code
uses: https://code.forgejo.org/actions/checkout@v3
- name: Install packages
run: npm install
- name: Run astro check (linting + static analysis)
run: npm run astro check
build-site:
needs: [checking]
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/firq/firq-dev-website:${{ github.ref_name }}, forgejo.neshweb.net/firq/firq-dev-website:preview
publish:
needs: [build-site]
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 }}
unlighthouse:
needs: [publish]
if: success()
runs-on: docker
services:
website:
image: forgejo.neshweb.net/firq/firq-dev-website:preview
steps:
- name: Install Dependencies
run: npm install -g @unlighthouse/cli puppeteer
- name: Run unlighthouse
run: unlighthouse-ci --site website:8081
- name: Upload reports
uses: actions/upload-artifact@v3
with:
name: unlighthouse-reports
path: unlighthouse-reports/

View file

@ -0,0 +1,53 @@
on:
push:
tags:
- '[0-9]+\.[0-9]+\.[0-9]+'
- '[0-9]+\.[0-9]+\.[0-9]+a[0-9]+'
- '[0-9]+\.[0-9]+\.[0-9]+b[0-9]+'
- '[0-9]+\.[0-9]+\.[0-9]+rc[0-9]+'
jobs:
checking:
runs-on: docker
container: node:lts
steps:
- name: Checkout source code
uses: https://code.forgejo.org/actions/checkout@v3
- name: Install packages
run: npm install
- name: Run astro check (linting + static analysis)
run: npm run astro check
run: npm run astro check
build-site:
needs: [checking]
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/firq/firq-dev-website:${{ github.ref_name }}, forgejo.neshweb.net/firq/firq-dev-website:latest
release:
needs: [build-site]
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 }}

View file

@ -0,0 +1,16 @@
on:
push:
branches:
- "**"
jobs:
checking:
runs-on: docker
container: node:lts
steps:
- name: Checkout source code
uses: https://code.forgejo.org/actions/checkout@v3
- name: Install packages
run: npm install
- name: Run astro check (linting + static analysis)
run: npm run astro check

View file

@ -1,14 +0,0 @@
image: node:lts
pages:
cache:
paths:
- node_modules/
script:
- npm install
- npm run build
artifacts:
paths:
- public
expire_in: 3 days
only:
- main

17
Dockerfile Normal file
View file

@ -0,0 +1,17 @@
FROM node:lts AS build
WORKDIR /app
COPY . .
RUN npm i
RUN npm run build
FROM node:lts AS runtime
RUN npm install --global "@warren-bank/serve"
COPY --from=build /app/dist /public
COPY --from=build /app/serve.json /public/serve.json
RUN rm -r /public/assets/data/
ENV PORT 8081
EXPOSE 8081
CMD [ "serve", "public/", "-p", "8081" ]

8606
package-lock.json generated

File diff suppressed because it is too large Load diff

View file

@ -1,7 +1,7 @@
{ {
"name": "@firq/fgosite", "name": "@firq/fgosite",
"type": "module", "type": "module",
"version": "0.1.6", "version": "0.1.7",
"private": true, "private": true,
"scripts": { "scripts": {
"dev": "astro dev", "dev": "astro dev",
@ -11,8 +11,10 @@
"astro": "astro" "astro": "astro"
}, },
"dependencies": { "dependencies": {
"@astrojs/sitemap": "^1.2.1", "@astrojs/check": "^0.3.3",
"astro": "^2.8.0", "@astrojs/sitemap": "^3.0.3",
"iconoir": "^6.1.0" "astro": "^4.0.7",
"iconoir": "^6.1.0",
"typescript": "^5.3.3"
} }
} }

View file

@ -42,18 +42,20 @@ const fulllink = `/${slug}`
width: 200px; width: 200px;
} }
li > a { li > a {
display: inline-flex;
color: white; color: white;
text-decoration: none; text-decoration: none;
justify-content: center; justify-content: center;
align-items: center; align-items: flex-end;
font-size: 1.4em; font-size: 1.4em;
height: 100%; height: 100%;
font-weight: bold; font-weight: bold;
gap: 0.2em;
} }
li > a:hover { li > a:hover {
color: var(--c-purplepink); color: var(--c-purplepink);
} }
.current { .current {
color: var(--c-darkpurple); color: var(--c-darkpurple) !important;
} }
</style> </style>

View file

@ -2,17 +2,17 @@
{ {
"link": "/", "link": "/",
"text": "Home", "text": "Home",
"icon": "iconoir-home-alt" "icon": "iconoir-home"
}, },
{ {
"link": "/servants", "link": "/servants",
"text": "Servants", "text": "Servants",
"icon": "iconoir-database-script" "icon": "iconoir-task-list"
}, },
{ {
"link": "/ta-collection", "link": "/ta-collection",
"text": "TA Collection", "text": "TA Collection",
"icon": "iconoir-db" "icon": "iconoir-database"
}, },
{ {
"link": "/blog", "link": "/blog",

View file

@ -1,5 +1,4 @@
export default { export default {
site: 'staging.firq.dev',
puppeteerOptions: { puppeteerOptions: {
args: ["--no-sandbox", "--disable-setuid-sandbox"], args: ["--no-sandbox", "--disable-setuid-sandbox"],
}, },
@ -7,6 +6,5 @@ export default {
budget: 90, budget: 90,
buildStatic: true buildStatic: true
}, },
auth: { username: "staging", password: "staging" },
outputPath: "unlighthouse-reports", outputPath: "unlighthouse-reports",
} }