diff --git a/.github/workflows/compatibility.yml b/.github/workflows/compatibility.yml new file mode 100644 index 000000000..d18115be4 --- /dev/null +++ b/.github/workflows/compatibility.yml @@ -0,0 +1,36 @@ +name: Check Compatibility + +on: [push, pull_request] + +jobs: + test-integrations: + name: Install all packages + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + - name: Set up Python + uses: actions/setup-python@v2 + with: + python-version: '3.10' + + - name: Install dependencies + run: | + for dir in integrations/*; do + if [ -f "$dir/pyproject.toml" ]; then + echo "Installing $dir" + pip install -e $dir + fi + done + + - name: Verify installations + run: | + for dir in integrations/*; do + if [ -f "$dir/pyproject.toml" ]; then + package_name=$(awk -F'[ ="]+' '$1 == "name" {print $2}' $dir/pyproject.toml) + import_name=$(echo $package_name | tr '-' '_') + python -c "import $import_name" || exit 1 + fi + done