diff --git a/README.md b/README.md index 0e4dcca..cef66ac 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,98 @@ -# deploy-dinamico +# Template di pubblicazione sito dinamico in PHP -Come effettuare il deploy di siti web dinamici \ No newline at end of file +> Dominio di output +> ```nomerepository-nomeutente.web.francescomancuso.it``` +> +> In futuro si potrà personalizzare + +## Descrizione + +Ogni repository, pubblica o privata, permette di effettuare il deploy del proprio sito web. Per farlo, è necessario seguire 3 semplici passaggi. + +Il funzionamento è quasi identico alle "GitHub Actions", le quali permettono di creare una pipeline di sviluppo CI/CD. Qui la pipeline CI/CD è stata implementata da zero, con personalizzazioni. + +## Come fare? + +1. Usare come template questa repository + +2. Caricare la root del sito web con ```index.php``` o ```index.html``` dentro la cartella radice ```/```. Puoi anche specificare una cartella diversa dal file di configurazione. + +3. Sarà presente insieme ai file della repository la cartelle ```/.gitea/workflows/deploy.yaml```. Questo rappresenta il file di configurazione per avviare il deploy. Di base è già configurato per pubblicare il sito web, ma puoi personalizzare dentro alcuni parametri: + +```yaml +name: Deploy +on: [push] + +jobs: + trigger: + runs-on: ubuntu-latest + steps: + - name: Build & Deploy + env: + REPO_NAME: ${{ gitea.event.repository.name }} + REPO_OWNER: ${{ gitea.repository_owner }} + # Imposta la cartella che conterrà la root del sito! + # Default "/" + # Con nome "nome_cartella" + ROOT_DIR: "/" + # Cosa stai andando a pubblicare? + # - pages sito web statico + # - dynamic sito web dinamico con PHP + TYPE: "dynamic" + JOB_TOKEN: ${{ gitea.token }} + run: | + curl -f -s -S -X -v POST http://gitea-webhook:9000/hooks/trigger-deploy \ + -H "Content-Type: application/json" \ + -d "{ + \"repository\": { \"name\": \"$REPO_NAME\" }, + \"owner\": { \"username\": \"$REPO_OWNER\" }, + \"root\": \"$ROOT_DIR\", + \"type\": \"$TYPE\", + \"token\": \"$JOB_TOKEN\" + }" +``` + +Puoi infatti cambiare la root del sito web per il deploy, modificando la variabile ```ROOT_DIR```, e puoi anche cambiare il tipo di deploy per la repository, modificando la variabile ```TYPE```. + +## Uso del Database (beta) + +Puoi collegare un DB con dati permanenti al tuo sito web in PHP. Per attivare il modulo, crea il file ```use_db.txt``` nella cartella radice. Ecco come leggere le variabili del DB e collegarti. + +```php +getMessage(), (int)$e->getCode()); +} +?> +``` + +Se necessario puoi popolare il DB utilizzando un file SQL, accedendo al link [phpmyadmin.vps.francescomancuso.it](https://phpmyadmin.vps.francescomancuso.it/) oppure effettuando un caricamento tramite PHP al primo avvio dell'applicazione. + +## Dati permanenti (beta) + +Se il sito web richiede di salvare dati permanenti (es. upload) che non possono essere scritti nel DB, puoi caricarli attraverso PHP nella cartella ```/var/www/data``` del container. Ecco un esempio: + +```php + +``` \ No newline at end of file