[build] Add version files to docker image dependencies (#11192)
* [build] Add version files to docker image dependencies * [ci] Support to skip vstest using include/exclude config file. (#11086) example: ├── folderA │ ├── fileA (skip vstest) │ ├── fileB │ └── fileC If we want to skip vstest when changing /folderA/fileA, and not skip vstest when changing fileB or fileC. vstest-include: ^folderA/fileA vstest-exclude: ^folderA
This commit is contained in:
parent
6ddf5cd7dc
commit
54de99ba23
@ -97,6 +97,7 @@ jobs:
|
|||||||
platform_rpc: nephos
|
platform_rpc: nephos
|
||||||
|
|
||||||
buildSteps:
|
buildSteps:
|
||||||
|
- template: template-skipvstest.yml
|
||||||
- bash: |
|
- bash: |
|
||||||
set -ex
|
set -ex
|
||||||
if [ $(GROUP_NAME) == vs ]; then
|
if [ $(GROUP_NAME) == vs ]; then
|
||||||
|
12
.azure-pipelines/template-skipvstest.yml
Normal file
12
.azure-pipelines/template-skipvstest.yml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
steps:
|
||||||
|
- ${{ if eq(variables['Build.Reason'], 'PullRequest') }}:
|
||||||
|
- script: |
|
||||||
|
set -ex
|
||||||
|
tar_branch=origin/$(System.PullRequest.TargetBranch)
|
||||||
|
git diff $tar_branch..HEAD --name-only | grep -v -f .azure-pipelines/vstest-exclude && exit 0
|
||||||
|
git diff $tar_branch..HEAD --name-only | grep -f .azure-pipelines/vstest-include && exit 0
|
||||||
|
set +x
|
||||||
|
echo "Skip vstest jobs"
|
||||||
|
echo "##vso[task.setvariable variable=SKIP_VSTEST;isOutput=true]YES"
|
||||||
|
name: SetVar
|
||||||
|
displayName: "Check if vstest is needed."
|
3
.azure-pipelines/vstest-exclude
Normal file
3
.azure-pipelines/vstest-exclude
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
^platform
|
||||||
|
^.azure-pipelines
|
||||||
|
^files/build/versions
|
2
.azure-pipelines/vstest-include
Normal file
2
.azure-pipelines/vstest-include
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
^platform/vs
|
||||||
|
^.azure-pipelines/run-test-template.yml
|
@ -558,6 +558,12 @@ define SHA_DEP_RULES
|
|||||||
ALL_DEP_FILES_LIST += $(foreach pkg,$(2), $($(filter none,$($(1)_CACHE_MODE)), \
|
ALL_DEP_FILES_LIST += $(foreach pkg,$(2), $($(filter none,$($(1)_CACHE_MODE)), \
|
||||||
$(addsuffix .$(3),$(addprefix $(pkg)/, $(1))) \
|
$(addsuffix .$(3),$(addprefix $(pkg)/, $(1))) \
|
||||||
$(addsuffix .$(3).sha,$(addprefix $(pkg)/, $(1)))))
|
$(addsuffix .$(3).sha,$(addprefix $(pkg)/, $(1)))))
|
||||||
|
$(foreach docker, $(filter $(SONIC_DOCKER_IMAGES), $(1)), \
|
||||||
|
$(eval $(docker)_DEP_FILES+=$(wildcard files/build/versions/default/*) \
|
||||||
|
$(wildcard files/build/versions/dockers/$(basename $(docker))/*)))
|
||||||
|
$(foreach docker, $(filter $(SONIC_DOCKER_DBG_IMAGES), $(1)), \
|
||||||
|
$(eval $(docker)_DEP_FILES+=$(wildcard files/build/versions/default/*) \
|
||||||
|
$(wildcard files/build/versions/dockers/$(patsubst %-$(DBG_IMAGE_MARK).gz,%,$(docker))/*)))
|
||||||
$(addsuffix .$(3),$(addprefix $(2)/, $(1))) : $(2)/%.$(3) : \
|
$(addsuffix .$(3),$(addprefix $(2)/, $(1))) : $(2)/%.$(3) : \
|
||||||
$(2)/%.flags $$$$($$$$*_DEP_FILES) $$$$(if $$$$($$$$*_SMDEP_FILES), $(2)/%.smdep)
|
$(2)/%.flags $$$$($$$$*_DEP_FILES) $$$$(if $$$$($$$$*_SMDEP_FILES), $(2)/%.smdep)
|
||||||
@$$(eval $$*_DEP_FILES_MODIFIED := $$? )
|
@$$(eval $$*_DEP_FILES_MODIFIED := $$? )
|
||||||
|
@ -76,6 +76,7 @@ stages:
|
|||||||
|
|
||||||
- stage: Test
|
- stage: Test
|
||||||
dependsOn: BuildVS
|
dependsOn: BuildVS
|
||||||
|
condition: and(ne(stageDependencies.BuildVS.outputs['vs.SetVar.SKIP_VSTEST'], 'YES'), succeeded())
|
||||||
variables:
|
variables:
|
||||||
- name: inventory
|
- name: inventory
|
||||||
value: veos_vtb
|
value: veos_vtb
|
||||||
|
Reference in New Issue
Block a user