feat: update input streaming #4057
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: CI | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| branches: | |
| - '*' | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up Docker Buildx | |
| uses: docker/setup-buildx-action@v3 | |
| - name: Create .env file on push or internal PR | |
| if: ${{ github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == github.repository) }} | |
| uses: SpicyPizza/create-envfile@v2.0 | |
| with: | |
| envkey_OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} | |
| envkey_UNSTRUCTURED_API_KEY: ${{ secrets.UNSTRUCTURED_API_KEY }} | |
| envkey_PINECONE_API_KEY: ${{ secrets.PINECONE_API_KEY }} | |
| envkey_PINECONE_CLOUD: ${{ secrets.PINECONE_CLOUD }} | |
| envkey_PINECONE_REGION: ${{ secrets.PINECONE_REGION }} | |
| envkey_ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} | |
| envkey_GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }} | |
| envkey_QDRANT_URL: ${{ secrets.QDRANT_URL }} | |
| envkey_QDRANT_API_KEY: ${{ secrets.QDRANT_API_KEY }} | |
| - name: Create .env file on fork PR | |
| if: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name != github.repository }} | |
| uses: SpicyPizza/create-envfile@v2.0 | |
| - name: Build | |
| uses: docker/bake-action@v5 | |
| with: | |
| set: | | |
| *.cache-from=type=gha | |
| *.cache-to=type=gha,mode=max | |
| targets: dynamiq-app | |
| lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.13" | |
| - name: Run pre-commit | |
| uses: pre-commit/action@v3.0.1 | |
| with: | |
| extra_args: --all-files --show-diff-on-failure --color always | |
| env: | |
| SKIP: 'no-commit-to-branch' | |
| test: | |
| needs: | |
| - build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up Docker Buildx | |
| uses: docker/setup-buildx-action@v3 | |
| - name: Create .env file on push or internal PR | |
| if: ${{ github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == github.repository) }} | |
| uses: SpicyPizza/create-envfile@v2.0 | |
| with: | |
| envkey_OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} | |
| envkey_UNSTRUCTURED_API_KEY: ${{ secrets.UNSTRUCTURED_API_KEY }} | |
| envkey_PINECONE_API_KEY: ${{ secrets.PINECONE_API_KEY }} | |
| envkey_PINECONE_CLOUD: ${{ secrets.PINECONE_CLOUD }} | |
| envkey_PINECONE_REGION: ${{ secrets.PINECONE_REGION }} | |
| envkey_ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} | |
| envkey_GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }} | |
| envkey_QDRANT_URL: ${{ secrets.QDRANT_URL }} | |
| envkey_QDRANT_API_KEY: ${{ secrets.QDRANT_API_KEY }} | |
| - name: Create .env file on fork PR | |
| if: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name != github.repository }} | |
| uses: SpicyPizza/create-envfile@v2.0 | |
| - name: Load Image | |
| uses: docker/bake-action@v5 | |
| with: | |
| load: true | |
| set: | | |
| *.cache-from=type=gha | |
| *.cache-to=type=gha,mode=max | |
| targets: dynamiq-app-test | |
| - name: Run tests on push to main | |
| if: ${{ github.event_name == 'push' }} | |
| run: docker compose up dynamiq-app-test-cov --exit-code-from dynamiq-app-test-cov | |
| - name: Run tests on PR | |
| if: ${{ github.event_name == 'pull_request' }} | |
| run: docker compose up dynamiq-app-test-cov-exclude-integration-with-creds --exit-code-from dynamiq-app-test-cov-exclude-integration-with-creds | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: coverage_report | |
| path: ./reports | |
| coverage: | |
| if: ${{ github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == github.repository) }} | |
| needs: | |
| - test | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| checks: write | |
| pull-requests: write | |
| steps: | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: coverage_report | |
| path: reports | |
| - name: Produce the coverage report on push or internal PR | |
| uses: MishaKav/pytest-coverage-comment@main | |
| with: | |
| pytest-xml-coverage-path: ./reports/coverage.xml | |
| junitxml-path: ./reports/test-results.xml | |
| report-only-changed-files: true | |
| xml-skip-covered: true | |
| remove-links-to-lines: true | |
| build-mkdocs: | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.13" | |
| - name: Install Poetry | |
| uses: snok/install-poetry@v1.4.1 | |
| with: | |
| version: 1.8.3 | |
| virtualenvs-create: false | |
| - name: Install dependencies | |
| run: make install-dependencies-dev | |
| - name: Build MkDocs | |
| run: make build-mkdocs | |
| publish-updated-mkdocs: | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| needs: build-mkdocs | |
| if: github.ref == 'refs/heads/main' | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.13" | |
| - name: Install Poetry | |
| uses: snok/install-poetry@v1.4.1 | |
| with: | |
| version: 1.8.3 | |
| virtualenvs-create: false | |
| - name: Install dependencies | |
| run: make install-dependencies-dev | |
| - name: Publish Updated MkDocs | |
| run: make publish-mkdocs |