feat: add verbose flag to DeviceStatsMonitor for non-expert mode
#30667
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Package | |
| # see: https://help.github.com/en/actions/reference/events-that-trigger-workflows | |
| on: | |
| push: | |
| branches: [master, "release/*"] | |
| pull_request: | |
| branches: [master, "release/*"] | |
| types: [opened, reopened, ready_for_review, synchronize] # added `ready_for_review` since draft is skipped | |
| paths: | |
| - ".actions/*" | |
| - "requirements/ci.txt" | |
| - ".github/actions/pkg-check/*" | |
| - ".github/actions/pkg-install/*" | |
| - ".github/workflows/_build-packages.yml" | |
| - ".github/workflows/ci-pkg-install.yml" | |
| - "setup.py" | |
| - "src/**" | |
| - "requirements/**" | |
| - "!requirements/docs.txt" | |
| - "!requirements/*/docs.txt" | |
| - "!*.md" | |
| - "!**/*.md" | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }}-${{ github.head_ref }} | |
| cancel-in-progress: ${{ github.event_name == 'pull_request' }} | |
| defaults: | |
| run: | |
| shell: bash | |
| jobs: | |
| build-packages: | |
| uses: ./.github/workflows/_build-packages.yml | |
| with: | |
| artifact-name: dist-packages-${{ github.sha }} | |
| install-pkg: | |
| needs: build-packages | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: ["ubuntu-22.04", "macOS-14", "windows-2022"] | |
| pkg-name: ["fabric", "pytorch", "lightning", "notset"] | |
| python-version: ["3.10", "3.11"] | |
| env: | |
| # Supply-chain guard: skip PyPI releases newer than this (ISO 8601 duration). See https://pip.pypa.io/en/stable/cli/pip_install/#cmdoption-uploaded-prior-to | |
| PIP_UPLOADED_PRIOR_TO: "P2D" | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Upgrade pip (for --uploaded-prior-to, pip >= 26.1) | |
| run: python -m pip install --upgrade "pip>=26.1" | |
| - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 | |
| with: | |
| name: dist-packages-${{ github.sha }} | |
| path: dist | |
| - name: Set package dir | |
| run: | | |
| python -c "print('PKG_DIR=' + {'notset': 'lightning'}.get('${{matrix.pkg-name}}', '${{matrix.pkg-name}}'))" >> $GITHUB_ENV | |
| - name: Install package - wheel & archive | |
| uses: ./.github/actions/pkg-install | |
| timeout-minutes: 25 | |
| with: | |
| pkg-folder: dist/${{ env.PKG_DIR }} | |
| pkg-name: ${{ matrix.pkg-name }} | |
| - name: DocTests actions | |
| working-directory: .actions/ | |
| run: | | |
| pip install -q pytest -r requirements.txt | |
| python -m pytest assistant.py | |
| - name: Adjust code for standalone | |
| if: contains(fromJSON('["fabric", "pytorch"]'), matrix.pkg-name) | |
| run: | | |
| python .actions/assistant.py copy_replace_imports --source_dir="./src" \ | |
| --source_import="lightning.pytorch,lightning.fabric" \ | |
| --target_import="pytorch_lightning,lightning_fabric" | |
| - name: Rename src folders | |
| working-directory: src/ | |
| run: | | |
| python -c "n = '${{matrix.pkg-name}}' ; n = n if n in ('fabric', 'pytorch') else '' ; print('PKG_NAME=' + n)" >> $GITHUB_ENV | |
| rm -f ./*/__*.py | |
| rm -f ./**/__*.py | |
| mv lightning lit # rename lightning folder to prevent accidental local imports | |
| - name: drop Secondary doctest | |
| if: ${{ matrix.pkg-name == 'lightning' || matrix.pkg-name == 'notset' }} | |
| working-directory: src/lit | |
| run: | | |
| items=("data") | |
| for item in "${items[@]}"; do | |
| echo "Removing $item" | |
| rm -rf $item | |
| done | |
| - name: Install pytest doctest extension | |
| run: | | |
| pip install -q -r requirements/doctests.txt | |
| pip list | |
| - name: DocTest package | |
| env: | |
| LIGHTING_TESTING: 1 # path for require wrapper | |
| PY_IGNORE_IMPORTMISMATCH: 1 | |
| run: python -m pytest src/lit/${PKG_NAME} --ignore-glob="**/cli/*-template/**" --doctest-plus | |
| install-pkg-guardian: | |
| runs-on: ubuntu-latest | |
| needs: install-pkg | |
| if: always() | |
| steps: | |
| - run: echo "${{ needs.install-pkg.result }}" | |
| - name: failing... | |
| if: needs.install-pkg.result == 'failure' | |
| run: exit 1 | |
| - name: cancelled or skipped... | |
| if: contains(fromJSON('["cancelled", "skipped"]'), needs.install-pkg.result) | |
| timeout-minutes: 1 | |
| run: sleep 90 |