Migrazione pipeline da GitLab a Forgejo Actions

This commit is contained in:
DFFM-maker 2026-01-02 12:51:20 +01:00
parent 2d6cd06be0
commit 6cd72706d6
3 changed files with 47 additions and 48 deletions

46
.github/workflows/deploy.yml vendored Normal file
View File

@ -0,0 +1,46 @@
name: Deploy Docusaurus
on:
push:
branches:
- main # Esegue il deploy solo quando pushi su main
jobs:
build-and-deploy:
# ⚠️ FONDAMENTALE: Questa label deve combaciare con quella del tuo Runner
runs-on: docker
# Usiamo un container Node per costruire il sito (come facevi su GitLab)
container:
image: node:20-bookworm
steps:
- name: Checkout del codice
uses: actions/checkout@v4
# Installa le dipendenze
# Nota: Se nel progetto hai yarn.lock, usa 'yarn install' invece di 'npm ci'
- name: Installazione Dipendenze
run: npm ci
# Costruisce il sito (crea la cartella 'build')
- name: Build Docusaurus
run: npm run build
# FASE DI DEPLOY (Sostituisce la parte 'pages' di GitLab)
# Invece di usare gli artifacts di GitLab, copiamo i file fisicamente sul server
- name: Pubblica sul Server
run: |
# Questa cartella /deploy/docs è il volume condiviso che abbiamo creato nel docker-compose
TARGET_DIR="/deploy/docs"
echo "Inizio deploy su $TARGET_DIR..."
# Pulisce la cartella di destinazione (rimuove il vecchio sito)
rm -rf $TARGET_DIR/*
# Copia il nuovo sito appena compilato
# (Docusaurus mette tutto in 'build', noi lo spostiamo nella cartella pubblica)
cp -r build/* $TARGET_DIR/
echo "Deploy completato con successo!"

View File

@ -1,47 +0,0 @@
# Usa un'immagine Node.js per tutti i job
image: node:lts-slim
# Definisci le fasi della pipeline
stages:
- build
- deploy
# Memorizza nella cache node_modules per velocizzare le build successive
cache:
key:
files:
- yarn.lock
paths:
- node_modules/
# Job per installare le dipendenze e costruire il sito
build_site:
stage: build
script:
# Se usi npm, cambia i comandi in "npm install" e "npm run build"
- yarn install
- yarn build
artifacts:
paths:
# Docusaurus crea il sito nella cartella "build"
- build/
# Job per pubblicare il sito su GitLab Pages
pages:
stage: deploy
# Questa riga è FONDAMENTALE: dice a GitLab di usare
# SOLO i runner che hanno il tag "docusaurus".
tags:
- docusaurus
script:
# Pulisci la cartella public (potrebbe contenere vecchi file)
- rm -rf public
# Sposta i file costruiti dal job precedente nella cartella public
- mv build public
artifacts:
paths:
# Questo è il contenuto che GitLab Pages pubblicherà
- public
rules:
# Esegui questo job solo sui commit nel branch principale
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH

View File

@ -6,7 +6,7 @@ pagination_prev: null
hide_table_of_contents: TRUE hide_table_of_contents: TRUE
--- ---
# Documentazione Tecnica Flowpack MachineAnalytics & SCADA # Documentazione Tecnica Flowpack MachineAnalytics & SCADA FORGEJIO
--- ---