From 678f4185ae997ce183de20a7d6d04e4fd1f09eff Mon Sep 17 00:00:00 2001 From: Sid Jha Date: Sat, 9 Nov 2024 11:45:53 -0800 Subject: [PATCH] Update CI --- .github/workflows/tests.yml | 84 ++++++++++++++++++------------------- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 07a9f3ea..0101f014 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -10,23 +10,37 @@ on: workflow_dispatch: jobs: + setup_conda: + runs-on: ubuntu-latest + steps: + - name: Install Miniconda + run: | + wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh + bash miniconda.sh -b -p $HOME/miniconda + echo "$HOME/miniconda/bin" >> $GITHUB_PATH + source $HOME/miniconda/bin/activate + conda init bash + - name: Cache Conda Environment + uses: actions/cache@v3 + with: + path: ~/.conda/envs/lotus + key: conda-lotus-${{ hashFiles('environment.yml') }} + restore-keys: conda-lotus- + ruff_lint: name: Ruff Lint runs-on: ubuntu-latest + needs: setup_conda steps: - name: Checkout code uses: actions/checkout@v3 - - name: Set up Python - uses: actions/setup-python@v4 - with: - python-version: '3.10' - - - name: Install dependencies + - name: Create and activate Conda environment run: | - python -m pip install --upgrade pip - pip install ruff==0.7.2 + conda env create -f environment.yml || conda env update -f environment.yml + source activate lotus + python -m pip install ruff==0.7.2 - name: Run ruff run: ruff check . @@ -34,20 +48,17 @@ jobs: mypy: name: Type Check runs-on: ubuntu-latest + needs: setup_conda steps: - name: Checkout code uses: actions/checkout@v3 - - name: Set up Python - uses: actions/setup-python@v4 - with: - python-version: '3.10' - - - name: Install dependencies + - name: Create and activate Conda environment run: | - python -m pip install --upgrade pip - pip install mypy==1.13.0 + conda env create -f environment.yml || conda env update -f environment.yml + source activate lotus + python -m pip install mypy==1.13.0 pip install -r requirements.txt pip install -e . @@ -58,20 +69,17 @@ jobs: name: OpenAI Language Model Tests runs-on: ubuntu-latest timeout-minutes: 5 + needs: setup_conda steps: - name: Checkout code uses: actions/checkout@v3 - - name: Set up Python - uses: actions/setup-python@v4 - with: - python-version: '3.10' - - - name: Install dependencies + - name: Create and activate Conda environment run: | - python -m pip install --upgrade pip - pip install -r requirements.txt + conda env create -f environment.yml || conda env update -f environment.yml + source activate lotus + python -m pip install -r requirements.txt pip install -e . pip install pytest @@ -88,20 +96,17 @@ jobs: name: Ollama Language Model Tests runs-on: ubuntu-latest timeout-minutes: 10 + needs: setup_conda steps: - name: Checkout code uses: actions/checkout@v3 - - name: Set up Python - uses: actions/setup-python@v4 - with: - python-version: '3.10' - - - name: Install dependencies + - name: Create and activate Conda environment run: | - python -m pip install --upgrade pip - pip install -r requirements.txt + conda env create -f environment.yml || conda env update -f environment.yml + source activate lotus + python -m pip install -r requirements.txt pip install -e . pip install pytest @@ -109,7 +114,6 @@ jobs: run: | docker pull ollama/ollama:latest docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama - # Wait for Ollama server to be ready timeout=30 while ! curl -s http://localhost:11434/ >/dev/null; do if [ $timeout -le 0 ]; then @@ -127,25 +131,21 @@ jobs: ENABLE_OLLAMA_TESTS: true run: pytest .github/tests/lm_tests.py - rm_test: name: Retrieval Model Tests runs-on: ubuntu-latest timeout-minutes: 5 + needs: setup_conda steps: - name: Checkout code uses: actions/checkout@v3 - - name: Set up Python - uses: actions/setup-python@v4 - with: - python-version: '3.10' - - - name: Install dependencies + - name: Create and activate Conda environment run: | - python -m pip install --upgrade pip - pip install -r requirements.txt + conda env create -f environment.yml || conda env update -f environment.yml + source activate lotus + python -m pip install -r requirements.txt pip install -e . pip install pytest