Create an artifact to include the list of integrated tests in TradeFed
In TF projects, we can add dir to COMPATIBILITY.tradefed_tests_dir to include the test names in the artifact, e.g., LOCAL_PATH := $(call my-dir) COMPATIBILITY.tradefed_tests_dir := \ $(COMPATIBILITY.tradefed_tests_dir) $(LOCAL_PATH)/res/config Bug: 69678490 Test: m -j dist tradefed-tests-list Confirm out/dist/tradefed-tests-list.zip exists and has a file tradefed-tests-list which contains the list of tests. Change-Id: I67b82e5aeec68e9263bada198669b4a23a0750cb
This commit is contained in:
parent
fedcf41cc3
commit
567eede9b6
1 changed files with 36 additions and 0 deletions
36
core/tasks/tradefed-tests-list.mk
Normal file
36
core/tasks/tradefed-tests-list.mk
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Copyright (C) 2017 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# List all TradeFed tests from COMPATIBILITY.tradefed_tests_dir
|
||||
.PHONY: tradefed-tests-list
|
||||
|
||||
tradefed_tests :=
|
||||
$(foreach dir, $(COMPATIBILITY.tradefed_tests_dir), \
|
||||
$(eval tradefed_tests += $(shell find $(dir) -type f -name "*.xml")))
|
||||
tradefed_tests_list_intermediates := $(call intermediates-dir-for,PACKAGING,tradefed_tests_list,HOST,COMMON)
|
||||
tradefed_tests_list_zip := $(tradefed_tests_list_intermediates)/tradefed-tests-list.zip
|
||||
all_tests :=
|
||||
$(foreach test, $(tradefed_tests), \
|
||||
$(eval all_tests += $(word 2,$(subst /res/config/,$(space),$(test)))))
|
||||
$(tradefed_tests_list_zip) : PRIVATE_tradefed_tests := $(subst .xml,,$(subst $(space),\n,$(sort $(all_tests))))
|
||||
$(tradefed_tests_list_zip) : PRIVATE_tradefed_tests_list := $(tradefed_tests_list_intermediates)/tradefed-tests-list
|
||||
|
||||
$(tradefed_tests_list_zip) : $(tradefed_tests) $(SOONG_ZIP)
|
||||
@echo "Package: $@"
|
||||
$(hide) rm -rf $(dir $@) && mkdir -p $(dir $@)
|
||||
$(hide) echo -e "$(PRIVATE_tradefed_tests)" > $(PRIVATE_tradefed_tests_list)
|
||||
$(hide) $(SOONG_ZIP) -d -o $@ -C $(dir $@) -f $(PRIVATE_tradefed_tests_list)
|
||||
|
||||
tradefed-tests-list : $(tradefed_tests_list_zip)
|
||||
$(call dist-for-goals, tradefed-tests-list, $(tradefed_tests_list_zip))
|
Loading…
Reference in a new issue