mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
Reverts "[Fuchsia] Redo - Use chromium test-scripts to download images and execute tests" (flutter/engine#49908)
Reverts flutter/engine#49847 Initiated by: zanderso This change reverts the following previous change: Original Description: This change is a redo of https://github.com/flutter/engine/pull/49650. https://github.com/zijiehe-google-com/engine/compare/de5c713..main should show the diff between this and the original change. Following paragraph is copied from the original change. This change requires https://github.com/flutter/buildroot/pull/811, and can be executed from buildroot by ``` python3 flutter/tools/fuchsia/with_envs.py flutter/testing/fuchsia/run_tests.py ``` Bug: https://github.com/flutter/flutter/issues/140179 - [V] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [V] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [V] I read and followed the [Flutter Style Guide] and the [C++, Objective-C, Java style guides]. - [V] I listed at least one issue that this PR fixes in the description above. - [V] I added new tests to check the change I am making or feature I am adding, or the PR is [test-exempt]. See [testing the engine] for instructions on writing and running engine tests. - [V] I updated/added relevant documentation (doc comments with `///`). - [V] I signed the [CLA]. - [V] All existing and new tests are passing.
This commit is contained in:
parent
78728e1649
commit
07034d9f1d
32
DEPS
32
DEPS
@ -110,9 +110,6 @@ vars = {
|
||||
# local development.
|
||||
'download_fuchsia_sdk': False,
|
||||
'fuchsia_sdk_path': '',
|
||||
# Whether to download and run the Fuchsia emulator locally to test Fuchsia
|
||||
# builds.
|
||||
'run_fuchsia_emu': False,
|
||||
|
||||
# An LLVM backend needs LLVM binaries and headers. To avoid build time
|
||||
# increases we can use prebuilts. We don't want to download this on every
|
||||
@ -251,11 +248,6 @@ vars = {
|
||||
"upstream_yaml": "https://github.com/dart-lang/yaml.git",
|
||||
"upstream_yapf": "https://github.com/google/yapf.git",
|
||||
"upstream_zlib": "https://github.com/madler/zlib.git",
|
||||
|
||||
# The version / instance id of the cipd:chromium/fuchsia/test-scripts which
|
||||
# will be used altogether with fuchsia-sdk to setup the build / test
|
||||
# environment.
|
||||
'fuchsia_test_scripts_version': 'xMcCltDynP2JMZNUekFtV24vCnjgz_J3SZIN-4FbUKQC',
|
||||
}
|
||||
|
||||
gclient_gn_args_file = 'src/third_party/dart/build/config/gclient_args.gni'
|
||||
@ -985,7 +977,7 @@ deps = {
|
||||
|
||||
# Get the SDK from https://chrome-infra-packages.appspot.com/p/fuchsia/sdk/core at the 'latest' tag
|
||||
# Get the toolchain from https://chrome-infra-packages.appspot.com/p/fuchsia/clang at the 'goma' tag
|
||||
'src/fuchsia/sdk/linux': {
|
||||
'src/fuchsia/sdk/linux': {
|
||||
'packages': [
|
||||
{
|
||||
'package': 'fuchsia/sdk/core/linux-amd64',
|
||||
@ -996,17 +988,6 @@ deps = {
|
||||
'dep_type': 'cipd',
|
||||
},
|
||||
|
||||
'src/flutter/tools/fuchsia/test_scripts': {
|
||||
'packages': [
|
||||
{
|
||||
'package': 'chromium/fuchsia/test-scripts',
|
||||
'version': Var('fuchsia_test_scripts_version'),
|
||||
}
|
||||
],
|
||||
'condition': 'run_fuchsia_emu',
|
||||
'dep_type': 'cipd',
|
||||
},
|
||||
|
||||
'src/third_party/impeller-cmake-example': {
|
||||
'url': Var('flutter_git') + '/third_party/impeller-cmake-example.git' + '@' + 'd1a26a51dc6890e5f851749e3d8e048703f24f51',
|
||||
'condition': 'download_impeller_cmake_example',
|
||||
@ -1168,16 +1149,5 @@ hooks = [
|
||||
'third_party/impeller-cmake-example',
|
||||
'--setup',
|
||||
]
|
||||
},
|
||||
{
|
||||
'name': 'Download Fuchsia system images',
|
||||
'pattern': '.',
|
||||
'condition': 'run_fuchsia_emu',
|
||||
'action': [
|
||||
'python3',
|
||||
'src/flutter/tools/fuchsia/with_envs.py',
|
||||
'src/flutter/tools/fuchsia/test_scripts/update_product_bundles.py',
|
||||
'terminal.x64',
|
||||
]
|
||||
}
|
||||
]
|
||||
|
||||
@ -197,8 +197,6 @@ targets:
|
||||
config_name: linux_fuchsia
|
||||
drone_dimensions:
|
||||
- os=Linux
|
||||
dimensions:
|
||||
kvm: "1"
|
||||
# TODO(https://github.com/flutter/flutter/issues/138559): Re-enable/delete.
|
||||
# runIfNot:
|
||||
# - lib/web_ui/**
|
||||
|
||||
3
engine/src/flutter/.gitignore
vendored
3
engine/src/flutter/.gitignore
vendored
@ -136,6 +136,3 @@ app.*.symbols
|
||||
|
||||
# RBE support configurations and scripts vended from CIPD
|
||||
/build/rbe
|
||||
|
||||
# The test-scripts from Chromium and managed by DEPS and gclient.
|
||||
/tools/fuchsia/test_scripts
|
||||
|
||||
@ -77,7 +77,7 @@
|
||||
{
|
||||
"name": "Upload to Symbol Server for arch: arm64",
|
||||
"language": "python3",
|
||||
"contexts": ["depot_tools_on_path"],
|
||||
"contexts": ["depot_tools_on_path"],
|
||||
"script": "flutter/tools/fuchsia/upload_to_symbol_server.py",
|
||||
"parameters": [
|
||||
"--symbol-dir",
|
||||
@ -138,12 +138,10 @@
|
||||
{
|
||||
"drone_dimensions": [
|
||||
"device_type=none",
|
||||
"kvm=1",
|
||||
"os=Linux"
|
||||
],
|
||||
"gclient_variables": {
|
||||
"download_android_deps": false,
|
||||
"run_fuchsia_emu": true
|
||||
"download_android_deps": false
|
||||
},
|
||||
"gn": [
|
||||
"--fuchsia",
|
||||
@ -165,7 +163,7 @@
|
||||
{
|
||||
"name": "Upload to Symbol Server for arch: x64",
|
||||
"language": "python3",
|
||||
"contexts": ["depot_tools_on_path"],
|
||||
"contexts": ["depot_tools_on_path"],
|
||||
"script": "flutter/tools/fuchsia/upload_to_symbol_server.py",
|
||||
"parameters": [
|
||||
"--symbol-dir",
|
||||
@ -174,14 +172,6 @@
|
||||
"${REVISION}",
|
||||
"--upload"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "x64 emulator based tests",
|
||||
"language": "python3",
|
||||
"script": "flutter/tools/fuchsia/with_envs.py",
|
||||
"parameters": [
|
||||
"testing/fuchsia/run_tests.py"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@ -1,59 +0,0 @@
|
||||
#!/usr/bin/env python3
|
||||
# Copyright (c) 2013, the Flutter project authors. All rights reserved.
|
||||
# Use of this source code is governed by a BSD-style license that can be found
|
||||
# in the LICENSE file.
|
||||
|
||||
import argparse
|
||||
import os
|
||||
import sys
|
||||
|
||||
# The imports are coming from fuchsia/test_scripts and pylint cannot find them
|
||||
# without setting a global init-hook which is less favorable.
|
||||
# But this file will be executed as part of the CI, its correctness of importing
|
||||
# is guaranteed.
|
||||
|
||||
sys.path.insert(
|
||||
0,
|
||||
os.path.join(
|
||||
os.path.dirname(__file__), '../../tools/fuchsia/test_scripts/test/'
|
||||
)
|
||||
)
|
||||
|
||||
# pylint: disable=import-error, wrong-import-position
|
||||
import run_test
|
||||
from run_executable_test import ExecutableTestRunner
|
||||
from test_runner import TestRunner
|
||||
|
||||
# This file is expected to be executed from src/.
|
||||
|
||||
|
||||
# TODO(https://github.com/flutter/flutter/issues/140179): Execute all the tests
|
||||
# in
|
||||
# https://github.com/flutter/engine/blob/main/testing/fuchsia/test_suites.yaml
|
||||
# and avoid hardcoded paths.
|
||||
def _get_test_runner(runner_args: argparse.Namespace, *_) -> TestRunner:
|
||||
return ExecutableTestRunner(
|
||||
runner_args.out_dir, [],
|
||||
'fuchsia-pkg://fuchsia.com/dart_runner_tests#meta/dart_runner_tests.cm',
|
||||
runner_args.target_id, 'codecoverage', '/tmp/log',
|
||||
['../out/fuchsia_debug_x64/dart_runner_tests.far'], None
|
||||
)
|
||||
|
||||
|
||||
# TODO(https://github.com/flutter/flutter/issues/140179): Respect build
|
||||
# configurations.
|
||||
if __name__ == '__main__':
|
||||
try:
|
||||
os.remove('../out/fuchsia_debug_x64/dart_runner_tests.far')
|
||||
except FileNotFoundError:
|
||||
pass
|
||||
os.symlink(
|
||||
'dart_runner_tests-0.far',
|
||||
'../out/fuchsia_debug_x64/dart_runner_tests.far'
|
||||
)
|
||||
sys.argv.append('--out-dir=out/fuchsia_debug_x64')
|
||||
# The 'flutter-test-type' is a place holder and has no specific meaning; the
|
||||
# _get_test_runner is overrided.
|
||||
sys.argv.append('flutter-test-type')
|
||||
run_test._get_test_runner = _get_test_runner # pylint: disable=protected-access
|
||||
sys.exit(run_test.main())
|
||||
@ -1,54 +0,0 @@
|
||||
#!/usr/bin/env python3
|
||||
# Copyright (c) 2013, the Flutter project authors. All rights reserved.
|
||||
# Use of this source code is governed by a BSD-style license that can be found
|
||||
# in the LICENSE file.
|
||||
|
||||
import os
|
||||
import platform
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
sys.path.insert(
|
||||
0,
|
||||
os.path.abspath(
|
||||
os.path.join(os.path.dirname(__file__), 'test_scripts/test/')
|
||||
)
|
||||
)
|
||||
|
||||
from common import catch_sigterm, wait_for_sigterm
|
||||
|
||||
|
||||
def Main():
|
||||
"""
|
||||
Executes the test-scripts with required environment variables. It acts like
|
||||
/usr/bin/env, but provides some extra functionality to dynamically set up
|
||||
the environment variables.
|
||||
"""
|
||||
# Ensures the signals can be correctly forwarded to the subprocesses.
|
||||
catch_sigterm()
|
||||
|
||||
os.environ['SRC_ROOT'] = os.path.abspath(
|
||||
os.path.join(os.path.dirname(__file__), '../../../')
|
||||
)
|
||||
# Flutter uses a different repo structure and fuchsia sdk is not in the
|
||||
# third_party/, so images root and sdk root need to be explicitly set.
|
||||
os.environ['FUCHSIA_IMAGES_ROOT'] = os.path.join(
|
||||
os.environ['SRC_ROOT'], 'fuchsia/images/'
|
||||
)
|
||||
|
||||
assert platform.system() == 'Linux', 'Unsupported OS ' + platform.system()
|
||||
os.environ['FUCHSIA_SDK_ROOT'] = os.path.join(
|
||||
os.environ['SRC_ROOT'], 'fuchsia/sdk/linux/'
|
||||
)
|
||||
|
||||
with subprocess.Popen(sys.argv[1:]) as proc:
|
||||
try:
|
||||
proc.wait()
|
||||
except:
|
||||
# Use terminate / SIGTERM to allow the subprocess exiting cleanly.
|
||||
proc.terminate()
|
||||
return proc.returncode
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.exit(Main())
|
||||
Loading…
x
Reference in New Issue
Block a user