ci.yml 1.7 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
name: CI

on:
  push:
    branches: [master, try-import]
  pull_request:
  
jobs:
  cpu-test:
    runs-on: self-hosted
    container:
      image: localhost:5000/megengine-ci:latest
    steps:
      - name: Checkout MegEngine
        uses: actions/checkout@v2
      - name: Checkout submodules
        run: |
          ./third_party/prepare.sh
          ./third_party/install-mkl.sh
      - name: Build MegEngine
        run: ./ci/cmake.sh cpu
      - name: Python test
        run: ./ci/run_python_test.sh cpu
      - name: C++ test
        run: ./ci/run_cpp_test.sh cpu
  gpu-test:
    runs-on: self-hosted
    container:
      image: localhost:5000/megengine-ci:latest
      volumes:
        - /usr/local/cuda-10.1-libs:/usr/local/cuda-10.1-libs
      options: --gpus all --shm-size 1g
      env:
        NCCL_LAUNCH_MODE: PARALLEL
    steps:
      - name: Checkout MegEngine
        uses: actions/checkout@v2
      - name: Checkout submodules
        run: |
          ./third_party/prepare.sh
          ./third_party/install-mkl.sh
      - name: Build MegEngine
        run: ./ci/cmake.sh cuda
      - name: Python test
        run: ./ci/run_python_test.sh cuda
      - name: C++ test
        run: ./ci/run_cpp_test.sh cuda
  auto-merge:
    if: ${{ github.ref == 'refs/heads/try-import' }}
    runs-on: ubuntu-latest
    needs: [cpu-test, gpu-test]
    steps:
      - name: Checkout MegEngine
        uses: actions/checkout@v2
        with:
          fetch-depth: '0'
      - name: Merge with master
        run: |
          git config user.name "megvii-mge"
          git config user.email "megengine@megvii.com"
          git fetch origin master
          git checkout -b master origin/master
          git rebase try-import
          git push