Compare commits
140 commits
Author | SHA1 | Date | |
---|---|---|---|
f5bb4bf78e | |||
5181739230 | |||
449006320c | |||
483b2cc84b | |||
9daf38e537 | |||
da8564f01a | |||
dd9d0a662f | |||
2a258ac60b | |||
0494694cc9 | |||
764c5750a6 | |||
b7db7dd512 | |||
fcd05dcb09 | |||
7ed78bceff | |||
e406bd8764 | |||
064eb975b9 | |||
d7eb7e9c49 | |||
3347d2eaf2 | |||
3dbdca627e | |||
f2ff4e47cf | |||
340f39710e | |||
4b3a8898f6 | |||
b03eba2bd5 | |||
336c0c0db5 | |||
11b12e55b8 | |||
bb0fe0bece | |||
b4702278d2 | |||
9a84cf7fc2 | |||
eeabc4e66f | |||
be896ca00c | |||
ed9af00592 | |||
141b1cffc6 | |||
e8e6733c9f | |||
0cac39ba78 | |||
76c723d516 | |||
a24a7af3d8 | |||
91f8c1834a | |||
719a9ff3de | |||
8e4b169404 | |||
af83dfa7d8 | |||
5d1da2d3d8 | |||
cb8b53ea63 | |||
71a6ea0051 | |||
2b2ca46214 | |||
df9337c684 | |||
7e614b89a8 | |||
76e0674098 | |||
1592815835 | |||
736abd6a51 | |||
5bfdb277fc | |||
eaab523a2a | |||
ce6c660a76 | |||
353995a3e0 | |||
79fd73c368 | |||
58a49fe3fa | |||
273cd7b9b8 | |||
639ee165ba | |||
4b878fb113 | |||
48bbeac054 | |||
6d2cc3b996 | |||
3c97d6687c | |||
ac7e9f089e | |||
dc59b930ee | |||
aec4660bec | |||
709f459963 | |||
2a07a4ac19 | |||
4d5bf51566 | |||
dc6366703b | |||
c7e03bd105 | |||
72f6c3818b | |||
3086120b66 | |||
c1691a22d7 | |||
e2328bde46 | |||
9243b0cd5a | |||
aba414e68d | |||
c97469662d | |||
22f4a5f0b8 | |||
16eac7e22c | |||
69643c74f2 | |||
b73bda3a78 | |||
1e672c1a10 | |||
8a7abf0414 | |||
affa1b5fc0 | |||
e5ca5eaeb1 | |||
316e7c336b | |||
dfd29ddc94 | |||
d509e40f2a | |||
5cbf9e7633 | |||
84912239a2 | |||
41273a8c94 | |||
9d4fab7c56 | |||
edce15b262 | |||
8462755842 | |||
adefc49065 | |||
139a768168 | |||
b3a820639a | |||
c9a286bffd | |||
39cfe4392c | |||
c50630745d | |||
f7d4e18989 | |||
90eb5ff3e1 | |||
8835d0047e | |||
0b18f24a4a | |||
89b6895395 | |||
cbd4d56078 | |||
83661b9d38 | |||
73d0debc1e | |||
c4670958fe | |||
437c746148 | |||
2c2f20f1c4 | |||
61e8f68458 | |||
d5448a9680 | |||
8ca2ec7e46 | |||
1728588e8b | |||
4ea64ca931 | |||
7839a52b10 | |||
cb14777a4f | |||
bbb6cc11c2 | |||
9ec6d4a83b | |||
2c9c2854be | |||
9f194cc052 | |||
d167acce5c | |||
f947437ffd | |||
60d08dbd81 | |||
531cb89fac | |||
50687de034 | |||
063c9eda09 | |||
8ae8efe2e8 | |||
26ea489fd9 | |||
399ff91af4 | |||
f05f1659b0 | |||
d008b759c1 | |||
b8dd3d41db | |||
e8bed584a5 | |||
38cc096e7e | |||
84b43872d1 | |||
5edeaf9833 | |||
13a48becd6 | |||
ee1d26a84d | |||
6f9d4c71bb | |||
9256f1717c |
70
.forgejo/workflows/build_preview.yml
Normal file
|
@ -0,0 +1,70 @@
|
|||
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: https://code.forgejo.org/actions/forgejo-release@v1
|
||||
with:
|
||||
direction: upload
|
||||
url: https://forgejo.neshweb.net
|
||||
release-dir: release
|
||||
token: ${{ secrets.FORGEJO_TOKEN }}
|
||||
tag: ${{ github.ref_name }}
|
||||
prerelease: true
|
||||
|
||||
# doesn't work atm
|
||||
# unlighthouse:
|
||||
# needs: [publish]
|
||||
# if: success()
|
||||
# runs-on: docker
|
||||
# container: registry.gitlab.com/gitlab-ci-utils/lighthouse:latest
|
||||
# services:
|
||||
# website:
|
||||
# image: forgejo.neshweb.net/firq/firq-dev-website:preview
|
||||
# steps:
|
||||
# - name: Install Dependencies
|
||||
# run: npm install @unlighthouse/cli puppeteer
|
||||
# - name: Run unlighthouse
|
||||
# run: node_modules/.bin/unlighthouse-ci
|
||||
# - name: Upload reports
|
||||
# uses: actions/upload-artifact@v3
|
||||
# with:
|
||||
# name: unlighthouse-reports
|
||||
# path: unlighthouse-reports/
|
49
.forgejo/workflows/build_release.yml
Normal file
|
@ -0,0 +1,49 @@
|
|||
on:
|
||||
push:
|
||||
tags:
|
||||
- '[0-9]+\.[0-9]+\.[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:latest
|
||||
|
||||
release:
|
||||
needs: [build-site]
|
||||
if: success()
|
||||
runs-on: docker
|
||||
steps:
|
||||
- name: Release New Version
|
||||
uses: https://code.forgejo.org/actions/forgejo-release@v1
|
||||
with:
|
||||
direction: upload
|
||||
url: https://forgejo.neshweb.net
|
||||
release-dir: release
|
||||
token: ${{ secrets.FORGEJO_TOKEN }}
|
||||
tag: ${{ github.ref_name }}
|
16
.forgejo/workflows/linting.yml
Normal 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
|
98
.forgejo/workflows/unlighthouse.yml
Normal file
|
@ -0,0 +1,98 @@
|
|||
on:
|
||||
push:
|
||||
tags:
|
||||
- '[0-9]+\.[0-9]+\.[0-9]+unlighthouse[0-9]+'
|
||||
- '[0-9]+\.[0-9]+\.[0-9]+ulh[0-9]+'
|
||||
|
||||
jobs:
|
||||
unlighthouse:
|
||||
runs-on: docker
|
||||
container: forgejo.neshweb.net/ci-docker-images/unlighthouse:latest
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: https://code.forgejo.org/actions/checkout@v3
|
||||
- name: Run unlighthouse
|
||||
run: unlighthouse-ci --site "https://preview.firq.dev/"
|
||||
- name: Prepare artifacts
|
||||
run: cp serve.json unlighthouse-reports
|
||||
- name: Upload reports
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: unlighthouse-reports
|
||||
path: unlighthouse-reports/
|
||||
|
||||
deploy-unlighthouse-files:
|
||||
needs: [ unlighthouse ]
|
||||
if: success()
|
||||
runs-on: docker
|
||||
env:
|
||||
DEPLOY_USER: ${{ secrets.DEPLOY_USER }}
|
||||
DEPLOY_HOST: ${{ secrets.DEPLOY_HOST }}
|
||||
steps:
|
||||
- name: Install and update ssh + rsync
|
||||
run: |
|
||||
which rsync || ( apt update -y && apt install rsync -y)
|
||||
which ssh-agent || ( apt update -y && apt install openssh-client -y)
|
||||
- name: Downloading static site artifacts
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: unlighthouse-reports
|
||||
path: public
|
||||
- name: Install SSH Key
|
||||
uses: https://github.com/shimataro/ssh-key-action@v2
|
||||
with:
|
||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
known_hosts: unnecessary
|
||||
- name: Adding Known Hosts
|
||||
run: ssh-keyscan -H ${{ secrets.DEPLOY_HOST }} >> ~/.ssh/known_hosts
|
||||
- name: Stop screen session, delete old files
|
||||
uses: https://github.com/appleboy/ssh-action@master
|
||||
with:
|
||||
host: ${{ env.DEPLOY_HOST }}
|
||||
username: ${{ env.DEPLOY_USER }}
|
||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
script: |
|
||||
screen -X -S firq_dev-unlighthouse kill
|
||||
rm -r -f firq_dev/unlighthouse/*
|
||||
- name: Copy files using rsync
|
||||
run: rsync -az --stats public/* ${{ env.DEPLOY_USER }}@${{ env.DEPLOY_HOST }}:~/firq_dev/unlighthouse
|
||||
- name: Check files on deploy target
|
||||
uses: https://github.com/appleboy/ssh-action@master
|
||||
with:
|
||||
host: ${{ env.DEPLOY_HOST }}
|
||||
username: ${{ env.DEPLOY_USER }}
|
||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
script: |
|
||||
cd firq_dev
|
||||
find unlighthouse -maxdepth 1 -printf "%p\n"
|
||||
|
||||
deploy-unlighthouse-site:
|
||||
needs: [ deploy-unlighthouse-files ]
|
||||
if: success()
|
||||
runs-on: docker
|
||||
env:
|
||||
DEPLOY_USER: ${{ secrets.DEPLOY_USER }}
|
||||
DEPLOY_HOST: ${{ secrets.DEPLOY_HOST }}
|
||||
steps:
|
||||
- name: Install and update ssh + rsync
|
||||
run: |
|
||||
which rsync || ( apt update -y && apt install rsync -y)
|
||||
which ssh-agent || ( apt update -y && apt install openssh-client -y)
|
||||
- name: Install SSH Key
|
||||
uses: https://github.com/shimataro/ssh-key-action@v2
|
||||
with:
|
||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
known_hosts: unnecessary
|
||||
- name: Adding Known Hosts
|
||||
run: ssh-keyscan -H ${{ secrets.DEPLOY_HOST }} >> ~/.ssh/known_hosts
|
||||
- name: Start new screen session
|
||||
uses: https://github.com/appleboy/ssh-action@master
|
||||
with:
|
||||
host: ${{ env.DEPLOY_HOST }}
|
||||
username: ${{ env.DEPLOY_USER }}
|
||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
script: |
|
||||
PATH="$HOME/.local/bin:$PATH"
|
||||
screen -ls | grep 'firq_dev-unlighthouse' | awk '{print $1}' | xargs -I % -t screen -X -S % quit
|
||||
cd firq_dev
|
||||
screen -S firq_dev-unlighthouse -dm serve unlighthouse/ -p ${{ secrets.UNLIGHTHOUSE_DEPLOY_PORT }}
|
|
@ -2,6 +2,7 @@ stages:
|
|||
- validate
|
||||
- build
|
||||
- deploy
|
||||
- benchmark
|
||||
- post_deploy
|
||||
- scripts
|
||||
|
||||
|
@ -60,11 +61,11 @@ deploy-site:
|
|||
- echo "Getting artifacts"
|
||||
- ls public
|
||||
- echo "Stopping screen session, cleaning"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -X -S website-firq-npx kill; rm -r -f public/*;"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -X -S firq_dev-public kill; rm -r -f firq_dev/public/*;"
|
||||
- echo "Copying to proxmox machine"
|
||||
- rsync -az --stats public $DEPLOY_USER@$DEPLOY_HOST:~/.
|
||||
- rsync -az --stats public/* $DEPLOY_USER@$DEPLOY_HOST:~/firq_dev/public
|
||||
- echo "Restarting screen session"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "find maintenance public -maxdepth 1 -printf '%p\n'; screen -S website-firq-npx -dm npx serve public/ -p 9000 -c serve.json"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST 'PATH="$HOME/.local/bin:$PATH"; cd firq_dev; find maintenance public -maxdepth 1 -printf "%p\n"; screen -S firq_dev-public -dm serve public/ -p 9000'
|
||||
- echo "Website is up on https://firq.dev/"
|
||||
|
||||
deploy-testing:
|
||||
|
@ -79,13 +80,52 @@ deploy-testing:
|
|||
- echo "Getting artifacts"
|
||||
- ls public
|
||||
- echo "Stopping screen session, cleaning"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -X -S staging-firq-npx kill; rm -r -f staging/*;"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -X -S firq_dev-staging kill; rm -r -f firq_dev/staging/*;"
|
||||
- echo "Copying to proxmox machine"
|
||||
- rsync -az --stats public/* $DEPLOY_USER@$DEPLOY_HOST:~/staging
|
||||
- rsync -az --stats public/* $DEPLOY_USER@$DEPLOY_HOST:~/firq_dev/staging
|
||||
- echo "Restarting screen session"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "find staging -maxdepth 1 -printf '%p\n'; screen -S staging-firq-npx -dm npx serve staging/ -p 9100 -c serve.json"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST 'PATH="$HOME/.local/bin:$PATH"; cd firq_dev; find staging -maxdepth 1 -printf "%p\n"; screen -S firq_dev-staging -dm serve staging/ -p 9100'
|
||||
- echo "Staging environment is up!"
|
||||
|
||||
unlighthouse:
|
||||
image: registry.gitlab.com/gitlab-ci-utils/lighthouse:latest
|
||||
stage: benchmark
|
||||
when: manual
|
||||
except:
|
||||
- main
|
||||
- tags
|
||||
before_script:
|
||||
- npm install @unlighthouse/cli puppeteer
|
||||
- mkdir unlighthouse-reports
|
||||
script:
|
||||
- node_modules/.bin/unlighthouse-ci
|
||||
- cp public/serve.json unlighthouse-reports
|
||||
artifacts:
|
||||
paths:
|
||||
- unlighthouse-reports
|
||||
expire_in: 1 day
|
||||
|
||||
unlighthouse-publish:
|
||||
stage: benchmark
|
||||
when: on_success
|
||||
needs:
|
||||
- unlighthouse
|
||||
except:
|
||||
- tags
|
||||
- main
|
||||
before_script:
|
||||
- *ssh_default
|
||||
script:
|
||||
- echo "Getting artifacts"
|
||||
- ls unlighthouse-reports
|
||||
- echo "Stopping screen session, cleaning"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -X -S firq_dev-unlighthouse kill; rm -r -f firq_dev/unlighthouse/*;"
|
||||
- echo "Copying to proxmox machine"
|
||||
- rsync -az --stats unlighthouse-reports/* $DEPLOY_USER@$DEPLOY_HOST:~/firq_dev/unlighthouse
|
||||
- echo "Restarting screen session"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST 'PATH="$HOME/.local/bin:$PATH"; cd firq_dev; find unlighthouse -maxdepth 1 -printf "%p\n"; screen -S firq_dev-unlighthouse -dm serve unlighthouse/ -p 9101'
|
||||
- echo "Unlighthouse results are up!"
|
||||
|
||||
success_notification:
|
||||
stage: post_deploy
|
||||
before_script:
|
||||
|
@ -123,9 +163,9 @@ maintenance-mode:
|
|||
- main
|
||||
script:
|
||||
- echo "Stopping screen session"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -X -S website-firq-npx kill;"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -X -S firq_dev-public kill;" || true
|
||||
- echo "Enabeling maintenance mode"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -S website-firq-npx -dm npx serve maintenance/ -p 9000 -c serve.json"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST 'PATH="$HOME/.local/bin:$PATH"; screen -S firq_dev-maintenance -dm serve firq_dev/maintenance/ -p 9000'
|
||||
- echo "Maintenance Website is up on https://firq.dev/"
|
||||
|
||||
redeploy-site:
|
||||
|
@ -139,9 +179,9 @@ redeploy-site:
|
|||
- *ssh_default
|
||||
script:
|
||||
- echo "Stopping screen session"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -X -S website-firq-npx kill" || true
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -X -S firq_dev-public kill" || true
|
||||
- echo "Restarting screen session"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -S website-firq-npx -dm npx serve public/ -p 9000 -c serve.json"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST 'PATH="$HOME/.local/bin:$PATH"; screen -S firq_dev-public -dm serve firq_dev/public/ -p 9000'
|
||||
- echo "Website is up on https://firq.dev/"
|
||||
|
||||
redeploy-staging:
|
||||
|
@ -154,9 +194,24 @@ redeploy-staging:
|
|||
- *ssh_default
|
||||
script:
|
||||
- echo "Stopping screen session"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -X -S staging-firq-npx kill" || true
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -X -S firq_dev-staging kill" || true
|
||||
- echo "Restarting screen session"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -S staging-firq-npx -dm npx serve staging/ -p 9100 -c serve.json"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST 'PATH="$HOME/.local/bin:$PATH"; screen -S firq_dev-staging -dm serve firq_dev/staging/ -p 9100'
|
||||
- echo "Staging environment is up!"
|
||||
|
||||
redeploy-unlighthouse:
|
||||
stage: scripts
|
||||
when: manual
|
||||
except:
|
||||
- main
|
||||
- tags
|
||||
before_script:
|
||||
- *ssh_default
|
||||
script:
|
||||
- echo "Stopping screen session"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -X -S firq_dev-unlighthouse kill" || true
|
||||
- echo "Restarting screen session"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST 'PATH="$HOME/.local/bin:$PATH"; screen -S firq_dev-unlighthouse -dm serve firq_dev/unlighthouse/ -p 9101'
|
||||
- echo "Staging environment is up!"
|
||||
|
||||
maintenance-deploy:
|
||||
|
@ -169,7 +224,7 @@ maintenance-deploy:
|
|||
- *ssh_default
|
||||
script:
|
||||
- echo "Stopping screen session"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -X -S website-firq-npx kill;" || true
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -X -S firq_dev-public kill;" || true
|
||||
- echo "Enabeling maintenance mode"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST "screen -S website-firq-npx -dm npx serve maintenance/ -p 9000 -c serve.json"
|
||||
- ssh $DEPLOY_USER@$DEPLOY_HOST 'PATH="$HOME/.local/bin:$PATH"; screen -S firq_dev-maintenance -dm serve firq_dev/maintenance/ -p 9000'
|
||||
- echo "Maintenance Website is up on https://firq.dev/"
|
||||
|
|
|
@ -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
|
12
.vscode/settings.json
vendored
Normal file
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"files.exclude": {
|
||||
"**/.git": true,
|
||||
"**/.svn": true,
|
||||
"**/.hg": true,
|
||||
"**/CVS": true,
|
||||
"**/.DS_Store": true,
|
||||
"**/Thumbs.db": true,
|
||||
"**/__pycache__": true
|
||||
},
|
||||
"hide-files.files": []
|
||||
}
|
16
Dockerfile
Normal file
|
@ -0,0 +1,16 @@
|
|||
FROM node:lts AS build
|
||||
WORKDIR /app
|
||||
COPY . .
|
||||
RUN npm i
|
||||
RUN npm run build
|
||||
|
||||
FROM forgejo.neshweb.net/ci-docker-images/website-serve:latest AS runtime
|
||||
|
||||
COPY --from=build /app/dist /public
|
||||
COPY --from=build /app/serve.json /public/serve.json
|
||||
RUN rm -r /public/data/
|
||||
|
||||
ENV PORT 8081
|
||||
EXPOSE 8081
|
||||
|
||||
CMD [ "serve", "public/", "-p", "8081" ]
|
|
@ -1,14 +1,14 @@
|
|||
import { defineConfig } from 'astro/config';
|
||||
|
||||
// https://astro.build/config
|
||||
import sitemap from "@astrojs/sitemap";
|
||||
import mdx from "@astrojs/mdx";
|
||||
|
||||
// https://astro.build/config
|
||||
export default defineConfig({
|
||||
sitemap: true,
|
||||
base: '/',
|
||||
outDir: 'public',
|
||||
outDir: 'dist',
|
||||
publicDir: 'static',
|
||||
site: 'https://firq.dev/',
|
||||
integrations: [sitemap()]
|
||||
integrations: [sitemap(), mdx()]
|
||||
});
|
12086
package-lock.json
generated
20
package.json
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "@firq/fgosite",
|
||||
"type": "module",
|
||||
"version": "0.1.3",
|
||||
"version": "0.1.27",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "astro dev",
|
||||
|
@ -11,8 +11,18 @@
|
|||
"astro": "astro"
|
||||
},
|
||||
"dependencies": {
|
||||
"@astrojs/sitemap": "^1.2.1",
|
||||
"astro": "^2.8.0",
|
||||
"iconoir": "^6.1.0"
|
||||
}
|
||||
"@astro-community/astro-embed-youtube": "^0.4.3",
|
||||
"@astrojs/check": "^0.3.3",
|
||||
"@astrojs/mdx": "^2.0.3",
|
||||
"@astrojs/sitemap": "^3.0.3",
|
||||
"astro": "^4.2.1",
|
||||
"autoprefixer": "^10.4.16",
|
||||
"iconoir": "^7.2.0",
|
||||
"postcss-preset-env": "^9.3.0",
|
||||
"typescript": "^5.3.3"
|
||||
},
|
||||
"browserslist": [
|
||||
"last 2 versions",
|
||||
">0.5% and not dead"
|
||||
]
|
||||
}
|
||||
|
|
13
postcss.config.cjs
Normal file
|
@ -0,0 +1,13 @@
|
|||
module.exports = {
|
||||
plugins: {
|
||||
"postcss-preset-env": {
|
||||
autoprefixer: { flexbox: "no-2009" },
|
||||
stage: 2,
|
||||
features: {
|
||||
"custom-properties": false,
|
||||
"custom-media-queries": true,
|
||||
"nesting-rules": true
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
30
serve.json
|
@ -1,14 +1,28 @@
|
|||
{
|
||||
"directoryListing": ["/!assets/**"],
|
||||
"cleanUrls": true,
|
||||
"directoryListing": false,
|
||||
"etag": true,
|
||||
"headers": [
|
||||
{
|
||||
"source": "**/*.@(jpg|jpeg|gif|png|webp)",
|
||||
"headers": [
|
||||
{
|
||||
"key": "Cache-Control",
|
||||
"value": "no-cache"
|
||||
}
|
||||
]
|
||||
"source" : "**/*.html",
|
||||
"headers" : [{
|
||||
"key" : "Cache-Control",
|
||||
"value" : "no-cache"
|
||||
}]
|
||||
},
|
||||
{
|
||||
"source" : "**/*.css",
|
||||
"headers" : [{
|
||||
"key" : "Cache-Control",
|
||||
"value" : "max-age=31536000"
|
||||
}]
|
||||
},
|
||||
{
|
||||
"source" : "**/*.@(jpg|jpeg|gif|png|webp|svg)",
|
||||
"headers" : [{
|
||||
"key" : "Cache-Control",
|
||||
"value" : "max-age=31536000"
|
||||
}]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
Before ![]() (image error) Size: 81 KiB After ![]() (image error) Size: 81 KiB ![]() ![]() |
BIN
src/assets/ce/2030.png
Normal file
After ![]() (image error) Size: 38 KiB |
BIN
src/assets/ce/500.png
Normal file
After ![]() (image error) Size: 34 KiB |
BIN
src/assets/ce/black_grail.png
Normal file
After ![]() (image error) Size: 33 KiB |
BIN
src/assets/ce/bond-ce/bride.png
Normal file
After ![]() (image error) Size: 18 KiB |
BIN
src/assets/ce/bond-ce/castoria.png
Normal file
After ![]() (image error) Size: 16 KiB |
BIN
src/assets/ce/bond-ce/chiron.png
Normal file
After ![]() (image error) Size: 22 KiB |
BIN
src/assets/ce/bond-ce/crane.png
Normal file
After ![]() (image error) Size: 19 KiB |
BIN
src/assets/ce/bond-ce/douman.png
Normal file
After ![]() (image error) Size: 24 KiB |
BIN
src/assets/ce/bond-ce/gogh.png
Normal file
After ![]() (image error) Size: 23 KiB |
BIN
src/assets/ce/bond-ce/himiko.png
Normal file
After ![]() (image error) Size: 14 KiB |
BIN
src/assets/ce/bond-ce/ibaraki.png
Normal file
After ![]() (image error) Size: 20 KiB |
BIN
src/assets/ce/bond-ce/jane.png
Normal file
After ![]() (image error) Size: 22 KiB |
BIN
src/assets/ce/bond-ce/koyanlight.png
Normal file
After ![]() (image error) Size: 21 KiB |
BIN
src/assets/ce/bond-ce/liz.png
Normal file
After ![]() (image error) Size: 23 KiB |
BIN
src/assets/ce/bond-ce/merlin.png
Normal file
After ![]() (image error) Size: 20 KiB |
BIN
src/assets/ce/bond-ce/oberon.png
Normal file
After ![]() (image error) Size: 18 KiB |
BIN
src/assets/ce/bond-ce/reines.png
Normal file
After ![]() (image error) Size: 20 KiB |
BIN
src/assets/ce/bond-ce/santagale.png
Normal file
After ![]() (image error) Size: 20 KiB |
BIN
src/assets/ce/bond-ce/scathach.png
Normal file
After ![]() (image error) Size: 18 KiB |
BIN
src/assets/ce/bond-ce/sherlock.png
Normal file
After ![]() (image error) Size: 21 KiB |
BIN
src/assets/ce/bond-ce/skadi.png
Normal file
After ![]() (image error) Size: 21 KiB |
BIN
src/assets/ce/bond-ce/taigong.png
Normal file
After ![]() (image error) Size: 20 KiB |
BIN
src/assets/ce/bond-ce/tamamo.png
Normal file
After ![]() (image error) Size: 23 KiB |
BIN
src/assets/ce/bond-ce/waver.png
Normal file
After ![]() (image error) Size: 17 KiB |
BIN
src/assets/ce/bond-ce/wu.png
Normal file
After ![]() (image error) Size: 23 KiB |
BIN
src/assets/ce/devilish_bodhisattva.png
Normal file
After ![]() (image error) Size: 32 KiB |
BIN
src/assets/ce/kaleidoscope.png
Normal file
After ![]() (image error) Size: 35 KiB |
BIN
src/assets/ce/maidens_teachings.png
Normal file
After ![]() (image error) Size: 32 KiB |
BIN
src/assets/ce/merciless_one.png
Normal file
After ![]() (image error) Size: 38 KiB |
BIN
src/assets/ce/mlb.png
Normal file
After ![]() (image error) Size: 7.7 KiB |
Before ![]() (image error) Size: 10 KiB After ![]() (image error) Size: 10 KiB ![]() ![]() |
BIN
src/assets/ce/outrage.png
Normal file
After ![]() (image error) Size: 36 KiB |
BIN
src/assets/ce/ox-demon.png
Normal file
After ![]() (image error) Size: 41 KiB |
BIN
src/assets/ce/prisma_cosmos.png
Normal file
After ![]() (image error) Size: 36 KiB |
BIN
src/assets/ce/vessel.png
Normal file
After ![]() (image error) Size: 36 KiB |
Before ![]() (image error) Size: 7 KiB After ![]() (image error) Size: 7 KiB ![]() ![]() |
BIN
src/assets/favourites/scathach.png
Normal file
After ![]() (image error) Size: 554 KiB |
BIN
src/assets/favourites/skadi.png
Normal file
After ![]() (image error) Size: 565 KiB |
Before ![]() (image error) Size: 9 KiB After ![]() (image error) Size: 9 KiB ![]() ![]() |
Before (image error) Size: 3.2 KiB After (image error) Size: 3.2 KiB |
Before ![]() (image error) Size: 16 KiB After ![]() (image error) Size: 16 KiB ![]() ![]() |
BIN
src/assets/okita.png
Normal file
After ![]() (image error) Size: 20 KiB |
Before (image error) Size: 3.2 KiB After (image error) Size: 3.2 KiB |
Before ![]() (image error) Size: 152 KiB After ![]() (image error) Size: 152 KiB ![]() ![]() |
BIN
src/assets/servant/bride_03.png
Normal file
After ![]() (image error) Size: 97 KiB |
BIN
src/assets/servant/castoria_01.png
Normal file
After ![]() (image error) Size: 63 KiB |
BIN
src/assets/servant/castoria_02.png
Normal file
After ![]() (image error) Size: 70 KiB |
BIN
src/assets/servant/chiron_01.png
Normal file
After ![]() (image error) Size: 58 KiB |
BIN
src/assets/servant/crane_01.png
Normal file
After ![]() (image error) Size: 52 KiB |
BIN
src/assets/servant/douman_01.png
Normal file
After ![]() (image error) Size: 76 KiB |
BIN
src/assets/servant/gogh_01.png
Normal file
After ![]() (image error) Size: 75 KiB |
BIN
src/assets/servant/himiko_03.png
Normal file
After ![]() (image error) Size: 93 KiB |
BIN
src/assets/servant/ibaraki_02.png
Normal file
After ![]() (image error) Size: 72 KiB |
BIN
src/assets/servant/jane_02.png
Normal file
After ![]() (image error) Size: 73 KiB |
BIN
src/assets/servant/koyanlight_01.png
Normal file
After ![]() (image error) Size: 84 KiB |
BIN
src/assets/servant/liz_01.png
Normal file
After ![]() (image error) Size: 88 KiB |
BIN
src/assets/servant/merlin_01.png
Normal file
After ![]() (image error) Size: 56 KiB |
BIN
src/assets/servant/merlin_03.png
Normal file
After ![]() (image error) Size: 75 KiB |
BIN
src/assets/servant/oberon_02.png
Normal file
After ![]() (image error) Size: 69 KiB |
BIN
src/assets/servant/reines_01.png
Normal file
After ![]() (image error) Size: 52 KiB |
BIN
src/assets/servant/santagale_01.png
Normal file
After ![]() (image error) Size: 88 KiB |
BIN
src/assets/servant/scathach_03.png
Normal file
After ![]() (image error) Size: 69 KiB |
BIN
src/assets/servant/sherlock_03.png
Normal file
After ![]() (image error) Size: 44 KiB |
BIN
src/assets/servant/skadi_01.png
Normal file
After ![]() (image error) Size: 66 KiB |
BIN
src/assets/servant/skadi_02.png
Normal file
After ![]() (image error) Size: 66 KiB |
BIN
src/assets/servant/skadi_03.png
Normal file
After ![]() (image error) Size: 77 KiB |
BIN
src/assets/servant/taigong_03.png
Normal file
After ![]() (image error) Size: 68 KiB |
BIN
src/assets/servant/tamamo_03.png
Normal file
After ![]() (image error) Size: 101 KiB |
BIN
src/assets/servant/waver_02.png
Normal file
After ![]() (image error) Size: 48 KiB |
BIN
src/assets/servant/wu_01.png
Normal file
After ![]() (image error) Size: 67 KiB |
Before ![]() (image error) Size: 52 KiB After ![]() (image error) Size: 52 KiB ![]() ![]() |
Before ![]() (image error) Size: 21 KiB After ![]() (image error) Size: 21 KiB ![]() ![]() |
Before ![]() (image error) Size: 12 KiB After ![]() (image error) Size: 12 KiB ![]() ![]() |
Before ![]() (image error) Size: 16 KiB After ![]() (image error) Size: 16 KiB ![]() ![]() |
Before ![]() (image error) Size: 6.9 KiB After ![]() (image error) Size: 6.9 KiB ![]() ![]() |
Before ![]() (image error) Size: 9.2 KiB After ![]() (image error) Size: 9.2 KiB ![]() ![]() |
Before ![]() (image error) Size: 11 KiB After ![]() (image error) Size: 11 KiB ![]() ![]() |
BIN
src/assets/ta_icons/___albion.webp
Normal file
After ![]() (image error) Size: 23 KiB |
BIN
src/assets/ta_icons/__albion.webp
Normal file
After ![]() (image error) Size: 17 KiB |
BIN
src/assets/ta_icons/abyssalworm.webp
Normal file
After ![]() (image error) Size: 1.2 KiB |
BIN
src/assets/ta_icons/albion.webp
Normal file
After ![]() (image error) Size: 12 KiB |
Before ![]() (image error) Size: 4.1 KiB After ![]() (image error) Size: 4.1 KiB ![]() ![]() |
Before ![]() (image error) Size: 4.4 KiB After ![]() (image error) Size: 4.4 KiB ![]() ![]() |
BIN
src/assets/ta_icons/beast_4_l.png
Normal file
After ![]() (image error) Size: 28 KiB |
Before ![]() (image error) Size: 4.2 KiB After ![]() (image error) Size: 4.2 KiB ![]() ![]() |
Before ![]() (image error) Size: 8.8 KiB After ![]() (image error) Size: 8.8 KiB ![]() ![]() |