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
|
||||
---
|
||||
|
||||
# Documentazione Tecnica – Flowpack MachineAnalytics & SCADA
|
||||
# Documentazione Tecnica – Flowpack MachineAnalytics & SCADA FORGEJIO
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue