Migrazione pipeline da GitLab a Forgejo Actions
This commit is contained in:
parent
2d6cd06be0
commit
6cd72706d6
|
|
@ -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!"
|
||||||
|
|
@ -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
|
|
||||||
|
|
@ -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
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue