pipelines-it-remote-linux-to-linux.yml 2.54 KB
Newer Older
SparkSnail's avatar
SparkSnail committed
1
jobs:
Chi Song's avatar
Chi Song committed
2
- job: 'integration_test_remote_linux_to_linux'
chicm-ms's avatar
chicm-ms committed
3
  timeoutInMinutes: 120
SparkSnail's avatar
SparkSnail committed
4
5

  steps:
SparkSnail's avatar
SparkSnail committed
6
  - script: python3 -m pip install --upgrade pip setuptools --user
SparkSnail's avatar
SparkSnail committed
7
    displayName: 'Install python tools'
8
9
10
11
12
13
  - script: |
      cd deployment/pypi
      echo 'building prerelease package...'
      make build
      ls $(Build.SourcesDirectory)/deployment/pypi/dist/
    displayName: 'build nni bdsit_wheel'
SparkSnail's avatar
SparkSnail committed
14
15
16
  - script: |
      source install.sh
    displayName: 'Install nni toolkit via source code'
SparkSnail's avatar
SparkSnail committed
17
18
19
  - script: |
      sudo apt-get install swig -y
      PATH=$HOME/.local/bin:$PATH nnictl package install --name=SMAC
20
      PATH=$HOME/.local/bin:$PATH nnictl package install --name=BOHB
SparkSnail's avatar
SparkSnail committed
21
    displayName: 'Install dependencies for integration tests in remote mode'
SparkSnail's avatar
SparkSnail committed
22
23
  - task: CopyFilesOverSSH@0
    inputs:
SparkSnail's avatar
SparkSnail committed
24
      sshEndpoint: $(end_point)
25
26
      sourceFolder: deployment/pypi/dist/
      targetFolder: /tmp/nnitest/$(Build.BuildId)/dist
SparkSnail's avatar
SparkSnail committed
27
      overwrite: true
28
    displayName: 'Copy dist files to remote machine'
chicm-ms's avatar
chicm-ms committed
29
    timeoutInMinutes: 10
SparkSnail's avatar
SparkSnail committed
30
31
  - task: CopyFilesOverSSH@0
    inputs:
SparkSnail's avatar
SparkSnail committed
32
      sshEndpoint: $(end_point)
SparkSnail's avatar
SparkSnail committed
33
34
35
36
      sourceFolder: test
      targetFolder: /tmp/nnitest/$(Build.BuildId)/test
      overwrite: true
    displayName: 'Copy test files to remote machine'
chicm-ms's avatar
chicm-ms committed
37
    timeoutInMinutes: 10
SparkSnail's avatar
SparkSnail committed
38
39
  - task: SSH@0
    inputs:
SparkSnail's avatar
SparkSnail committed
40
      sshEndpoint: $(end_point)
SparkSnail's avatar
SparkSnail committed
41
      runOptions: commands
chicm-ms's avatar
chicm-ms committed
42
      commands: python3 /tmp/nnitest/$(Build.BuildId)/test/nni_test/nnitest/remote_docker.py --mode start --name $(Build.BuildId) --image nni/nni
SparkSnail's avatar
SparkSnail committed
43
44
45
    displayName: 'Start docker'
  - task: DownloadSecureFile@1
    inputs:
SparkSnail's avatar
SparkSnail committed
46
      secureFile: $(remote_private_key)
SparkSnail's avatar
SparkSnail committed
47
  - script: |
SparkSnail's avatar
SparkSnail committed
48
      cp $(Agent.TempDirectory)/$(remote_private_key) test/id_rsa
SparkSnail's avatar
SparkSnail committed
49
      chmod 600 test/id_rsa
SparkSnail's avatar
SparkSnail committed
50
      scp -P $(remote_port) -i test/id_rsa $(remote_user)@$(remote_host):/tmp/nnitest/$(Build.BuildId)/port test/port
SparkSnail's avatar
SparkSnail committed
51
52
53
      cat test/port
    displayName: 'Get docker port'
  - script: |
Chengmin Chi's avatar
updates  
Chengmin Chi committed
54
      set -e
Chengmin Chi's avatar
Chengmin Chi committed
55
      cd test
chicm-ms's avatar
chicm-ms committed
56
      python3 nni_test/nnitest/generate_ts_config.py --ts remote --remote_user $(docker_user) --remote_host $(remote_host) \
Chengmin Chi's avatar
Chengmin Chi committed
57
      --remote_port $(cat port) --remote_pwd $(docker_pwd) --nni_manager_ip $(nni_manager_ip)
chicm-ms's avatar
chicm-ms committed
58
59
      cat config/training_service.yml
      PATH=$HOME/.local/bin:$PATH python3 nni_test/nnitest/run_tests.py --config config/integration_tests.yml --ts remote
SparkSnail's avatar
SparkSnail committed
60
61
62
    displayName: 'integration test'
  - task: SSH@0
    inputs:
SparkSnail's avatar
SparkSnail committed
63
      sshEndpoint: $(end_point)
SparkSnail's avatar
SparkSnail committed
64
      runOptions: commands
chicm-ms's avatar
chicm-ms committed
65
      commands: python3 /tmp/nnitest/$(Build.BuildId)/test/nni_test/nnitest/remote_docker.py --mode stop --name $(Build.BuildId)
SparkSnail's avatar
SparkSnail committed
66
    displayName: 'Stop docker'