name: Build on: push: branches: [ master ] pull_request: branches: [ master ] jobs: build: name: Test on ${{ matrix.os }} (py-${{ matrix.python_version }}) runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: os: [ubuntu-24.04, windows-latest, macos-latest] python_version: ['3.9'] steps: - uses: actions/checkout@v4 with: submodules: 'recursive' - name: Set up Python uses: actions/setup-python@v5 with: python-version: ${{ matrix.python_version }} - name: Create virtualenv shell: bash run: | python -m venv venv - name: Install dependencies shell: bash run: | pip install poetry source venv/bin/activate || source venv/Scripts/activate poetry install - name: Run tests shell: bash run: | source venv/bin/activate || source venv/Scripts/activate make test - name: Package shell: bash run: | source venv/bin/activate || source venv/Scripts/activate make package - name: Test package shell: bash run: | dist/aw-watcher-afk/aw-watcher-afk --help - name: Upload package uses: actions/upload-artifact@v4 with: name: aw-watcher-afk-${{ runner.os }}-py${{ matrix.python_version }} path: dist/aw-watcher-afk