ci: enable build pytest ut and examples on esp32c2

This commit is contained in:
morris 2022-05-07 15:26:45 +08:00
parent 6d288575dc
commit 47e4fe83ba
6 changed files with 35 additions and 15 deletions

View File

@ -65,6 +65,13 @@ build_pytest_examples_esp32c3:
script: script:
- run_cmd python tools/ci/build_pytest_apps.py examples --target esp32c3 --size-info $SIZE_INFO_LOCATION -vv - run_cmd python tools/ci/build_pytest_apps.py examples --target esp32c3 --size-info $SIZE_INFO_LOCATION -vv
build_pytest_examples_esp32c2:
extends:
- .build_pytest_template
- .rules:build:example_test-esp32c2
script:
- run_cmd python tools/ci/build_pytest_apps.py examples --target esp32c2 --size-info $SIZE_INFO_LOCATION -vv
build_pytest_components_esp32: build_pytest_components_esp32:
extends: extends:
- .build_pytest_template - .build_pytest_template
@ -93,6 +100,13 @@ build_pytest_components_esp32c3:
script: script:
- run_cmd python tools/ci/build_pytest_apps.py components --target esp32c3 --size-info $SIZE_INFO_LOCATION -vv - run_cmd python tools/ci/build_pytest_apps.py components --target esp32c3 --size-info $SIZE_INFO_LOCATION -vv
build_pytest_components_esp32c2:
extends:
- .build_pytest_template
- .rules:build:component_ut-esp32c2
script:
- run_cmd python tools/ci/build_pytest_apps.py components --target esp32c2 --size-info $SIZE_INFO_LOCATION -vv
build_non_test_components_apps: build_non_test_components_apps:
extends: extends:
- .build_template - .build_template

View File

@ -32,8 +32,8 @@ from _pytest.terminal import TerminalReporter
from pytest_embedded.plugin import apply_count, parse_configuration from pytest_embedded.plugin import apply_count, parse_configuration
from pytest_embedded.utils import find_by_suffix from pytest_embedded.utils import find_by_suffix
SUPPORTED_TARGETS = ['esp32', 'esp32s2', 'esp32c3', 'esp32s3'] SUPPORTED_TARGETS = ['esp32', 'esp32s2', 'esp32c3', 'esp32s3', 'esp32c2']
PREVIEW_TARGETS = ['linux', 'esp32h2', 'esp32c2'] PREVIEW_TARGETS = ['linux', 'esp32h2']
DEFAULT_SDKCONFIG = 'default' DEFAULT_SDKCONFIG = 'default'

View File

@ -1,3 +1,5 @@
| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 |
| ----------------- | ----- | -------- | -------- | -------- |
# Wi-Fi Provisioning Manager Example # Wi-Fi Provisioning Manager Example
(See the README.md file in the upper level 'examples' directory for more information about examples.) (See the README.md file in the upper level 'examples' directory for more information about examples.)

View File

@ -1,3 +1,5 @@
| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 |
| ----------------- | ----- | -------- | -------- | -------- |
# Native OTA example # Native OTA example
This example is based on `app_update` component's APIs. This example is based on `app_update` component's APIs.

View File

@ -19,8 +19,9 @@ markers =
esp32s2: support esp32s2 target esp32s2: support esp32s2 target
esp32s3: support esp32s3 target esp32s3: support esp32s3 target
esp32c3: support esp32c3 target esp32c3: support esp32c3 target
supported_targets: support all supported targets ('esp32', 'esp32s2', 'esp32c3', 'esp32s3') esp32c2: support esp32c2 target
preview_targets: support all preview targets ('linux', 'esp32h2', 'esp32c2') supported_targets: support all supported targets ('esp32', 'esp32s2', 'esp32c3', 'esp32s3', 'esp32c2')
preview_targets: support all preview targets ('linux', 'esp32h2')
all_targets: support all targets, including supported ones and preview ones all_targets: support all targets, including supported ones and preview ones
# env markers # env markers

View File

@ -18,13 +18,13 @@ from idf_ci_utils import IDF_PATH, get_pytest_cases
try: try:
from build_apps import build_apps from build_apps import build_apps
from find_apps import find_builds_for_app from find_apps import find_builds_for_app
from find_build_apps import BuildItem, config_rules_from_str, setup_logging from find_build_apps import BuildItem, CMakeBuildSystem, config_rules_from_str, setup_logging
except ImportError: except ImportError:
sys.path.append(os.path.join(IDF_PATH, 'tools')) sys.path.append(os.path.join(IDF_PATH, 'tools'))
from build_apps import build_apps from build_apps import build_apps
from find_apps import find_builds_for_app from find_apps import find_builds_for_app
from find_build_apps import BuildItem, config_rules_from_str, setup_logging from find_build_apps import BuildItem, CMakeBuildSystem, config_rules_from_str, setup_logging
def main(args: argparse.Namespace) -> None: def main(args: argparse.Namespace) -> None:
@ -50,15 +50,16 @@ def main(args: argparse.Namespace) -> None:
config_rules = config_rules_from_str(args.config or []) config_rules = config_rules_from_str(args.config or [])
for app_dir in app_dirs: for app_dir in app_dirs:
app_dir = os.path.realpath(app_dir) app_dir = os.path.realpath(app_dir)
build_items += find_builds_for_app( if args.target in CMakeBuildSystem.supported_targets(app_dir):
app_path=app_dir, build_items += find_builds_for_app(
work_dir=app_dir, app_path=app_dir,
build_dir='build_@t_@w', work_dir=app_dir,
build_log=f'{app_dir}/build_@t_@w/build.log', build_dir='build_@t_@w',
target_arg=args.target, build_log=f'{app_dir}/build_@t_@w/build.log',
build_system='cmake', target_arg=args.target,
config_rules=config_rules, build_system='cmake',
) config_rules=config_rules,
)
modified_build_items = [] modified_build_items = []
# auto clean up the binaries if no flag --preserve-all # auto clean up the binaries if no flag --preserve-all