Merge pull request #389 from martin-belanger/fix-readthedocws #443
This file contains 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: Linters | |
on: | |
push: | |
branches: [ main ] | |
pull_request: | |
branches: [ main ] | |
workflow_dispatch: | |
jobs: | |
docker-lint: | |
if: ${{ !github.event.act }} # skip during local actions testing | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: hadolint/hadolint-action@v3.1.0 | |
with: | |
recursive: true | |
ignore: DL3041 | |
python-lint: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
python-version: ["3.6", "3.7", "3.8", "3.9", "3.10"] | |
steps: | |
- name: "CHECKOUT: nvme-stas" | |
uses: actions/checkout@v3 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: "INSTALL: additional packages" | |
run: | | |
sudo apt-get install --yes --quiet python3-pip cmake libgirepository1.0-dev libsystemd-dev python3-systemd swig libjson-c-dev || true | |
sudo python3 -m pip install --upgrade pip wheel meson ninja | |
python3 -m pip install --upgrade dasbus pylint pyflakes PyGObject lxml pyudev | |
- name: "BUILD: [libnvme, nvme-stas]" | |
uses: BSFishy/meson-build@v1.0.3 | |
with: | |
action: build | |
directory: .build | |
setup-options: --buildtype=release --sysconfdir=/etc --prefix=/usr -Dlibnvme:buildtype=release -Dlibnvme:sysconfdir=/etc -Dlibnvme:prefix=/usr -Dlibnvme:python=enabled -Dlibnvme:libdbus=disabled -Dlibnvme:openssl=disabled -Dlibnvme:json-c=disabled -Dlibnvme:keyutils=disabled | |
- name: Set PYTHONPATH | |
run: | | |
echo "PYTHONPATH=.build:.build/subprojects/libnvme:/usr/lib/python3/dist-packages" >> $GITHUB_ENV | |
- name: Show test environment | |
run: | | |
echo -e "Build Directory:\n$(ls -laF .build)" | |
python3 -VV | |
python3 -m site | |
python3 -m pylint --version | |
echo "pyflakes $(python3 -m pyflakes --version)" | |
- name: Pylint | |
run: | | |
python3 -m pylint -j 0 --rcfile=test/pylint.rc .build/stacctl .build/stacd .build/stafctl .build/stafd .build/stasadm .build/staslib | |
- name: Pyflakes | |
if: always() | |
run: | | |
python3 -m pyflakes .build/stacctl .build/stacd .build/stafctl .build/stafd .build/stasadm .build/staslib | |
python-black: | |
if: ${{ !github.event.act }} # skip during local actions testing | |
name: python-black formatter | |
runs-on: ubuntu-latest | |
steps: | |
- name: "CHECKOUT: nvme-stas" | |
uses: actions/checkout@v3 | |
- name: "BLACK" | |
uses: psf/black@stable | |
with: | |
options: "--check --diff --color --line-length 120 --skip-string-normalization --extend-exclude (subprojects|debian|.build)" | |
src: "." |