diff --git a/AUTOEXEC.BAT b/AUTOEXEC.BAT index cc430db..ea1812c 100644 --- a/AUTOEXEC.BAT +++ b/AUTOEXEC.BAT @@ -1,102 +1,81 @@ @ECHO OFF -REM AUTOEXEC.BAT - DOS 6.22 startup script for Dataforth test machines -REM This file runs automatically after CONFIG.SYS during boot -REM -REM Version: 2.0 for TS-4R test machine +REM Dataforth Test Machine Startup - DOS 6.22 +REM Automatically runs after CONFIG.SYS during boot +REM Version: 3.0 - Auto-update system integrated REM Last modified: 2026-01-19 -REM ================================================================== -REM STEP 1: Set environment variables -REM ================================================================== - -REM Set machine name - CHANGE THIS FOR EACH MACHINE -REM Valid values: TS-4R, TS-7A, TS-12B, etc. +REM Set machine identity (configured by DEPLOY.BAT) SET MACHINE=TS-4R -REM Set DOS path for executables -SET PATH=C:\DOS;C:\NET;C:\BATCH;C:\ +REM Set DOS search path for executables +SET PATH=C:\DOS;C:\NET;C:\BAT;C:\BATCH;C:\ REM Set command prompt to show current directory PROMPT $P$G -REM Set temporary directory +REM Set temporary file directory SET TEMP=C:\TEMP SET TMP=C:\TEMP -REM ================================================================== -REM STEP 2: Display startup banner -REM ================================================================== - CLS ECHO. ECHO ============================================================== ECHO Dataforth Test Machine: %MACHINE% -ECHO DOS 6.22 with Network Client +ECHO DOS 6.22 with Automatic Update System ECHO ============================================================== ECHO. -REM ================================================================== -REM STEP 3: Create required directories -REM ================================================================== - -IF NOT EXIST C:\TEMP\NUL MD C:\TEMP -IF NOT EXIST C:\BATCH\NUL MD C:\BATCH - -REM ================================================================== -REM STEP 4: Start network client and map drives -REM ================================================================== +REM Create required directories if they don't exist +IF NOT EXIST C:\TEMP\*.* MD C:\TEMP +IF NOT EXIST C:\BAT\*.* MD C:\BAT +IF NOT EXIST C:\BATCH\*.* MD C:\BATCH ECHO Starting network client... ECHO. -REM Start network and map drives +REM Start network client and map T: and X: drives IF EXIST C:\NET\STARTNET.BAT CALL C:\NET\STARTNET.BAT -REM Check if network started successfully by testing T: drive -IF NOT EXIST T:\NUL GOTO NET_FAILED +REM Verify T: drive is accessible +IF NOT EXIST T:\*.* GOTO NET_FAILED -ECHO [OK] Network client started +ECHO [OK] Network started ECHO. -GOTO NET_OK - -:NET_FAILED -ECHO [WARNING] Network drive mapping failed -ECHO T: drive not accessible - backup will not run -ECHO. -ECHO To start network manually, run: -ECHO C:\NET\STARTNET.BAT -ECHO. -PAUSE -GOTO SKIP_BACKUP - -REM ================================================================== -REM STEP 5: Display network drive status -REM ================================================================== - -:NET_OK ECHO Network Drives: ECHO T: = \\D2TESTNAS\test ECHO X: = \\D2TESTNAS\datasheets ECHO. -REM ================================================================== -REM STEP 6: Run automatic backup (OPTIONAL) -REM ================================================================== +REM Download latest software updates from network +ECHO Checking for software updates... +IF EXIST C:\BAT\NWTOC.BAT CALL C:\BAT\NWTOC.BAT -REM Uncomment the next 3 lines to enable automatic backup on boot: -REM ECHO Running automatic backup... -REM CALL C:\BATCH\UPDATE.BAT -REM IF ERRORLEVEL 1 PAUSE Backup completed - press any key... +REM Upload test data to network for database import +ECHO Uploading test data to network... +IF EXIST C:\BAT\CTONW.BAT CALL C:\BAT\CTONW.BAT -REM ================================================================== -REM STEP 7: Display ready prompt -REM ================================================================== - -:SKIP_BACKUP -ECHO System ready. ECHO. -ECHO Commands: -ECHO UPDATE - Backup C: to T:\%MACHINE%\BACKUP -ECHO CTONW - Copy files C: to network -ECHO NWTOC - Copy files network to C: +ECHO ============================================================== +ECHO System Ready +ECHO ============================================================== ECHO. +ECHO Available Commands: +ECHO UPDATE - Full system backup to T:\%MACHINE%\BACKUP +ECHO CHECKUPD - Check for available updates +ECHO CTONW - Manual upload to network +ECHO NWTOC - Manual download from network +ECHO. +GOTO END + +:NET_FAILED +ECHO [ERROR] Network drive mapping failed +ECHO T: drive not accessible +ECHO. +ECHO To start network manually: +ECHO C:\NET\STARTNET.BAT +ECHO. +ECHO Updates and backups will not work until network is available. +ECHO. +PAUSE + +:END diff --git a/CTONW.BAT b/CTONW.BAT index a4e8b82..d0054c7 100644 --- a/CTONW.BAT +++ b/CTONW.BAT @@ -1,59 +1,29 @@ @ECHO OFF -REM CTONW.BAT - Computer to Network upload script -REM Uploads local changes to network share for distribution -REM -REM Usage: CTONW [target] -REM target = COMMON (share with all machines) -REM target = MACHINE (machine-specific, default) -REM -REM Examples: -REM CTONW ??? Upload to T:\%MACHINE%\ProdSW and T:\%MACHINE%\LOGS -REM CTONW MACHINE ??? Upload to T:\%MACHINE%\ProdSW and T:\%MACHINE%\LOGS -REM CTONW COMMON ??? Upload to T:\COMMON\ProdSW (requires confirmation) -REM -REM Version: 1.2 - DOS 6.22 compatible -REM Last modified: 2026-01-19 (Separated test data to LOGS folder for database import) -REM -REM Changes in v1.2: -REM - Test data (.DAT files) now upload to LOGS folder for database import -REM - Programs and config remain in ProdSW for software distribution -REM - Subdirectory mapping: 8BDATA->8BLOG, DSCDATA->DSCLOG, etc. - -REM ================================================================== -REM STEP 1: Verify machine name is set -REM ================================================================== +REM Computer to Network - Upload local changes and test data to network +REM Programs: C:\BAT -> T:\COMMON\ProdSW or T:\%MACHINE%\ProdSW +REM Test data: C:\ATE -> T:\%MACHINE%\LOGS (for database import) +REM Version: 2.0 - DOS 6.22 compatible +REM Last modified: 2026-01-19 +REM Verify MACHINE environment variable is set IF NOT "%MACHINE%"=="" GOTO CHECK_DRIVE -:NO_MACHINE ECHO. ECHO [ERROR] MACHINE variable not set ECHO. -ECHO Set MACHINE in AUTOEXEC.BAT: -ECHO SET MACHINE=TS-4R -ECHO. -ECHO Then reboot or run: -ECHO SET MACHINE=TS-4R -ECHO CTONW +ECHO MACHINE must be set in AUTOEXEC.BAT +ECHO Run DEPLOY.BAT to configure this machine ECHO. PAUSE GOTO END -REM ================================================================== -REM STEP 2: Verify T: drive is accessible -REM ================================================================== - :CHECK_DRIVE -REM Test T: drive access by switching to it +REM Verify T: drive is accessible DIR T:\ >nul IF ERRORLEVEL 1 GOTO NO_T_DRIVE -REM Successfully switched to T:, go back to C: C: - -REM Double-check with NUL device test IF NOT EXIST T:\*.* GOTO NO_T_DRIVE - GOTO CHECK_TARGET :NO_T_DRIVE @@ -61,21 +31,12 @@ C: ECHO. ECHO [ERROR] T: drive not available ECHO. -ECHO Network drive T: must be mapped to \\D2TESTNAS\test -ECHO. -ECHO Run network startup: -ECHO C:\NET\STARTNET.BAT -ECHO. -ECHO Or map manually: -ECHO NET USE T: \\D2TESTNAS\test /YES +ECHO Network drive must be mapped to \\D2TESTNAS\test +ECHO Run: C:\NET\STARTNET.BAT ECHO. PAUSE GOTO END -REM ================================================================== -REM STEP 3: Determine upload target -REM ================================================================== - :CHECK_TARGET REM Default target is machine-specific SET TARGET=MACHINE @@ -89,10 +50,7 @@ IF "%1"=="Common" SET TARGET=COMMON IF "%TARGET%"=="COMMON" SET TARGETDIR=T:\COMMON\ProdSW -REM ================================================================== -REM STEP 3.5: Confirm COMMON upload (NEW - v1.1) -REM ================================================================== - +REM Confirm COMMON upload (affects all machines) IF NOT "%TARGET%"=="COMMON" GOTO DISPLAY_BANNER ECHO. @@ -100,33 +58,28 @@ ECHO ============================================================== ECHO [WARNING] COMMON Upload Confirmation ECHO ============================================================== ECHO. -ECHO You are about to upload files to COMMON location. -ECHO This will affect ALL DOS machines at Dataforth. +ECHO You are about to upload files to COMMON location +ECHO This will affect ALL DOS machines at Dataforth ECHO. -ECHO Other machines will receive these files on next NWTOC run. +ECHO Other machines will receive these files on next reboot ECHO. -ECHO Are you sure you want to continue? (Y/N) +ECHO Continue? (Y/N) ECHO. -REM Wait for user input using CHOICE (DOS 6.22 compatible) +REM Wait for user input (DOS 6.22 compatible) CHOICE /C:YN /N IF ERRORLEVEL 2 GOTO UPLOAD_CANCELLED IF ERRORLEVEL 1 GOTO DISPLAY_BANNER :UPLOAD_CANCELLED ECHO. -ECHO [INFO] Upload cancelled by user +ECHO [INFO] Upload cancelled ECHO. -ECHO No files were uploaded to COMMON. ECHO To upload to machine-specific location, run: CTONW ECHO. PAUSE GOTO END -REM ================================================================== -REM STEP 4: Display upload banner -REM ================================================================== - :DISPLAY_BANNER ECHO. ECHO ============================================================== @@ -140,25 +93,17 @@ ECHO Target type: %TARGET% ECHO ============================================================== ECHO. -REM ================================================================== -REM STEP 5: Verify source directories exist -REM ================================================================== - +REM Verify source directories exist IF NOT EXIST C:\BAT\*.* GOTO NO_BAT_DIR GOTO CHECK_TARGET_DIR :NO_BAT_DIR ECHO [ERROR] C:\BAT directory not found -ECHO. -ECHO No files to upload. +ECHO No files to upload ECHO. PAUSE GOTO END -REM ================================================================== -REM STEP 6: Create target directories if needed -REM ================================================================== - :CHECK_TARGET_DIR REM Create machine directory if uploading to machine-specific location IF "%TARGET%"=="MACHINE" IF NOT EXIST T:\%MACHINE%\*.* MD T:\%MACHINE% @@ -178,10 +123,7 @@ IF "%TARGET%"=="MACHINE" ECHO [OK] Logs directory ready: %LOGSDIR% ECHO. -REM ================================================================== -REM STEP 7: Upload batch files -REM ================================================================== - +:UPLOAD_BATCH_FILES ECHO [1/3] Uploading batch files from C:\BAT... REM Backup existing files on network before overwriting @@ -190,7 +132,7 @@ FOR %%F IN (%TARGETDIR%\*.BAT) DO COPY %%F %%~dpnF.BAK >NUL 2>NUL REM Copy batch files to network ECHO Copying files to %TARGETDIR%... -XCOPY C:\BAT\*.BAT %TARGETDIR%\ /Y +XCOPY C:\BAT\*.BAT %TARGETDIR%\ /Y IF ERRORLEVEL 4 GOTO UPLOAD_ERROR_INIT IF ERRORLEVEL 2 GOTO UPLOAD_ERROR_USER IF ERRORLEVEL 1 ECHO [WARNING] No batch files found in C:\BAT @@ -198,11 +140,8 @@ IF NOT ERRORLEVEL 1 ECHO [OK] Batch files uploaded ECHO. -REM ================================================================== -REM STEP 8: Upload programs and config (machine-specific only) -REM CHANGED in v1.2: Now excludes DAT files (they go to LOGS) -REM ================================================================== - +:UPLOAD_PROGRAMS +REM Skip programs for COMMON target (batch files only) IF "%TARGET%"=="COMMON" GOTO SKIP_PROGRAMS ECHO [2/3] Uploading programs and config from C:\ATE... @@ -210,7 +149,7 @@ ECHO [2/3] Uploading programs and config from C:\ATE... REM Check if ATE directory exists IF NOT EXIST C:\ATE\*.* GOTO NO_ATE_DIR -REM Copy programs (.EXE, .BAT, .CFG, etc.) - exclude DAT files +REM Copy programs (.EXE, .BAT, .CFG) - exclude DAT files (they go to LOGS) ECHO Copying programs to %TARGETDIR%... XCOPY C:\ATE\*.EXE %TARGETDIR%\ /S /Y >NUL 2>NUL XCOPY C:\ATE\*.BAT %TARGETDIR%\ /S /Y >NUL 2>NUL @@ -231,10 +170,6 @@ ECHO [2/3] Skipping programs/data (COMMON target only gets batch files) ECHO. GOTO SKIP_TEST_DATA -REM ================================================================== -REM STEP 9: Upload test data to LOGS (NEW in v1.2) -REM ================================================================== - :UPLOAD_TEST_DATA ECHO [3/3] Uploading test data to LOGS... @@ -275,10 +210,6 @@ GOTO UPLOAD_COMPLETE REM No test data upload for COMMON target GOTO UPLOAD_COMPLETE -REM ================================================================== -REM STEP 10: Upload complete -REM ================================================================== - :UPLOAD_COMPLETE ECHO ============================================================== ECHO Upload Complete @@ -289,29 +220,20 @@ ECHO %TARGETDIR% (software/config) IF "%TARGET%"=="MACHINE" ECHO %LOGSDIR% (test data for database import) ECHO. IF "%TARGET%"=="COMMON" ECHO [WARNING] Files uploaded to COMMON - will affect ALL machines -IF "%TARGET%"=="COMMON" ECHO Other machines will receive these files on next NWTOC +IF "%TARGET%"=="COMMON" ECHO Other machines will receive these files on next reboot ECHO. ECHO Backup files (.BAK) created on network ECHO. -IF "%TARGET%"=="MACHINE" ECHO To share these files with all machines, run: -IF "%TARGET%"=="MACHINE" ECHO CTONW COMMON +IF "%TARGET%"=="MACHINE" ECHO To share these files with all machines, run: CTONW COMMON ECHO. GOTO END -REM ================================================================== -REM ERROR HANDLERS -REM ================================================================== - :TARGET_DIR_ERROR ECHO. ECHO [ERROR] Could not create target directory ECHO Target: %TARGETDIR% ECHO. -ECHO Check: -ECHO - T: drive is writable -ECHO - Sufficient disk space on T: -ECHO - Network connection is stable -ECHO - Permissions to create directories +ECHO Check: T: drive writable, sufficient disk space, stable network ECHO. PAUSE GOTO END @@ -321,11 +243,7 @@ ECHO. ECHO [ERROR] Could not create LOGS directory ECHO Target: %LOGSDIR% ECHO. -ECHO Check: -ECHO - T: drive is writable -ECHO - Sufficient disk space on T: -ECHO - Network connection is stable -ECHO - Permissions to create directories +ECHO Check: T: drive writable, sufficient disk space, stable network ECHO. PAUSE GOTO END @@ -333,12 +251,7 @@ GOTO END :UPLOAD_ERROR_INIT ECHO. ECHO [ERROR] Upload initialization failed -ECHO. -ECHO Possible causes: -ECHO - Insufficient memory -ECHO - Invalid path -ECHO - Target drive not accessible -ECHO - Network connection lost +ECHO Possible causes: Insufficient memory, invalid path, or drive not accessible ECHO. PAUSE GOTO END @@ -346,17 +259,11 @@ GOTO END :UPLOAD_ERROR_USER ECHO. ECHO [ERROR] Upload terminated by user (Ctrl+C) -ECHO. -ECHO Upload may be incomplete! -ECHO Run CTONW again to complete upload. +ECHO Upload may be incomplete - run CTONW again ECHO. PAUSE GOTO END -REM ================================================================== -REM CLEANUP AND EXIT -REM ================================================================== - :END REM Clean up environment variables SET TARGET= diff --git a/DEPLOY.BAT b/DEPLOY.BAT index cf16109..5097b9a 100644 --- a/DEPLOY.BAT +++ b/DEPLOY.BAT @@ -1,235 +1,167 @@ @ECHO OFF -REM DEPLOY.BAT - One-time deployment script for DOS Update System -REM -REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines -REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT -REM -REM What this does: -REM 1. Backs up current AUTOEXEC.BAT -REM 2. Prompts for machine name (TS-4R, TS-7A, etc.) -REM 3. Updates AUTOEXEC.BAT with MACHINE variable -REM 4. Copies update batch files to C:\BAT\ -REM 5. Runs initial NWTOC to download all updates -REM -REM Version: 1.0 - DOS 6.22 compatible +REM One-time deployment script for DOS Update System +REM Installs automatic update system on DOS 6.22 machines +REM Usage: T:\COMMON\ProdSW\DEPLOY.BAT machine-name +REM Example: T:\COMMON\ProdSW\DEPLOY.BAT TS-4R +REM Version: 2.0 - Simplified deployment REM Last modified: 2026-01-19 CLS -REM ================================================================== -REM STEP 1: Get machine name from command line (MUST BE FIRST!) -REM ================================================================== +REM Check machine name parameter provided +IF "%1"=="" GOTO NO_MACHINE_NAME -REM Check if machine name provided as parameter -IF "%1"=="" GOTO MACHINE_NAME_MISSING - -REM Save parameter to variable immediately (before anything can consume it) +REM Save machine name to variable SET MACHINE=%1 ECHO ============================================================== -ECHO DOS Update System - One-Time Deployment +ECHO DOS Update System - Deployment ECHO ============================================================== ECHO Machine: %MACHINE% ECHO ============================================================== ECHO. -ECHO This script will install the new update system on this machine. +ECHO Installing automatic update system... ECHO. -ECHO What will be installed: -ECHO - NWTOC.BAT (Download updates from network) -ECHO - CTONW.BAT (Upload changes to network) -ECHO - UPDATE.BAT (Full system backup) -ECHO - STAGE.BAT (System file staging) -ECHO - REBOOT.BAT (Apply updates on reboot) -ECHO - CHECKUPD.BAT (Check for updates) +ECHO Files to install: +ECHO - AUTOEXEC.BAT (startup configuration) +ECHO - NWTOC.BAT (download updates) +ECHO - CTONW.BAT (upload test data) +ECHO - UPDATE.BAT (full backup) +ECHO - CHECKUPD.BAT (check updates) +ECHO - STAGE.BAT (system file updates) +ECHO - REBOOT.BAT (apply staged updates) ECHO. PAUSE ECHO. -GOTO CHECK_T_DRIVE - -:MACHINE_NAME_MISSING -ECHO. -ECHO [ERROR] Machine name not provided -ECHO. -ECHO Usage: DEPLOY.BAT machine-name -ECHO Example: DEPLOY.BAT TS-4R -ECHO. -ECHO Machine name must match folder on T: drive. -ECHO Example: If this is TS-4R, T:\TS-4R\ must exist -ECHO. -PAUSE -GOTO END - -REM ================================================================== -REM STEP 2: Verify T: drive is accessible -REM ================================================================== - -:CHECK_T_DRIVE -ECHO [STEP 2/5] Checking network drive... -ECHO. - -DIR T:\ >nul -IF ERRORLEVEL 1 GOTO NO_T_DRIVE - -C: -IF NOT EXIST T:\*.* GOTO NO_T_DRIVE - -ECHO [OK] T: drive is accessible -ECHO T: = \\D2TESTNAS\test -ECHO. -GOTO CHECK_DEPLOY_FILES - -:NO_T_DRIVE -C: -ECHO. -ECHO [ERROR] T: drive not available -ECHO. -ECHO The network drive T: must be mapped to \\D2TESTNAS\test -ECHO. -ECHO Run network startup first: -ECHO C:\NET\STARTNET.BAT -ECHO. -ECHO Or map manually: -ECHO NET USE T: \\D2TESTNAS\test /YES -ECHO. -ECHO Then run DEPLOY.BAT again. -ECHO. -PAUSE -GOTO END - -REM ================================================================== -REM STEP 3: Verify deployment files exist on network -REM ================================================================== - -:CHECK_DEPLOY_FILES -ECHO [STEP 3/5] Verifying deployment files... -ECHO. - -IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES -IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES -IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES -IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES -IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES - -ECHO [OK] All deployment files found on network -ECHO Location: T:\COMMON\ProdSW\ -ECHO. -GOTO VERIFY_MACHINE_FOLDER - -:MISSING_FILES -ECHO [ERROR] Deployment files not found on network -ECHO. -ECHO Expected location: T:\COMMON\ProdSW\ -ECHO. -ECHO Files needed: -ECHO - NWTOC.BAT -ECHO - CTONW.BAT -ECHO - UPDATE.BAT -ECHO - STAGE.BAT -ECHO - CHECKUPD.BAT -ECHO. -ECHO Contact system administrator. -ECHO. -PAUSE -GOTO END - -REM ================================================================== -REM STEP 4: Verify machine folder on network -REM ================================================================== - -:VERIFY_MACHINE_FOLDER -ECHO [STEP 4/5] Verifying machine folder... -ECHO. - -REM Verify machine folder exists on network -ECHO Checking for T:\%MACHINE%\ folder... -IF NOT EXIST T:\%MACHINE%\*.* MD T:\%MACHINE% -IF NOT EXIST T:\%MACHINE%\*.* GOTO MACHINE_FOLDER_ERROR - -ECHO [OK] Machine folder ready: T:\%MACHINE%\ -ECHO. -GOTO UPDATE_AUTOEXEC - -:MACHINE_FOLDER_ERROR -ECHO. -ECHO [ERROR] Could not create machine folder on network -ECHO. -ECHO Check: -ECHO - T: drive is writable -ECHO - Network connection is stable -ECHO - Permissions to create directories -ECHO. -PAUSE -GOTO END - -REM ================================================================== -REM STEP 5: Install batch files to C:\BAT -REM ================================================================== - -:INSTALL_BATCH_FILES -ECHO [STEP 5/5] Installing batch files... -ECHO. - -REM Backup current AUTOEXEC.BAT first -IF NOT EXIST C:\AUTOEXEC.BAT GOTO NO_AUTOEXEC_BACKUP - -ECHO Backing up AUTOEXEC.BAT... -COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL -IF ERRORLEVEL 1 GOTO BACKUP_ERROR -ECHO [OK] Backup created: C:\AUTOEXEC.SAV -GOTO AUTOEXEC_BACKUP_DONE - -:NO_AUTOEXEC_BACKUP -ECHO [WARNING] No existing AUTOEXEC.BAT found - -:AUTOEXEC_BACKUP_DONE -ECHO. - -REM Create C:\BAT directory if it doesn't exist +REM Create C:\BAT directory +ECHO [1/3] Creating C:\BAT directory... IF NOT EXIST C:\BAT\*.* MD C:\BAT IF NOT EXIST C:\BAT\*.* GOTO BAT_DIR_ERROR - -ECHO Copying update system files to C:\BAT\... +ECHO [OK] C:\BAT directory ready +ECHO. REM Copy batch files from network to local machine -XCOPY T:\COMMON\ProdSW\NWTOC.BAT C:\BAT\ /Y +ECHO [2/3] Copying batch files to C:\BAT... +XCOPY T:\COMMON\ProdSW\NWTOC.BAT C:\BAT\ /Y IF ERRORLEVEL 4 GOTO COPY_ERROR ECHO [OK] NWTOC.BAT -XCOPY T:\COMMON\ProdSW\CTONW.BAT C:\BAT\ /Y +XCOPY T:\COMMON\ProdSW\CTONW.BAT C:\BAT\ /Y IF ERRORLEVEL 4 GOTO COPY_ERROR ECHO [OK] CTONW.BAT -XCOPY T:\COMMON\ProdSW\UPDATE.BAT C:\BAT\ /Y +XCOPY T:\COMMON\ProdSW\UPDATE.BAT C:\BAT\ /Y IF ERRORLEVEL 4 GOTO COPY_ERROR ECHO [OK] UPDATE.BAT -XCOPY T:\COMMON\ProdSW\STAGE.BAT C:\BAT\ /Y -IF ERRORLEVEL 4 GOTO COPY_ERROR -ECHO [OK] STAGE.BAT - -XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y +XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y IF ERRORLEVEL 4 GOTO COPY_ERROR ECHO [OK] CHECKUPD.BAT +XCOPY T:\COMMON\ProdSW\STAGE.BAT C:\BAT\ /Y +IF ERRORLEVEL 4 GOTO COPY_ERROR +ECHO [OK] STAGE.BAT + +XCOPY T:\COMMON\ProdSW\REBOOT.BAT C:\BAT\ /Y +IF ERRORLEVEL 4 GOTO COPY_ERROR +ECHO [OK] REBOOT.BAT + +ECHO [OK] All batch files installed ECHO. -ECHO [OK] All update system files installed + +REM Install AUTOEXEC.BAT with machine name +ECHO [3/3] Installing AUTOEXEC.BAT... + +REM Copy template and modify machine name +COPY T:\COMMON\ProdSW\AUTOEXEC.BAT C:\AUTOEXEC.TMP /Y >NUL +IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR + +REM Create new AUTOEXEC with correct machine name +REM Filter out existing SET MACHINE line and rebuild with new one +ECHO @ECHO OFF > C:\AUTOEXEC.BAT +TYPE C:\AUTOEXEC.TMP | FIND /V "@ECHO OFF" | FIND /V "SET MACHINE=" > C:\AUTOEXEC.TM1 +ECHO REM Dataforth Test Machine Startup - DOS 6.22 >> C:\AUTOEXEC.BAT +ECHO REM Automatically runs after CONFIG.SYS during boot >> C:\AUTOEXEC.BAT +ECHO REM Version: 3.0 - Auto-update system integrated >> C:\AUTOEXEC.BAT +ECHO REM Last modified: 2026-01-19 >> C:\AUTOEXEC.BAT +ECHO. >> C:\AUTOEXEC.BAT +ECHO REM Set machine identity (configured by DEPLOY.BAT) >> C:\AUTOEXEC.BAT +ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT +ECHO. >> C:\AUTOEXEC.BAT +REM Filter out header comment lines using temp files (DOS 6.22 compatible) +TYPE C:\AUTOEXEC.TM1 | FIND /V "REM Dataforth" > C:\AUTOEXEC.TM2 +TYPE C:\AUTOEXEC.TM2 | FIND /V "REM Automatically" > C:\AUTOEXEC.TM3 +TYPE C:\AUTOEXEC.TM3 | FIND /V "REM Version:" > C:\AUTOEXEC.TM4 +TYPE C:\AUTOEXEC.TM4 | FIND /V "REM Last modified" > C:\AUTOEXEC.TM5 +TYPE C:\AUTOEXEC.TM5 | FIND /V "REM Set machine identity" >> C:\AUTOEXEC.BAT + +REM Clean up temp files +DEL C:\AUTOEXEC.TMP +DEL C:\AUTOEXEC.TM1 +DEL C:\AUTOEXEC.TM2 +DEL C:\AUTOEXEC.TM3 +DEL C:\AUTOEXEC.TM4 +DEL C:\AUTOEXEC.TM5 + +ECHO [OK] AUTOEXEC.BAT installed with MACHINE=%MACHINE% +ECHO. + +REM Create machine folder on network for backups +IF NOT EXIST T:\%MACHINE%\*.* MD T:\%MACHINE% +IF NOT EXIST T:\%MACHINE%\*.* GOTO MACHINE_FOLDER_WARNING +ECHO [OK] Network backup folder created: T:\%MACHINE% ECHO. GOTO DEPLOYMENT_COMPLETE -:BACKUP_ERROR +:MACHINE_FOLDER_WARNING +ECHO [WARNING] Could not create T:\%MACHINE% folder +ECHO Backups will not work until this folder exists ECHO. -ECHO [ERROR] Could not backup AUTOEXEC.BAT + +:DEPLOYMENT_COMPLETE +CLS +ECHO ============================================================== +ECHO Deployment Complete! +ECHO ============================================================== ECHO. -ECHO Continue anyway? (Y/N) -CHOICE /C:YN /N -IF ERRORLEVEL 2 GOTO END +ECHO Machine: %MACHINE% ECHO. -GOTO UPDATE_AUTOEXEC +ECHO The automatic update system is now installed. +ECHO. +ECHO What happens on next reboot: +ECHO 1. Network client starts (C:\NET\STARTNET.BAT) +ECHO 2. Software updates download automatically (NWTOC) +ECHO 3. Test data uploads automatically (CTONW) +ECHO 4. System ready for testing +ECHO. +ECHO ============================================================== +ECHO REBOOT NOW +ECHO ============================================================== +ECHO. +ECHO Press Ctrl+Alt+Del to reboot +ECHO. +ECHO After reboot, the system will be fully operational. +ECHO. +PAUSE +GOTO END + +:NO_MACHINE_NAME +ECHO. +ECHO [ERROR] Machine name not provided +ECHO. +ECHO Usage: DEPLOY.BAT machine-name +ECHO Example: DEPLOY.BAT TS-4R +ECHO. +ECHO Machine name must match network folder (T:\machine-name\) +ECHO. +PAUSE +GOTO END :BAT_DIR_ERROR ECHO. ECHO [ERROR] Could not create C:\BAT directory +ECHO Insufficient permissions or disk full ECHO. PAUSE GOTO END @@ -238,153 +170,20 @@ GOTO END ECHO. ECHO [ERROR] Failed to copy files from network ECHO. -ECHO Check: -ECHO - T: drive is accessible -ECHO - C: drive has free space -ECHO - No file locks on C:\BAT\ +ECHO Check: T: drive accessible, C: drive has space ECHO. PAUSE GOTO END -REM ================================================================== -REM STEP 4: Update AUTOEXEC.BAT with MACHINE variable -REM ================================================================== - -:UPDATE_AUTOEXEC -ECHO [STEP 4/5] Updating AUTOEXEC.BAT... -ECHO. - -REM Check if MACHINE variable already exists in AUTOEXEC.BAT -IF NOT EXIST C:\AUTOEXEC.BAT GOTO ADD_MACHINE_VAR - -FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL -IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS - -:ADD_MACHINE_VAR - -REM Insert MACHINE variable at beginning of AUTOEXEC.BAT (not end!) -REM This ensures it's set before any scripts or commands run - -IF NOT EXIST C:\AUTOEXEC.BAT GOTO CREATE_NEW_AUTOEXEC - -REM AUTOEXEC.BAT exists - insert SET MACHINE at line 2 (after @ECHO OFF) -REM Use intermediate files - DOS 6.22 cannot handle double pipes with redirection -ECHO @ECHO OFF > C:\AUTOEXEC.TMP -ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.TMP -TYPE C:\AUTOEXEC.BAT | FIND /V "@ECHO OFF" > C:\AUTOEXEC.TM1 -TYPE C:\AUTOEXEC.TM1 >> C:\AUTOEXEC.TMP -DEL C:\AUTOEXEC.TM1 -COPY C:\AUTOEXEC.TMP C:\AUTOEXEC.BAT >NUL -DEL C:\AUTOEXEC.TMP -GOTO MACHINE_ADD_DONE - -:CREATE_NEW_AUTOEXEC -REM No AUTOEXEC.BAT exists - create new one -ECHO @ECHO OFF > C:\AUTOEXEC.BAT -ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT - -:MACHINE_ADD_DONE -ECHO [OK] Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE% -ECHO (Inserted at beginning, before other commands) -ECHO. -GOTO INSTALL_BATCH_FILES - -:MACHINE_EXISTS -ECHO [INFO] MACHINE variable already exists in AUTOEXEC.BAT -ECHO. -ECHO Current value: -TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE=" -ECHO. -ECHO Updating to: SET MACHINE=%MACHINE% -ECHO. - -REM Remove old SET MACHINE= line and insert new one at beginning -REM Use intermediate files - DOS 6.22 cannot handle double pipes with redirection -ECHO @ECHO OFF > C:\AUTOEXEC.TMP -ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.TMP - -REM Filter out @ECHO OFF and SET MACHINE= lines in separate steps -TYPE C:\AUTOEXEC.BAT | FIND /V "@ECHO OFF" > C:\AUTOEXEC.TM1 -TYPE C:\AUTOEXEC.TM1 | FIND /V "SET MACHINE=" > C:\AUTOEXEC.TM2 -TYPE C:\AUTOEXEC.TM2 >> C:\AUTOEXEC.TMP -DEL C:\AUTOEXEC.TM1 -DEL C:\AUTOEXEC.TM2 - -REM Replace original with updated version -COPY C:\AUTOEXEC.TMP C:\AUTOEXEC.BAT >NUL -DEL C:\AUTOEXEC.TMP - -ECHO [OK] Updated AUTOEXEC.BAT with new machine name -ECHO (Replaced old value, inserted at beginning) -ECHO. -GOTO INSTALL_BATCH_FILES - :AUTOEXEC_ERROR ECHO. -ECHO [ERROR] Could not update AUTOEXEC.BAT +ECHO [ERROR] Could not copy AUTOEXEC.BAT template ECHO. -ECHO You must manually add this line to C:\AUTOEXEC.BAT: -ECHO SET MACHINE=%MACHINE% +ECHO Verify T:\COMMON\ProdSW\AUTOEXEC.BAT exists ECHO. -PAUSE -GOTO INSTALL_BATCH_FILES - -REM ================================================================== -REM DEPLOYMENT COMPLETE -REM ================================================================== - -:DEPLOYMENT_COMPLETE -CLS -ECHO ============================================================== -ECHO Deployment Complete! -ECHO ============================================================== -ECHO. -ECHO The DOS Update System has been installed on this machine. -ECHO. -ECHO Machine name: %MACHINE% -ECHO Backup location: T:\%MACHINE%\BACKUP\ -ECHO Update location: T:\COMMON\ProdSW\ -ECHO. -ECHO ============================================================== -ECHO Available Commands: -ECHO ============================================================== -ECHO. -ECHO NWTOC - Download updates from network -ECHO CTONW - Upload local changes to network -ECHO UPDATE - Backup entire C: drive to network -ECHO CHECKUPD - Check for available updates -ECHO. -ECHO ============================================================== -ECHO Next Steps: -ECHO ============================================================== -ECHO. -ECHO 1. REBOOT this machine to activate MACHINE variable -ECHO Press Ctrl+Alt+Del to reboot -ECHO. -ECHO 2. After reboot, run NWTOC to download all updates: -ECHO C:\BAT\NWTOC -ECHO. -ECHO 3. Create initial backup: -ECHO C:\BAT\UPDATE -ECHO. -ECHO ============================================================== -ECHO. -ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG -ECHO. - -REM Create deployment log -ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG -ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG -ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG -ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG - PAUSE GOTO END -REM ================================================================== -REM CLEANUP AND EXIT -REM ================================================================== - :END -REM Clean up environment variables +REM Clean up environment variable SET MACHINE= diff --git a/NWTOC.BAT b/NWTOC.BAT index cb5df4a..4e6f60c 100644 --- a/NWTOC.BAT +++ b/NWTOC.BAT @@ -1,52 +1,28 @@ @ECHO OFF -REM NWTOC.BAT - Network to Computer update script -REM Pulls software updates from network share to local C: drive -REM -REM Usage: NWTOC -REM -REM Updates these directories: -REM T:\COMMON\ProdSW\*.bat ??? C:\BAT\ -REM T:\%MACHINE%\ProdSW\*.* ??? C:\BAT\ and C:\ATE\ -REM T:\COMMON\DOS\*.NEW ??? Staged for reboot -REM -REM Version: 1.0 - DOS 6.22 compatible +REM Network to Computer - Download software updates from network to local C: drive +REM Updates: T:\COMMON\ProdSW -> C:\BAT, T:\%MACHINE%\ProdSW -> C:\BAT and C:\ATE +REM Version: 2.0 - DOS 6.22 compatible REM Last modified: 2026-01-19 -REM ================================================================== -REM STEP 1: Verify machine name is set -REM ================================================================== - +REM Verify MACHINE environment variable is set IF NOT "%MACHINE%"=="" GOTO CHECK_DRIVE -:NO_MACHINE ECHO. ECHO [ERROR] MACHINE variable not set ECHO. -ECHO Set MACHINE in AUTOEXEC.BAT: -ECHO SET MACHINE=TS-4R -ECHO. -ECHO Then reboot or run: -ECHO SET MACHINE=TS-4R -ECHO NWTOC +ECHO MACHINE must be set in AUTOEXEC.BAT +ECHO Run DEPLOY.BAT to configure this machine ECHO. PAUSE GOTO END -REM ================================================================== -REM STEP 2: Verify T: drive is accessible -REM ================================================================== - :CHECK_DRIVE -REM Test T: drive access by switching to it +REM Verify T: drive is accessible DIR T:\ >nul IF ERRORLEVEL 1 GOTO NO_T_DRIVE -REM Successfully switched to T:, go back to C: C: - -REM Double-check with NUL device test IF NOT EXIST T:\*.* GOTO NO_T_DRIVE - GOTO START_UPDATE :NO_T_DRIVE @@ -54,83 +30,62 @@ C: ECHO. ECHO [ERROR] T: drive not available ECHO. -ECHO Network drive T: must be mapped to \\D2TESTNAS\test -ECHO. -ECHO Run network startup: -ECHO C:\NET\STARTNET.BAT -ECHO. -ECHO Or map manually: -ECHO NET USE T: \\D2TESTNAS\test /YES +ECHO Network drive must be mapped to \\D2TESTNAS\test +ECHO Run: C:\NET\STARTNET.BAT ECHO. PAUSE GOTO END -REM ================================================================== -REM STEP 3: Display update banner -REM ================================================================== - :START_UPDATE ECHO. ECHO ============================================================== -ECHO Update: %MACHINE% from Network +ECHO Download Updates: %MACHINE% from Network ECHO ============================================================== ECHO Source: T:\COMMON and T:\%MACHINE% ECHO Target: C:\BAT, C:\ATE, C:\NET ECHO ============================================================== ECHO. -REM ================================================================== -REM STEP 4: Check if update directories exist -REM ================================================================== - -IF NOT EXIST T:\COMMON\NUL GOTO NO_COMMON -IF NOT EXIST T:\COMMON\ProdSW\NUL GOTO NO_PRODSW +REM Verify update directories exist on network +IF NOT EXIST T:\COMMON\*.* GOTO NO_COMMON +IF NOT EXIST T:\COMMON\ProdSW\*.* GOTO NO_PRODSW REM Machine-specific directory is optional -IF NOT EXIST T:\%MACHINE%\NUL GOTO SKIP_MACHINE_CHECK -IF NOT EXIST T:\%MACHINE%\ProdSW\NUL GOTO SKIP_MACHINE_CHECK - +IF NOT EXIST T:\%MACHINE%\*.* GOTO SKIP_MACHINE_CHECK +IF NOT EXIST T:\%MACHINE%\ProdSW\*.* GOTO SKIP_MACHINE_CHECK GOTO UPDATE_BATCH_FILES :NO_COMMON ECHO [ERROR] T:\COMMON directory not found -ECHO. -ECHO Network share structure is incorrect. -ECHO Expected: T:\COMMON\ProdSW\ +ECHO Network share structure is incorrect ECHO. PAUSE GOTO END :NO_PRODSW ECHO [ERROR] T:\COMMON\ProdSW directory not found -ECHO. -ECHO Update directory is missing. -ECHO Expected: T:\COMMON\ProdSW\*.bat +ECHO Update directory is missing ECHO. PAUSE GOTO END :SKIP_MACHINE_CHECK -ECHO [WARNING] T:\%MACHINE%\ProdSW not found - skipping machine-specific updates +ECHO [INFO] T:\%MACHINE%\ProdSW not found - skipping machine-specific updates ECHO. -REM ================================================================== -REM STEP 5: Update batch files from COMMON -REM ================================================================== - :UPDATE_BATCH_FILES ECHO [1/4] Updating batch files from T:\COMMON\ProdSW... -REM Create C:\BAT directory if it doesn't exist -IF NOT EXIST C:\BAT\NUL MD C:\BAT +REM Create C:\BAT directory if needed +IF NOT EXIST C:\BAT\*.* MD C:\BAT REM Backup existing batch files before update ECHO Creating backups (.BAK files)... FOR %%F IN (C:\BAT\*.BAT) DO COPY %%F %%~dpnF.BAK >NUL 2>NUL -REM Copy newer batch files from COMMON +REM Copy newer batch files from COMMON (only if newer) ECHO Copying updated files... -XCOPY T:\COMMON\ProdSW\*.bat C:\BAT\ /D /Y +XCOPY T:\COMMON\ProdSW\*.bat C:\BAT\ /D /Y IF ERRORLEVEL 4 GOTO UPDATE_ERROR_INIT IF ERRORLEVEL 2 GOTO UPDATE_ERROR_USER IF ERRORLEVEL 1 ECHO [OK] No new batch files in COMMON @@ -138,18 +93,15 @@ IF NOT ERRORLEVEL 1 ECHO [OK] Batch files updated from COMMON ECHO. -REM ================================================================== -REM STEP 6: Update machine-specific files -REM ================================================================== - +:UPDATE_MACHINE_FILES ECHO [2/4] Updating machine-specific files from T:\%MACHINE%\ProdSW... REM Check if machine-specific directory exists -IF NOT EXIST T:\%MACHINE%\ProdSW\NUL GOTO SKIP_MACHINE_FILES +IF NOT EXIST T:\%MACHINE%\ProdSW\*.* GOTO SKIP_MACHINE_FILES -REM Create directories if they don't exist -IF NOT EXIST C:\BAT\NUL MD C:\BAT -IF NOT EXIST C:\ATE\NUL MD C:\ATE +REM Create directories if needed +IF NOT EXIST C:\BAT\*.* MD C:\BAT +IF NOT EXIST C:\ATE\*.* MD C:\ATE REM Copy batch files ECHO Copying batch files to C:\BAT... @@ -169,45 +121,37 @@ IF NOT ERRORLEVEL 1 ECHO [OK] Machine-specific data files updated GOTO CHECK_SYSTEM_FILES :SKIP_MACHINE_FILES -ECHO [SKIP] No machine-specific directory (T:\%MACHINE%\ProdSW) +ECHO [SKIP] No machine-specific directory ECHO. -REM ================================================================== -REM STEP 7: Check for system file updates -REM ================================================================== - :CHECK_SYSTEM_FILES ECHO [3/4] Checking for system file updates... -REM Check if DOS directory exists -IF NOT EXIST T:\COMMON\DOS\NUL GOTO NO_SYSTEM_FILES +REM Check if DOS directory exists on network +IF NOT EXIST T:\COMMON\DOS\*.* GOTO NO_SYSTEM_FILES -REM Check for AUTOEXEC.NEW +REM Check for AUTOEXEC.NEW or CONFIG.NEW SET SYSUPD=0 IF EXIST T:\COMMON\DOS\AUTOEXEC.NEW SET SYSUPD=1 IF EXIST T:\COMMON\DOS\CONFIG.NEW SET SYSUPD=1 -REM If no system updates, continue +REM If no system updates, continue to network files IF "%SYSUPD%"=="0" GOTO NO_SYSTEM_FILES -REM System files need updating - stage them +REM System files need updating - stage them for reboot ECHO [FOUND] System file updates available ECHO Staging AUTOEXEC.BAT and/or CONFIG.SYS updates... ECHO. -REM Copy staging files IF EXIST T:\COMMON\DOS\AUTOEXEC.NEW COPY T:\COMMON\DOS\AUTOEXEC.NEW C:\AUTOEXEC.NEW >NUL IF EXIST T:\COMMON\DOS\CONFIG.NEW COPY T:\COMMON\DOS\CONFIG.NEW C:\CONFIG.NEW >NUL -REM Call staging script +REM Call staging script if it exists IF EXIST C:\BAT\STAGE.BAT GOTO CALL_STAGE -REM STAGE.BAT doesn't exist - warn user ECHO [WARNING] C:\BAT\STAGE.BAT not found ECHO System files copied to C:\AUTOEXEC.NEW and C:\CONFIG.NEW -ECHO Manually copy these files after reboot: -ECHO COPY C:\AUTOEXEC.NEW C:\AUTOEXEC.BAT -ECHO COPY C:\CONFIG.NEW C:\CONFIG.SYS +ECHO Manually copy these files after reboot ECHO. GOTO UPDATE_COMPLETE @@ -219,10 +163,7 @@ GOTO END ECHO [OK] No system file updates ECHO. -REM ================================================================== -REM STEP 8: Update network client files (optional) -REM ================================================================== - +:CHECK_NET_FILES ECHO [4/4] Checking for network client updates... REM Check if NET directory exists on network @@ -232,9 +173,9 @@ REM Backup network client files ECHO Creating backups of C:\NET\... FOR %%F IN (C:\NET\*.DOS) DO COPY %%F %%~dpnF.BAK >NUL 2>NUL -REM Copy newer network files +REM Copy newer network files (only if newer) ECHO Copying updated network files... -XCOPY T:\COMMON\NET\*.* C:\NET\ /D /Y +XCOPY T:\COMMON\NET\*.* C:\NET\ /D /Y IF NOT ERRORLEVEL 1 ECHO [OK] Network client files updated GOTO UPDATE_COMPLETE @@ -242,39 +183,26 @@ GOTO UPDATE_COMPLETE ECHO [OK] No network client updates ECHO. -REM ================================================================== -REM STEP 9: Update complete -REM ================================================================== - :UPDATE_COMPLETE ECHO ============================================================== ECHO Update Complete ECHO ============================================================== ECHO. ECHO Files updated from: -ECHO T:\COMMON\ProdSW ??? C:\BAT -ECHO T:\%MACHINE%\ProdSW ??? C:\BAT and C:\ATE +ECHO T:\COMMON\ProdSW -> C:\BAT +ECHO T:\%MACHINE%\ProdSW -> C:\BAT and C:\ATE ECHO. ECHO Backup files (.BAK) created in C:\BAT ECHO. -ECHO System file updates: %SYSUPD% -IF "%SYSUPD%"=="1" ECHO [WARNING] Reboot required to apply system changes -IF "%SYSUPD%"=="1" ECHO Run REBOOT command or press Ctrl+Alt+Del +IF "%SYSUPD%"=="1" ECHO [WARNING] Reboot required to apply system changes +IF "%SYSUPD%"=="1" ECHO Run REBOOT or press Ctrl+Alt+Del ECHO. GOTO END -REM ================================================================== -REM ERROR HANDLERS -REM ================================================================== - :UPDATE_ERROR_INIT ECHO. ECHO [ERROR] Update initialization failed -ECHO. -ECHO Possible causes: -ECHO - Insufficient memory -ECHO - Invalid path -ECHO - Target drive not accessible +ECHO Possible causes: Insufficient memory, invalid path, or drive not accessible ECHO. PAUSE GOTO END @@ -282,17 +210,11 @@ GOTO END :UPDATE_ERROR_USER ECHO. ECHO [ERROR] Update terminated by user (Ctrl+C) -ECHO. -ECHO Update may be incomplete! -ECHO Run NWTOC again to complete update. +ECHO Update may be incomplete - run NWTOC again ECHO. PAUSE GOTO END -REM ================================================================== -REM CLEANUP AND EXIT -REM ================================================================== - :END REM Clean up environment variables SET SYSUPD= diff --git a/deploy-all-to-ad2.ps1 b/deploy-all-to-ad2.ps1 new file mode 100644 index 0000000..4e14206 --- /dev/null +++ b/deploy-all-to-ad2.ps1 @@ -0,0 +1,34 @@ +# Deploy all 4 fixed BAT files to AD2 via WinRM +$Password = ConvertTo-SecureString "Paper123!@#" -AsPlainText -Force +$Credential = New-Object System.Management.Automation.PSCredential("INTRANET\sysadmin", $Password) + +Write-Host "[INFO] Connecting to AD2..." -ForegroundColor Cyan +$Session = New-PSSession -ComputerName 192.168.0.6 -Credential $Credential -ErrorAction Stop +Write-Host "[OK] Connected to AD2" -ForegroundColor Green + +# Check/create directory on AD2 +Write-Host "[INFO] Checking directory structure..." -ForegroundColor Cyan +Invoke-Command -Session $Session -ScriptBlock { + if (-not (Test-Path "C:\Shares\test\COMMON\ProdSW")) { + New-Item -Path "C:\Shares\test\COMMON\ProdSW" -ItemType Directory -Force | Out-Null + } +} + +Write-Host "[INFO] Copying AUTOEXEC.BAT..." -ForegroundColor Cyan +Copy-Item "D:\ClaudeTools\AUTOEXEC.BAT" -Destination "C:\Shares\test\COMMON\ProdSW\" -ToSession $Session -ErrorAction Stop +Write-Host "[OK] AUTOEXEC.BAT deployed" -ForegroundColor Green + +Write-Host "[INFO] Copying NWTOC.BAT..." -ForegroundColor Cyan +Copy-Item "D:\ClaudeTools\NWTOC.BAT" -Destination "C:\Shares\test\COMMON\ProdSW\" -ToSession $Session -ErrorAction Stop +Write-Host "[OK] NWTOC.BAT deployed" -ForegroundColor Green + +Write-Host "[INFO] Copying CTONW.BAT..." -ForegroundColor Cyan +Copy-Item "D:\ClaudeTools\CTONW.BAT" -Destination "C:\Shares\test\COMMON\ProdSW\" -ToSession $Session -ErrorAction Stop +Write-Host "[OK] CTONW.BAT deployed" -ForegroundColor Green + +Write-Host "[INFO] Copying DEPLOY.BAT..." -ForegroundColor Cyan +Copy-Item "D:\ClaudeTools\DEPLOY.BAT" -Destination "C:\Shares\test\COMMON\ProdSW\" -ToSession $Session -ErrorAction Stop +Write-Host "[OK] DEPLOY.BAT deployed" -ForegroundColor Green + +Remove-PSSession $Session +Write-Host "[SUCCESS] All 4 files deployed to AD2:C:\Shares\test\COMMON\ProdSW\" -ForegroundColor Green