1name: Python 2 3on: 4 push: 5 branches: [ main ] 6 pull_request: 7 branches: [ main ] 8 9jobs: 10 build: 11 name: Build with Python ${{ matrix.python-version }} 12 runs-on: ubuntu-latest 13 strategy: 14 matrix: 15 python-version: ["3.8", "3.9", "3.10", "3.11"] 16 steps: 17 - uses: actions/checkout@v3 18 - name: Set Up Python ${{ matrix.python-version }} 19 uses: actions/setup-python@v4 20 with: 21 python-version: ${{ matrix.python-version }} 22 - name: Install 23 run: | 24 pip install --upgrade pip 25 pip install build 26 pip install ./python 27 - name: Build 28 run: python -m build ./python 29 lint: 30 name: Lint for Python ${{ matrix.python-version }} 31 runs-on: ubuntu-latest 32 strategy: 33 matrix: 34 python-version: ["3.8", "3.9", "3.10", "3.11"] 35 steps: 36 - uses: actions/checkout@v3 37 - name: Set Up Python ${{ matrix.python-version }} 38 uses: actions/setup-python@v4 39 with: 40 python-version: ${{ matrix.python-version }} 41 - name: Install 42 run: pip install ./python[dev] 43 - run: pyright -p ./python 44 test: 45 name: Avatar Bumble vs Bumble(s) [${{ matrix.shard }}] 46 runs-on: ubuntu-latest 47 strategy: 48 matrix: 49 shard: [ 50 1/24, 2/24, 3/24, 4/24, 51 5/24, 6/24, 7/24, 8/24, 52 9/24, 10/24, 11/24, 12/24, 53 13/24, 14/24, 15/24, 16/24, 54 17/24, 18/24, 19/24, 20/24, 55 21/24, 22/24, 23/24, 24/24, 56 ] 57 steps: 58 - uses: actions/checkout@v3 59 - name: Set Up Python 3.11 60 uses: actions/setup-python@v4 61 with: 62 python-version: 3.11 63 - name: Install 64 run: | 65 pip install --upgrade pip 66 pip install rootcanal 67 pip install pandora-avatar 68 pip install ./python 69 - name: Rootcanal 70 run: nohup python -m rootcanal > rootcanal.log & 71 - name: Test 72 run: | 73 avatar --list | grep -Ev '^=' > test-names.txt 74 timeout 5m avatar --test-beds bumble.bumbles --tests $(split test-names.txt -n l/${{ matrix.shard }}) 75 - name: Rootcanal Logs 76 run: cat rootcanal.log