-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSTART.bat
More file actions
399 lines (338 loc) · 15 KB
/
Copy pathSTART.bat
File metadata and controls
399 lines (338 loc) · 15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
REM Program Description
REM Copyright by Pegatron, Build Date:2016-11-02 Rev1.01f, Diagnostics
REM ============================================================
@echo on
IF /I "%~1"=="__UPLOAD_GRR_WORKER" GOTO UPLOAD_GRR_WORKER
IF EXIST op.dat DEL op.dat
REM ===== Version Setting =====
SET Ver=1.00a
SET DateVer=20260804
REM ===========================
SET TYPE=%1
SET MODE=%2
SET TEST_MODE=Online
IF "%MODE%" EQU "D" SET TEST_MODE=Offline
SET PROJECT=ML
SET SUITE_NAME=ML_PostProcess
SET BUILD=MP
SET CSV_NAME=%PROJECT%_%TYPE%.csv
SET CFG_NAME=config.xml
IF "%DebugXML%" equ "True" SET CFG_NAME=config_Deb.xml
SET SN_LEN=12
SET FOLDER=%SUITE_NAME%_%Ver%_%DateVer%
SET on_Drive=N:
SET SFIS_IP=172.24.248.128
SET Connect=FALSE
SET "GOOGLE_DRIVE_URL=https://drive.google.com/drive/folders/1VuN9N7JXBBuHByXVgUjm1jEw18wSW_N6"
SET "GOOGLE_DRIVE_UPLOAD_BAT=%~dp0%FOLDER%\Tools\upload_Folder_to_google_drive.bat"
FOR /F "usebackq delims=" %%P IN (`powershell.exe -NoProfile -Command "[Environment]::GetEnvironmentVariable('Path','Machine')+';'+[Environment]::GetEnvironmentVariable('Path','User')"`) DO SET "PATH=%%P"
SET "DESKTOP_DIR="
FOR /F "usebackq delims=" %%D IN (`powershell.exe -NoProfile -Command "[Environment]::GetFolderPath('Desktop')"`) DO SET "DESKTOP_DIR=%%D"
IF NOT DEFINED DESKTOP_DIR SET "DESKTOP_DIR=%USERPROFILE%\Desktop"
SET "LOG_ROOT=%DESKTOP_DIR%\logs"
SET "LOG_ARCHIVE_ROOT=C:\logs"
SET /a SCAN=0
:START_OP
IF NOT EXIST C:\MFGlog\%TYPE%log\event mkdir C:\MFGlog\%TYPE%log\event
IF EXIST MISClog.dat DEL MISClog.dat
IF "%MODE%" NEQ "D" ECHO C:\MISClog>MISClog.dat
SET Result=
cd %~dp0
IF EXIST %CSV_NAME% DEL %CSV_NAME%
IF EXIST *KoreVer.log DEL *KoreVer.log
IF EXIST PN.log DEL PN.log
IF EXIST PN.txt DEL PN.txt
IF EXIST op.dat GOTO START
DiagPGM\Chopper-diag.exe /SB "^[Ss][0-9]{2}[0-9,AaBbCc][0-9]{5}$" -SIF op.jpg -EMF sb_msg_OP.msgdat -SFN ..\OP.dat -FS 30 -st "Please scan operator number\nPlease Enter Operator Number" -sbsize 800 300
IF %ERRORLEVEL% NEQ 0 GOTO START_OP
:START
DiagPGM\Screen-diag.exe -nl -enter /SS 55 "<br>Please connect the device.<br> <br>Press [Enter] to start the test." 0xFFFFFF -bg 0x223366
adb get-state 2>nul | findstr /X /C:"device" >nul
IF %ERRORLEVEL% NEQ 0 GOTO START
SET ScanTime=0
:GetDutSN
REM Get SN from DUT
IF EXIST SN.dat DEL SN.dat
REM Make sure the DUT is connected over adb, then read its serial number.
adb wait-for-device
TIMEOUT 1
SET "DUT_SN="
FOR /F "usebackq delims=" %%S IN (`adb get-serialno 2^>nul`) DO SET "DUT_SN=%%S"
REM Retry if no valid serial was returned.
IF NOT DEFINED DUT_SN GOTO GetDutSN
IF /I "%DUT_SN%"=="unknown" GOTO GetDutSN
REM Ensure the serial number is exactly 12 characters.
IF NOT "%DUT_SN:~12%"=="" GOTO GetDutSN
IF "%DUT_SN:~11,1%"=="" GOTO GetDutSN
ECHO %DUT_SN%>SN.dat
IF %ERRORLEVEL% EQU 0 GOTO SetVar
GOTO GetDutSN
:setvar
IF EXIST OP.dat SET /p OP=<OP.dat
IF EXIST SN.dat SET /p SN=<SN.dat
SET "LOG_IDENTIFIER="
FOR /F "usebackq delims=" %%H IN (`adb shell getprop ro.serialno 2^>nul`) DO SET "LOG_IDENTIFIER=%%H"
IF NOT DEFINED LOG_IDENTIFIER SET "LOG_IDENTIFIER=%SN%"
SET "GOOGLE_DRIVE_DATE="
FOR /F "usebackq delims=" %%D IN (`powershell.exe -NoProfile -Command "Get-Date -Format yyyyMMdd"`) DO SET "GOOGLE_DRIVE_DATE=%%D"
COPY OP.dat DiagPGM\OP.dat
COPY SN.dat DiagPGM\SN.dat
IF NOT EXIST %on_Drive% net use /delete %on_Drive%
:chkroute
python RESTSFIS-diag\RESTSFIS-diag.py /C -sn %SN%
IF %ERRORLEVEL% EQU 0 GOTO Non_TID
GOTO CRfail
:CRfail
REM Check Route Fail
DiagPGM\Screen-diag.exe -nl -enter /SS 55 "SFIS Error - Check Route Failure !!<br>Please check DUT route status !! <br>See SFISLOG\YYYYMMDD.log for details.<br>OP: %op% <br> SN: %SN%" 0xFFFFFF -bg 0x882222
GOTO InteruptErr
:Non_TID
SET tid=NOTID
echo NOTID>tid.dat
:getconfig
IF "%SFISCONN%" EQU "True" Call config.bat 1 online %FOLDER%
IF "%SFISCONN%" NEQ "True" Call config.bat 1 offline %FOLDER%
IF "%SFISCONN%" NEQ "True" GOTO NoSFISTid
GOTO clean
:NoSFISTid
echo Debug>tid.dat
:clean
IF EXIST %FOLDER% GOTO enterTS
DiagPGM\Screen-diag.exe -enter /ss 50 "Please check folder "%FOLDER%" exist <br> <br>Press [Enter] to Jig Up" 0xFFFFFF -bg 0xFF0000
GOTO InteruptErr
:enterTS
rd /s /q %FOLDER%\TypeCTester\log_csv\
rd /s /q %FOLDER%\TypeCTester\log\
cd %~dp0
cd %FOLDER%
rd /s /q Tools\DeviceBridge\MISClog
rmdir /s /q Tools\Temp
rd /s /q Tools\MISClog
if not exist Tools\Temp mkdir Tools\Temp
del online.flg
IF "%DebugXML%" neq "True" echo flg > online.flg
IF "%DebugXML%" equ "True" echo debug>debug.flg
IF EXIST %CSV_NAME% DEL %CSV_NAME%
IF EXIST .chopper RMDIR /S /Q .chopper
IF EXIST *.log DEL *.log
IF EXIST *.wav DEL *.wav
IF EXIST *.dat DEL *.dat
IF EXIST deviceID.ini DEL deviceID.ini
IF EXIST err_string.* DEL err_string.*
move ..\*.dat .
copy op.dat ..
copy ..\Config.ini .
copy ..\deviceID.ini .
:test
set /p SN=<SN.dat
echo %SN%>SN.DAT
cd %~dp0%FOLDER%
IF DEFINED TEST_RUN_MARKER DEL /Q "%TEST_RUN_MARKER%" 2>nul
SET "TEST_RUN_MARKER=%TEMP%\ML_PostProcess_run_%RANDOM%_%RANDOM%.tmp"
TYPE NUL >"%TEST_RUN_MARKER%"
Chopper-diag.exe -NoHotKey -LD TcsTestSuiteDuration %PROJECT% -c -si -CGV -opf op.dat -SNF SN.dat -sip -TSRID -lock -RL -f %CFG_NAME% -as -ae -SNP "^[0-9,A-Z]{%SN_LEN%}$" -tidf tid.dat -lf ..\DiagPGM\tidlog.xml /r
IF %ERRORLEVEL% EQU 0 GOTO TestPass
IF %ERRORLEVEL% EQU 255 GOTO TestFail
IF %ERRORLEVEL% NEQ 0 pause
IF %ERRORLEVEL% EQU 250 GOTO InteruptErr
IF %ERRORLEVEL% EQU 251 GOTO InteruptErr
IF %ERRORLEVEL% EQU 252 GOTO InteruptErr
IF %ERRORLEVEL% EQU 253 GOTO InteruptErr
IF %ERRORLEVEL% EQU 254 GOTO InteruptErr
:InteruptErr
ECHO Interupt Error
GOTO START
:TestFail
powershell.exe -NoProfile -ExecutionPolicy Bypass -File ".\generate_ml_robocal.ps1" -sn %SN% -OverwriteTemplate -AttachCsv ML_Postprocess.csv
find /i "%PROJECT%,80" %CSV_NAME%
IF %ERRORLEVEL% equ 0 goto ShowFail
find /i "%PROJECT%,8F" %CSV_NAME%
IF %ERRORLEVEL% equ 0 goto ShowFail
find /i "%PROJECT%,C" %CSV_NAME%
IF %ERRORLEVEL% equ 0 goto ShowFail
find /i "%PROJECT%,N" %CSV_NAME%
IF %ERRORLEVEL% equ 0 goto ShowFail
find /i "%PROJECT%,M" %CSV_NAME%
IF %ERRORLEVEL% equ 0 goto ShowFail
find /i "%PROJECT%,0x" %CSV_NAME%
IF %ERRORLEVEL% equ 0 goto ShowFail
cls
call Screen-diag.exe -enter /ss 70 "unexpected exit or unknow error code happens." 0xFFFFFF -bg 0xBB2222
goto START
:ShowFail
SET Result=FAIL
cd %~dp0%FOLDER%
Tools\UILogResult-auto.exe -log %CSV_NAME% /F
CALL :UPLOAD_GRR_AND_WAIT_DUT_DISCONNECT
GOTO jigup
:TestPass
powershell.exe -NoProfile -ExecutionPolicy Bypass -File ".\generate_ml_robocal.ps1" -sn %SN% -OverwriteTemplate -AttachCsv ML_Postprocess.csv
cd %~dp0
cd %FOLDER%
SET Result=PASS
:jigup
SET /p TSRID=<TSRID.dat
cd %~dp0%FOLDER%
:DateCHK
Tools\DateChk-auto.exe /FILE %CSV_NAME%
IF %ERRORLEVEL% NEQ 0 GOTO CHKFAIL
goto Backup
:CHKFAIL
echo %date%_%time% ***(%SN%_%TSRID%)-%CSV_NAME% Time Sync Error,*** >> C:\MFGlog\%TYPE%log\event\_DateChkerror.log
type DateChk.log >> C:\MFGlog\%TYPE%log\event\_DateChkerror.log
Tools\Screen-diag.exe -nl -enter /SS 40 "Log Time Error!!<br> <br> Log time is out of sync for SN:%SN%<br>This log will not upload or back up.<br> Please check time sync and retest." 0xFFFFFF -bg 0x882222
GOTO InteruptErr
:Backup
LogTransfer-auto.exe -nl /de
call setdate.bat
SET Dest=C:\MFGlog\%TYPE%log\Online
SET MISC=C:\MISClog\%PROJECT%\%BUILD%\Online\%datepath%\%Result%
SET /p TSRID=<TSRID.dat
IF "%MODE%" EQU "D" SET Dest=C:\MFGlog\%TYPE%log\Debug
IF "%MODE%" EQU "D" SET MISC=C:\MISClog\%PROJECT%\%BUILD%\Debug\%datepath%\%Result%
COPY /y /v %CSV_NAME% .\tools\Temp\
cd tools
del .\MISCLog.zip
rename temp MISCLog
7z\7za.exe a -tzip .\MISCLog.zip .\MISCLog
IF NOT EXIST %MISC% MKDIR %MISC%
copy /y .\MISCLog.zip %MISC%\%SN%_%TSRID%.zip
cd..
Tools\LogTransfer-auto.exe -nl /L %CSV_NAME%
IF "%MODE%" EQU "D" GOTO END
cd %~dp0%FOLDER%
IF %Result% EQU FAIL goto DUT1_UP_fail
Tools\LogTransfer-auto.exe -nl -tester -F PASS /L %CSV_NAME%
goto SFIS_UP
:DUT1_UP_fail
Tools\LogTransfer-auto.exe -nl -tester -F FAIL /L %CSV_NAME%
:SFIS_UP
SET SFISerror=0
:SFIS
python RESTSFIS-diag.py /UP -log %CSV_NAME%
IF %ERRORLEVEL% NEQ 0 GOTO SFIS_fail
GOTO END
:SFIS_FAIL
SET /a SFISerror=%SFISerror% + 1
echo SFIS Upload Fail
Tools\Screen-diag.exe -nl -enter /ss 70 "SFIS Upload FAIL(%SFISerror%)! <br> <br>Please Check SFIS!<br> <br>Press [Enter] to Retry" 0xFFFFFF -bg 0xBB2222
GOTO SFIS
:END
IF "%Result%" NEQ "PASS" GOTO Record
IF EXIST TSRID.dat DEL TSRID.dat
Tools\Screen-diag.exe -nl -enter /ss 200 "PASS" 0xFFFFFF -bg 0x008800
Chopper-diag.exe /delay 500 2>nul
taskkill /IM Screen-diag.exe
CALL :UPLOAD_GRR_AND_WAIT_DUT_DISCONNECT
GOTO Record
:UPLOAD_GRR_AND_WAIT_DUT_DISCONNECT
REM Archive this run's logs to C:\logs, start the Google Drive upload in the background, then wait only for DUT disconnect.
CALL :ARCHIVE_COMPLETED_LOGS
SET "LOG_ARCHIVE_RESULT=%ERRORLEVEL%"
DEL /Q "%TEST_RUN_MARKER%" 2>nul
SET "TEST_RUN_MARKER="
IF NOT "%LOG_ARCHIVE_RESULT%" EQU "0" EXIT /B 1
START "" /B CMD.EXE /D /C CALL "%~f0" __UPLOAD_GRR_WORKER
CALL :WAIT_DUT_DISCONNECT
EXIT /B 0
:ARCHIVE_COMPLETED_LOGS
IF /I "%TYPE%"=="RoboCal" GOTO ARCHIVE_COMPLETED_LOGS_RUN
IF /I "%TYPE%"=="Post" GOTO ARCHIVE_COMPLETED_LOGS_RUN
IF /I "%TYPE%"=="PostProcess" GOTO ARCHIVE_COMPLETED_LOGS_RUN
EXIT /B 0
:ARCHIVE_COMPLETED_LOGS_RUN
SET "LOG_ARCHIVE_SOURCE=%LOG_ROOT%\%LOG_IDENTIFIER%"
SET "LOG_ARCHIVE_CATEGORY=Robocal"
IF /I "%TYPE%"=="Post" SET "LOG_ARCHIVE_CATEGORY=PostProcess"
IF /I "%TYPE%"=="PostProcess" SET "LOG_ARCHIVE_CATEGORY=PostProcess"
SET "LOG_ARCHIVE_DESTINATION=%LOG_ARCHIVE_ROOT%\%LOG_IDENTIFIER%\%LOG_ARCHIVE_CATEGORY%"
SET "LOG_ARCHIVE_ROBOCOPY_LOG=%TEMP%\ML_PostProces_archive_%RANDOM%_%RANDOM%.log"
IF NOT EXIST "%LOG_ARCHIVE_DESTINATION%\" MKDIR "%LOG_ARCHIVE_DESTINATION%" 2>nul
IF NOT EXIST "%LOG_ARCHIVE_DESTINATION%\" GOTO ARCHIVE_COMPLETED_LOGS_FAIL
CALL :ARCHIVE_LOG_COMPONENT DGC
IF %ERRORLEVEL% NEQ 0 GOTO ARCHIVE_COMPLETED_LOGS_FAIL
CALL :ARCHIVE_LOG_COMPONENT DCC
IF %ERRORLEVEL% NEQ 0 GOTO ARCHIVE_COMPLETED_LOGS_FAIL
IF NOT EXIST "%LOG_ARCHIVE_SOURCE%\" GOTO ARCHIVE_CURRENT_ROBOCAL_OUTPUT
REM Copy (tolerant of logs RoboCal may still hold open), then remove the source best-effort.
ROBOCOPY "%LOG_ARCHIVE_SOURCE%" "%LOG_ARCHIVE_DESTINATION%" /E /R:3 /W:5 /NFL /NDL /NJH /NJS /NP >"%LOG_ARCHIVE_ROBOCOPY_LOG%"
SET "LOG_ARCHIVE_EXITCODE=%ERRORLEVEL%"
IF %LOG_ARCHIVE_EXITCODE% GEQ 8 GOTO ARCHIVE_COMPLETED_LOGS_FAIL
DEL /Q "%LOG_ARCHIVE_ROBOCOPY_LOG%" 2>nul
RD /S /Q "%LOG_ARCHIVE_SOURCE%" 2>nul
:ARCHIVE_CURRENT_ROBOCAL_OUTPUT
SET "ROBOCAL_OUTPUT_SOURCE=%LOG_ROOT%\robocal_output"
SET "ROBOCAL_OUTPUT_DESTINATION=%LOG_ARCHIVE_DESTINATION%"
SET "ROBOCAL_OUTPUT_ARCHIVE_COUNT=0"
SET "ROBOCAL_OUTPUT_ARCHIVE_COUNT_FILE=%TEMP%\ML_PostProces_robocal_count_%RANDOM%_%RANDOM%.tmp"
IF NOT EXIST "%TEST_RUN_MARKER%" EXIT /B 0
DEL /Q "%ROBOCAL_OUTPUT_ARCHIVE_COUNT_FILE%" 2>nul
powershell.exe -NoProfile -Command "$marker=(Get-Item -LiteralPath $env:TEST_RUN_MARKER).LastWriteTimeUtc; $source=$env:ROBOCAL_OUTPUT_SOURCE; $destination=$env:ROBOCAL_OUTPUT_DESTINATION; $count=0; $failed=$false; if(Test-Path -LiteralPath $source){foreach($file in Get-ChildItem -LiteralPath $source -Recurse -File){if($file.LastWriteTimeUtc -ge $marker){$relative=$file.FullName.Substring($source.Length).TrimStart('\'); $target=Join-Path $destination $relative; try{New-Item -ItemType Directory -Path (Split-Path -Parent $target) -Force -ErrorAction Stop | Out-Null; Copy-Item -LiteralPath $file.FullName -Destination $target -Force -ErrorAction Stop; $archived=Get-Item -LiteralPath $target -ErrorAction Stop; if($archived.Length -ne $file.Length){throw 'Archived file size does not match the source'}; $count++}catch{Write-Error ('Failed to archive ' + $file.FullName + ': ' + $_.Exception.Message); $failed=$true}}}}; Set-Content -LiteralPath $env:ROBOCAL_OUTPUT_ARCHIVE_COUNT_FILE -Value $count -NoNewline; if($failed){exit 1}"
SET "ROBOCAL_OUTPUT_ARCHIVE_EXITCODE=%ERRORLEVEL%"
IF EXIST "%ROBOCAL_OUTPUT_ARCHIVE_COUNT_FILE%" SET /P ROBOCAL_OUTPUT_ARCHIVE_COUNT=<"%ROBOCAL_OUTPUT_ARCHIVE_COUNT_FILE%"
DEL /Q "%ROBOCAL_OUTPUT_ARCHIVE_COUNT_FILE%" 2>nul
IF NOT "%ROBOCAL_OUTPUT_ARCHIVE_EXITCODE%" EQU "0" (
SET "LOG_ARCHIVE_SOURCE=%ROBOCAL_OUTPUT_SOURCE%"
EXIT /B 1
)
EXIT /B 0
:ARCHIVE_LOG_COMPONENT
SET "LOG_ARCHIVE_COMPONENT_SOURCE=%LOG_ARCHIVE_ROOT%\%LOG_IDENTIFIER%\%~1"
IF NOT EXIST "%LOG_ARCHIVE_COMPONENT_SOURCE%\" EXIT /B 0
ROBOCOPY "%LOG_ARCHIVE_COMPONENT_SOURCE%" "%LOG_ARCHIVE_DESTINATION%\%~1" /E /MOVE /R:3 /W:5 /NFL /NDL /NJH /NJS /NP >"%LOG_ARCHIVE_ROBOCOPY_LOG%"
SET "LOG_ARCHIVE_EXITCODE=%ERRORLEVEL%"
IF %LOG_ARCHIVE_EXITCODE% GEQ 8 (
SET "LOG_ARCHIVE_SOURCE=%LOG_ARCHIVE_COMPONENT_SOURCE%"
EXIT /B 1
)
DEL /Q "%LOG_ARCHIVE_ROBOCOPY_LOG%" 2>nul
EXIT /B 0
:ARCHIVE_COMPLETED_LOGS_FAIL
Tools\Screen-diag.exe -nl -enter /SS 40 "Log archive FAIL!!<br><br>Source: %LOG_ARCHIVE_SOURCE%<br>Destination: %LOG_ARCHIVE_DESTINATION%<br>See %LOG_ARCHIVE_ROBOCOPY_LOG% for details.<br><br>Press [Enter] to continue." 0xFFFFFF -bg 0x882222
EXIT /B 1
:WAIT_DUT_DISCONNECT
START "" Tools\Screen-diag.exe -nl /SS 55 "Please disconnect the device from the computer.<br><br>Google Drive upload is running in the background..." 0xFFFFFF -bg 0xFF7F25
TIMEOUT /T 1 /NOBREAK >nul
:WAIT_DUT_DISCONNECT_CHECK
SET "ADB_DEVICE_CONNECTED="
adb devices >"%TEMP%\ML_PostProces_adb_devices.tmp" 2>nul
IF %ERRORLEVEL% NEQ 0 GOTO WAIT_DUT_DISCONNECT_RETRY
FOR /F "usebackq skip=1 tokens=1" %%A IN ("%TEMP%\ML_PostProces_adb_devices.tmp") DO SET "ADB_DEVICE_CONNECTED=TRUE"
DEL /Q "%TEMP%\ML_PostProces_adb_devices.tmp" 2>nul
IF DEFINED ADB_DEVICE_CONNECTED GOTO WAIT_DUT_DISCONNECT_RETRY
taskkill /IM Screen-diag.exe
EXIT /B 0
:WAIT_DUT_DISCONNECT_RETRY
DEL /Q "%TEMP%\ML_PostProces_adb_devices.tmp" 2>nul
TIMEOUT /T 1 /NOBREAK >nul
GOTO WAIT_DUT_DISCONNECT_CHECK
:UPLOAD_GRR_TO_GOOGLE_DRIVE
SET "GOOGLE_DRIVE_UPLOAD_FAILED=0"
SET "GOOGLE_DRIVE_SOURCE=%LOG_ARCHIVE_ROOT%\%LOG_IDENTIFIER%"
IF NOT EXIST "%GOOGLE_DRIVE_SOURCE%\" ECHO Google Drive folder upload skipped: "%GOOGLE_DRIVE_SOURCE%" does not exist.
IF NOT EXIST "%GOOGLE_DRIVE_SOURCE%\" GOTO GOOGLE_DRIVE_UPLOAD_FINISH
CALL "%GOOGLE_DRIVE_UPLOAD_BAT%" "%GOOGLE_DRIVE_SOURCE%" "%GOOGLE_DRIVE_URL%" "gdrive" "%GOOGLE_DRIVE_DATE%/%LOG_IDENTIFIER%"
IF %ERRORLEVEL% NEQ 0 SET "GOOGLE_DRIVE_UPLOAD_FAILED=1"
:GOOGLE_DRIVE_UPLOAD_FINISH
IF "%GOOGLE_DRIVE_UPLOAD_FAILED%" EQU "0" EXIT /B 0
IF NOT EXIST "C:\MFGlog\%TYPE%log\event" MKDIR "C:\MFGlog\%TYPE%log\event" 2>nul
>>"C:\MFGlog\%TYPE%log\event\_GDriveUploadError.log" ECHO %date%_%time% Google Drive upload FAIL - Log ID: %LOG_IDENTIFIER% Source: %GOOGLE_DRIVE_SOURCE%
EXIT /B 1
:UPLOAD_GRR_WORKER
CALL :UPLOAD_GRR_TO_GOOGLE_DRIVE
EXIT /B 0
:Record
IF "%MODE%" EQU "D" GOTO Record1
cd %~dp0
if exist %CSV_NAME% del %CSV_NAME%
copy %FOLDER%\%CSV_NAME% %CSV_NAME%
:Record1
cd %~dp0
IF "%MODE%" EQU "D" GOTO START
:chk2Aroute
IF "%Result%" EQU "PASS" GOTO START
Start DiagPGM\Screen-diag.exe -enter /SS 55 "Checking SN %SN% SFIS 2A status<br>Please wait... <br> <br>Checking 2A Status from SFIS<br>Please wait a moment..." 0xFFFFFF -bg 0x223366
python RESTSFIS-diag\RESTSFIS-diag.py /C -sn %SN%
IF %ERRORLEVEL% EQU 0 DiagPGM\Screen-diag.exe -enter /SS 40 "SN (2A) not allowed!!<br> <br>Please change another tester to do SN (2A) test!!<br><br>Press [ENTER] to continue..." 0xFFFFFF -bg 0x773399
taskkill /IM Screen-diag.exe
GOTO START