pipelines-it-remote.yml 2.13 KB
Newer Older
SparkSnail's avatar
SparkSnail committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
jobs:
- job: 'integration_test_remote'

  steps:
  - script: python3 -m pip install --upgrade pip setuptools
    displayName: 'Install python tools'
  - script: |
      source install.sh
    displayName: 'Install nni toolkit via source code'
  - task: CopyFilesOverSSH@0
    inputs:
      sshEndpoint: remote_nni-ci-gpu-01
      sourceFolder: src/sdk/pynni
      targetFolder: /tmp/nnitest/$(Build.BuildId)/pynni
      overwrite: true
    displayName: 'Copy sdk files to remote machine'
  - task: CopyFilesOverSSH@0
    inputs:
      sshEndpoint: remote_nni-ci-gpu-01
      sourceFolder: tools
      targetFolder: /tmp/nnitest/$(Build.BuildId)/tools
      overwrite: true
    displayName: 'Copy tool files to remote machine'
  - task: CopyFilesOverSSH@0
    inputs:
      sshEndpoint: remote_nni-ci-gpu-01
      sourceFolder: test
      targetFolder: /tmp/nnitest/$(Build.BuildId)/test
      overwrite: true
    displayName: 'Copy test files to remote machine'
  - task: SSH@0
    inputs:
      sshEndpoint: remote_nni-ci-gpu-01
      runOptions: commands
      commands: python3 /tmp/nnitest/$(Build.BuildId)/test/remote_docker.py --mode start --name $(Build.BuildId) --image nni/nni
    displayName: 'Start docker'
  - task: DownloadSecureFile@1
    inputs:
      secureFile: remote_ci_private_key
  - script: |
      cp $(Agent.TempDirectory)/remote_ci_private_key test/id_rsa
      chmod 600 test/id_rsa
      scp -i test/id_rsa $(remote_user)@$(remote_host):/tmp/nnitest/$(Build.BuildId)/port test/port
      cat test/port
    displayName: 'Get docker port'
  - script: |
      cd test
      python3 generate_ts_config.py --ts remote --remote_user $(docker_user) --remote_host $(remote_host) \
      --remote_port $(cat port) --remote_pwd $(docker_pwd) --nni_manager_ip $(nni_manager_ip)
      cat training_service.yml
      PATH=$HOME/.local/bin:$PATH python3 config_test.py --ts remote --exclude cifar10
    displayName: 'integration test'
  - task: SSH@0
    inputs:
      sshEndpoint: remote_nni-ci-gpu-01
      runOptions: commands
      commands: python3 /tmp/nnitest/$(Build.BuildId)/test/remote_docker.py --mode stop --name $(Build.BuildId)
    displayName: 'Stop docker'