Files
004_comission/uukssw/quote1/_ref/neural-compressor/.azure-pipelines/ut-3x-pt.yml
louiscklaw 2627562070 update,
2025-01-31 22:10:02 +08:00

117 lines
3.6 KiB
YAML

trigger: none
pr:
autoCancel: true
drafts: false
branches:
include:
- master
paths:
include:
- neural_compressor/common
- neural_compressor/torch
- test/3x/torch
- test/3x/common
- setup.py
- requirements_pt.txt
- .azure-pipelines/ut-3x-pt.yml
- .azure-pipelines/template/docker-template.yml
- .azure-pipelines/scripts/install_nc.sh
- .azure-pipelines/scripts/ut/3x/run_3x_pt.sh
pool: ICX-16C
variables:
IMAGE_NAME: "neural-compressor"
IMAGE_TAG: "py310"
UPLOAD_PATH: $(Build.SourcesDirectory)/log_dir
DOWNLOAD_PATH: $(Build.SourcesDirectory)/log_dir
ARTIFACT_NAME: "UT_coverage_report_3x_pt"
REPO: $(Build.Repository.Uri)
stages:
- stage: Torch
displayName: Unit Test 3x Torch
dependsOn: []
jobs:
- job:
displayName: Unit Test 3x Torch
steps:
- template: template/ut-template.yml
parameters:
dockerConfigName: "commonDockerConfig"
utScriptFileName: "3x/run_3x_pt"
uploadPath: $(UPLOAD_PATH)
utArtifact: "ut_3x"
- stage: Torch_baseline
displayName: Unit Test 3x Torch baseline
dependsOn: []
jobs:
- job:
displayName: Unit Test 3x Torch baseline
steps:
- template: template/ut-template.yml
parameters:
dockerConfigName: "gitCloneDockerConfig"
utScriptFileName: "3x/run_3x_pt"
uploadPath: $(UPLOAD_PATH)
utArtifact: "ut_3x_baseline"
repo: $(REPO)
- stage: Coverage
displayName: "Coverage Compare"
pool:
vmImage: "ubuntu-latest"
dependsOn: [Torch, Torch_baseline]
jobs:
- job: CollectDatafiles
steps:
- script: |
if [[ ! $(docker images | grep -i ${IMAGE_NAME}:${IMAGE_TAG}) ]]; then
docker build -f ${BUILD_SOURCESDIRECTORY}/.azure-pipelines/docker/Dockerfile.devel -t ${IMAGE_NAME}:${IMAGE_TAG} .
fi
docker images | grep -i ${IMAGE_NAME}
if [[ $? -ne 0 ]]; then
echo "NO Such Repo"
exit 1
fi
displayName: "Build develop docker image"
- task: DownloadPipelineArtifact@2
inputs:
artifact:
patterns: '*_coverage/.coverage'
path: $(DOWNLOAD_PATH)
- script: |
echo "--- create container ---"
docker run -d -it --name="collectLogs" -v ${BUILD_SOURCESDIRECTORY}:/neural-compressor ${IMAGE_NAME}:${IMAGE_TAG} /bin/bash
echo "--- docker ps ---"
docker ps
echo "--- collect logs ---"
docker exec collectLogs /bin/bash +x -c "cd /neural-compressor/.azure-pipelines/scripts \
&& bash install_nc.sh 3x_pt \
&& bash ut/3x/collect_log_3x.sh 3x_pt"
displayName: "Collect UT Coverage"
- task: PublishCodeCoverageResults@2
inputs:
summaryFileLocation: $(Build.SourcesDirectory)/log_dir/coverage_PR/coverage.xml
- task: PublishPipelineArtifact@1
condition: succeededOrFailed()
inputs:
targetPath: $(UPLOAD_PATH)
artifact: $(ARTIFACT_NAME)
publishLocation: "pipeline"
- task: Bash@3
condition: always()
inputs:
targetType: "inline"
script: |
docker exec collectLogs bash -c "rm -fr /neural-compressor/* && rm -fr /neural-compressor/.* || true"
displayName: "Docker clean up"