On Github Action workflow main.yml, I did the following to add to PYTHONPATH
PWD=$(pwd)
export PYTHONPATH=$PWD/src:$PWD/tests:$PYTHONPATH
I verified the PYTHONPATH using the following command
echo "PYTHONPATH=$PYTHONPATH"
and the output is PYTHONPATH=/home/runner/work/my_api/my_api/src:/home/runner/work/my_api/my_api/tests
I have a module called my_api live under /home/runner/work/my_api/my_api/src
But now I'm getting ModuleNotFoundError: No module named 'my_api' It seems export PYTHONPATH has no impact on the system. Below is the complete workfile YML file.
name: Integration Test Run
env:
HISTORIC_DATA_FOLDER: /usr/my_api_historic_data
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install Python 3
uses: actions/setup-python@v1
with:
python-version: 3.6
- name: Filessytem Setup
run: |
pwd
mkdir my_api_historic_data_test
- name: Docker Compose
run: |
sudo docker-compose -f docker-compose-github.yml build
sudo docker-compose -f docker-compose-github.yml --verbose --env-file .env up &
- name: Intgration Test Setup
run: |
echo "-----pwd-----"
pwd
echo "-----ls-----"
ls
echo "-----ls src/-----"
ls src/
echo "----PYTHONPATH------"
PWD=$(pwd)
export PYTHONPATH=$PWD/src:$PWD/tests:$PYTHONPATH
echo "PYTHONPATH=$PYTHONPATH"
echo "-----HISTORIC PATH----"
export HISTORIC_DATA_FOLDER=/home/runner/work/my_api/my_api/my_api_historic_data_test
echo "HISTORIC_DATA_FOLDER=$HISTORIC_DATA_FOLDER"
- name: Integreation Test Run
run: |
sleep 30
pip install requests
sudo python -m unittest discover