Skip to content

az-swa-deploy

az-swa-deploy #16

Workflow file for this run

name: ssg
on:
# schedule:
# - cron: "30 4 * * *"
workflow_dispatch:
env:
SSHSTATS_BACKEND: "https://monkfish-app-ss3gb.ondigitalocean.app"
SSHSTATS_NUXT_PUBLIC_BASE_URL: "http://localhost:65000"
jobs:
generate-website:
runs-on: ubuntu-22.04
services:
data-server:
image: nginx:1.27.1
ports:
- 65000:80
volumes:
- ${{github.workspace}}/nginx:/usr/share/nginx/html
steps:
- name: checkout frontend repo
uses: actions/checkout@v4
- name: setup node
uses: actions/setup-node@v4
with:
node-version: "22.6.0"
- name: unpack nodenames
run: |
SSHSTATS_NODENAMES=$(jq -r '.[]' fe/assets/nodenames.json | tr '\n' ' ')
echo "SSHSTATS_NODENAMES=$SSHSTATS_NODENAMES" >> "$GITHUB_ENV"
- name: download attempts data
run: |
for nodename in $SSHSTATS_NODENAMES; do
echo "Downloading $nodename.json"
curl -v \
-H "${{ secrets.SSHSTATS_API_AUTH_KEY }}: ${{ secrets.SSHSTATS_API_AUTH_VALUE }}" \
--output-dir fe/data/logins \
-o "$nodename.json" \
"${{ env.SSHSTATS_BACKEND }}/stats/$nodename"
done
- name: store attempts data
uses: actions/upload-artifact@v4
with:
name: attempts-data
path: |
fe/data/logins/*.json
- name: move attempts data
working-directory: ./fe/data
run: |
ls -l ${{github.workspace}}/nginx
mkdir -p ${{github.workspace}}/nginx/login
cp -v -R logins ${{github.workspace}}/nginx/login
- name: try attempts data
run: |
curl -v http://localhost:65000/logins/controlplane-1.json
- name: configure nuxt
run: |
echo "NUXT_PUBLIC_BASE_URL=${{ env.SSHSTATS_NUXT_PUBLIC_BASE_URL }}" >> fe/.env
- name: npm ci
working-directory: ./fe
run: |
npm ci
- name: nuxt generate
working-directory: ./fe
run: |
npm run generate
- name: store static site
uses: actions/upload-artifact@v4
with:
name: ssg-data
path: |
fe/.output/public/