|
1 | 1 | # YOURLS Diff
|
2 | 2 |
|
3 |
| -[Il file Readme è disponibile anche in inglese](README.md). |
| 3 | +[Il file README è disponibile anche in inglese](README.md). |
4 | 4 |
|
5 |
| -**YOURLS Diff** è uno script Python che semplifica l'aggiornamento di un'installazione YOURLS tramite FTP, creando un pacchetto ZIP con solo i file nuovi o modificati tra due tag di release. |
| 5 | + |
6 | 6 |
|
7 |
| -Se vuoi sfruttare le patch che vengono create automaticamente da questo script e questo repository (tramite [questa GitHub Action](.github/workflows/patch.yml)), puoi dare un'occhiata alle [Releases](https://github.com/gioxx/YOURLS-diff/releases). Il pacchetto di aggiornamento più recente sarà sempre disponibile puntando al [tag Latest](https://github.com/gioxx/YOURLS-diff/releases/latest). Lo script viene eseguito ogni giorno a mezzanotte. |
| 7 | +**YOURLS Diff** è uno script Python che semplifica l'aggiornamento di un'installazione YOURLS via FTP creando un archivio ZIP contenente solo i file nuovi o modificati tra due tag di rilascio. |
| 8 | + |
| 9 | +Se vuoi approfittare delle patch create automaticamente da questo script e da questo repository (tramite [questa GitHub Action](.github/workflows/patch.yml)), puoi consultare la sezione [Releases](https://github.com/gioxx/YOURLS-diff/releases). Il pacchetto più recente sarà sempre disponibile tramite il [Latest tag](https://github.com/gioxx/YOURLS-diff/releases/latest). Lo script viene eseguito ogni giorno a mezzanotte. |
8 | 10 |
|
9 | 11 | ## Caratteristiche
|
10 | 12 |
|
11 | 13 | - Scarica automaticamente i due archivi ZIP (`old` e `new`) dal repository GitHub di YOURLS.
|
12 |
| -- Confronta i file e individua quelli **nuovi** o **modificati**. |
13 |
| -- Genera un pacchetto ZIP contenente solo i file differenziati. |
14 |
| -- Produce un file manifest esterno (`.txt`) con l'elenco dei file cambiati. |
15 |
| -- Supporta la verifica SSL con possibilità di disabilitarla tramite flag. |
| 14 | +- Confronta i file e identifica quelli **nuovi**, **modificati** e **rimossi**. |
| 15 | +- Genera un pacchetto ZIP contenente solo i file modificati. |
| 16 | +- Produce un file manifest esterno (`.txt`) con l'elenco dei file modificati. |
| 17 | +- Genera un file `.removed.txt` se sono stati eliminati file nella nuova versione. |
| 18 | +- Crea uno script di deploy Bash (`.sh`) per aggiornare l'istanza YOURLS tramite rsync e SSH. |
| 19 | +- Supporta la verifica del certificato SSL con possibilità di disabilitarla. |
| 20 | +- (Opzionale) Genera uno script compatibile con WinSCP (`.winscp.txt`) per utenti Windows che vogliono scaricare ed eliminare file via SFTP. |
16 | 21 |
|
17 | 22 | ## Requisiti
|
18 | 23 |
|
19 | 24 | - Python **3.6+**
|
20 |
| -- Librerie Python elencate in `requirements.txt`: |
| 25 | +- Librerie Python indicate in `requirements.txt`: |
21 | 26 | ```txt
|
22 | 27 | requests>=2.20.0
|
23 | 28 | urllib3>=1.25.0
|
@@ -45,45 +50,67 @@ Se vuoi sfruttare le patch che vengono create automaticamente da questo script e
|
45 | 50 |
|
46 | 51 | ## Utilizzo
|
47 | 52 |
|
48 |
| -Lo script principale si chiama `YOURLS-diff_CreatePackage.py` e accetta i seguenti parametri: |
| 53 | +Lo script principale si chiama `YOURLS-diff_CreatePackage.py` e accetta le seguenti opzioni: |
49 | 54 |
|
50 |
| -| Opzione | Descrizione | Esempio | |
51 |
| -|----------------|-----------------------------------------------------------------------------|---------------------------------------| |
52 |
| -| `--old` | **(obbligatorio)** Tag della release di partenza (es. `1.8.10`). | `--old 1.8.10` | |
53 |
| -| `--new` | Tag della release di destinazione. Se omesso, viene usato `latest`. | `--new 1.9.0` | |
54 |
| -| `--output` | Nome del file ZIP di output. Default: `YOURLS-update-OLD-to-NEW.zip`. | `--output diff.zip` | |
55 |
| -| `--no-verify` | Disabilita la verifica del certificato SSL. _Non_ raccomandato. | `--no-verify` | |
| 55 | +| Opzione | Descrizione | Esempio | |
| 56 | +|-------------------|----------------------------------------------------------------------------------------------------|--------------------------------------| |
| 57 | +| `--old` | **(obbligatorio)** Tag della versione di partenza (es: `1.8.10`). | `--old 1.8.10` | |
| 58 | +| `--new` | Tag della versione di destinazione. Se omesso, viene usato `latest`. | `--new 1.9.0` | |
| 59 | +| `--output` | Nome del file ZIP in uscita. Default: `YOURLS-update-OLD-to-NEW.zip`. | `--output diff.zip` | |
| 60 | +| `--no-verify` | Disattiva la verifica SSL (non consigliato). | `--no-verify` | |
| 61 | +| `--summary` | Genera un file `.summary.txt` con il riepilogo delle modifiche. | `--summary` | |
| 62 | +| `--only-removed` | Genera solo il file `.removed.txt` (se ci sono file eliminati).<br>Genera anche lo script di rimozione remoto (`.sh`). | `--only-removed` | |
| 63 | +| `--winscp` | Genera uno script `.winscp.txt` per scaricare ed eliminare i file rimossi (richiede `--only-removed`). Utile per utenti Windows. | `--winscp` | |
56 | 64 |
|
57 |
| -### Esempi di esecuzione |
| 65 | +### Esempi |
58 | 66 |
|
59 |
| -- **Aggiornare da 1.8.10 all'ultima release**: |
| 67 | +- **Aggiornare dalla 1.8.10 all'ultima versione disponibile**: |
60 | 68 | ```bash
|
61 | 69 | python YOURLS-diff_CreatePackage.py --old 1.8.10
|
62 | 70 | ```
|
63 |
| - Genera: |
64 |
| - - `YOURLS-update-1.8.10-to-<latest>.zip` |
65 |
| - - `YOURLS-update-1.8.10-to-<latest>.txt` (manifest) |
66 | 71 |
|
67 |
| -- **Aggiornare da 1.8.10 a 1.9.0 e nome personalizzato**: |
| 72 | +- **Aggiornare dalla 1.8.10 alla 1.9.0 con nome ZIP personalizzato**: |
68 | 73 | ```bash
|
69 | 74 | python YOURLS-diff_CreatePackage.py --old 1.8.10 --new 1.9.0 --output update.zip
|
70 | 75 | ```
|
71 | 76 |
|
72 |
| -- **Disabilitare la verifica SSL**: |
| 77 | +- **Generare solo la lista dei file rimossi e lo script di rimozione**: |
| 78 | + ```bash |
| 79 | + python YOURLS-diff_CreatePackage.py --old 1.8.10 --only-removed |
| 80 | + ``` |
| 81 | + |
| 82 | +- **Includere anche lo script WinSCP per la cancellazione remota**: |
| 83 | + ```bash |
| 84 | + python YOURLS-diff_CreatePackage.py --old 1.8.10 --only-removed --winscp |
| 85 | + ``` |
| 86 | + |
| 87 | +- **Disabilitare la verifica del certificato SSL**: |
73 | 88 | ```bash
|
74 | 89 | python YOURLS-diff_CreatePackage.py --old 1.8.10 --no-verify
|
75 | 90 | ```
|
76 | 91 |
|
| 92 | +## Opzioni di Deploy |
| 93 | + |
| 94 | +Una volta generato il pacchetto, puoi effettuare il deploy sulla tua installazione YOURLS usando: |
| 95 | + |
| 96 | +- `YOURLS-deploy-OLD-to-NEW.sh`: script Bash con rsync e ssh (per utenti Unix/Linux) |
| 97 | +- `YOURLS-update-OLD-to-NEW.winscp.txt`: script batch per WinSCP (Windows, con `--winscp`) |
| 98 | +- **Upload manuale via FTP**: Estrai il contenuto del file ZIP e caricalo manualmente utilizzando qualsiasi client FTP/SFTP (es: FileZilla, Cyberduck, WinSCP, Transmit). |
| 99 | + |
| 100 | +Ogni metodo/script ti consente di: |
| 101 | +- Caricare i file modificati o aggiunti (in modalità standard) |
| 102 | +- Rimuovere i file non più presenti nella nuova versione (solo con script automatici) |
| 103 | + |
77 | 104 | ## Struttura del repository
|
78 | 105 |
|
79 | 106 | ```text
|
80 | 107 | ├── YOURLS-diff_CreatePackage.py # Script Python principale
|
81 | 108 | ├── requirements.txt # Dipendenze Python
|
82 |
| -├── LICENSE # La licenza utilizzata per questo repository |
83 |
| -├── README.md # Questa documentazione, in inglese |
84 |
| -└── README_IT.md # Questa documentazione |
| 109 | +├── LICENSE # Licenza del progetto |
| 110 | +├── README.md # Documentazione in inglese |
| 111 | +└── README_IT.md # Documentazione in italiano |
85 | 112 | ```
|
86 | 113 |
|
87 | 114 | ## Contribuire
|
88 | 115 |
|
89 |
| -Pull request e segnalazioni di issue sono benvenute! Per favore apri una nuova issue per bug o feature request. |
| 116 | +Sono ben accetti Pull Request e segnalazioni di bug! Apri una issue per segnalazioni o proposte di nuove funzionalità. |
0 commit comments