ci: Added github workflows for automated ci #11
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: CI Unit Tests | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| types: [opened, reopened, synchronize] | |
| jobs: | |
| build: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v5 | |
| - name: Install extra dependencies for a python 3.7.17 install | |
| run: | | |
| sudo apt-get update | |
| sudo apt -y install --no-install-recommends liblzma-dev libbz2-dev libreadline-dev | |
| - name: Install asdf cli | |
| uses: asdf-vm/actions/setup@v4 | |
| - name: Setup asdf | |
| run: | | |
| asdf plugin add java | |
| asdf set java liberica-1.8.0 | |
| asdf plugin add python | |
| asdf set python 3.7.17 | |
| asdf plugin add poetry | |
| asdf set poetry 1.4.2 | |
| asdf install | |
| asdf reshim | |
| # - name: Cache Poetry virtualenv | |
| # uses: actions/cache@v4 | |
| # with: | |
| # path: ~/.cache/pypoetry | |
| # key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }} | |
| # restore-keys: | | |
| # ${{ runner.os }}-poetry- | |
| - name: Install test dependencies | |
| run: | | |
| make install | |
| - name: DEBUG - show versions | |
| run: | | |
| echo "python version: $(which python)" | |
| echo "java version: $(which java)" | |
| echo "poetry version: $(which poetry)" | |
| - name: DEBUG - cat .tool-versions | |
| run: | | |
| echo "PWD - $PWD" | |
| cat ${PWD}/.tool-versions | |
| - name: Run pytest and behave tests | |
| run: | | |
| export JAVA_HOME=$(asdf where java) | |
| echo "JAVA_HOME - $JAVA_HOME" | |
| make all-tests | |
| # - name: Upload Coverage Report | |
| # uses: actions/upload-artifact@v4 | |
| # with: | |
| # name: coverage-xml | |
| # path: coverage.xml | |
| # - name: Run behave tests | |
| # run: make behave |