Files
claudetools/projects/dataforth-dos/batch-files/CTONW.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

123 lines
4.0 KiB
Batchfile

@ECHO OFF
REM Computer to Network - Upload local test results to network
REM Version: 3.1 - Added logging, machine verification
REM Last modified: 2026-01-21
REM
REM IMPORTANT: Test results go to T:\%MACHINE%\LOGS\*LOG (machine-specific)
REM This prevents overwriting data from other machines
REM Verify MACHINE variable is set
IF "%MACHINE%"=="" GOTO NO_MACHINE
REM Verify T: drive
IF NOT EXIST T:\*.* GOTO NO_DRIVE
REM Verify machine folder exists
IF NOT EXIST T:\%MACHINE%\*.* GOTO NO_FOLDER
REM Start logging
ECHO CTONW.BAT v3.1 > C:\ATE\CTONW.LOG
ECHO Machine: %MACHINE% >> C:\ATE\CTONW.LOG
ECHO Date: %DATE% %TIME% >> C:\ATE\CTONW.LOG
ECHO Target: T:\%MACHINE%\LOGS >> C:\ATE\CTONW.LOG
ECHO. >> C:\ATE\CTONW.LOG
REM Display banner
ECHO.
ECHO ==============================================================
ECHO Upload Test Results: %MACHINE%
ECHO Destination: T:\%MACHINE%\LOGS
ECHO ==============================================================
ECHO.
REM Check for ATE directory
IF NOT EXIST C:\ATE\*.* GOTO SKIP_ATE
REM Ensure target LOGS directories exist
IF NOT EXIST T:\%MACHINE%\LOGS\*.* MD T:\%MACHINE%\LOGS
IF NOT EXIST T:\%MACHINE%\LOGS\5BLOG\*.* MD T:\%MACHINE%\LOGS\5BLOG
IF NOT EXIST T:\%MACHINE%\LOGS\7BLOG\*.* MD T:\%MACHINE%\LOGS\7BLOG
IF NOT EXIST T:\%MACHINE%\LOGS\8BLOG\*.* MD T:\%MACHINE%\LOGS\8BLOG
IF NOT EXIST T:\%MACHINE%\LOGS\DSCLOG\*.* MD T:\%MACHINE%\LOGS\DSCLOG
IF NOT EXIST T:\%MACHINE%\LOGS\HVLOG\*.* MD T:\%MACHINE%\LOGS\HVLOG
IF NOT EXIST T:\%MACHINE%\LOGS\PWRLOG\*.* MD T:\%MACHINE%\LOGS\PWRLOG
IF NOT EXIST T:\%MACHINE%\LOGS\SCTLOG\*.* MD T:\%MACHINE%\LOGS\SCTLOG
IF NOT EXIST T:\%MACHINE%\LOGS\VASLOG\*.* MD T:\%MACHINE%\LOGS\VASLOG
ECHO [1/4] Uploading test logs...
ECHO [1/4] Test logs: >> C:\ATE\CTONW.LOG
IF EXIST C:\ATE\5BLOG\*.* COPY C:\ATE\5BLOG\*.* T:\%MACHINE%\LOGS\5BLOG >> C:\ATE\CTONW.LOG
IF EXIST C:\ATE\7BLOG\*.* COPY C:\ATE\7BLOG\*.* T:\%MACHINE%\LOGS\7BLOG >> C:\ATE\CTONW.LOG
IF EXIST C:\ATE\8BLOG\*.* COPY C:\ATE\8BLOG\*.* T:\%MACHINE%\LOGS\8BLOG >> C:\ATE\CTONW.LOG
IF EXIST C:\ATE\DSCLOG\*.* COPY C:\ATE\DSCLOG\*.* T:\%MACHINE%\LOGS\DSCLOG >> C:\ATE\CTONW.LOG
IF EXIST C:\ATE\HVLOG\*.* COPY C:\ATE\HVLOG\*.* T:\%MACHINE%\LOGS\HVLOG >> C:\ATE\CTONW.LOG
IF EXIST C:\ATE\PWRLOG\*.* COPY C:\ATE\PWRLOG\*.* T:\%MACHINE%\LOGS\PWRLOG >> C:\ATE\CTONW.LOG
IF EXIST C:\ATE\SCTLOG\*.* COPY C:\ATE\SCTLOG\*.* T:\%MACHINE%\LOGS\SCTLOG >> C:\ATE\CTONW.LOG
IF EXIST C:\ATE\VASLOG\*.* COPY C:\ATE\VASLOG\*.* T:\%MACHINE%\LOGS\VASLOG >> C:\ATE\CTONW.LOG
ECHO Done
ECHO.
REM Ensure Reports directory exists
IF NOT EXIST T:\%MACHINE%\Reports\*.* MD T:\%MACHINE%\Reports
ECHO [2/4] Uploading work-order reports...
ECHO [2/4] Reports: >> C:\ATE\CTONW.LOG
IF EXIST C:\Reports\*.txt COPY C:\Reports\*.txt T:\%MACHINE%\Reports >> C:\ATE\CTONW.LOG
ECHO Done
ECHO.
ECHO [3/4] Uploading batch files...
ECHO [3/4] Batch files: >> C:\ATE\CTONW.LOG
IF NOT EXIST T:\%MACHINE%\ProdSW\*.* MD T:\%MACHINE%\ProdSW
IF EXIST C:\BAT\*.BAT COPY C:\BAT\*.BAT T:\%MACHINE%\ProdSW >> C:\ATE\CTONW.LOG
ECHO Done
ECHO.
ECHO [4/4] Uploading log file...
ECHO [4/4] Log file: >> C:\ATE\CTONW.LOG
IF EXIST C:\ATE\*.LOG COPY C:\ATE\*.LOG T:\%MACHINE% >> C:\ATE\CTONW.LOG
ECHO Done
ECHO.
ECHO Complete >> C:\ATE\CTONW.LOG
GOTO DONE
:SKIP_ATE
ECHO [INFO] No C:\ATE directory - skipping
ECHO.
:DONE
ECHO ==============================================================
ECHO Upload Complete: %MACHINE%
ECHO ==============================================================
ECHO.
GOTO END
:NO_MACHINE
ECHO.
ECHO [ERROR] MACHINE variable not set
ECHO.
ECHO This prevents uploading to wrong folder.
ECHO Run DEPLOY.BAT or ATESYNC first.
ECHO.
PAUSE
GOTO END
:NO_DRIVE
ECHO [ERROR] T: drive not available
ECHO Run C:\STARTNET.BAT first
PAUSE
GOTO END
:NO_FOLDER
ECHO.
ECHO [ERROR] Machine folder T:\%MACHINE% not found
ECHO.
ECHO Run ATESYNC to create it, or check MACHINE variable.
ECHO Current MACHINE=%MACHINE%
ECHO.
PAUSE
GOTO END
:END