config.yml 47.3 KB
Newer Older
1
2
version: 2.1

3
# How to test the Linux jobs:
4
#   - Install CircleCI local CLI: https://circleci.com/docs/2.0/local-cli/
5
6
#   - circleci config process .circleci/config.yml > gen.yml && circleci local execute -c gen.yml --job binary_linux_wheel_py3.8
#     - Replace binary_linux_wheel_py3.8 with the name of the job you want to test.
Edward Z. Yang's avatar
Edward Z. Yang committed
7
#       Job names are 'name:' key.
8

9
10
11
12
13
14
executors:
  windows-cpu:
    machine:
      resource_class: windows.xlarge
      image: windows-server-2019-vs2019:stable
      shell: bash.exe
peterjc123's avatar
peterjc123 committed
15

16
17
18
19
20
21
  windows-gpu:
    machine:
      resource_class: windows.gpu.nvidia.medium
      image: windows-server-2019-nvidia:stable
      shell: bash.exe

22
commands:
23
24
25
26
27
28
  generate_cache_key:
    description: "Generates a cache key file that changes daily"
    steps:
      - run:
          name: Generate cache key
          command: echo "$(date +"%Y-%m-%d")" > .cachekey
29
30
31
32
33
34
35
36
  designate_upload_channel:
    description: "inserts the correct upload channel into ${BASH_ENV}"
    steps:
      - run:
          name: adding UPLOAD_CHANNEL to BASH_ENV
          command: |
            our_upload_channel=nightly
            # On tags upload to test instead
37
            if [[ -n "${CIRCLE_TAG}" ]] || [[ ${CIRCLE_BRANCH} =~ release/* ]]; then
38
39
40
              our_upload_channel=test
            fi
            echo "export UPLOAD_CHANNEL=${our_upload_channel}" >> ${BASH_ENV}
moto's avatar
moto committed
41
42
  install_build_tools_macos:
    description: "installs tools required to build torchaudio"
moto's avatar
moto committed
43
44
    steps:
      - run:
moto's avatar
moto committed
45
46
          name: Install pkg-config
          command: HOMEBREW_NO_AUTO_UPDATE=1 brew install pkg-config wget
moto's avatar
moto committed
47
          # Disable brew auto update which is very slow
Eli Uriegas's avatar
Eli Uriegas committed
48
49
50
51
52
53
54
55
56
57
  load_conda_channel_flags:
    description: "Determines whether we need extra conda channels"
    steps:
      - run:
          name: Adding CONDA_CHANNEL_FLAGS to BASH_ENV
          command: |
              CONDA_CHANNEL_FLAGS=""
              if [[ "${PYTHON_VERSION}" = *3.9* ]]; then
                echo "export CONDA_CHANNEL_FLAGS=-c=conda-forge" >> ${BASH_ENV}
              fi
58

59
60
binary_common: &binary_common
  parameters:
Edward Z. Yang's avatar
Edward Z. Yang committed
61
    # Edit these defaults to do a release
62
63
64
65
66
67
68
69
70
71
    build_version:
      description: "version number of release binary; by default, build a nightly"
      type: string
      default: ""
    pytorch_version:
      description: "PyTorch version to build against; by default, use a nightly"
      type: string
      default: ""
    # Don't edit these
    python_version:
72
      description: "Python version to build against (e.g., 3.8)"
73
      type: string
74
  environment: &environment
75
76
77
    PYTHON_VERSION: << parameters.python_version >>
    BUILD_VERSION: << parameters.build_version >>
    PYTORCH_VERSION: << parameters.pytorch_version >>
Edward Z. Yang's avatar
Edward Z. Yang committed
78
    CU_VERSION: cpu
79

Mingbo Wan's avatar
Mingbo Wan committed
80
81
82
smoke_test_common: &smoke_test_common
  <<: *binary_common
  docker:
83
    - image: 308535385114.dkr.ecr.us-east-1.amazonaws.com/torchaudio/smoke_test:56c846a5-acaa-41a7-92f5-46ec66186c61
Mingbo Wan's avatar
Mingbo Wan committed
84
85
86
87
      aws_auth:
        aws_access_key_id: ${ECR_AWS_ACCESS_KEY}
        aws_secret_access_key: ${ECR_AWS_SECRET_ACCESS_KEY}

88
jobs:
89
90
  circleci_consistency:
    docker:
91
      - image: circleci/python:3.8
92
93
94
95
    steps:
      - checkout
      - run:
          command: |
96
            pip install --user --progress-bar off jinja2 pyyaml
97
98
99
            python .circleci/regenerate.py
            git diff --exit-code || (echo ".circleci/config.yml not in sync with config.yml.in! Run .circleci/regenerate.py to update config"; exit 1)

100
101
  download_third_parties_nix:
    docker:
moto's avatar
moto committed
102
      - image: "pytorch/torchaudio_unittest_base:manylinux"
103
104
105
    resource_class: small
    steps:
      - checkout
106
      - generate_cache_key
107
108
109
      - restore_cache:

          keys:
moto's avatar
moto committed
110
            - tp-nix-v2-{{ checksum ".cachekey" }}
111
112

      - run:
moto's avatar
moto committed
113
          command: |
114
115
              mkdir -p third_party/sox/archives/
              wget --no-clobber --directory-prefix=third_party/sox/archives/ $(awk '/URL /{print $2}' third_party/sox/CMakeLists.txt)
116
117
      - save_cache:

moto's avatar
moto committed
118
          key: tp-nix-v2-{{ checksum ".cachekey" }}
119
120

          paths:
121
            - third_party/sox/archives
122
123
124
      - persist_to_workspace:
          root: third_party
          paths:
125
            - sox/archives
126

127
  binary_linux_wheel:
128
    <<: *binary_common
129
    docker:
Eli Uriegas's avatar
Eli Uriegas committed
130
      - image: "pytorch/manylinux-cuda102"
131
132
133
    resource_class: 2xlarge+
    steps:
      - checkout
134
135
      - attach_workspace:
          at: third_party
136
      - run: packaging/build_wheel.sh
137
      - store_artifacts:
138
          path: dist
Edward Z. Yang's avatar
Edward Z. Yang committed
139
140
141
142
      - persist_to_workspace:
          root: dist
          paths:
            - "*"
143
144

  binary_linux_conda:
145
    <<: *binary_common
146
    docker:
147
      - image: "pytorch/conda-cuda"
148
149
150
    resource_class: 2xlarge+
    steps:
      - checkout
Eli Uriegas's avatar
Eli Uriegas committed
151
      - load_conda_channel_flags
152
153
      - attach_workspace:
          at: third_party
154
      - run: packaging/build_conda.sh
155
156
      - store_artifacts:
          path: /opt/conda/conda-bld/linux-64
Edward Z. Yang's avatar
Edward Z. Yang committed
157
      - persist_to_workspace:
158
          root: /opt/conda
Edward Z. Yang's avatar
Edward Z. Yang committed
159
          paths:
160
            - "conda-bld/*"
161

162
163
164
  binary_macos_wheel:
    <<: *binary_common
    macos:
165
      xcode: "9.4.1"
166
167
    steps:
      - checkout
moto's avatar
moto committed
168
      - install_build_tools_macos
Eli Uriegas's avatar
Eli Uriegas committed
169
      - load_conda_channel_flags
170
171
      - attach_workspace:
          at: third_party
172
173
174
175
176
177
178
179
180
181
182
      - run:
          # Cannot easily deduplicate this as source'ing activate
          # will set environment variables which we need to propagate
          # to build_wheel.sh
          command: |
            curl -o conda.sh https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-x86_64.sh
            sh conda.sh -b
            source $HOME/miniconda3/bin/activate
            packaging/build_wheel.sh
      - store_artifacts:
          path: dist
Edward Z. Yang's avatar
Edward Z. Yang committed
183
184
185
186
      - persist_to_workspace:
          root: dist
          paths:
            - "*"
187
188
189
190

  binary_macos_conda:
    <<: *binary_common
    macos:
191
      xcode: "9.4.1"
192
193
    steps:
      - checkout
moto's avatar
moto committed
194
      - install_build_tools_macos
Eli Uriegas's avatar
Eli Uriegas committed
195
      - load_conda_channel_flags
196
197
      - attach_workspace:
          at: third_party
198
199
200
201
202
203
204
205
206
      - run:
          command: |
            curl -o conda.sh https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-x86_64.sh
            sh conda.sh -b
            source $HOME/miniconda3/bin/activate
            conda install -yq conda-build
            packaging/build_conda.sh
      - store_artifacts:
          path: /Users/distiller/miniconda3/conda-bld/osx-64
Edward Z. Yang's avatar
Edward Z. Yang committed
207
      - persist_to_workspace:
208
          root: /Users/distiller/miniconda3
Edward Z. Yang's avatar
Edward Z. Yang committed
209
          paths:
210
            - "conda-bld/*"
Edward Z. Yang's avatar
Edward Z. Yang committed
211

peterjc123's avatar
peterjc123 committed
212
213
214
215
216
217
  binary_windows_wheel:
    <<: *binary_common
    executor:
      name: windows-cpu
    steps:
      - checkout
Eli Uriegas's avatar
Eli Uriegas committed
218
      - load_conda_channel_flags
peterjc123's avatar
peterjc123 committed
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
      - run:
          name: build
          command: |
            eval "$('/C/tools/miniconda3/Scripts/conda.exe' 'shell.bash' 'hook')"
            conda activate base
            bash packaging/build_wheel.sh
      - store_artifacts:
          path: dist
      - persist_to_workspace:
          root: dist
          paths:
            - "*"

  binary_windows_conda:
    <<: *binary_common
    executor:
      name: windows-cpu
    steps:
      - checkout
Eli Uriegas's avatar
Eli Uriegas committed
238
      - load_conda_channel_flags
peterjc123's avatar
peterjc123 committed
239
240
241
242
243
244
245
246
247
248
      - run:
          name: build
          command: |
            eval "$('/C/tools/miniconda3/Scripts/conda.exe' 'shell.bash' 'hook')"
            conda activate base
            conda install -yq conda-build "conda-package-handling!=1.5.0"
            bash packaging/build_conda.sh
      - store_artifacts:
          path: C:/tools/miniconda3/conda-bld/win-64
      - persist_to_workspace:
249
          root: C:/tools/miniconda3
peterjc123's avatar
peterjc123 committed
250
          paths:
251
            - "conda-bld/*"
peterjc123's avatar
peterjc123 committed
252

Edward Z. Yang's avatar
Edward Z. Yang committed
253
254
255
256
257
258
259
  # Requires org-member context
  binary_conda_upload:
    docker:
      - image: continuumio/miniconda
    steps:
      - attach_workspace:
          at: ~/workspace
260
      - designate_upload_channel
Edward Z. Yang's avatar
Edward Z. Yang committed
261
262
263
264
265
      - run:
          command: |
            # Prevent credential from leaking
            conda install -yq anaconda-client
            set -x
266
            anaconda -t "${CONDA_PYTORCHBOT_TOKEN}" upload ~/workspace/conda-bld/*/*.tar.bz2 -u "pytorch-${UPLOAD_CHANNEL}" --label main --no-progress --force
Edward Z. Yang's avatar
Edward Z. Yang committed
267
268
269
270

  # Requires org-member context
  binary_wheel_upload:
    docker:
271
      - image: circleci/python:3.8
Edward Z. Yang's avatar
Edward Z. Yang committed
272
273
274
275
    steps:
      - attach_workspace:
          at: ~/workspace
      - checkout
276
      - designate_upload_channel
Edward Z. Yang's avatar
Edward Z. Yang committed
277
278
279
280
281
282
283
284
285
286
      - run:
          command: |
            pip install --user awscli
            export PATH="$HOME/.local/bin:$PATH"
            # Prevent credential from leaking
            set +x
            export AWS_ACCESS_KEY_ID="${PYTORCH_BINARY_AWS_ACCESS_KEY_ID}"
            export AWS_SECRET_ACCESS_KEY="${PYTORCH_BINARY_AWS_SECRET_ACCESS_KEY}"
            set -x
            for pkg in ~/workspace/*.whl; do
287
              aws s3 cp "$pkg" "s3://pytorch/whl/${UPLOAD_CHANNEL}/" --acl public-read
Edward Z. Yang's avatar
Edward Z. Yang committed
288
            done
289

Mingbo Wan's avatar
Mingbo Wan committed
290
291
292
  smoke_test_linux_conda:
    <<: *smoke_test_common
    steps:
Mingbo Wan's avatar
Mingbo Wan committed
293
294
      - attach_workspace:
          at: ~/workspace
295
      - designate_upload_channel
Eli Uriegas's avatar
Eli Uriegas committed
296
      - load_conda_channel_flags
Mingbo Wan's avatar
Mingbo Wan committed
297
      - run:
Mingbo Wan's avatar
Mingbo Wan committed
298
          name: install binaries
Mingbo Wan's avatar
Mingbo Wan committed
299
300
301
          command: |
            set -x
            source /usr/local/etc/profile.d/conda.sh && conda activate python${PYTHON_VERSION}
302
            conda install -v -y -c pytorch-${UPLOAD_CHANNEL} pytorch cpuonly
303
            conda install -v -y -c file://$HOME/workspace/conda-bld torchaudio
Mingbo Wan's avatar
Mingbo Wan committed
304
305
306
307
      - run:
          name: smoke test
          command: |
            source /usr/local/etc/profile.d/conda.sh && conda activate python${PYTHON_VERSION}
Mingbo Wan's avatar
Mingbo Wan committed
308
309
310
311
312
            python -c "import torchaudio"

  smoke_test_linux_pip:
    <<: *smoke_test_common
    steps:
Mingbo Wan's avatar
Mingbo Wan committed
313
314
      - attach_workspace:
          at: ~/workspace
315
      - designate_upload_channel
Eli Uriegas's avatar
Eli Uriegas committed
316
      - load_conda_channel_flags
Mingbo Wan's avatar
Mingbo Wan committed
317
      - run:
Mingbo Wan's avatar
Mingbo Wan committed
318
          name: install binaries
Mingbo Wan's avatar
Mingbo Wan committed
319
320
321
          command: |
            set -x
            source /usr/local/etc/profile.d/conda.sh && conda activate python${PYTHON_VERSION}
322
            pip install $(ls ~/workspace/torchaudio*.whl) -f "https://download.pytorch.org/whl/${UPLOAD_CHANNEL}/torch_${UPLOAD_CHANNEL}.html"
Mingbo Wan's avatar
Mingbo Wan committed
323
324
325
326
      - run:
          name: smoke test
          command: |
            source /usr/local/etc/profile.d/conda.sh && conda activate python${PYTHON_VERSION}
Mingbo Wan's avatar
Mingbo Wan committed
327
328
            python -c "import torchaudio"

329
330
331
332
333
334
335
  smoke_test_windows_conda:
    <<: *binary_common
    executor:
      name: windows-cpu
    steps:
      - attach_workspace:
          at: ~/workspace
336
      - designate_upload_channel
Eli Uriegas's avatar
Eli Uriegas committed
337
      - load_conda_channel_flags
338
339
340
341
342
343
344
345
      - run:
          name: install binaries
          command: |
            set -x
            eval "$('/C/tools/miniconda3/Scripts/conda.exe' 'shell.bash' 'hook')"
            conda env remove -n python${PYTHON_VERSION} || true
            conda create -yn python${PYTHON_VERSION} python=${PYTHON_VERSION}
            conda activate python${PYTHON_VERSION}
346
            conda install -v -y -c pytorch-${UPLOAD_CHANNEL} pytorch cpuonly
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
            conda install -v -y $(ls ~/workspace/torchaudio*.tar.bz2)
      - run:
          name: smoke test
          command: |
            eval "$('/C/tools/miniconda3/Scripts/conda.exe' 'shell.bash' 'hook')"
            conda activate python${PYTHON_VERSION}
            python -c "import torchaudio"

  smoke_test_windows_pip:
    <<: *binary_common
    executor:
      name: windows-cpu
    steps:
      - attach_workspace:
          at: ~/workspace
362
      - designate_upload_channel
Eli Uriegas's avatar
Eli Uriegas committed
363
      - load_conda_channel_flags
364
365
366
367
368
369
370
371
      - run:
          name: install binaries
          command: |
            set -x
            eval "$('/C/tools/miniconda3/Scripts/conda.exe' 'shell.bash' 'hook')"
            conda env remove -n python${PYTHON_VERSION} || true
            conda create -yn python${PYTHON_VERSION} python=${PYTHON_VERSION}
            conda activate python${PYTHON_VERSION}
372
            pip install $(ls ~/workspace/torchaudio*.whl) -f "https://download.pytorch.org/whl/${UPLOAD_CHANNEL}/torch_${UPLOAD_CHANNEL}.html"
373
374
375
376
377
378
379
      - run:
          name: smoke test
          command: |
            eval "$('/C/tools/miniconda3/Scripts/conda.exe' 'shell.bash' 'hook')"
            conda activate python${PYTHON_VERSION}
            python -c "import torchaudio"

380
  smoke_test_docker_image_build:
Mingbo Wan's avatar
Mingbo Wan committed
381
382
383
384
385
386
387
388
389
390
391
    machine:
      image: ubuntu-1604:201903-01
    resource_class: large
    environment:
      image_name: torchaudio/smoke_test
    steps:
      - checkout
      - run:
          name: build_docker image
          no_output_timeout: "1h"
          command: |
392
            cd .circleci/smoke_test/docker && docker build . -t ${image_name}:${CIRCLE_WORKFLOW_ID}
Mingbo Wan's avatar
Mingbo Wan committed
393
394
395
396
397
398
399
400
401
402
      - run:
          name: upload docker image
          no_output_timeout: "1h"
          command: |
            set +x
            export AWS_ACCESS_KEY_ID=${ECR_AWS_ACCESS_KEY}
            export AWS_SECRET_ACCESS_KEY=${ECR_AWS_SECRET_ACCESS_KEY}
            eval $(aws ecr get-login --region us-east-1 --no-include-email)
            set -x
            docker tag ${image_name}:${CIRCLE_WORKFLOW_ID} 308535385114.dkr.ecr.us-east-1.amazonaws.com/${image_name}:${CIRCLE_WORKFLOW_ID}
403
            docker tag ${image_name}:${CIRCLE_WORKFLOW_ID} 308535385114.dkr.ecr.us-east-1.amazonaws.com/${image_name}:latest
Mingbo Wan's avatar
Mingbo Wan committed
404
            docker push 308535385114.dkr.ecr.us-east-1.amazonaws.com/${image_name}:${CIRCLE_WORKFLOW_ID}
405
            docker push 308535385114.dkr.ecr.us-east-1.amazonaws.com/${image_name}:latest
Mingbo Wan's avatar
Mingbo Wan committed
406

moto's avatar
moto committed
407
  unittest_linux_cpu:
moto's avatar
moto committed
408
409
    <<: *binary_common
    docker:
410
      - image: pytorch/torchaudio_unittest_base:manylinux-20210121
moto's avatar
moto committed
411
412
413
    resource_class: 2xlarge+
    steps:
      - checkout
414
415
      - attach_workspace:
          at: third_party
416
      - designate_upload_channel
Eli Uriegas's avatar
Eli Uriegas committed
417
      - load_conda_channel_flags
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
      - run:
          name: Setup
          command: .circleci/unittest/linux/scripts/setup_env.sh
      - run:
          name: Install torchaudio
          command: .circleci/unittest/linux/scripts/install.sh
      - run:
          name: Run tests
          command: .circleci/unittest/linux/scripts/run_test.sh
      - run:
          name: Post process
          command: .circleci/unittest/linux/scripts/post_process.sh
      - store_test_results:
          path: test-results

moto's avatar
moto committed
433
434
435
436
437
438
  unittest_linux_gpu:
    <<: *binary_common
    machine:
      image: ubuntu-1604-cuda-10.1:201909-23
    resource_class: gpu.small
    environment:
439
      <<: *environment
440
      image_name: pytorch/torchaudio_unittest_base:manylinux-cuda10.1-cudnn7-20210121
moto's avatar
moto committed
441
442
    steps:
      - checkout
443
444
      - attach_workspace:
          at: third_party
445
      - designate_upload_channel
Eli Uriegas's avatar
Eli Uriegas committed
446
      - load_conda_channel_flags
447
448
449
      - run:
          name: Pull Docker image
          command: docker pull --quiet "${image_name}"
moto's avatar
moto committed
450
451
      - run:
          name: Setup
452
          command: docker run -t --gpus all -e PYTHON_VERSION -v $PWD:$PWD -w $PWD "${image_name}" .circleci/unittest/linux/scripts/setup_env.sh
moto's avatar
moto committed
453
454
      - run:
          name: Install torchaudio
Eli Uriegas's avatar
Eli Uriegas committed
455
          command: docker run -t --gpus all -e UPLOAD_CHANNEL -e CONDA_CHANNEL_FLAGS -v $PWD:$PWD -w $PWD "${image_name}" .circleci/unittest/linux/scripts/install.sh
moto's avatar
moto committed
456
457
458
459
460
461
462
463
464
465
      - run:
          name: Run tests
          command: docker run -t --gpus all -v $PWD:$PWD -w $PWD "${image_name}" .circleci/unittest/linux/scripts/run_test.sh
      - run:
          name: Post Process
          command: docker run -t --gpus all -v $PWD:$PWD -w $PWD "${image_name}" .circleci/unittest/linux/scripts/post_process.sh
      - store_test_results:
          path: test-results

  unittest_windows_cpu:
466
467
468
469
470
    <<: *binary_common
    executor:
      name: windows-cpu
    steps:
      - checkout
471
      - designate_upload_channel
Eli Uriegas's avatar
Eli Uriegas committed
472
      - load_conda_channel_flags
moto's avatar
moto committed
473
474
      - run:
          name: Setup
475
          command: .circleci/unittest/windows/scripts/setup_env.sh
moto's avatar
moto committed
476
      - run:
477
          name: Install torchaudio
478
          command: .circleci/unittest/windows/scripts/install.sh
moto's avatar
moto committed
479
      - run:
480
          name: Run tests
481
          command: .circleci/unittest/windows/scripts/run_test.sh
moto's avatar
moto committed
482
483
      - run:
          name: Post process
484
          command: .circleci/unittest/windows/scripts/post_process.sh
moto's avatar
moto committed
485
486
      - store_test_results:
          path: test-results
moto's avatar
moto committed
487

488
489
490
491
492
  unittest_windows_gpu:
    <<: *binary_common
    executor:
      name: windows-gpu
    environment:
493
      <<: *environment
494
495
496
      CUDA_VERSION: "10.1"
    steps:
      - checkout
497
      - designate_upload_channel
Eli Uriegas's avatar
Eli Uriegas committed
498
      - load_conda_channel_flags
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
      - run:
          name: Setup
          command: .circleci/unittest/windows/scripts/setup_env.sh
      - run:
          name: Install torchaudio
          command: .circleci/unittest/windows/scripts/install.sh
      - run:
          name: Run tests
          command: .circleci/unittest/windows/scripts/run_test.sh
      - run:
          name: Post process
          command: .circleci/unittest/windows/scripts/post_process.sh
      - store_test_results:
          path: test-results

moto's avatar
moto committed
514
515
516
  unittest_macos_cpu:
    <<: *binary_common
    macos:
517
      xcode: "9.4.1"
moto's avatar
moto committed
518
519
520
521
    resource_class: large
    steps:
      - checkout
      - install_build_tools_macos
Eli Uriegas's avatar
Eli Uriegas committed
522
      - load_conda_channel_flags
moto's avatar
moto committed
523
524
      - attach_workspace:
          at: third_party
525
      - designate_upload_channel
moto's avatar
moto committed
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
      - run:
          name: Setup
          command: .circleci/unittest/linux/scripts/setup_env.sh
      - run:
          name: Install torchaudio
          command: .circleci/unittest/linux/scripts/install.sh
      - run:
          name: Run tests
          command: .circleci/unittest/linux/scripts/run_test.sh
      - run:
          name: Post process
          command: .circleci/unittest/linux/scripts/post_process.sh
      - store_test_results:
          path: test-results

541
542
543
544
545
546
547
  stylecheck:
    <<: *binary_common
    docker:
      - image: "pytorch/torchaudio_unittest_base:manylinux"
    resource_class: medium
    steps:
      - checkout
548
      - designate_upload_channel
Eli Uriegas's avatar
Eli Uriegas committed
549
      - load_conda_channel_flags
550
551
552
553
554
555
556
      - run:
          name: Setup
          command: .circleci/unittest/linux/scripts/setup_env.sh
      - run:
          name: Run style check
          command: .circleci/unittest/linux/scripts/run_style_checks.sh

557
558
559
560
561
562
563
564
565
  build_docs:
    <<: *binary_common
    docker:
      - image: "pytorch/manylinux-cuda100"
    resource_class: 2xlarge+
    steps:
      - attach_workspace:
          at: ~/workspace
      - checkout
Eli Uriegas's avatar
Eli Uriegas committed
566
      - load_conda_channel_flags
567
568
569
570
571
572
573
      - run:
          name: Install pytorch-audio
          command: .circleci/build_docs/install_wheels.sh
      - run:
          name: Build docs
          command: .circleci/build_docs/build_docs.sh
      - persist_to_workspace:
574
          root: ./
575
576
577
578
579
580
581
582
583
584
585
          paths:
            - "*"

  upload_docs:
    <<: *binary_common
    docker:
      - image: "pytorch/manylinux-cuda100"
    resource_class: 2xlarge+
    steps:
      - attach_workspace:
          at: ~/workspace
586
587
588
589
590
591
592
593
594
595
      - run:
          name: Generate netrc
          command: |
            # set credentials for https pushing
            # requires the org-member context
            cat > ~/.netrc \<<DONE
              machine github.com
              login pytorchbot
              password ${GITHUB_PYTORCHBOT_TOKEN}
            DONE
596
597
598
      - run:
          name: Upload docs
          command: |
599
600
            # Don't use "checkout" step since it uses ssh, which cannot git push
            # https://circleci.com/docs/2.0/configuration-reference/#checkout
601
602
603
            set -ex
            tag=${CIRCLE_TAG:1:5}
            target=${tag:-master}
Matti Picus's avatar
Matti Picus committed
604
            ~/workspace/.circleci/build_docs/commit_docs.sh ~/workspace $target
605

606
607
608
609
610
611
612
613
614
615
616
617
  docstring_parameters_sync:
    <<: *binary_common
    docker:
      - image: circleci/python:3.8
    steps:
      - checkout
      - run:
          name: Check parameters docstring sync
          command: |
            pip install --user pydocstyle
            pydocstyle torchaudio

618
619
620
workflows:
  build:
    jobs:
621
      - circleci_consistency
622
623
      - download_third_parties_nix:
          name: download_third_parties_nix
624
625
      - binary_linux_wheel:
          name: binary_linux_wheel_py3.6
626
          python_version: '3.6'
627
628
          requires:
          - download_third_parties_nix
629
630
      - binary_linux_wheel:
          name: binary_linux_wheel_py3.7
631
          python_version: '3.7'
632
633
          requires:
          - download_third_parties_nix
634
635
636
      - binary_linux_wheel:
          name: binary_linux_wheel_py3.8
          python_version: '3.8'
637
638
          requires:
          - download_third_parties_nix
Eli Uriegas's avatar
Eli Uriegas committed
639
640
641
642
643
      - binary_linux_wheel:
          name: binary_linux_wheel_py3.9
          python_version: '3.9'
          requires:
          - download_third_parties_nix
644
645
      - binary_macos_wheel:
          name: binary_macos_wheel_py3.6
646
          python_version: '3.6'
647
648
          requires:
          - download_third_parties_nix
649
650
      - binary_macos_wheel:
          name: binary_macos_wheel_py3.7
651
          python_version: '3.7'
652
653
          requires:
          - download_third_parties_nix
654
655
656
      - binary_macos_wheel:
          name: binary_macos_wheel_py3.8
          python_version: '3.8'
657
658
          requires:
          - download_third_parties_nix
Eli Uriegas's avatar
Eli Uriegas committed
659
660
661
662
663
      - binary_macos_wheel:
          name: binary_macos_wheel_py3.9
          python_version: '3.9'
          requires:
          - download_third_parties_nix
peterjc123's avatar
peterjc123 committed
664
665
666
667
668
669
670
671
672
      - binary_windows_wheel:
          name: binary_windows_wheel_py3.6
          python_version: '3.6'
      - binary_windows_wheel:
          name: binary_windows_wheel_py3.7
          python_version: '3.7'
      - binary_windows_wheel:
          name: binary_windows_wheel_py3.8
          python_version: '3.8'
Eli Uriegas's avatar
Eli Uriegas committed
673
674
675
      - binary_windows_wheel:
          name: binary_windows_wheel_py3.9
          python_version: '3.9'
676
677
      - binary_linux_conda:
          name: binary_linux_conda_py3.6
678
          python_version: '3.6'
679
680
          requires:
          - download_third_parties_nix
681
682
      - binary_linux_conda:
          name: binary_linux_conda_py3.7
683
          python_version: '3.7'
684
685
          requires:
          - download_third_parties_nix
686
687
688
      - binary_linux_conda:
          name: binary_linux_conda_py3.8
          python_version: '3.8'
689
690
          requires:
          - download_third_parties_nix
Eli Uriegas's avatar
Eli Uriegas committed
691
692
693
694
695
      - binary_linux_conda:
          name: binary_linux_conda_py3.9
          python_version: '3.9'
          requires:
          - download_third_parties_nix
696
697
      - binary_macos_conda:
          name: binary_macos_conda_py3.6
698
          python_version: '3.6'
699
700
          requires:
          - download_third_parties_nix
701
702
      - binary_macos_conda:
          name: binary_macos_conda_py3.7
703
          python_version: '3.7'
704
705
          requires:
          - download_third_parties_nix
706
707
708
      - binary_macos_conda:
          name: binary_macos_conda_py3.8
          python_version: '3.8'
709
710
          requires:
          - download_third_parties_nix
Eli Uriegas's avatar
Eli Uriegas committed
711
712
713
714
715
      - binary_macos_conda:
          name: binary_macos_conda_py3.9
          python_version: '3.9'
          requires:
          - download_third_parties_nix
peterjc123's avatar
peterjc123 committed
716
717
718
719
720
721
722
723
724
      - binary_windows_conda:
          name: binary_windows_conda_py3.6
          python_version: '3.6'
      - binary_windows_conda:
          name: binary_windows_conda_py3.7
          python_version: '3.7'
      - binary_windows_conda:
          name: binary_windows_conda_py3.8
          python_version: '3.8'
Eli Uriegas's avatar
Eli Uriegas committed
725
726
727
      - binary_windows_conda:
          name: binary_windows_conda_py3.9
          python_version: '3.9'
728
729
730
731
732
733
      - build_docs:
          name: build_docs
          python_version: '3.8'
          requires:
          - binary_linux_wheel_py3.8
      - upload_docs:
734
          context: org-member
735
736
737
738
739
740
741
742
743
744
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: upload_docs
          python_version: '3.8'
          requires:
          - build_docs
745
746
747
748
749
      - docstring_parameters_sync:
          name: docstring_parameters_sync
          python_version: '3.8'
          requires:
          - binary_linux_wheel_py3.8
moto's avatar
moto committed
750
751
  unittest:
    jobs:
752
753
      - download_third_parties_nix:
          name: download_third_parties_nix
moto's avatar
moto committed
754
755
756
      - unittest_linux_cpu:
          name: unittest_linux_cpu_py3.6
          python_version: '3.6'
757
758
          requires:
          - download_third_parties_nix
759
760
761
      - stylecheck:
          name: stylecheck_py3.6
          python_version: '3.6'
moto's avatar
moto committed
762
763
764
      - unittest_linux_cpu:
          name: unittest_linux_cpu_py3.7
          python_version: '3.7'
765
766
          requires:
          - download_third_parties_nix
moto's avatar
moto committed
767
768
769
      - unittest_linux_cpu:
          name: unittest_linux_cpu_py3.8
          python_version: '3.8'
770
771
          requires:
          - download_third_parties_nix
Eli Uriegas's avatar
Eli Uriegas committed
772
773
774
775
776
      - unittest_linux_cpu:
          name: unittest_linux_cpu_py3.9
          python_version: '3.9'
          requires:
          - download_third_parties_nix
moto's avatar
moto committed
777
778
      - unittest_linux_gpu:
          name: unittest_linux_gpu_py3.6
moto's avatar
moto committed
779
          python_version: '3.6'
780
781
          requires:
          - download_third_parties_nix
moto's avatar
moto committed
782
783
      - unittest_linux_gpu:
          name: unittest_linux_gpu_py3.7
moto's avatar
moto committed
784
          python_version: '3.7'
785
786
          requires:
          - download_third_parties_nix
moto's avatar
moto committed
787
788
      - unittest_linux_gpu:
          name: unittest_linux_gpu_py3.8
moto's avatar
moto committed
789
          python_version: '3.8'
790
791
          requires:
          - download_third_parties_nix
Eli Uriegas's avatar
Eli Uriegas committed
792
793
794
795
796
      - unittest_linux_gpu:
          name: unittest_linux_gpu_py3.9
          python_version: '3.9'
          requires:
          - download_third_parties_nix
moto's avatar
moto committed
797
798
      - unittest_windows_cpu:
          name: unittest_windows_cpu_py3.6
799
          python_version: '3.6'
moto's avatar
moto committed
800
801
      - unittest_windows_cpu:
          name: unittest_windows_cpu_py3.7
802
          python_version: '3.7'
moto's avatar
moto committed
803
804
      - unittest_windows_cpu:
          name: unittest_windows_cpu_py3.8
805
          python_version: '3.8'
Eli Uriegas's avatar
Eli Uriegas committed
806
807
808
      - unittest_windows_cpu:
          name: unittest_windows_cpu_py3.9
          python_version: '3.9'
809
810
811
812
813
814
815
816
817
      - unittest_windows_gpu:
          name: unittest_windows_gpu_py3.6
          python_version: '3.6'
      - unittest_windows_gpu:
          name: unittest_windows_gpu_py3.7
          python_version: '3.7'
      - unittest_windows_gpu:
          name: unittest_windows_gpu_py3.8
          python_version: '3.8'
Eli Uriegas's avatar
Eli Uriegas committed
818
819
820
      - unittest_windows_gpu:
          name: unittest_windows_gpu_py3.9
          python_version: '3.9'
moto's avatar
moto committed
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
      - unittest_macos_cpu:
          name: unittest_macos_cpu_py3.6
          python_version: '3.6'
          requires:
          - download_third_parties_nix
      - unittest_macos_cpu:
          name: unittest_macos_cpu_py3.7
          python_version: '3.7'
          requires:
          - download_third_parties_nix
      - unittest_macos_cpu:
          name: unittest_macos_cpu_py3.8
          python_version: '3.8'
          requires:
          - download_third_parties_nix
Eli Uriegas's avatar
Eli Uriegas committed
836
837
838
839
840
      - unittest_macos_cpu:
          name: unittest_macos_cpu_py3.9
          python_version: '3.9'
          requires:
          - download_third_parties_nix
Edward Z. Yang's avatar
Edward Z. Yang committed
841
842
  nightly:
    jobs:
moto's avatar
moto committed
843
844
845
846
      - circleci_consistency:
          filters:
            branches:
              only: nightly
847
848
849
      - download_third_parties_nix:
          filters:
            branches:
moto's avatar
moto committed
850
851
              only:
              - nightly
852
853
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
854
          name: download_third_parties_nix
Edward Z. Yang's avatar
Edward Z. Yang committed
855
      - binary_linux_wheel:
Edward Z. Yang's avatar
Edward Z. Yang committed
856
857
          filters:
            branches:
moto's avatar
moto committed
858
859
              only:
              - nightly
860
861
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
862
863
          name: nightly_binary_linux_wheel_py3.6
          python_version: '3.6'
864
865
          requires:
          - download_third_parties_nix
Edward Z. Yang's avatar
Edward Z. Yang committed
866
867
      - binary_wheel_upload:
          context: org-member
868
869
          filters:
            branches:
moto's avatar
moto committed
870
871
              only:
              - nightly
872
873
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
874
          name: nightly_binary_linux_wheel_py3.6_upload
Edward Z. Yang's avatar
Edward Z. Yang committed
875
          requires:
876
          - nightly_binary_linux_wheel_py3.6
Mingbo Wan's avatar
Mingbo Wan committed
877
      - smoke_test_linux_pip:
Edward Z. Yang's avatar
Edward Z. Yang committed
878
879
          filters:
            branches:
moto's avatar
moto committed
880
881
              only:
              - nightly
882
883
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
884
885
886
887
          name: nightly_binary_linux_wheel_py3.6_smoke_test_pip
          python_version: '3.6'
          requires:
          - nightly_binary_linux_wheel_py3.6_upload
888
      - binary_linux_wheel:
Edward Z. Yang's avatar
Edward Z. Yang committed
889
890
          filters:
            branches:
moto's avatar
moto committed
891
892
              only:
              - nightly
893
894
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
895
896
          name: nightly_binary_linux_wheel_py3.7
          python_version: '3.7'
897
898
          requires:
          - download_third_parties_nix
899
900
      - binary_wheel_upload:
          context: org-member
901
902
          filters:
            branches:
moto's avatar
moto committed
903
904
              only:
              - nightly
905
906
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
907
          name: nightly_binary_linux_wheel_py3.7_upload
908
          requires:
909
          - nightly_binary_linux_wheel_py3.7
Mingbo Wan's avatar
Mingbo Wan committed
910
      - smoke_test_linux_pip:
Edward Z. Yang's avatar
Edward Z. Yang committed
911
912
          filters:
            branches:
moto's avatar
moto committed
913
914
              only:
              - nightly
915
916
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
917
918
919
920
          name: nightly_binary_linux_wheel_py3.7_smoke_test_pip
          python_version: '3.7'
          requires:
          - nightly_binary_linux_wheel_py3.7_upload
921
922
923
      - binary_linux_wheel:
          filters:
            branches:
moto's avatar
moto committed
924
925
              only:
              - nightly
926
927
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
928
929
          name: nightly_binary_linux_wheel_py3.8
          python_version: '3.8'
930
931
          requires:
          - download_third_parties_nix
932
933
934
935
      - binary_wheel_upload:
          context: org-member
          filters:
            branches:
moto's avatar
moto committed
936
937
              only:
              - nightly
938
939
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
940
941
942
943
944
945
          name: nightly_binary_linux_wheel_py3.8_upload
          requires:
          - nightly_binary_linux_wheel_py3.8
      - smoke_test_linux_pip:
          filters:
            branches:
moto's avatar
moto committed
946
947
              only:
              - nightly
948
949
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
950
951
952
953
          name: nightly_binary_linux_wheel_py3.8_smoke_test_pip
          python_version: '3.8'
          requires:
          - nightly_binary_linux_wheel_py3.8_upload
Eli Uriegas's avatar
Eli Uriegas committed
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
      - binary_linux_wheel:
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: nightly_binary_linux_wheel_py3.9
          python_version: '3.9'
          requires:
          - download_third_parties_nix
      - binary_wheel_upload:
          context: org-member
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: nightly_binary_linux_wheel_py3.9_upload
          requires:
          - nightly_binary_linux_wheel_py3.9
      - smoke_test_linux_pip:
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: nightly_binary_linux_wheel_py3.9_smoke_test_pip
          python_version: '3.9'
          requires:
          - nightly_binary_linux_wheel_py3.9_upload
Edward Z. Yang's avatar
Edward Z. Yang committed
987
      - binary_macos_wheel:
Edward Z. Yang's avatar
Edward Z. Yang committed
988
989
          filters:
            branches:
moto's avatar
moto committed
990
991
              only:
              - nightly
992
993
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
994
995
          name: nightly_binary_macos_wheel_py3.6
          python_version: '3.6'
996
997
          requires:
          - download_third_parties_nix
Edward Z. Yang's avatar
Edward Z. Yang committed
998
999
      - binary_wheel_upload:
          context: org-member
Edward Z. Yang's avatar
Edward Z. Yang committed
1000
1001
          filters:
            branches:
moto's avatar
moto committed
1002
1003
              only:
              - nightly
1004
1005
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1006
1007
1008
          name: nightly_binary_macos_wheel_py3.6_upload
          requires:
          - nightly_binary_macos_wheel_py3.6
1009
      - binary_macos_wheel:
Edward Z. Yang's avatar
Edward Z. Yang committed
1010
1011
          filters:
            branches:
moto's avatar
moto committed
1012
1013
              only:
              - nightly
1014
1015
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1016
1017
          name: nightly_binary_macos_wheel_py3.7
          python_version: '3.7'
1018
1019
          requires:
          - download_third_parties_nix
1020
1021
      - binary_wheel_upload:
          context: org-member
Edward Z. Yang's avatar
Edward Z. Yang committed
1022
1023
          filters:
            branches:
moto's avatar
moto committed
1024
1025
              only:
              - nightly
1026
1027
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1028
1029
1030
          name: nightly_binary_macos_wheel_py3.7_upload
          requires:
          - nightly_binary_macos_wheel_py3.7
1031
1032
1033
      - binary_macos_wheel:
          filters:
            branches:
moto's avatar
moto committed
1034
1035
              only:
              - nightly
1036
1037
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1038
1039
          name: nightly_binary_macos_wheel_py3.8
          python_version: '3.8'
1040
1041
          requires:
          - download_third_parties_nix
1042
1043
1044
1045
      - binary_wheel_upload:
          context: org-member
          filters:
            branches:
moto's avatar
moto committed
1046
1047
              only:
              - nightly
1048
1049
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1050
1051
1052
          name: nightly_binary_macos_wheel_py3.8_upload
          requires:
          - nightly_binary_macos_wheel_py3.8
Eli Uriegas's avatar
Eli Uriegas committed
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
      - binary_macos_wheel:
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: nightly_binary_macos_wheel_py3.9
          python_version: '3.9'
          requires:
          - download_third_parties_nix
      - binary_wheel_upload:
          context: org-member
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: nightly_binary_macos_wheel_py3.9_upload
          requires:
          - nightly_binary_macos_wheel_py3.9
peterjc123's avatar
peterjc123 committed
1075
1076
1077
      - binary_windows_wheel:
          filters:
            branches:
moto's avatar
moto committed
1078
1079
              only:
              - nightly
1080
1081
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
peterjc123's avatar
peterjc123 committed
1082
1083
1084
1085
1086
1087
          name: nightly_binary_windows_wheel_py3.6
          python_version: '3.6'
      - binary_wheel_upload:
          context: org-member
          filters:
            branches:
moto's avatar
moto committed
1088
1089
              only:
              - nightly
1090
1091
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
peterjc123's avatar
peterjc123 committed
1092
1093
1094
          name: nightly_binary_windows_wheel_py3.6_upload
          requires:
          - nightly_binary_windows_wheel_py3.6
1095
1096
1097
      - smoke_test_windows_pip:
          filters:
            branches:
moto's avatar
moto committed
1098
1099
              only:
              - nightly
1100
1101
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1102
1103
1104
1105
          name: nightly_binary_windows_wheel_py3.6_smoke_test_pip
          python_version: '3.6'
          requires:
          - nightly_binary_windows_wheel_py3.6_upload
peterjc123's avatar
peterjc123 committed
1106
1107
1108
      - binary_windows_wheel:
          filters:
            branches:
moto's avatar
moto committed
1109
1110
              only:
              - nightly
1111
1112
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
peterjc123's avatar
peterjc123 committed
1113
1114
1115
1116
1117
1118
          name: nightly_binary_windows_wheel_py3.7
          python_version: '3.7'
      - binary_wheel_upload:
          context: org-member
          filters:
            branches:
moto's avatar
moto committed
1119
1120
              only:
              - nightly
1121
1122
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
peterjc123's avatar
peterjc123 committed
1123
1124
1125
          name: nightly_binary_windows_wheel_py3.7_upload
          requires:
          - nightly_binary_windows_wheel_py3.7
1126
1127
1128
      - smoke_test_windows_pip:
          filters:
            branches:
moto's avatar
moto committed
1129
1130
              only:
              - nightly
1131
1132
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1133
1134
1135
1136
          name: nightly_binary_windows_wheel_py3.7_smoke_test_pip
          python_version: '3.7'
          requires:
          - nightly_binary_windows_wheel_py3.7_upload
peterjc123's avatar
peterjc123 committed
1137
1138
1139
      - binary_windows_wheel:
          filters:
            branches:
moto's avatar
moto committed
1140
1141
              only:
              - nightly
1142
1143
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
peterjc123's avatar
peterjc123 committed
1144
1145
1146
1147
1148
1149
          name: nightly_binary_windows_wheel_py3.8
          python_version: '3.8'
      - binary_wheel_upload:
          context: org-member
          filters:
            branches:
moto's avatar
moto committed
1150
1151
              only:
              - nightly
1152
1153
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
peterjc123's avatar
peterjc123 committed
1154
1155
1156
          name: nightly_binary_windows_wheel_py3.8_upload
          requires:
          - nightly_binary_windows_wheel_py3.8
1157
1158
1159
      - smoke_test_windows_pip:
          filters:
            branches:
moto's avatar
moto committed
1160
1161
              only:
              - nightly
1162
1163
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1164
1165
1166
1167
          name: nightly_binary_windows_wheel_py3.8_smoke_test_pip
          python_version: '3.8'
          requires:
          - nightly_binary_windows_wheel_py3.8_upload
Eli Uriegas's avatar
Eli Uriegas committed
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
      - binary_windows_wheel:
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: nightly_binary_windows_wheel_py3.9
          python_version: '3.9'
      - binary_wheel_upload:
          context: org-member
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: nightly_binary_windows_wheel_py3.9_upload
          requires:
          - nightly_binary_windows_wheel_py3.9
      - smoke_test_windows_pip:
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: nightly_binary_windows_wheel_py3.9_smoke_test_pip
          python_version: '3.9'
          requires:
          - nightly_binary_windows_wheel_py3.9_upload
Edward Z. Yang's avatar
Edward Z. Yang committed
1199
      - binary_linux_conda:
Edward Z. Yang's avatar
Edward Z. Yang committed
1200
1201
          filters:
            branches:
moto's avatar
moto committed
1202
1203
              only:
              - nightly
1204
1205
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1206
1207
          name: nightly_binary_linux_conda_py3.6
          python_version: '3.6'
1208
1209
          requires:
          - download_third_parties_nix
Edward Z. Yang's avatar
Edward Z. Yang committed
1210
1211
      - binary_conda_upload:
          context: org-member
1212
1213
          filters:
            branches:
moto's avatar
moto committed
1214
1215
              only:
              - nightly
1216
1217
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1218
          name: nightly_binary_linux_conda_py3.6_upload
Edward Z. Yang's avatar
Edward Z. Yang committed
1219
          requires:
1220
          - nightly_binary_linux_conda_py3.6
Mingbo Wan's avatar
Mingbo Wan committed
1221
      - smoke_test_linux_conda:
Edward Z. Yang's avatar
Edward Z. Yang committed
1222
1223
          filters:
            branches:
moto's avatar
moto committed
1224
1225
              only:
              - nightly
1226
1227
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1228
1229
1230
1231
          name: nightly_binary_linux_conda_py3.6_smoke_test_conda
          python_version: '3.6'
          requires:
          - nightly_binary_linux_conda_py3.6_upload
1232
      - binary_linux_conda:
Edward Z. Yang's avatar
Edward Z. Yang committed
1233
1234
          filters:
            branches:
moto's avatar
moto committed
1235
1236
              only:
              - nightly
1237
1238
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1239
1240
          name: nightly_binary_linux_conda_py3.7
          python_version: '3.7'
1241
1242
          requires:
          - download_third_parties_nix
1243
1244
      - binary_conda_upload:
          context: org-member
1245
1246
          filters:
            branches:
moto's avatar
moto committed
1247
1248
              only:
              - nightly
1249
1250
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1251
          name: nightly_binary_linux_conda_py3.7_upload
1252
          requires:
1253
          - nightly_binary_linux_conda_py3.7
Mingbo Wan's avatar
Mingbo Wan committed
1254
      - smoke_test_linux_conda:
Edward Z. Yang's avatar
Edward Z. Yang committed
1255
1256
          filters:
            branches:
moto's avatar
moto committed
1257
1258
              only:
              - nightly
1259
1260
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1261
1262
1263
1264
          name: nightly_binary_linux_conda_py3.7_smoke_test_conda
          python_version: '3.7'
          requires:
          - nightly_binary_linux_conda_py3.7_upload
1265
1266
1267
      - binary_linux_conda:
          filters:
            branches:
moto's avatar
moto committed
1268
1269
              only:
              - nightly
1270
1271
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1272
1273
          name: nightly_binary_linux_conda_py3.8
          python_version: '3.8'
1274
1275
          requires:
          - download_third_parties_nix
1276
1277
1278
1279
      - binary_conda_upload:
          context: org-member
          filters:
            branches:
moto's avatar
moto committed
1280
1281
              only:
              - nightly
1282
1283
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1284
1285
1286
1287
1288
1289
          name: nightly_binary_linux_conda_py3.8_upload
          requires:
          - nightly_binary_linux_conda_py3.8
      - smoke_test_linux_conda:
          filters:
            branches:
moto's avatar
moto committed
1290
1291
              only:
              - nightly
1292
1293
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1294
1295
1296
1297
          name: nightly_binary_linux_conda_py3.8_smoke_test_conda
          python_version: '3.8'
          requires:
          - nightly_binary_linux_conda_py3.8_upload
Eli Uriegas's avatar
Eli Uriegas committed
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
      - binary_linux_conda:
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: nightly_binary_linux_conda_py3.9
          python_version: '3.9'
          requires:
          - download_third_parties_nix
      - binary_conda_upload:
          context: org-member
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: nightly_binary_linux_conda_py3.9_upload
          requires:
          - nightly_binary_linux_conda_py3.9
      - smoke_test_linux_conda:
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: nightly_binary_linux_conda_py3.9_smoke_test_conda
          python_version: '3.9'
          requires:
          - nightly_binary_linux_conda_py3.9_upload
Edward Z. Yang's avatar
Edward Z. Yang committed
1331
      - binary_macos_conda:
Edward Z. Yang's avatar
Edward Z. Yang committed
1332
1333
          filters:
            branches:
moto's avatar
moto committed
1334
1335
              only:
              - nightly
1336
1337
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1338
1339
          name: nightly_binary_macos_conda_py3.6
          python_version: '3.6'
1340
1341
          requires:
          - download_third_parties_nix
Edward Z. Yang's avatar
Edward Z. Yang committed
1342
1343
      - binary_conda_upload:
          context: org-member
Edward Z. Yang's avatar
Edward Z. Yang committed
1344
1345
          filters:
            branches:
moto's avatar
moto committed
1346
1347
              only:
              - nightly
1348
1349
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1350
1351
1352
          name: nightly_binary_macos_conda_py3.6_upload
          requires:
          - nightly_binary_macos_conda_py3.6
1353
      - binary_macos_conda:
Edward Z. Yang's avatar
Edward Z. Yang committed
1354
1355
          filters:
            branches:
moto's avatar
moto committed
1356
1357
              only:
              - nightly
1358
1359
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1360
1361
          name: nightly_binary_macos_conda_py3.7
          python_version: '3.7'
1362
1363
          requires:
          - download_third_parties_nix
1364
1365
      - binary_conda_upload:
          context: org-member
Edward Z. Yang's avatar
Edward Z. Yang committed
1366
1367
          filters:
            branches:
moto's avatar
moto committed
1368
1369
              only:
              - nightly
1370
1371
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1372
1373
1374
          name: nightly_binary_macos_conda_py3.7_upload
          requires:
          - nightly_binary_macos_conda_py3.7
1375
1376
1377
      - binary_macos_conda:
          filters:
            branches:
moto's avatar
moto committed
1378
1379
              only:
              - nightly
1380
1381
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1382
1383
          name: nightly_binary_macos_conda_py3.8
          python_version: '3.8'
1384
1385
          requires:
          - download_third_parties_nix
1386
1387
1388
1389
      - binary_conda_upload:
          context: org-member
          filters:
            branches:
moto's avatar
moto committed
1390
1391
              only:
              - nightly
1392
1393
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1394
1395
1396
          name: nightly_binary_macos_conda_py3.8_upload
          requires:
          - nightly_binary_macos_conda_py3.8
Eli Uriegas's avatar
Eli Uriegas committed
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
      - binary_macos_conda:
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: nightly_binary_macos_conda_py3.9
          python_version: '3.9'
          requires:
          - download_third_parties_nix
      - binary_conda_upload:
          context: org-member
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: nightly_binary_macos_conda_py3.9_upload
          requires:
          - nightly_binary_macos_conda_py3.9
peterjc123's avatar
peterjc123 committed
1419
1420
1421
      - binary_windows_conda:
          filters:
            branches:
moto's avatar
moto committed
1422
1423
              only:
              - nightly
1424
1425
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
peterjc123's avatar
peterjc123 committed
1426
1427
1428
1429
1430
1431
          name: nightly_binary_windows_conda_py3.6
          python_version: '3.6'
      - binary_conda_upload:
          context: org-member
          filters:
            branches:
moto's avatar
moto committed
1432
1433
              only:
              - nightly
1434
1435
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
peterjc123's avatar
peterjc123 committed
1436
1437
1438
          name: nightly_binary_windows_conda_py3.6_upload
          requires:
          - nightly_binary_windows_conda_py3.6
1439
1440
1441
      - smoke_test_windows_conda:
          filters:
            branches:
moto's avatar
moto committed
1442
1443
              only:
              - nightly
1444
1445
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1446
1447
1448
1449
          name: nightly_binary_windows_conda_py3.6_smoke_test_conda
          python_version: '3.6'
          requires:
          - nightly_binary_windows_conda_py3.6_upload
peterjc123's avatar
peterjc123 committed
1450
1451
1452
      - binary_windows_conda:
          filters:
            branches:
moto's avatar
moto committed
1453
1454
              only:
              - nightly
1455
1456
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
peterjc123's avatar
peterjc123 committed
1457
1458
1459
1460
1461
1462
          name: nightly_binary_windows_conda_py3.7
          python_version: '3.7'
      - binary_conda_upload:
          context: org-member
          filters:
            branches:
moto's avatar
moto committed
1463
1464
              only:
              - nightly
1465
1466
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
peterjc123's avatar
peterjc123 committed
1467
1468
1469
          name: nightly_binary_windows_conda_py3.7_upload
          requires:
          - nightly_binary_windows_conda_py3.7
1470
1471
1472
      - smoke_test_windows_conda:
          filters:
            branches:
moto's avatar
moto committed
1473
1474
              only:
              - nightly
1475
1476
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1477
1478
1479
1480
          name: nightly_binary_windows_conda_py3.7_smoke_test_conda
          python_version: '3.7'
          requires:
          - nightly_binary_windows_conda_py3.7_upload
peterjc123's avatar
peterjc123 committed
1481
1482
1483
      - binary_windows_conda:
          filters:
            branches:
moto's avatar
moto committed
1484
1485
              only:
              - nightly
1486
1487
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
peterjc123's avatar
peterjc123 committed
1488
1489
1490
1491
1492
1493
          name: nightly_binary_windows_conda_py3.8
          python_version: '3.8'
      - binary_conda_upload:
          context: org-member
          filters:
            branches:
moto's avatar
moto committed
1494
1495
              only:
              - nightly
1496
1497
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
peterjc123's avatar
peterjc123 committed
1498
1499
1500
          name: nightly_binary_windows_conda_py3.8_upload
          requires:
          - nightly_binary_windows_conda_py3.8
1501
1502
1503
      - smoke_test_windows_conda:
          filters:
            branches:
moto's avatar
moto committed
1504
1505
              only:
              - nightly
1506
1507
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
1508
1509
1510
1511
          name: nightly_binary_windows_conda_py3.8_smoke_test_conda
          python_version: '3.8'
          requires:
          - nightly_binary_windows_conda_py3.8_upload
Eli Uriegas's avatar
Eli Uriegas committed
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
      - binary_windows_conda:
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: nightly_binary_windows_conda_py3.9
          python_version: '3.9'
      - binary_conda_upload:
          context: org-member
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: nightly_binary_windows_conda_py3.9_upload
          requires:
          - nightly_binary_windows_conda_py3.9
      - smoke_test_windows_conda:
          filters:
            branches:
              only:
              - nightly
            tags:
              only: /v[0-9]+(\.[0-9]+)*-rc[0-9]+/
          name: nightly_binary_windows_conda_py3.9_smoke_test_conda
          python_version: '3.9'
          requires:
          - nightly_binary_windows_conda_py3.9_upload
Mingbo Wan's avatar
Mingbo Wan committed
1543
1544
1545
1546
1547
1548
1549
1550
1551
  docker_build:
    triggers:
      - schedule:
          cron: "0 10 * * 0"
          filters:
            branches:
              only:
                - master
    jobs:
moto's avatar
moto committed
1552
      - smoke_test_docker_image_build