Skip to content

try pylint

try pylint #136

Workflow file for this run

name: Iroha 2 pull request pytests
on:
# repository_dispatch:
# types: [dispatch-event]
# pull_request:
# branches: [main]
push:
branches: [i2/ci/py-sonar]
jobs:
pytest:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [ 3.8 ]
steps:
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Checkout code
uses: actions/checkout@v4
- name: Install dependencies
run: pip install poetry tomli-w
- name: Checkout irohad repo code
run: git clone --depth 1 https://github.com/hyperledger-iroha/iroha.git -b 2.0.0-rc.1 iroha_daemon
- name: Install correct rust version
run: rustup install nightly-2024-09-09 && rustup component add rust-src --toolchain nightly-2024-09-09
- name: Set toolchain
run: rustup default nightly-2024-09-09
- name: Build irohad
run: cd iroha_daemon && cargo build --release && mkdir target/debug -p && cp target/release/irohad target/debug/irohad && cp target/release/iroha target/debug/iroha
- name: Build kagami
run: cd iroha_daemon && cargo build --bin kagami
- name: Build default executor
run: cd iroha_daemon && cargo run --release --bin iroha_wasm_builder -- build ./wasm_samples/default_executor --optimize --out-file ./defaults/executor.wasm
- name: Maturin build and Run tests
run: bash -c " pip install maturin &&
maturin build &&
cd iroha_daemon && scripts/test_env.py setup && cd .. &&
python -m venv .venv &&
source .venv/bin/activate &&
pip install pytest faker allure-pytest pytest-cov &&
pip install --break-system-packages target/wheels/iroha2-*.whl &&
python -m pytest --cov=. --cov-report xml:coverage-reports/coverage-iroha-python.xml tests/"
- name: Tear down the network
if: always()
run: cd iroha_daemon && scripts/test_env.py cleanup
- name: Run Bandit & Pylint analysis
continue-on-error: true
run: |
pip install bandit pylint
bandit -r tests/ examples/ docs-recipes/ -f json -o bandit-report.json
python -m pylint tests/ examples/ docs-recipes/ -r n --output-format=parseable > pylint-report.txt
# - name: Run pylint
# continue-on-error: true
# run: |
# pip install pylint
# python -m pylint tests/ examples/ docs-recipes/ -r n --output-format=parseable > pylint-report.txt
- name: SonarQube
if: always()
uses: sonarsource/sonarqube-scan-action@master
env:
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }}