ansible: general speed-improvements #225
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: Repo-Tests | |
on: | |
push: | |
branches: [ "main", "dev" ] | |
pull_request: | |
branches: [ "main" ] | |
jobs: | |
various-tests: | |
runs-on: ubuntu-22.04 # TODO: -latest was 20.04 and had old packages | |
strategy: | |
matrix: | |
python-version: ["3.11", "3.10", "3.9"] | |
steps: | |
- name: Checkout 🛎️ | |
uses: actions/checkout@v3 | |
- name: Set up Python ${{ matrix.python-version }} 🐍 | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies 🔧 | |
run: | | |
sudo apt install python3-msgpack | |
sudo apt install cppcheck | |
python3 -m pip install --upgrade pip msgpack | |
pip3 install pylint pylint-exit pylint-pytest | |
sudo apt install ansible | |
ansible-galaxy collection install ansible.posix | |
ansible-galaxy collection install community.general | |
# NOTE: install-process fails without msgpack pre-installed | |
# NOTE: cppcheck is needed for pre-commit | |
# NOTE: ansible + collections might be needed for linter | |
- name: Run Pre-Commit Tests 🧪 | |
uses: pre-commit/[email protected] | |
- name: Install the shepherd py-package 🐑 | |
run: "sudo pip3 install ./[test]" | |
working-directory: "./software/python-package" | |
- name: Test the shepherd py-package (limited test-range) 🐐 | |
run: "sudo pytest" | |
working-directory: "./software/python-package" | |
# needs sudo because it installs packages | |
- name: PyLint the shepherd py-package 🐏 | |
run: "pylint $(git ls-files '*.py') || pylint-exit $?" | |
# -E --py-version 3.8 | |
working-directory: "software/python-package/" | |
- name: Install the shepherd-herd py-package 𓋿 𓀍 | |
run: "sudo pip3 install ./" | |
working-directory: "./software/shepherd-herd" |