Skip to content

fix: add docker-compose tests #2003

fix: add docker-compose tests

fix: add docker-compose tests #2003

name: Integration Tests CI
on:
push:
branches:
- main
pull_request:
branches:
- main
types: [opened, synchronize, reopened, labeled, unlabeled]
workflow_dispatch:
inputs:
run-python-tests:
description: "Run Python integration tests"
default: "true"
required: false
run-js-tests:
description: "Run JS integration tests"
default: "true"
required: false
jobs:
python_integration_test:
name: Python Integration Test
if: >
github.event_name == 'push' ||
(github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'release')) ||
(github.event_name == 'workflow_dispatch' && ${{ github.event.inputs.run-python-tests == 'true' }})
runs-on: ubuntu-20.04
defaults:
run:
working-directory: python
steps:
- uses: actions/checkout@v3
- name: Set up Python 3.11
uses: actions/setup-python@v4
with:
python-version: 3.11
cache: "pip"
- name: Install poetry
run: pipx install poetry==1.4.2
- name: Install dependencies
run: |
poetry install --with dev
poetry run pip install -U langchain langchain_anthropic langchain_openai rapidfuzz
- name: Run Python integration tests
uses: ./.github/actions/python-integration-tests
with:
python-version: 3.11
langchain-endpoint: https://api.smith.langchain.com
langchain-api-key: ${{ secrets.LANGSMITH_API_KEY }}
openai-api-key: ${{ secrets.OPENAI_API_KEY }}
anthropic-api-key: ${{ secrets.ANTHROPIC_API_KEY }}
js_integration_test:
name: JS Integration Test
if: >
github.event_name == 'push' ||
(github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'release')) ||
(github.event_name == 'workflow_dispatch' && ${{ github.event.inputs.run-js-tests == 'true' }})
runs-on: ubuntu-20.04
defaults:
run:
working-directory: js
steps:
- uses: actions/checkout@v3
- name: Use Node.js 18.x
uses: actions/setup-node@v3
with:
node-version: 20.x
cache: "yarn"
cache-dependency-path: "js/yarn.lock"
- name: Install dependencies
run: yarn install --immutable
- name: Run JS integration tests
uses: ./.github/actions/js-integration-tests
with:
node-version: 20.x
langchain-endpoint: https://api.smith.langchain.com
langchain-api-key: ${{ secrets.LANGSMITH_API_KEY }}
openai-api-key: ${{ secrets.OPENAI_API_KEY }}