Files
claudetools/projects/dataforth-dos/batch-files/ATESYNC.BAT
azcomputerguru 88539c8897 feat(dataforth-dos): Add ATESYNC orchestrator and CTONW upload fix
ATESYNC.BAT v1.0:
- Boot-time orchestrator (ARCHBAT equivalent from TS-27)
- Calls CTONW (upload) then NWTOC (download)
- Creates machine folder structure if missing
- Accepts machine name as parameter or MACHINE env var

CTONW.BAT v3.1:
- Fixed upload path: now uploads to T:\%MACHINE%\LOGS\*LOG
- Added safeguards to prevent data overwriting:
  - Refuses to run if MACHINE not set
  - Refuses to run if T:\%MACHINE% folder missing
- Logs machine name, date/time, target path
- Uploads all 8 LOG folders plus Reports

Based on analysis of TS-27 golden example machine backup.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 16:43:38 -07:00

112 lines
2.5 KiB
Batchfile

@ECHO OFF
REM ATESYNC.BAT - ATE Sync Orchestrator (ARCHBAT equivalent)
REM Version: 1.0
REM Last modified: 2026-01-21
REM
REM Called from AUTOEXEC.BAT after network is up
REM Usage: ATESYNC TS-27
REM or: ATESYNC (uses MACHINE environment variable)
REM Get machine name from parameter or environment
IF NOT "%1"=="" SET MACHINE=%1
IF "%MACHINE%"=="" GOTO NO_MACHINE
REM Verify T: drive is available
IF NOT EXIST T:\*.* GOTO NO_DRIVE
REM Verify machine folder exists on network
IF NOT EXIST T:\%MACHINE%\*.* GOTO CREATE_MACHINE
:START_SYNC
ECHO.
ECHO ************************************************************
ECHO ATESYNC: %MACHINE%
ECHO ************************************************************
ECHO.
REM Step 1: Upload test results FIRST (before downloading updates)
REM This ensures local results are preserved before any updates
ECHO [UPLOAD] Sending test results to network...
CALL CTONW.BAT
IF ERRORLEVEL 1 GOTO UPLOAD_ERROR
ECHO [UPLOAD] Complete
ECHO.
REM Step 2: Download software updates
ECHO [DOWNLOAD] Getting updates from network...
CALL NWTOC.BAT
IF ERRORLEVEL 1 GOTO DOWNLOAD_ERROR
ECHO [DOWNLOAD] Complete
ECHO.
ECHO ************************************************************
ECHO ATESYNC Complete: %MACHINE%
ECHO ************************************************************
ECHO.
GOTO END
:CREATE_MACHINE
ECHO [INFO] Creating machine folder T:\%MACHINE%
MD T:\%MACHINE%
IF NOT EXIST T:\%MACHINE%\*.* GOTO MACHINE_ERROR
MD T:\%MACHINE%\LOGS
MD T:\%MACHINE%\LOGS\5BLOG
MD T:\%MACHINE%\LOGS\7BLOG
MD T:\%MACHINE%\LOGS\8BLOG
MD T:\%MACHINE%\LOGS\DSCLOG
MD T:\%MACHINE%\LOGS\HVLOG
MD T:\%MACHINE%\LOGS\PWRLOG
MD T:\%MACHINE%\LOGS\SCTLOG
MD T:\%MACHINE%\LOGS\VASLOG
MD T:\%MACHINE%\ProdSW
MD T:\%MACHINE%\Reports
ECHO [INFO] Machine folder created
GOTO START_SYNC
:NO_MACHINE
ECHO.
ECHO ************************************************************
ECHO [ERROR] MACHINE not set
ECHO.
ECHO Usage: ATESYNC TS-27
ECHO or: SET MACHINE=TS-27
ECHO ATESYNC
ECHO ************************************************************
PAUSE
GOTO END
:NO_DRIVE
ECHO.
ECHO [ERROR] T: drive not available
ECHO Run STARTNET.BAT first
PAUSE
GOTO END
:MACHINE_ERROR
ECHO.
ECHO [ERROR] Could not create T:\%MACHINE%
ECHO Check network permissions
PAUSE
GOTO END
:UPLOAD_ERROR
ECHO.
ECHO [WARNING] Upload may have had errors
ECHO Check C:\ATE\CTONW.LOG
PAUSE
GOTO DOWNLOAD_ANYWAY
:DOWNLOAD_ANYWAY
ECHO Continuing with download...
CALL NWTOC.BAT
GOTO END
:DOWNLOAD_ERROR
ECHO.
ECHO [WARNING] Download may have had errors
ECHO Check C:\ATE\NWTOC.LOG
PAUSE
GOTO END
:END