config.yml 20.4 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
binary_common: &binary_common
  parameters:
Edward Z. Yang's avatar
Edward Z. Yang committed
18
    # Edit these defaults to do a release
19
20
21
22
23
24
25
26
27
28
    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:
29
      description: "Python version to build against (e.g., 3.8)"
30
31
32
33
34
      type: string
  environment:
    PYTHON_VERSION: << parameters.python_version >>
    BUILD_VERSION: << parameters.build_version >>
    PYTORCH_VERSION: << parameters.pytorch_version >>
Edward Z. Yang's avatar
Edward Z. Yang committed
35
    CU_VERSION: cpu
36

Mingbo Wan's avatar
Mingbo Wan committed
37
38
39
40
41
42
43
44
smoke_test_common: &smoke_test_common
  <<: *binary_common
  docker:
    - image: 308535385114.dkr.ecr.us-east-1.amazonaws.com/torchaudio/smoke_test:d26af7d0-8458-face-book-84239b5c75c0
      aws_auth:
        aws_access_key_id: ${ECR_AWS_ACCESS_KEY}
        aws_secret_access_key: ${ECR_AWS_SECRET_ACCESS_KEY}

45
jobs:
46
47
  circleci_consistency:
    docker:
48
      - image: circleci/python:3.8
49
50
51
52
    steps:
      - checkout
      - run:
          command: |
53
            pip install --user --progress-bar off jinja2 pyyaml
54
55
56
            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)

57
  binary_linux_wheel:
58
    <<: *binary_common
59
    docker:
60
      - image: "pytorch/manylinux-cuda100"
61
62
63
    resource_class: 2xlarge+
    steps:
      - checkout
64
      - run: packaging/build_wheel.sh
65
      - store_artifacts:
66
          path: dist
Edward Z. Yang's avatar
Edward Z. Yang committed
67
68
69
70
      - persist_to_workspace:
          root: dist
          paths:
            - "*"
71
72

  binary_linux_conda:
73
    <<: *binary_common
74
    docker:
75
      - image: "pytorch/conda-cuda"
76
77
78
    resource_class: 2xlarge+
    steps:
      - checkout
79
      - run: packaging/build_conda.sh
80
81
      - store_artifacts:
          path: /opt/conda/conda-bld/linux-64
Edward Z. Yang's avatar
Edward Z. Yang committed
82
83
84
85
      - persist_to_workspace:
          root: /opt/conda/conda-bld/linux-64
          paths:
            - "*"
86

87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
  binary_macos_wheel:
    <<: *binary_common
    macos:
      xcode: "9.0"
    steps:
      - checkout
      - 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
104
105
106
107
      - persist_to_workspace:
          root: dist
          paths:
            - "*"
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123

  binary_macos_conda:
    <<: *binary_common
    macos:
      xcode: "9.0"
    steps:
      - checkout
      - 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
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
      - persist_to_workspace:
          root: /Users/distiller/miniconda3/conda-bld/osx-64
          paths:
            - "*"

  # Requires org-member context
  binary_conda_upload:
    docker:
      - image: continuumio/miniconda
    steps:
      - attach_workspace:
          at: ~/workspace
      - run:
          command: |
            # Prevent credential from leaking
            conda install -yq anaconda-client
            set -x
141
            anaconda -t "${CONDA_PYTORCHBOT_TOKEN}" upload ~/workspace/*.tar.bz2 -u pytorch-nightly --label main --no-progress --force
Edward Z. Yang's avatar
Edward Z. Yang committed
142
143
144
145

  # Requires org-member context
  binary_wheel_upload:
    docker:
146
      - image: circleci/python:3.8
Edward Z. Yang's avatar
Edward Z. Yang committed
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
    steps:
      - attach_workspace:
          at: ~/workspace
      - checkout
      - 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
              aws s3 cp "$pkg" "s3://pytorch/whl/nightly/" --acl public-read
            done
163

Mingbo Wan's avatar
Mingbo Wan committed
164
165
166
  smoke_test_linux_conda:
    <<: *smoke_test_common
    steps:
Mingbo Wan's avatar
Mingbo Wan committed
167
168
      - attach_workspace:
          at: ~/workspace
Mingbo Wan's avatar
Mingbo Wan committed
169
      - run:
Mingbo Wan's avatar
Mingbo Wan committed
170
          name: install binaries
Mingbo Wan's avatar
Mingbo Wan committed
171
172
173
          command: |
            set -x
            source /usr/local/etc/profile.d/conda.sh && conda activate python${PYTHON_VERSION}
Mingbo Wan's avatar
Mingbo Wan committed
174
175
176
177
178
179
            conda install -v -y -c pytorch-nightly pytorch
            conda install -v -y $(ls ~/workspace/torchaudio*.tar.bz2)
      - 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
180
181
182
183
184
            python -c "import torchaudio"

  smoke_test_linux_pip:
    <<: *smoke_test_common
    steps:
Mingbo Wan's avatar
Mingbo Wan committed
185
186
      - attach_workspace:
          at: ~/workspace
Mingbo Wan's avatar
Mingbo Wan committed
187
      - run:
Mingbo Wan's avatar
Mingbo Wan committed
188
          name: install binaries
Mingbo Wan's avatar
Mingbo Wan committed
189
190
191
          command: |
            set -x
            source /usr/local/etc/profile.d/conda.sh && conda activate python${PYTHON_VERSION}
Mingbo Wan's avatar
Mingbo Wan committed
192
193
194
195
196
            pip install $(ls ~/workspace/torchaudio*.whl) -f https://download.pytorch.org/whl/nightly/torch_nightly.html
      - 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
197
198
            python -c "import torchaudio"

199
  smoke_test_docker_image_build:
Mingbo Wan's avatar
Mingbo Wan committed
200
201
202
203
204
205
206
207
208
209
210
    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: |
211
            cd .circleci/smoke_test/docker && docker build . -t ${image_name}:${CIRCLE_WORKFLOW_ID}
Mingbo Wan's avatar
Mingbo Wan committed
212
213
214
215
216
217
218
219
220
221
222
223
      - 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}
            docker push 308535385114.dkr.ecr.us-east-1.amazonaws.com/${image_name}:${CIRCLE_WORKFLOW_ID}

moto's avatar
moto committed
224
  unittest_linux_cpu:
moto's avatar
moto committed
225
226
    <<: *binary_common
    docker:
227
      - image: "pytorch/torchaudio_unittest_base:manylinux"
moto's avatar
moto committed
228
229
230
    resource_class: 2xlarge+
    steps:
      - checkout
moto's avatar
moto committed
231
232
233
234
      - run:
          name: Generate cache key
          # This will refresh cache on Sundays, nightly build should generate new cache.
          command: echo "$(date +"%Y-%U")" > .circleci-weekly
moto's avatar
moto committed
235
236
237
      - restore_cache:

          keys:
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
            - env-v1-linux-{{ arch }}-py<< parameters.python_version >>-{{ checksum ".circleci/unittest/linux/scripts/environment.yml" }}-{{ checksum ".circleci-weekly" }}

      - run:
          name: Setup
          command: .circleci/unittest/linux/scripts/setup_env.sh
      - save_cache:

          key: env-v1-linux-{{ arch }}-py<< parameters.python_version >>-{{ checksum ".circleci/unittest/linux/scripts/environment.yml" }}-{{ checksum ".circleci-weekly" }}

          paths:
            - conda
            - env
      - 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
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
  unittest_linux_gpu:
    <<: *binary_common
    machine:
      image: ubuntu-1604-cuda-10.1:201909-23
    resource_class: gpu.small
    environment:
      image_name: "pytorch/torchaudio_unittest_base:manylinux-cuda10.1"
    steps:
      - checkout
      - run:
          name: Generate cache key
          # This will refresh cache on Sundays, nightly build should generate new cache.
          command: echo "$(date +"%Y-%U")" > .circleci-weekly
      - restore_cache:

          keys:
            - env-v1-linux-{{ arch }}-py<< parameters.python_version >>-{{ checksum ".circleci/unittest/linux/scripts/environment.yml" }}-{{ checksum ".circleci-weekly" }}

      - run:
          name: Setup
          command: docker run -t --gpus all -v $PWD:$PWD -w $PWD "${image_name}" .circleci/unittest/linux/scripts/setup_env.sh
      - save_cache:

          key: env-v1-linux-{{ arch }}-py<< parameters.python_version >>-{{ checksum ".circleci/unittest/linux/scripts/environment.yml" }}-{{ checksum ".circleci-weekly" }}

          paths:
            - conda
            - env
      - run:
          name: Install torchaudio
          command: docker run -t --gpus all -v $PWD:$PWD -w $PWD "${image_name}" .circleci/unittest/linux/scripts/install.sh
      - 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:
303
304
305
306
307
308
309
310
311
312
313
314
315
    <<: *binary_common
    executor:
      name: windows-cpu
    steps:
      - checkout
      - run:
          name: Generate cache key
          # This will refresh cache on Sundays, nightly build should generate new cache.
          command: echo "$(date +"%Y-%U")" > .circleci-weekly
      - restore_cache:

          keys:
            - env-v1-windows-{{ arch }}-py<< parameters.python_version >>-{{ checksum ".circleci/unittest/windows/scripts/environment.yml" }}-{{ checksum ".circleci-weekly" }}
moto's avatar
moto committed
316
317
318

      - run:
          name: Setup
319
          command: .circleci/unittest/windows/scripts/setup_env.sh
moto's avatar
moto committed
320
321
      - save_cache:

322
          key: env-v1-windows-{{ arch }}-py<< parameters.python_version >>-{{ checksum ".circleci/unittest/windows/scripts/environment.yml" }}-{{ checksum ".circleci-weekly" }}
moto's avatar
moto committed
323
324
325
326
327

          paths:
            - conda
            - env
      - run:
328
          name: Install torchaudio
329
          command: .circleci/unittest/windows/scripts/install.sh
moto's avatar
moto committed
330
      - run:
331
          name: Run tests
332
          command: .circleci/unittest/windows/scripts/run_test.sh
moto's avatar
moto committed
333
334
      - run:
          name: Post process
335
          command: .circleci/unittest/windows/scripts/post_process.sh
moto's avatar
moto committed
336
337
      - store_test_results:
          path: test-results
moto's avatar
moto committed
338

339
340
341
workflows:
  build:
    jobs:
342
343
344
      - circleci_consistency
      - binary_linux_wheel:
          name: binary_linux_wheel_py3.6
345
          python_version: '3.6'
346
347
      - binary_linux_wheel:
          name: binary_linux_wheel_py3.7
348
          python_version: '3.7'
349
350
351
      - binary_linux_wheel:
          name: binary_linux_wheel_py3.8
          python_version: '3.8'
352
353
      - binary_macos_wheel:
          name: binary_macos_wheel_py3.6
354
          python_version: '3.6'
355
356
      - binary_macos_wheel:
          name: binary_macos_wheel_py3.7
357
          python_version: '3.7'
358
359
360
      - binary_macos_wheel:
          name: binary_macos_wheel_py3.8
          python_version: '3.8'
361
362
      - binary_linux_conda:
          name: binary_linux_conda_py3.6
363
          python_version: '3.6'
364
365
      - binary_linux_conda:
          name: binary_linux_conda_py3.7
366
          python_version: '3.7'
367
368
369
      - binary_linux_conda:
          name: binary_linux_conda_py3.8
          python_version: '3.8'
370
371
      - binary_macos_conda:
          name: binary_macos_conda_py3.6
372
          python_version: '3.6'
373
374
      - binary_macos_conda:
          name: binary_macos_conda_py3.7
375
          python_version: '3.7'
376
377
378
      - binary_macos_conda:
          name: binary_macos_conda_py3.8
          python_version: '3.8'
moto's avatar
moto committed
379
380
  unittest:
    jobs:
moto's avatar
moto committed
381
382
383
384
385
386
387
388
389
390
391
392
393
394
      - unittest_linux_cpu:
          name: unittest_linux_cpu_py3.6
          python_version: '3.6'
      - unittest_linux_cpu:
          name: unittest_linux_cpu_py3.7
          python_version: '3.7'
      - unittest_linux_cpu:
          name: unittest_linux_cpu_py3.8
          python_version: '3.8'
      - unittest_linux_gpu:
          filters:
            branches:
              only: master
          name: unittest_linux_gpu_py3.6
moto's avatar
moto committed
395
          python_version: '3.6'
moto's avatar
moto committed
396
397
398
399
400
      - unittest_linux_gpu:
          filters:
            branches:
              only: master
          name: unittest_linux_gpu_py3.7
moto's avatar
moto committed
401
          python_version: '3.7'
moto's avatar
moto committed
402
403
404
405
406
      - unittest_linux_gpu:
          filters:
            branches:
              only: master
          name: unittest_linux_gpu_py3.8
moto's avatar
moto committed
407
          python_version: '3.8'
moto's avatar
moto committed
408
409
      - unittest_windows_cpu:
          name: unittest_windows_cpu_py3.6
410
          python_version: '3.6'
moto's avatar
moto committed
411
412
      - unittest_windows_cpu:
          name: unittest_windows_cpu_py3.7
413
          python_version: '3.7'
moto's avatar
moto committed
414
415
      - unittest_windows_cpu:
          name: unittest_windows_cpu_py3.8
416
          python_version: '3.8'
Edward Z. Yang's avatar
Edward Z. Yang committed
417
418
  nightly:
    jobs:
moto's avatar
moto committed
419
420
421
422
      - circleci_consistency:
          filters:
            branches:
              only: nightly
Edward Z. Yang's avatar
Edward Z. Yang committed
423
      - binary_linux_wheel:
Edward Z. Yang's avatar
Edward Z. Yang committed
424
425
426
          filters:
            branches:
              only: nightly
427
428
          name: nightly_binary_linux_wheel_py3.6
          python_version: '3.6'
Edward Z. Yang's avatar
Edward Z. Yang committed
429
430
      - binary_wheel_upload:
          context: org-member
431
432
433
          filters:
            branches:
              only: nightly
434
          name: nightly_binary_linux_wheel_py3.6_upload
Edward Z. Yang's avatar
Edward Z. Yang committed
435
          requires:
436
          - nightly_binary_linux_wheel_py3.6
Mingbo Wan's avatar
Mingbo Wan committed
437
      - smoke_test_linux_pip:
Edward Z. Yang's avatar
Edward Z. Yang committed
438
439
440
          filters:
            branches:
              only: nightly
441
442
443
444
          name: nightly_binary_linux_wheel_py3.6_smoke_test_pip
          python_version: '3.6'
          requires:
          - nightly_binary_linux_wheel_py3.6_upload
445
      - binary_linux_wheel:
Edward Z. Yang's avatar
Edward Z. Yang committed
446
447
448
          filters:
            branches:
              only: nightly
449
450
          name: nightly_binary_linux_wheel_py3.7
          python_version: '3.7'
451
452
      - binary_wheel_upload:
          context: org-member
453
454
455
          filters:
            branches:
              only: nightly
456
          name: nightly_binary_linux_wheel_py3.7_upload
457
          requires:
458
          - nightly_binary_linux_wheel_py3.7
Mingbo Wan's avatar
Mingbo Wan committed
459
      - smoke_test_linux_pip:
Edward Z. Yang's avatar
Edward Z. Yang committed
460
461
462
          filters:
            branches:
              only: nightly
463
464
465
466
          name: nightly_binary_linux_wheel_py3.7_smoke_test_pip
          python_version: '3.7'
          requires:
          - nightly_binary_linux_wheel_py3.7_upload
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
      - binary_linux_wheel:
          filters:
            branches:
              only: nightly
          name: nightly_binary_linux_wheel_py3.8
          python_version: '3.8'
      - binary_wheel_upload:
          context: org-member
          filters:
            branches:
              only: nightly
          name: nightly_binary_linux_wheel_py3.8_upload
          requires:
          - nightly_binary_linux_wheel_py3.8
      - smoke_test_linux_pip:
          filters:
            branches:
              only: nightly
          name: nightly_binary_linux_wheel_py3.8_smoke_test_pip
          python_version: '3.8'
          requires:
          - nightly_binary_linux_wheel_py3.8_upload
Edward Z. Yang's avatar
Edward Z. Yang committed
489
      - binary_macos_wheel:
Edward Z. Yang's avatar
Edward Z. Yang committed
490
491
492
          filters:
            branches:
              only: nightly
493
494
          name: nightly_binary_macos_wheel_py3.6
          python_version: '3.6'
Edward Z. Yang's avatar
Edward Z. Yang committed
495
496
      - binary_wheel_upload:
          context: org-member
Edward Z. Yang's avatar
Edward Z. Yang committed
497
498
499
          filters:
            branches:
              only: nightly
500
501
502
          name: nightly_binary_macos_wheel_py3.6_upload
          requires:
          - nightly_binary_macos_wheel_py3.6
503
      - binary_macos_wheel:
Edward Z. Yang's avatar
Edward Z. Yang committed
504
505
506
          filters:
            branches:
              only: nightly
507
508
          name: nightly_binary_macos_wheel_py3.7
          python_version: '3.7'
509
510
      - binary_wheel_upload:
          context: org-member
Edward Z. Yang's avatar
Edward Z. Yang committed
511
512
513
          filters:
            branches:
              only: nightly
514
515
516
          name: nightly_binary_macos_wheel_py3.7_upload
          requires:
          - nightly_binary_macos_wheel_py3.7
517
518
519
520
521
522
523
524
525
526
527
528
529
530
      - binary_macos_wheel:
          filters:
            branches:
              only: nightly
          name: nightly_binary_macos_wheel_py3.8
          python_version: '3.8'
      - binary_wheel_upload:
          context: org-member
          filters:
            branches:
              only: nightly
          name: nightly_binary_macos_wheel_py3.8_upload
          requires:
          - nightly_binary_macos_wheel_py3.8
Edward Z. Yang's avatar
Edward Z. Yang committed
531
      - binary_linux_conda:
Edward Z. Yang's avatar
Edward Z. Yang committed
532
533
534
          filters:
            branches:
              only: nightly
535
536
          name: nightly_binary_linux_conda_py3.6
          python_version: '3.6'
Edward Z. Yang's avatar
Edward Z. Yang committed
537
538
      - binary_conda_upload:
          context: org-member
539
540
541
          filters:
            branches:
              only: nightly
542
          name: nightly_binary_linux_conda_py3.6_upload
Edward Z. Yang's avatar
Edward Z. Yang committed
543
          requires:
544
          - nightly_binary_linux_conda_py3.6
Mingbo Wan's avatar
Mingbo Wan committed
545
      - smoke_test_linux_conda:
Edward Z. Yang's avatar
Edward Z. Yang committed
546
547
548
          filters:
            branches:
              only: nightly
549
550
551
552
          name: nightly_binary_linux_conda_py3.6_smoke_test_conda
          python_version: '3.6'
          requires:
          - nightly_binary_linux_conda_py3.6_upload
553
      - binary_linux_conda:
Edward Z. Yang's avatar
Edward Z. Yang committed
554
555
556
          filters:
            branches:
              only: nightly
557
558
          name: nightly_binary_linux_conda_py3.7
          python_version: '3.7'
559
560
      - binary_conda_upload:
          context: org-member
561
562
563
          filters:
            branches:
              only: nightly
564
          name: nightly_binary_linux_conda_py3.7_upload
565
          requires:
566
          - nightly_binary_linux_conda_py3.7
Mingbo Wan's avatar
Mingbo Wan committed
567
      - smoke_test_linux_conda:
Edward Z. Yang's avatar
Edward Z. Yang committed
568
569
570
          filters:
            branches:
              only: nightly
571
572
573
574
          name: nightly_binary_linux_conda_py3.7_smoke_test_conda
          python_version: '3.7'
          requires:
          - nightly_binary_linux_conda_py3.7_upload
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
      - binary_linux_conda:
          filters:
            branches:
              only: nightly
          name: nightly_binary_linux_conda_py3.8
          python_version: '3.8'
      - binary_conda_upload:
          context: org-member
          filters:
            branches:
              only: nightly
          name: nightly_binary_linux_conda_py3.8_upload
          requires:
          - nightly_binary_linux_conda_py3.8
      - smoke_test_linux_conda:
          filters:
            branches:
              only: nightly
          name: nightly_binary_linux_conda_py3.8_smoke_test_conda
          python_version: '3.8'
          requires:
          - nightly_binary_linux_conda_py3.8_upload
Edward Z. Yang's avatar
Edward Z. Yang committed
597
      - binary_macos_conda:
Edward Z. Yang's avatar
Edward Z. Yang committed
598
599
600
          filters:
            branches:
              only: nightly
601
602
          name: nightly_binary_macos_conda_py3.6
          python_version: '3.6'
Edward Z. Yang's avatar
Edward Z. Yang committed
603
604
      - binary_conda_upload:
          context: org-member
Edward Z. Yang's avatar
Edward Z. Yang committed
605
606
607
          filters:
            branches:
              only: nightly
608
609
610
          name: nightly_binary_macos_conda_py3.6_upload
          requires:
          - nightly_binary_macos_conda_py3.6
611
      - binary_macos_conda:
Edward Z. Yang's avatar
Edward Z. Yang committed
612
613
614
          filters:
            branches:
              only: nightly
615
616
          name: nightly_binary_macos_conda_py3.7
          python_version: '3.7'
617
618
      - binary_conda_upload:
          context: org-member
Edward Z. Yang's avatar
Edward Z. Yang committed
619
620
          filters:
            branches:
Mingbo Wan's avatar
Mingbo Wan committed
621
              only: nightly
622
623
624
          name: nightly_binary_macos_conda_py3.7_upload
          requires:
          - nightly_binary_macos_conda_py3.7
625
626
627
628
629
630
631
632
633
634
635
636
637
638
      - binary_macos_conda:
          filters:
            branches:
              only: nightly
          name: nightly_binary_macos_conda_py3.8
          python_version: '3.8'
      - binary_conda_upload:
          context: org-member
          filters:
            branches:
              only: nightly
          name: nightly_binary_macos_conda_py3.8_upload
          requires:
          - nightly_binary_macos_conda_py3.8
Mingbo Wan's avatar
Mingbo Wan committed
639
640
641
642
643
644
645
646
647
  docker_build:
    triggers:
      - schedule:
          cron: "0 10 * * 0"
          filters:
            branches:
              only:
                - master
    jobs:
648
      - smoke_test_docker_image_build