mirror of
https://github.com/saymrwulf/pytorch.git
synced 2026-05-14 20:57:59 +00:00
This adds land time checks before we try to merge. What this does is: 1. Merge changes into latest master, check out a new branch, push, and have a workflow that runs jobs from trunk (and maybe pull) 2. Wait for all checks in the landtime workflow to finish by using the GH API (graphql doesn't have this method from what I can see) 3. push the changes in Test Plan: Tested this in canary with a new workflow that passes and lint, tested what happens if i break the new workflow by exiting with 1, the normal flow, and some other flows. Tested it breaking when land checks fail: https://github.com/pytorch/pytorch-canary/pull/113#issuecomment-1165941716 Test that it works: https://github.com/pytorch/pytorch-canary/pull/114#issuecomment-1165922791 Test that normal validations like PR is broken: https://github.com/pytorch/pytorch-canary/pull/113#issuecomment-1165930037 Test that normal merge works: https://github.com/pytorch/pytorch-canary/pull/113#issuecomment-1166751288 Test that force merge works: https://github.com/pytorch/pytorch-canary/pull/113#issuecomment-1167507356 Pull Request resolved: https://github.com/pytorch/pytorch/pull/77943 Approved by: https://github.com/janeyx99
264 lines
10 KiB
YAML
264 lines
10 KiB
YAML
name: trunk
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
- main
|
|
- release/*
|
|
- landchecks/*
|
|
tags:
|
|
- ciflow/trunk/*
|
|
workflow_dispatch:
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}-${{ github.event_name == 'workflow_dispatch' }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
parallelnative-linux-focal-py3_7-gcc7-build:
|
|
name: parallelnative-linux-focal-py3.7-gcc7
|
|
uses: ./.github/workflows/_linux-build.yml
|
|
with:
|
|
build-environment: parallelnative-linux-focal-py3.7-gcc7
|
|
docker-image-name: pytorch-linux-focal-py3.7-gcc7
|
|
|
|
parallelnative-linux-focal-py3_7-gcc7-test:
|
|
name: parallelnative-linux-focal-py3.7-gcc7
|
|
uses: ./.github/workflows/_linux-test.yml
|
|
needs: parallelnative-linux-focal-py3_7-gcc7-build
|
|
with:
|
|
build-environment: parallelnative-linux-focal-py3.7-gcc7
|
|
docker-image: ${{ needs.parallelnative-linux-focal-py3_7-gcc7-build.outputs.docker-image }}
|
|
test-matrix: |
|
|
{ include: [
|
|
{ config: "default", shard: 1, num_shards: 2, runner: "linux.2xlarge" },
|
|
{ config: "default", shard: 2, num_shards: 2, runner: "linux.2xlarge" },
|
|
]}
|
|
|
|
# Build PyTorch with BUILD_CAFFE2=ON
|
|
caffe2-linux-focal-py3_7-gcc7-build:
|
|
name: caffe2-linux-focal-py3.7-gcc7
|
|
uses: ./.github/workflows/_linux-build.yml
|
|
with:
|
|
build-environment: caffe2-linux-focal-py3.7-gcc7
|
|
docker-image-name: pytorch-linux-focal-py3.7-gcc7
|
|
|
|
linux-bionic-cuda10_2-py3_9-gcc7-build:
|
|
name: linux-bionic-cuda10.2-py3.9-gcc7
|
|
uses: ./.github/workflows/_linux-build.yml
|
|
with:
|
|
build-environment: linux-bionic-cuda10.2-py3.9-gcc7
|
|
docker-image-name: pytorch-linux-bionic-cuda10.2-cudnn7-py3.9-gcc7
|
|
|
|
linux-bionic-cuda10_2-py3_9-gcc7-test:
|
|
name: linux-bionic-cuda10.2-py3.9-gcc7
|
|
uses: ./.github/workflows/_linux-test.yml
|
|
needs: linux-bionic-cuda10_2-py3_9-gcc7-build
|
|
with:
|
|
build-environment: linux-bionic-cuda10.2-py3.9-gcc7
|
|
docker-image: ${{ needs.linux-bionic-cuda10_2-py3_9-gcc7-build.outputs.docker-image }}
|
|
test-matrix: |
|
|
{ include: [
|
|
{ config: "default", shard: 1, num_shards: 2, runner: "linux.4xlarge.nvidia.gpu" },
|
|
{ config: "default", shard: 2, num_shards: 2, runner: "linux.4xlarge.nvidia.gpu" },
|
|
{ config: "slow", shard: 1, num_shards: 1, runner: "linux.4xlarge.nvidia.gpu" },
|
|
{ config: "nogpu_AVX512", shard: 1, num_shards: 1, runner: "linux.2xlarge" },
|
|
{ config: "nogpu_NO_AVX2", shard: 1, num_shards: 1, runner: "linux.2xlarge" },
|
|
{ config: "jit_legacy", shard: 1, num_shards: 1, runner: "linux.4xlarge.nvidia.gpu" },
|
|
{ config: "distributed", shard: 1, num_shards: 2, runner: "linux.8xlarge.nvidia.gpu" },
|
|
{ config: "distributed", shard: 2, num_shards: 2, runner: "linux.8xlarge.nvidia.gpu" },
|
|
]}
|
|
|
|
libtorch-linux-xenial-cuda10_2-py3_7-gcc7-build:
|
|
name: libtorch-linux-xenial-cuda10.2-py3.7-gcc7
|
|
uses: ./.github/workflows/_linux-build.yml
|
|
with:
|
|
build-environment: libtorch-linux-xenial-cuda10.2-py3.7-gcc7
|
|
docker-image-name: pytorch-linux-xenial-cuda10.2-cudnn7-py3-gcc7
|
|
build-generates-artifacts: false
|
|
|
|
libtorch-linux-bionic-cuda11_6-py3_7-gcc7-build:
|
|
name: libtorch-linux-bionic-cuda11.6-py3.7-gcc7
|
|
uses: ./.github/workflows/_linux-build.yml
|
|
with:
|
|
build-environment: libtorch-linux-bionic-cuda11.6-py3.7-gcc7
|
|
docker-image-name: pytorch-linux-bionic-cuda11.6-cudnn8-py3-gcc7
|
|
build-generates-artifacts: false
|
|
|
|
# no-ops builds test USE_PER_OPERATOR_HEADERS=0 where ATen/ops is not generated
|
|
linux-xenial-cuda11_3-py3_7-gcc7-no-ops-build:
|
|
name: linux-xenial-cuda11.3-py3.7-gcc7-no-ops
|
|
uses: ./.github/workflows/_linux-build.yml
|
|
with:
|
|
build-environment: linux-xenial-cuda11.3-py3.7-gcc7-no-ops
|
|
docker-image-name: pytorch-linux-xenial-cuda11.3-cudnn8-py3-gcc7
|
|
|
|
pytorch-linux-xenial-py3-clang5-android-ndk-r19c-build:
|
|
name: pytorch-linux-xenial-py3-clang5-android-ndk-r19c-build
|
|
uses: ./.github/workflows/_android-full-build-test.yml
|
|
with:
|
|
build-environment: pytorch-linux-xenial-py3-clang5-android-ndk-r19c-build
|
|
docker-image-name: pytorch-linux-xenial-py3-clang5-android-ndk-r19c
|
|
secrets:
|
|
SONATYPE_NEXUS_USERNAME: ${{ secrets.SONATYPE_NEXUS_USERNAME }}
|
|
SONATYPE_NEXUS_PASSWORD: ${{ secrets.SONATYPE_NEXUS_PASSWORD }}
|
|
ANDROID_SIGN_KEY: ${{ secrets.ANDROID_SIGN_KEY }}
|
|
ANDROID_SIGN_PASS: ${{ secrets.ANDROID_SIGN_PASS }}
|
|
SCRIBE_GRAPHQL_ACCESS_TOKEN: ${{ secrets.SCRIBE_GRAPHQL_ACCESS_TOKEN }}
|
|
|
|
linux-bionic-py3_7-clang9-slow-build:
|
|
name: linux-bionic-py3.7-clang9-slow
|
|
uses: ./.github/workflows/_linux-build.yml
|
|
with:
|
|
build-environment: linux-bionic-py3.7-clang9-slow
|
|
docker-image-name: pytorch-linux-bionic-py3.7-clang9
|
|
|
|
linux-bionic-py3_7-clang9-slow-test:
|
|
name: linux-bionic-py3.7-clang9-slow
|
|
uses: ./.github/workflows/_linux-test.yml
|
|
needs: linux-bionic-py3_7-clang9-slow-build
|
|
with:
|
|
build-environment: linux-bionic-py3.7-clang9-slow
|
|
docker-image: ${{ needs.linux-bionic-py3_7-clang9-slow-build.outputs.docker-image }}
|
|
test-matrix: |
|
|
{ include: [
|
|
{ config: "slow", shard: 1, num_shards: 1, runner: "linux.2xlarge" },
|
|
]}
|
|
|
|
ios-12-5-1-x86-64:
|
|
name: ios-12-5-1-x86-64
|
|
uses: ./.github/workflows/_ios-build-test.yml
|
|
with:
|
|
build-environment: ios-12-5-1-x86-64
|
|
ios-platform: SIMULATOR
|
|
ios-arch: x86_64
|
|
secrets:
|
|
IOS_CERT_KEY_2022: ${{ secrets.IOS_CERT_KEY_2022 }}
|
|
IOS_CERT_SECRET: ${{ secrets.IOS_CERT_SECRET}}
|
|
IOS_DEV_TEAM_ID: ${{ secrets.IOS_DEV_TEAM_ID}}
|
|
IOS_SIGN_KEY_2022: ${{ secrets.IOS_SIGN_KEY_2022 }}
|
|
|
|
ios-12-5-1-x86-64-coreml:
|
|
name: ios-12-5-1-x86-64-coreml
|
|
uses: ./.github/workflows/_ios-build-test.yml
|
|
with:
|
|
build-environment: ios-12-5-1-x86-64-coreml
|
|
ios-platform: SIMULATOR
|
|
ios-arch: x86_64
|
|
secrets:
|
|
IOS_CERT_KEY_2022: ${{ secrets.IOS_CERT_KEY_2022 }}
|
|
IOS_CERT_SECRET: ${{ secrets.IOS_CERT_SECRET}}
|
|
IOS_DEV_TEAM_ID: ${{ secrets.IOS_DEV_TEAM_ID}}
|
|
IOS_SIGN_KEY_2022: ${{ secrets.IOS_SIGN_KEY_2022 }}
|
|
|
|
macos-11-py3-x86-64-build:
|
|
name: macos-11-py3-x86-64
|
|
uses: ./.github/workflows/_mac-build.yml
|
|
with:
|
|
build-environment: macos-11-py3-x86-64
|
|
xcode-version: "13.3.1"
|
|
runner-type: macos-12
|
|
build-generates-artifacts: true
|
|
secrets:
|
|
MACOS_SCCACHE_S3_ACCESS_KEY_ID: ${{ secrets.MACOS_SCCACHE_S3_ACCESS_KEY_ID }}
|
|
MACOS_SCCACHE_S3_SECRET_ACCESS_KEY: ${{ secrets.MACOS_SCCACHE_S3_SECRET_ACCESS_KEY }}
|
|
|
|
macos-11-py3-x86-64-test:
|
|
name: macos-11-py3-x86-64
|
|
uses: ./.github/workflows/_mac-test.yml
|
|
needs: macos-11-py3-x86-64-build
|
|
with:
|
|
build-environment: macos-11-py3-x86-64
|
|
test-matrix: |
|
|
{ include: [
|
|
{ config: "default", shard: 1, num_shards: 2, runner: "macos-12" },
|
|
{ config: "default", shard: 2, num_shards: 2, runner: "macos-12" },
|
|
]}
|
|
secrets:
|
|
AWS_OSSCI_METRICS_V2_ACCESS_KEY_ID: ${{ secrets.AWS_OSSCI_METRICS_V2_ACCESS_KEY_ID }}
|
|
AWS_OSSCI_METRICS_V2_SECRET_ACCESS_KEY: ${{ secrets.AWS_OSSCI_METRICS_V2_SECRET_ACCESS_KEY }}
|
|
|
|
macos-10-15-py3-lite-interpreter-x86-64:
|
|
name: macos-10-15-py3-lite-interpreter-x86-64
|
|
uses: ./.github/workflows/_mac-build.yml
|
|
with:
|
|
build-environment: macos-10-15-py3-lite-interpreter-x86-64
|
|
xcode-version: "12"
|
|
runner-type: macos-10.15
|
|
build-generates-artifacts: false
|
|
secrets:
|
|
MACOS_SCCACHE_S3_ACCESS_KEY_ID: ${{ secrets.MACOS_SCCACHE_S3_ACCESS_KEY_ID }}
|
|
MACOS_SCCACHE_S3_SECRET_ACCESS_KEY: ${{ secrets.MACOS_SCCACHE_S3_SECRET_ACCESS_KEY }}
|
|
|
|
macos-10-15-py3-arm64:
|
|
name: macos-10-15-py3-arm64
|
|
uses: ./.github/workflows/_mac-build.yml
|
|
with:
|
|
build-environment: macos-10-15-py3-arm64
|
|
xcode-version: "13.3.1"
|
|
runner-type: macos-12
|
|
build-generates-artifacts: true
|
|
secrets:
|
|
MACOS_SCCACHE_S3_ACCESS_KEY_ID: ${{ secrets.MACOS_SCCACHE_S3_ACCESS_KEY_ID }}
|
|
MACOS_SCCACHE_S3_SECRET_ACCESS_KEY: ${{ secrets.MACOS_SCCACHE_S3_SECRET_ACCESS_KEY }}
|
|
|
|
macos-12-3-py38-arm64-test:
|
|
name: macos-12.3-py3.8-arm64-test
|
|
uses: ./.github/workflows/_mac-test-arm64.yml
|
|
needs: macos-10-15-py3-arm64
|
|
with:
|
|
build-environment: macos-10-15-py3-arm64
|
|
|
|
# please ensure that this and its corresponding job in pull.yml are in sync
|
|
win-vs2019-cuda11_6-py3-build:
|
|
name: win-vs2019-cuda11.6-py3
|
|
uses: ./.github/workflows/_win-build.yml
|
|
with:
|
|
build-environment: win-vs2019-cuda11.6-py3
|
|
cuda-version: "11.6"
|
|
|
|
win-vs2019-cuda11_6-py3-test:
|
|
name: win-vs2019-cuda11.6-py3
|
|
uses: ./.github/workflows/_win-test.yml
|
|
needs: win-vs2019-cuda11_6-py3-build
|
|
with:
|
|
build-environment: win-vs2019-cuda11.6-py3
|
|
cuda-version: "11.6"
|
|
test-matrix: |
|
|
{ include: [
|
|
{ config: "default", shard: 1, num_shards: 5, runner: "windows.8xlarge.nvidia.gpu" },
|
|
{ config: "default", shard: 2, num_shards: 5, runner: "windows.8xlarge.nvidia.gpu" },
|
|
{ config: "default", shard: 3, num_shards: 5, runner: "windows.8xlarge.nvidia.gpu" },
|
|
{ config: "default", shard: 4, num_shards: 5, runner: "windows.8xlarge.nvidia.gpu" },
|
|
{ config: "default", shard: 5, num_shards: 5, runner: "windows.8xlarge.nvidia.gpu" },
|
|
{ config: "force_on_cpu", shard: 1, num_shards: 1, runner: "windows.4xlarge" },
|
|
]}
|
|
|
|
# please ensure that this and its corresponding job in pull.yml are in sync
|
|
linux-bionic-rocm5_1-py3_7-build:
|
|
name: linux-bionic-rocm5.1-py3.7
|
|
uses: ./.github/workflows/_linux-build.yml
|
|
with:
|
|
build-environment: linux-bionic-rocm5.1-py3.7
|
|
docker-image-name: pytorch-linux-bionic-rocm5.1-py3.7
|
|
|
|
linux-bionic-rocm5_1-py3_7-test:
|
|
name: linux-bionic-rocm5.1-py3.7
|
|
uses: ./.github/workflows/_rocm-test.yml
|
|
needs: linux-bionic-rocm5_1-py3_7-build
|
|
with:
|
|
build-environment: linux-bionic-rocm5.1-py3.7
|
|
docker-image: ${{ needs.linux-bionic-rocm5_1-py3_7-build.outputs.docker-image }}
|
|
test-matrix: |
|
|
{ include: [
|
|
{ config: "default", shard: 1, num_shards: 2, runner: "linux.rocm.gpu" },
|
|
{ config: "default", shard: 2, num_shards: 2, runner: "linux.rocm.gpu" },
|
|
]}
|
|
secrets:
|
|
AWS_OSSCI_METRICS_V2_ACCESS_KEY_ID: ${{ secrets.AWS_OSSCI_METRICS_V2_ACCESS_KEY_ID }}
|
|
AWS_OSSCI_METRICS_V2_SECRET_ACCESS_KEY: ${{ secrets.AWS_OSSCI_METRICS_V2_SECRET_ACCESS_KEY }}
|
|
|
|
android-emulator-build-test:
|
|
name: android-emulator-build-test
|
|
uses: ./.github/workflows/_run_android_tests.yml
|