nni/pipelines/integration-test-frameworkc...

70 строки
2.3 KiB
YAML

trigger: none
pr: none
# Unstable. Disable trigger.
# schedules:
# - cron: 0 16 * * *
# branches:
# include: [ master ]
# variables set on VSO: (mostly for security concern)
# manager_ip
# docker_hub_password
jobs:
- job: frameworkcontroller
pool: NNI CI KUBE CLI
timeoutInMinutes: 120
steps:
- script: |
echo "Working directory: ${PWD}"
echo "##vso[task.setvariable variable=PATH]${PATH}:${HOME}/.local/bin"
python3 test/vso_tools/generate_nni_version.py
python3 -m pip install --upgrade pip setuptools
displayName: Prepare
- script: |
set -e
python3 test/vso_tools/install_nni.py $(NNI_RELEASE) SMAC,BOHB
cd examples/tuners/customized_tuner
python3 setup.py develop --user
nnictl algo register --meta meta_file.yml
displayName: Install NNI
- script: |
set -e
docker login -u nnidev -p $(docker_hub_password)
docker build --build-arg NNI_RELEASE=$(NNI_RELEASE) -t nnidev/nni-nightly .
docker push nnidev/nni-nightly
displayName: Build and upload docker image
- script: |
set -e
cd test
python3 training_service/nnitest/generate_ts_config.py \
--ts frameworkcontroller \
--keyvault_vaultname $(keyvault_vaultname) \
--keyvault_name $(keyvault_name) \
--azs_account $(azs_account) \
--azs_share $(azs_share) \
--nni_docker_image nnidev/nni-nightly \
--nni_manager_ip $(manager_ip)
python3 training_service/nnitest/run_tests.py --config training_service/config/integration_tests.yml --ts frameworkcontroller --exclude multi-phase,multi-thread
displayName: Integration test
- script: |
set -e
cd test
python3 training_service/nnitest/generate_ts_config.py \
--ts frameworkcontroller \
--keyvault_vaultname $(keyvault_vaultname) \
--keyvault_name $(keyvault_name) \
--azs_account $(azs_account) \
--azs_share $(azs_share) \
--nni_docker_image nnidev/nni-nightly \
--nni_manager_ip $(manager_ip) \
--reuse_mode True \
--config_version v2
python3 training_service/nnitest/run_tests.py --config training_service/config/integration_tests_config_v2.yml --ts frameworkcontroller --reuse_mode True --exclude multi-phase,multi-thread
displayName: Integration test (reuse mode)