name: CLI Setup on: push: branches: - master pull_request: jobs: test_cli_base_container: runs-on: ubuntu-latest container: ghcr.io/qmk/qmk_base_container env: QMK_HOME: ~/qmk_firmware steps: - uses: actions/checkout@v4 - name: Install dependencies run: apt-get update && apt-get install -y python3-venv - name: Run ci_tests run: ./ci_tests -a test_cli_linux_macos: needs: test_cli_base_container runs-on: ${{ matrix.os }} env: QMK_HOME: ~/qmk_firmware strategy: matrix: os: [macos-latest, ubuntu-latest] python-version: ['3.9', '3.10', '3.11', '3.12'] include: - os: macos-13 python-version: '3.9' steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Run ci_tests run: ./ci_tests -a test_cli_win: needs: test_cli_base_container runs-on: windows-latest env: QMK_HOME: $HOME/qmk_firmware steps: - uses: actions/checkout@v4 - name: (MSYS2) Setup and install dependencies uses: msys2/setup-msys2@v2 with: update: true install: git mingw-w64-x86_64-toolchain mingw-w64-x86_64-python-pip mingw-w64-x86_64-python-build mingw-w64-x86_64-python-pillow mingw-w64-x86_64-rust # Upgrade pip due to msys packaging + pypa/build/pull/736 issues - name: (MSYS2) Install Python dependencies shell: msys2 {0} run: | python3 -m pip install --upgrade pip - name: (MSYS2) Install QMK CLI from source shell: msys2 {0} run: | python3 -m build python3 -m pip install --break-system-packages dist/qmk-*.tar.gz - name: (MSYS2) Run qmk setup -y shell: msys2 {0} run: qmk setup -y