mirror of
https://github.com/langgenius/dify.git
synced 2026-09-08 02:43:49 +08:00
ci: extract external E2E into dedicated post-merge workflow (#38426)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: yyh <yuanyouhuilyz@gmail.com>
This commit is contained in:
parent
750075c859
commit
abaf6b1337
30
.github/workflows/main-ci.yml
vendored
30
.github/workflows/main-ci.yml
vendored
@ -6,8 +6,6 @@ on:
|
|||||||
merge_group:
|
merge_group:
|
||||||
branches: ["main"]
|
branches: ["main"]
|
||||||
types: [checks_requested]
|
types: [checks_requested]
|
||||||
push:
|
|
||||||
branches: ["main"]
|
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
actions: write
|
actions: write
|
||||||
@ -44,7 +42,6 @@ jobs:
|
|||||||
api-changed: ${{ steps.changes.outputs.api }}
|
api-changed: ${{ steps.changes.outputs.api }}
|
||||||
cli-changed: ${{ steps.changes.outputs.cli }}
|
cli-changed: ${{ steps.changes.outputs.cli }}
|
||||||
e2e-changed: ${{ steps.changes.outputs.e2e }}
|
e2e-changed: ${{ steps.changes.outputs.e2e }}
|
||||||
external-e2e-changed: ${{ steps.changes.outputs.external_e2e }}
|
|
||||||
web-changed: ${{ steps.changes.outputs.web }}
|
web-changed: ${{ steps.changes.outputs.web }}
|
||||||
vdb-changed: ${{ steps.changes.outputs.vdb }}
|
vdb-changed: ${{ steps.changes.outputs.vdb }}
|
||||||
migration-changed: ${{ steps.changes.outputs.migration }}
|
migration-changed: ${{ steps.changes.outputs.migration }}
|
||||||
@ -100,25 +97,6 @@ jobs:
|
|||||||
- 'docker/envs/middleware.env.example'
|
- 'docker/envs/middleware.env.example'
|
||||||
- '.github/workflows/web-e2e.yml'
|
- '.github/workflows/web-e2e.yml'
|
||||||
- '.github/actions/setup-web/**'
|
- '.github/actions/setup-web/**'
|
||||||
external_e2e:
|
|
||||||
- 'e2e/features/agent-v2/**'
|
|
||||||
- 'e2e/scripts/**'
|
|
||||||
- 'e2e/support/**'
|
|
||||||
- '.github/workflows/web-e2e.yml'
|
|
||||||
- '.github/actions/setup-web/**'
|
|
||||||
- 'dify-agent/**'
|
|
||||||
- 'api/clients/agent_backend/**'
|
|
||||||
- 'api/core/app/apps/agent_app/**'
|
|
||||||
- 'api/core/workflow/nodes/agent_v2/**'
|
|
||||||
- 'api/controllers/console/agent/**'
|
|
||||||
- 'api/services/agent/**'
|
|
||||||
- 'api/core/plugin/**'
|
|
||||||
- 'api/services/plugin/**'
|
|
||||||
- 'api/core/tools/**'
|
|
||||||
- 'api/services/tools/**'
|
|
||||||
- 'web/features/agent-v2/**'
|
|
||||||
- 'web/app/(commonLayout)/roster/**'
|
|
||||||
- 'web/app/components/workflow/nodes/agent-v2/**'
|
|
||||||
vdb:
|
vdb:
|
||||||
- 'api/core/rag/datasource/**'
|
- 'api/core/rag/datasource/**'
|
||||||
- 'api/tests/integration_tests/vdb/**'
|
- 'api/tests/integration_tests/vdb/**'
|
||||||
@ -342,10 +320,8 @@ jobs:
|
|||||||
needs:
|
needs:
|
||||||
- pre_job
|
- pre_job
|
||||||
- check-changes
|
- check-changes
|
||||||
if: needs.pre_job.outputs.should_skip != 'true' && (needs.check-changes.outputs.e2e-changed == 'true' || needs.check-changes.outputs.external-e2e-changed == 'true')
|
if: needs.pre_job.outputs.should_skip != 'true' && needs.check-changes.outputs.e2e-changed == 'true'
|
||||||
uses: ./.github/workflows/web-e2e.yml
|
uses: ./.github/workflows/web-e2e.yml
|
||||||
with:
|
|
||||||
run-external-runtime: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' && needs.check-changes.outputs.external-e2e-changed == 'true' }}
|
|
||||||
secrets: inherit
|
secrets: inherit
|
||||||
|
|
||||||
web-e2e-skip:
|
web-e2e-skip:
|
||||||
@ -353,7 +329,7 @@ jobs:
|
|||||||
needs:
|
needs:
|
||||||
- pre_job
|
- pre_job
|
||||||
- check-changes
|
- check-changes
|
||||||
if: needs.pre_job.outputs.should_skip != 'true' && needs.check-changes.outputs.e2e-changed != 'true' && needs.check-changes.outputs.external-e2e-changed != 'true'
|
if: needs.pre_job.outputs.should_skip != 'true' && needs.check-changes.outputs.e2e-changed != 'true'
|
||||||
runs-on: depot-ubuntu-24.04
|
runs-on: depot-ubuntu-24.04
|
||||||
steps:
|
steps:
|
||||||
- name: Report skipped web full-stack e2e
|
- name: Report skipped web full-stack e2e
|
||||||
@ -372,7 +348,7 @@ jobs:
|
|||||||
- name: Finalize Web Full-Stack E2E status
|
- name: Finalize Web Full-Stack E2E status
|
||||||
env:
|
env:
|
||||||
SHOULD_SKIP_WORKFLOW: ${{ needs.pre_job.outputs.should_skip }}
|
SHOULD_SKIP_WORKFLOW: ${{ needs.pre_job.outputs.should_skip }}
|
||||||
TESTS_CHANGED: ${{ needs.check-changes.outputs.e2e-changed == 'true' || needs.check-changes.outputs.external-e2e-changed == 'true' }}
|
TESTS_CHANGED: ${{ needs.check-changes.outputs.e2e-changed }}
|
||||||
RUN_RESULT: ${{ needs.web-e2e-run.result }}
|
RUN_RESULT: ${{ needs.web-e2e-run.result }}
|
||||||
SKIP_RESULT: ${{ needs.web-e2e-skip.result }}
|
SKIP_RESULT: ${{ needs.web-e2e-skip.result }}
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
54
.github/workflows/post-merge.yml
vendored
Normal file
54
.github/workflows/post-merge.yml
vendored
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
name: Post-Merge Checks
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: ["main"]
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
|
||||||
|
concurrency:
|
||||||
|
group: post-merge-${{ github.sha }}
|
||||||
|
cancel-in-progress: false
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
check-changes:
|
||||||
|
name: Check Changed Files
|
||||||
|
runs-on: depot-ubuntu-24.04
|
||||||
|
outputs:
|
||||||
|
external-e2e-changed: ${{ steps.changes.outputs.external_e2e }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||||
|
- uses: dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4.0.1
|
||||||
|
id: changes
|
||||||
|
with:
|
||||||
|
filters: |
|
||||||
|
external_e2e:
|
||||||
|
- 'e2e/features/agent-v2/**'
|
||||||
|
- 'e2e/scripts/**'
|
||||||
|
- 'e2e/support/**'
|
||||||
|
- '.github/workflows/post-merge.yml'
|
||||||
|
- '.github/workflows/web-e2e.yml'
|
||||||
|
- '.github/actions/setup-web/**'
|
||||||
|
- 'dify-agent/**'
|
||||||
|
- 'api/clients/agent_backend/**'
|
||||||
|
- 'api/core/app/apps/agent_app/**'
|
||||||
|
- 'api/core/workflow/nodes/agent_v2/**'
|
||||||
|
- 'api/controllers/console/agent/**'
|
||||||
|
- 'api/services/agent/**'
|
||||||
|
- 'api/core/plugin/**'
|
||||||
|
- 'api/services/plugin/**'
|
||||||
|
- 'api/core/tools/**'
|
||||||
|
- 'api/services/tools/**'
|
||||||
|
- 'web/features/agent-v2/**'
|
||||||
|
- 'web/app/(commonLayout)/roster/**'
|
||||||
|
- 'web/app/components/workflow/nodes/agent-v2/**'
|
||||||
|
|
||||||
|
external-e2e:
|
||||||
|
name: External Runtime E2E
|
||||||
|
needs: check-changes
|
||||||
|
if: needs.check-changes.outputs.external-e2e-changed == 'true'
|
||||||
|
uses: ./.github/workflows/web-e2e.yml
|
||||||
|
with:
|
||||||
|
run-external-runtime: true
|
||||||
|
secrets: inherit
|
||||||
Loading…
Reference in New Issue
Block a user