Skip to content

build(deps):(deps): bump actions/download-artifact from 4 to 6 #64

build(deps):(deps): bump actions/download-artifact from 4 to 6

build(deps):(deps): bump actions/download-artifact from 4 to 6 #64

Workflow file for this run

name: Smoke Tests
on:
pull_request:
types: [opened, labeled, synchronize, reopened]
workflow_dispatch:
jobs:
smoke-tests:
if: contains(github.event.pull_request.labels.*.name, 'smoke-test')
name: "Smoke Tests (No API Keys)"
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- name: Checkout PR
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install uv
uses: astral-sh/setup-uv@v6
with:
version: "latest"
- name: Install backend dependencies
run: |
uv sync --dev
- name: Run backend smoke tests (critical tests only)
run: |
uv run pytest \
src/backend/tests/unit/test_database.py \
src/backend/tests/unit/test_login.py \
src/backend/tests/unit/api/v1/test_validate.py \
src/backend/tests/unit/test_endpoints.py \
src/backend/tests/unit/api/v1/test_flows.py \
src/backend/tests/unit/graph/test_graph.py \
src/backend/tests/unit/services/flow/test_flow_runner.py \
src/backend/tests/unit/test_chat_endpoint.py \
src/backend/tests/unit/api/v1/test_api_key.py \
src/backend/tests/unit/api/v1/test_endpoints.py \
src/backend/tests/unit/components/languagemodels/test_openai_model.py \
src/backend/tests/unit/components/agents/test_agent_component.py \
src/backend/tests/unit/services/tracing/test_tracing_service.py \
src/backend/tests/unit/custom/component/test_component_instance_attributes.py \
src/backend/tests/unit/schema/test_schema_message.py \
-m 'not api_key_required' \
--tb=short \
--maxfail=5 \
-v
env:
LANGBUILDER_SUPERUSER: admin
LANGBUILDER_SUPERUSER_PASSWORD: 123456
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: "21"
cache: "npm"
cache-dependency-path: src/frontend/package-lock.json
- name: Install frontend dependencies
run: |
cd src/frontend
npm ci
- name: Run frontend smoke tests (unit tests only)
run: |
cd src/frontend
CI=true npx jest --ci --watchAll=false --passWithNoTests
env:
NODE_ENV: test
- name: Comment on PR with results
if: always()
uses: actions/github-script@v7
with:
script: |
const conclusion = '${{ job.status }}';
const emoji = conclusion === 'success' ? '✅' : '❌';
const status = conclusion === 'success' ? 'passed' : 'failed';
const comment = `${emoji} **Smoke tests ${status}**
Critical functionality validated (~5-8 minutes):
- **Backend**: 10 essential test files (imports, schema, serialization, core utils)
- **Frontend**: Unit tests only (components, utilities)
- **Coverage**: Core functionality without external dependencies
View details in the [Actions tab](https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}).`;
await github.rest.issues.createComment({
issue_number: context.payload.pull_request.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: comment
});