Modification du versionnage auto
This commit is contained in:
@@ -1,36 +1,25 @@
|
||||
@echo off
|
||||
setlocal ENABLEDELAYEDEXPANSION
|
||||
|
||||
REM --- Se place dans le dossier du .bat ---
|
||||
cd /d "%~dp0"
|
||||
|
||||
REM Chemin du fichier de version pour la CUISINE
|
||||
set "VERSION_FILE=..\Excel\prod\Ratio_Cuisine_VERSION.txt"
|
||||
REM === PARAMETRES CUISINE ===
|
||||
set "ROOT=%~dp0.."
|
||||
|
||||
REM On lit l'ANCIENNE version avant de la mettre à jour (pour nommer la sauvegarde)
|
||||
set "VERSION_FILE=%ROOT%\Excel\dev\Ratio_Cuisine_VERSION.txt"
|
||||
set "SRC=%ROOT%\Excel\dev\Ratio_Cuisine_dev.xlsm"
|
||||
set "DST_DIR=%ROOT%\Excel\prod"
|
||||
set "DST=%DST_DIR%\Ratio_Cuisine.xlsm"
|
||||
set "BACKUP_DIR=%ROOT%\Excel\backup"
|
||||
set KEEP_BACKUPS=10
|
||||
|
||||
REM === Lire ancienne version pour nom sauvegarde ===
|
||||
set "OLD_VERSION="
|
||||
if exist "%VERSION_FILE%" (
|
||||
set /p OLD_VERSION=<"%VERSION_FILE%"
|
||||
)
|
||||
REM Nombre de sauvegardes Cuisine à conserver
|
||||
set KEEP_BACKUPS=10
|
||||
|
||||
echo Mise à jour de version...
|
||||
python "maj_version.py" "%VERSION_FILE%"
|
||||
if errorlevel 1 (
|
||||
echo ERREUR lors de la mise à jour de version.
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
REM === 2) CHEMINS DES FICHIERS EXCEL ===
|
||||
set SRC=..\Excel\dev\Ratio_Cuisine_dev.xlsm
|
||||
set DST_DIR=..\Excel\prod
|
||||
|
||||
REM Dossier commun de sauvegardes (Cuisine + Restauration)
|
||||
set BACKUP_DIR=..\Excel\backup
|
||||
|
||||
REM Vérifications
|
||||
REM === Vérifications ===
|
||||
if not exist "%SRC%" (
|
||||
echo ERREUR : fichier source introuvable :
|
||||
echo %SRC%
|
||||
@@ -45,33 +34,48 @@ if not exist "%DST_DIR%" (
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
REM Création auto du dossier de sauvegarde s'il n'existe pas
|
||||
if not exist "%BACKUP_DIR%" (
|
||||
mkdir "%BACKUP_DIR%"
|
||||
)
|
||||
|
||||
REM === 3) NOM DU FICHIER DE SAUVEGARDE AVEC ANCIENNE VERSION ===
|
||||
if "%OLD_VERSION%"=="" (
|
||||
REM Sécurité : si on n'a pas réussi à lire la version, on met un nom générique
|
||||
set "BACKUP=%BACKUP_DIR%\Ratio_Cuisine_sansVersion.xlsm"
|
||||
) else (
|
||||
set "BACKUP=%BACKUP_DIR%\Ratio_Cuisine_Vers%OLD_VERSION%.xlsm"
|
||||
REM === Sauvegarde de l'ancienne prod avant remplacement ===
|
||||
if exist "%DST%" (
|
||||
if "%OLD_VERSION%"=="" (
|
||||
set "BACKUP=%BACKUP_DIR%\Ratio_Cuisine_sansVersion.xlsm"
|
||||
) else (
|
||||
set "BACKUP=%BACKUP_DIR%\Ratio_Cuisine_Vers%OLD_VERSION%.xlsm"
|
||||
)
|
||||
|
||||
echo Sauvegarde de l'ancienne production...
|
||||
copy /Y "%DST%" "%BACKUP%"
|
||||
)
|
||||
|
||||
REM === 4) COPIE VERS PROD ===
|
||||
REM === Copie DEV vers PROD ===
|
||||
echo Copie vers la version de production...
|
||||
copy /Y "%SRC%" "%DST_DIR%\Ratio_Cuisine.xlsm"
|
||||
copy /Y "%SRC%" "%DST%"
|
||||
|
||||
REM === 5) SAUVEGARDE ===
|
||||
echo Création de la sauvegarde datée...
|
||||
copy /Y "%SRC%" "%BACKUP%"
|
||||
if errorlevel 1 (
|
||||
echo ERREUR lors de la copie vers production.
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo Terminé.
|
||||
exit /b 0
|
||||
REM === Mise à jour version TXT + cellule C1 du classeur PROD ===
|
||||
echo Mise à jour de version...
|
||||
python "%~dp0maj_version.py" "%VERSION_FILE%" "%DST%"
|
||||
|
||||
REM === 6) NETTOYAGE : on ne garde que les %KEEP_BACKUPS% dernières sauvegardes Cuisine ===
|
||||
REM Tri par date décroissante (les plus récentes d'abord). On supprime au-delà de KEEP_BACKUPS.
|
||||
if errorlevel 1 (
|
||||
echo ERREUR lors de la mise à jour de version.
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
REM === Nettoyage sauvegardes anciennes ===
|
||||
echo Nettoyage des anciennes sauvegardes Cuisine...
|
||||
for /f "skip=%KEEP_BACKUPS% delims=" %%F in ('dir /b /a-d /o-d "%BACKUP_DIR%\Ratio_Cuisine_Vers*.xlsm" 2^>nul') do (
|
||||
echo Suppression ancienne sauvegarde : %%F
|
||||
del /q "%BACKUP_DIR%\%%F"
|
||||
)
|
||||
)
|
||||
|
||||
echo Terminé.
|
||||
exit /b 0
|
||||
|
||||
Reference in New Issue
Block a user