| [ | |
| { | |
| "cmd": [], | |
| "name": "ios_debug_symbol_doctor" | |
| }, | |
| { | |
| "cmd": [], | |
| "name": "ios_debug_symbol_doctor.Checkout flutter/cocoon", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "python3", | |
| "-u", | |
| "RECIPE_MODULE[depot_tools::git]/resources/git_setup.py", | |
| "--path", | |
| "[CACHE]/cocoon", | |
| "--url", | |
| "https://flutter.googlesource.com/mirrors/cocoon" | |
| ], | |
| "name": "ios_debug_symbol_doctor.Checkout flutter/cocoon.git setup", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "git", | |
| "fetch", | |
| "origin", | |
| "main", | |
| "--recurse-submodules", | |
| "--progress", | |
| "--tags" | |
| ], | |
| "cwd": "[CACHE]/cocoon", | |
| "env": { | |
| "PATH": "RECIPE_REPO[depot_tools]:<PATH>" | |
| }, | |
| "infra_step": true, | |
| "name": "ios_debug_symbol_doctor.Checkout flutter/cocoon.git fetch", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "git", | |
| "checkout", | |
| "-f", | |
| "FETCH_HEAD" | |
| ], | |
| "cwd": "[CACHE]/cocoon", | |
| "infra_step": true, | |
| "name": "ios_debug_symbol_doctor.Checkout flutter/cocoon.git checkout", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "git", | |
| "rev-parse", | |
| "HEAD" | |
| ], | |
| "cwd": "[CACHE]/cocoon", | |
| "infra_step": true, | |
| "name": "ios_debug_symbol_doctor.Checkout flutter/cocoon.read revision", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@", | |
| "@@@STEP_TEXT@<br/>checked out 'deadbeef'<br/>@@@", | |
| "@@@SET_BUILD_PROPERTY@got_revision@\"deadbeef\"@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "git", | |
| "clean", | |
| "-f", | |
| "-d", | |
| "-x" | |
| ], | |
| "cwd": "[CACHE]/cocoon", | |
| "infra_step": true, | |
| "name": "ios_debug_symbol_doctor.Checkout flutter/cocoon.git clean", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "git", | |
| "submodule", | |
| "sync" | |
| ], | |
| "cwd": "[CACHE]/cocoon", | |
| "infra_step": true, | |
| "name": "ios_debug_symbol_doctor.Checkout flutter/cocoon.submodule sync", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "git", | |
| "submodule", | |
| "update", | |
| "--init", | |
| "--recursive" | |
| ], | |
| "cwd": "[CACHE]/cocoon", | |
| "infra_step": true, | |
| "name": "ios_debug_symbol_doctor.Checkout flutter/cocoon.submodule update", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "dart", | |
| "pub", | |
| "get" | |
| ], | |
| "cwd": "[CACHE]/cocoon/cipd_packages/device_doctor", | |
| "infra_step": true, | |
| "name": "ios_debug_symbol_doctor.pub get device_doctor", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "dart", | |
| "[CACHE]/cocoon/cipd_packages/device_doctor/bin/ios_debug_symbol_doctor.dart", | |
| "diagnose" | |
| ], | |
| "cwd": "[CACHE]/cocoon/cipd_packages/device_doctor", | |
| "infra_step": true, | |
| "name": "ios_debug_symbol_doctor.diagnose", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [], | |
| "name": "Killing Processes" | |
| }, | |
| { | |
| "cmd": [ | |
| "killall", | |
| "-9", | |
| "-v", | |
| "dart" | |
| ], | |
| "infra_step": true, | |
| "name": "Killing Processes.kill dart", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "killall", | |
| "-9", | |
| "-v", | |
| "flutter" | |
| ], | |
| "infra_step": true, | |
| "name": "Killing Processes.kill flutter", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "killall", | |
| "-9", | |
| "-v", | |
| "Chrome" | |
| ], | |
| "infra_step": true, | |
| "name": "Killing Processes.kill Chrome", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "killall", | |
| "-9", | |
| "-v", | |
| "Safari" | |
| ], | |
| "infra_step": true, | |
| "name": "Killing Processes.kill Safari", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "killall", | |
| "-9", | |
| "-v", | |
| "java" | |
| ], | |
| "infra_step": true, | |
| "name": "Killing Processes.kill java", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "killall", | |
| "-9", | |
| "-v", | |
| "adb" | |
| ], | |
| "infra_step": true, | |
| "name": "Killing Processes.kill adb", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "killall", | |
| "-9", | |
| "-v", | |
| "Xcode" | |
| ], | |
| "infra_step": true, | |
| "name": "Killing Processes.kill Xcode", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "killall", | |
| "-9", | |
| "-v", | |
| "QuickTime Player" | |
| ], | |
| "infra_step": true, | |
| "name": "Killing Processes.kill QuickTime", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "top", | |
| "-l", | |
| "3", | |
| "-o", | |
| "mem" | |
| ], | |
| "infra_step": true, | |
| "name": "OS info" | |
| }, | |
| { | |
| "cmd": [ | |
| "xattr", | |
| "/opt/s/w/ir/cipd_bin_packages/python3" | |
| ], | |
| "infra_step": true, | |
| "name": "python3 xattr info" | |
| }, | |
| { | |
| "cmd": [ | |
| "xattr", | |
| "/opt/s/w/ir/cipd_bin_packages/git" | |
| ], | |
| "infra_step": true, | |
| "name": "git xattr info" | |
| }, | |
| { | |
| "cmd": [ | |
| "vpython3", | |
| "-u", | |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", | |
| "--json-output", | |
| "/path/to/tmp/json", | |
| "rmtree", | |
| "[CLEANUP]/tmp_tmp_1" | |
| ], | |
| "infra_step": true, | |
| "name": "temp dir for Create temp directory" | |
| }, | |
| { | |
| "cmd": [ | |
| "rm", | |
| "-rf", | |
| "[HOME]/Library/Developer/Xcode/DerivedData" | |
| ], | |
| "infra_step": true, | |
| "name": "Delete mac deriveddata" | |
| }, | |
| { | |
| "cmd": [], | |
| "name": "Shutdown simulators" | |
| }, | |
| { | |
| "cmd": [ | |
| "sudo", | |
| "xcrun", | |
| "simctl", | |
| "shutdown", | |
| "all" | |
| ], | |
| "name": "Shutdown simulators.Shutdown simulators", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "sudo", | |
| "xcrun", | |
| "simctl", | |
| "erase", | |
| "all" | |
| ], | |
| "name": "Shutdown simulators.Erase simulators", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [], | |
| "name": "Prepare iOS device", | |
| "~followup_annotations": [ | |
| "@@@STEP_EXCEPTION@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "idevice_id", | |
| "-l" | |
| ], | |
| "name": "Prepare iOS device.Find device id", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "xcrun", | |
| "devicectl", | |
| "list", | |
| "devices", | |
| "-v" | |
| ], | |
| "name": "Prepare iOS device.List CoreDevices", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@", | |
| "@@@STEP_LOG_LINE@raw_io.output_text@123456789@@@", | |
| "@@@STEP_LOG_END@raw_io.output_text@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [], | |
| "name": "Prepare iOS device.Checkout flutter/cocoon", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "python3", | |
| "-u", | |
| "RECIPE_MODULE[depot_tools::git]/resources/git_setup.py", | |
| "--path", | |
| "[CACHE]/cocoon", | |
| "--url", | |
| "https://flutter.googlesource.com/mirrors/cocoon" | |
| ], | |
| "name": "Prepare iOS device.Checkout flutter/cocoon.git setup", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "git", | |
| "fetch", | |
| "origin", | |
| "main", | |
| "--recurse-submodules", | |
| "--progress", | |
| "--tags" | |
| ], | |
| "cwd": "[CACHE]/cocoon", | |
| "env": { | |
| "PATH": "RECIPE_REPO[depot_tools]:<PATH>" | |
| }, | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Checkout flutter/cocoon.git fetch", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "git", | |
| "checkout", | |
| "-f", | |
| "FETCH_HEAD" | |
| ], | |
| "cwd": "[CACHE]/cocoon", | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Checkout flutter/cocoon.git checkout", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "git", | |
| "rev-parse", | |
| "HEAD" | |
| ], | |
| "cwd": "[CACHE]/cocoon", | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Checkout flutter/cocoon.read revision", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@", | |
| "@@@STEP_TEXT@<br/>checked out 'deadbeef'<br/>@@@", | |
| "@@@SET_BUILD_PROPERTY@got_revision@\"deadbeef\"@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "git", | |
| "clean", | |
| "-f", | |
| "-d", | |
| "-x" | |
| ], | |
| "cwd": "[CACHE]/cocoon", | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Checkout flutter/cocoon.git clean", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "git", | |
| "submodule", | |
| "sync" | |
| ], | |
| "cwd": "[CACHE]/cocoon", | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Checkout flutter/cocoon.submodule sync", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "git", | |
| "submodule", | |
| "update", | |
| "--init", | |
| "--recursive" | |
| ], | |
| "cwd": "[CACHE]/cocoon", | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Checkout flutter/cocoon.submodule update", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [], | |
| "name": "Prepare iOS device.Wait for device to connect", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@", | |
| "@@@STEP_EXCEPTION@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "xcrun", | |
| "devicectl", | |
| "list", | |
| "devices", | |
| "--filter", | |
| "connectionProperties.transportType CONTAINS 'wired'", | |
| "-v" | |
| ], | |
| "name": "Prepare iOS device.Wait for device to connect.Find wired CoreDevices", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@", | |
| "@@@STEP_LOG_END@raw_io.output_text@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "open", | |
| "[CACHE]/cocoon/cipd_packages/device_doctor/tool/infra-dialog/infra-dialog.xcodeproj" | |
| ], | |
| "name": "Prepare iOS device.Wait for device to connect.Open infra-dialog in Xcode", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [], | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [], | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Dismiss QuickTime automation dialogs", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@3@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "ls", | |
| "Users/fakeuser/Library/Application Support/com.apple.TCC" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Dismiss QuickTime automation dialogs.Find TCC directory", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@4@@@", | |
| "@@@STEP_LOG_LINE@raw_io.output_text@TCC.db@@@", | |
| "@@@STEP_LOG_END@raw_io.output_text@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "sqlite3", | |
| "Users/fakeuser/Library/Application Support/com.apple.TCC/TCC.db", | |
| "SELECT service, client, client_type, auth_value, auth_reason, indirect_object_identifier_type, indirect_object_identifier, flags, last_modified FROM access WHERE service = \"kTCCServiceAppleEvents\"" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Dismiss QuickTime automation dialogs.Query TCC db", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@4@@@", | |
| "@@@STEP_LOG_END@raw_io.output_text@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "cp", | |
| "Users/fakeuser/Library/Application Support/com.apple.TCC/TCC.db", | |
| "Users/fakeuser/Library/Application Support/com.apple.TCC/TCC.db.backup" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Dismiss QuickTime automation dialogs.Create backup db", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@4@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "osascript", | |
| "-e", | |
| "tell app \"QuickTime Player\"", | |
| "-e", | |
| "launch", | |
| "-e", | |
| "count window", | |
| "-e", | |
| "end tell" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Dismiss QuickTime automation dialogs.Trigger dialog", | |
| "timeout": 2, | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@4@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "killall", | |
| "-9", | |
| "-v", | |
| "UserNotificationCenter" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Dismiss QuickTime automation dialogs.Dismiss dialog", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@4@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "sqlite3", | |
| "Users/fakeuser/Library/Application Support/com.apple.TCC/TCC.db", | |
| "SELECT service, client, client_type, auth_value, auth_reason, indirect_object_identifier_type, indirect_object_identifier, flags, last_modified FROM access WHERE service = \"kTCCServiceAppleEvents\"" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Dismiss QuickTime automation dialogs.Query TCC db (2)", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@4@@@", | |
| "@@@STEP_LOG_LINE@raw_io.output_text@service|client|client_type|auth_value|auth_reason|auth_version|com.apple.QuickTimePlayerX|flags|last_modified@@@", | |
| "@@@STEP_LOG_END@raw_io.output_text@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "sqlite3", | |
| "Users/fakeuser/Library/Application Support/com.apple.TCC/TCC.db", | |
| "UPDATE access SET auth_value = 2, auth_reason = 3, flags = NULL WHERE service = 'kTCCServiceAppleEvents' AND indirect_object_identifier = 'com.apple.QuickTimePlayerX'" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Dismiss QuickTime automation dialogs.Update db", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@4@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "sqlite3", | |
| "Users/fakeuser/Library/Application Support/com.apple.TCC/TCC.db", | |
| "SELECT service, client, client_type, auth_value, auth_reason, indirect_object_identifier_type, indirect_object_identifier, flags, last_modified FROM access WHERE service = \"kTCCServiceAppleEvents\"" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Dismiss QuickTime automation dialogs.Query TCC db (3)", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@4@@@", | |
| "@@@STEP_LOG_END@raw_io.output_text@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "osascript", | |
| "-e", | |
| "tell app \"QuickTime Player\"", | |
| "-e", | |
| "launch", | |
| "-e", | |
| "count window", | |
| "-e", | |
| "end tell" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Dismiss QuickTime automation dialogs.Trigger dialog (2)", | |
| "timeout": 300, | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@4@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "killall", | |
| "-9", | |
| "-v", | |
| "UserNotificationCenter" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Dismiss QuickTime automation dialogs.Dismiss dialog (2)", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@4@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "killall", | |
| "-9", | |
| "-v", | |
| "QuickTime Player" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Dismiss QuickTime automation dialogs.Kill QuickTime Player", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@4@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "open", | |
| "-a", | |
| "QuickTime Player" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Open QuickTime", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@3@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "defaults", | |
| "write", | |
| "com.apple.QuickTimePlayerX", | |
| "MGDeviceRecordingDocumentViewControllerAudioDeviceSelectionUniqueID", | |
| "123456789" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Set Audio Device in QuickTime", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@3@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "defaults", | |
| "write", | |
| "com.apple.QuickTimePlayerX", | |
| "MGDeviceRecordingDocumentViewControllerVideoDeviceSelectionUniqueID", | |
| "123456789" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Set Video Device in QuickTime", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@3@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "defaults", | |
| "read", | |
| "com.apple.QuickTimePlayerX" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.View defaults in QuickTime", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@3@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "osascript", | |
| "-e", | |
| "tell app \"QuickTime Player\"", | |
| "-e", | |
| "new movie recording", | |
| "-e", | |
| "end tell" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Open QuickTime Recording", | |
| "timeout": 30, | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@3@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "osascript", | |
| "-e", | |
| "tell app \"QuickTime Player\"", | |
| "-e", | |
| "close its front window", | |
| "-e", | |
| "end tell" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Close QuickTime Recording", | |
| "timeout": 30, | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@3@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "osascript", | |
| "-e", | |
| "tell app \"QuickTime Player\"", | |
| "-e", | |
| "new movie recording", | |
| "-e", | |
| "end tell" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Wait for device to connect.Trigger device connect with QuickTime.Open QuickTime Recording (2)", | |
| "timeout": 30, | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@3@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "xcrun", | |
| "devicectl", | |
| "list", | |
| "devices", | |
| "--filter", | |
| "connectionProperties.transportType CONTAINS 'wired'", | |
| "-v" | |
| ], | |
| "name": "Prepare iOS device.Wait for device to connect.Find wired CoreDevices (2)", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@", | |
| "@@@STEP_LOG_END@raw_io.output_text@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "xcrun", | |
| "devicectl", | |
| "list", | |
| "devices", | |
| "--filter", | |
| "connectionProperties.transportType CONTAINS 'wired'", | |
| "-v" | |
| ], | |
| "name": "Prepare iOS device.Wait for device to connect.Find wired CoreDevices (3)", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@", | |
| "@@@STEP_LOG_END@raw_io.output_text@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "xcrun", | |
| "devicectl", | |
| "list", | |
| "devices", | |
| "--filter", | |
| "connectionProperties.transportType CONTAINS 'wired'", | |
| "-v" | |
| ], | |
| "name": "Prepare iOS device.Wait for device to connect.Find wired CoreDevices (4)", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@", | |
| "@@@STEP_LOG_END@raw_io.output_text@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "xcrun", | |
| "devicectl", | |
| "list", | |
| "devices", | |
| "--filter", | |
| "connectionProperties.transportType CONTAINS 'wired'", | |
| "-v" | |
| ], | |
| "name": "Prepare iOS device.Wait for device to connect.Find wired CoreDevices (5)", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@", | |
| "@@@STEP_LOG_END@raw_io.output_text@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [], | |
| "name": "Prepare iOS device.Wait for device to connect.sleep 80", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "xcrun", | |
| "devicectl", | |
| "list", | |
| "devices", | |
| "--filter", | |
| "connectionProperties.transportType CONTAINS 'wired'", | |
| "-v" | |
| ], | |
| "name": "Prepare iOS device.Wait for device to connect.Find wired CoreDevices (6)", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@", | |
| "@@@STEP_LOG_END@raw_io.output_text@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [], | |
| "name": "Prepare iOS device.Wait for device to connect.sleep 160", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "xcrun", | |
| "devicectl", | |
| "list", | |
| "devices", | |
| "--filter", | |
| "connectionProperties.transportType CONTAINS 'wired'", | |
| "-v" | |
| ], | |
| "name": "Prepare iOS device.Wait for device to connect.Find wired CoreDevices (7)", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@", | |
| "@@@STEP_LOG_END@raw_io.output_text@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "xcrun", | |
| "devicectl", | |
| "list", | |
| "devices", | |
| "-v" | |
| ], | |
| "name": "Prepare iOS device.Wait for device to connect.List CoreDevices", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@", | |
| "@@@STEP_LOG_END@raw_io.output_text@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "killall", | |
| "-9", | |
| "-v", | |
| "Xcode" | |
| ], | |
| "name": "Prepare iOS device.Wait for device to connect.Kill Xcode", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [], | |
| "name": "Prepare iOS device.Dismiss iOS dialogs", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@", | |
| "@@@STEP_EXCEPTION@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "chmod", | |
| "755", | |
| "RECIPE_MODULE[flutter::os_utils]/resources/dismiss_dialogs.sh" | |
| ], | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Dismiss iOS dialogs.Set execute permission", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "RECIPE_MODULE[flutter::os_utils]/resources/dismiss_dialogs.sh", | |
| "123456789" | |
| ], | |
| "cwd": "[CACHE]/cocoon/cipd_packages/device_doctor/tool/infra-dialog", | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Dismiss iOS dialogs.Run app to dismiss dialogs", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@", | |
| "@@@STEP_EXCEPTION@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "xcrun", | |
| "devicectl", | |
| "list", | |
| "devices", | |
| "-v" | |
| ], | |
| "cwd": "[CACHE]/cocoon/cipd_packages/device_doctor/tool/infra-dialog", | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Dismiss iOS dialogs.List CoreDevices", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@", | |
| "@@@STEP_LOG_END@raw_io.output_text@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "killall", | |
| "-9", | |
| "-v", | |
| "QuickTime Player" | |
| ], | |
| "cwd": "[CACHE]/cocoon/cipd_packages/device_doctor/tool/infra-dialog", | |
| "infra_step": true, | |
| "name": "Prepare iOS device.Dismiss iOS dialogs.Kill QuickTime", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@2@@@" | |
| ] | |
| }, | |
| { | |
| "failure": { | |
| "humanReason": "Infra Failure: Step('Prepare iOS device.Dismiss iOS dialogs.Run app to dismiss dialogs') (retcode: 1)" | |
| }, | |
| "name": "$result" | |
| } | |
| ] |