Run examples on modified PDL files #1
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: Run examples on modified PDL files | |
| on: [push, pull_request] | |
| jobs: | |
| tests: | |
| name: Execution tests | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| # python-version: ['3.11', '3.12', '3.13'] | |
| python-version: ['3.11'] | |
| steps: | |
| # # Free up some disk space | |
| # - name: Remove unnecessary files | |
| # run: | | |
| # sudo rm -rf /usr/share/dotnet | |
| # sudo rm -rf "$AGENT_TOOLSDIRECTORY" | |
| # # Set up Ollama | |
| # - name: Install Ollama and start server | |
| # shell: bash | |
| # run: | | |
| # curl -fsSL https://ollama.com/install.sh | sudo -E sh | |
| # - name: Pull models in examples/ | |
| # shell: bash | |
| # run: | | |
| # ollama pull granite3.2:2b | |
| # ollama pull granite3.2:8b | |
| # ollama pull mxbai-embed-large | |
| # ollama list | |
| # - name: Check that all required models are available | |
| # shell: bash | |
| # run: | | |
| # models=("mxbai-embed-large" "granite3.2:2b" "granite3.2:8b") | |
| # missing=0 | |
| # for model in "${models[@]}"; do | |
| # if ! ollama list | awk 'NR>1 {print $1}' | grep -q "$model"; then | |
| # echo "❌ Model $model (or substring) is missing!" | |
| # missing=1 | |
| # fi | |
| # done | |
| # if [ "$missing" -eq 1 ]; then | |
| # exit 1 | |
| # else | |
| # echo "✅ All expected models are available." | |
| # fi | |
| # - name: Wait for Ollama server | |
| # shell: bash | |
| # run: | | |
| # sleep 10 | |
| # time curl -i http://localhost:11434 | |
| # Run tests | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Detect all PDL files that were changed or added | |
| id: changed-pdl-files | |
| uses: tj-actions/changed-files@823fcebdb31bb35fdf2229d9f769b400309430d0 # v46 | |
| with: | |
| files: | | |
| **.pdl | |
| json: 'true' | |
| - name: List PDL files that were modified or added and append to test_examples_run | |
| env: | |
| MODIFIED_PDL_FILES: ${{ steps.changed-pdl-files.outputs.all_changed_files }} | |
| run: echo "$MODIFIED_PDL_FILES" | |
| - name: Update tests/test_examplea_run.yaml | |
| uses: fjogeleit/yaml-update-action@main | |
| with: | |
| valueFile: 'tests/test_examples_run.yaml' | |
| changes: | | |
| { | |
| "check": "${{ steps.changed-pdl-files.outputs.all_changed_files }}" | |
| s | |
| # propertyPath: 'check' | |
| # value: ${{ fromJSON(steps.changed-pdl-files.outputs.all_changed_files) }} | |
| commitChange: false | |
| - name: print yaml config | |
| run: cat tests/test_example_run.yaml | |
| # - name: Set up Python ${{ matrix.python-version }} | |
| # uses: actions/setup-python@v5 | |
| # with: | |
| # python-version: ${{ matrix.python-version }} | |
| # - name: Cache pip | |
| # uses: actions/cache@v4 | |
| # with: | |
| # # This path is specific to Ubuntu | |
| # path: ${{ env.pythonLocation }} | |
| # # Look to see if there is a cache hit for the setup file | |
| # key: ${{ runner.os }}-pip-new3-${{ env.pythonLocation }}-${{ hashFiles('setup.py') }} | |
| # restore-keys: | | |
| # ${{ runner.os }}-pip-new3 | |
| # ${{ runner.os }}-new3 | |
| # - name: Install dependencies | |
| # run: pip install --upgrade --upgrade-strategy eager .[all] | |
| # - name: pip list packages | |
| # run: pip list | |
| # - name: show pip dependencies | |
| # run: | | |
| # pip install pipdeptree | |
| # pipdeptree -fl | |
| # - name: run tests | |
| # env: | |
| # WATSONX_PROJECT_ID: ${{ secrets.WATSONX_PROJECT_ID }} | |
| # WATSONX_APIKEY: ${{ secrets.WATSONX_APIKEY }} | |
| # WATSONX_URL: ${{ secrets.WATSONX_URL }} | |
| # REPLICATE_API_TOKEN: ${{ secrets.REPLICATE_API_TOKEN }} | |
| # run: py.test -v --capture=tee-sys -rfE -s tests/test_examples_run.py |