diff --git a/.github/workflows/uml.yml b/.github/workflows/uml.yml index a8afc78f..57ee4d04 100644 --- a/.github/workflows/uml.yml +++ b/.github/workflows/uml.yml @@ -9,33 +9,52 @@ jobs: runs-on: ubuntu-latest permissions: write-all steps: + - name: Checkout repository uses: actions/checkout@v4 with: ref: main + - name: Set up Python uses: actions/setup-python@v5 with: python-version: "3.10" + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install 'causalpy[docs]' + sudo apt-get update && sudo apt-get install -y graphviz + + - name: Install pylint explicitly + run: python -m pip install pylint + + - name: Verify pylint and pyreverse + run: | + python -m pip show pylint + which pyreverse + pyreverse --version + - name: Configure Git Identity run: | git config user.name 'github-actions[bot]' git config user.email 'github-actions[bot]@users.noreply.github.com' + - name: Update the UML Diagrams run: | - sudo apt-get update && sudo apt-get install -y graphviz make uml + - name: Detect UML changes id: changes run: | - git add docs/source/uml/*.png + git add docs/source/_static/*.png if git diff --staged --exit-code; then echo "No changes to commit" echo "changes_exist=false" >> $GITHUB_OUTPUT else echo "changes_exist=true" >> $GITHUB_OUTPUT fi + - name: Create PR for changes if: steps.changes.outputs.changes_exist == 'true' run: | diff --git a/pyproject.toml b/pyproject.toml index 5b3013bf..43134f38 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -56,6 +56,7 @@ docs = [ "linkify-it-py", "myst-nb<=1.0.0", "pathlib", + "pylint", "sphinx", "sphinx-autodoc-typehints", "sphinx_autodoc_defaultargs",