155 lines
4.8 KiB
YAML
155 lines
4.8 KiB
YAML
name: CI-Build
|
|
|
|
on:
|
|
pull_request:
|
|
types: [opened, synchronize]
|
|
branches: [develop, release/**, fleety_*]
|
|
|
|
permissions: read-all
|
|
|
|
concurrency:
|
|
group: ${{ github.event.pull_request.number }}-${{ github.workflow }}
|
|
cancel-in-progress: true
|
|
|
|
env:
|
|
PR_ID: ${{ github.event.pull_request.number }}
|
|
COMMIT_ID: ${{ github.event.pull_request.head.sha }}
|
|
|
|
jobs:
|
|
check-skill:
|
|
name: Check file paths
|
|
if: ${{ github.repository_owner == 'PaddlePaddle' }}
|
|
runs-on:
|
|
group: APPROVAL
|
|
continue-on-error: true
|
|
permissions:
|
|
contents: read
|
|
actions: read
|
|
outputs:
|
|
can-skip: ${{ steps.skip-skill.outputs.should-skip || 'false' }}
|
|
steps:
|
|
- name: Cleanup
|
|
run: |
|
|
rm -rf * .[^.]*
|
|
- name: Checkout
|
|
uses: actions/checkout@v6
|
|
- name: Run skip check
|
|
id: skip-skill
|
|
uses: ./.github/actions/skip-skill
|
|
with:
|
|
ignore-paths: '.agents/skills/**'
|
|
|
|
clone:
|
|
name: Clone-linux
|
|
needs: check-skill
|
|
uses: ./.github/workflows/_Clone-linux.yml
|
|
with:
|
|
clone_dir: Paddle-build
|
|
workflow-name: 'CI-build'
|
|
skill-can-skip: ${{ needs.check-skill.outputs.can-skip }}
|
|
|
|
build-docker:
|
|
name: build docker images
|
|
needs: clone
|
|
uses: ./.github/workflows/docker.yml
|
|
with:
|
|
clone_dir: Paddle-build
|
|
task: build
|
|
|
|
inference:
|
|
name: PR-CI-Inference
|
|
uses: ./.github/workflows/_Inference.yml
|
|
needs: [clone, build-docker]
|
|
with:
|
|
docker_inference_image: ${{ needs.build-docker.outputs.docker_build_image }}
|
|
clone-can-skip: ${{ needs.clone.outputs.can-skip }}
|
|
|
|
build:
|
|
name: Linux-build
|
|
uses: ./.github/workflows/_Linux-build.yml
|
|
needs: [clone, build-docker]
|
|
with:
|
|
docker_build_image: ${{ needs.build-docker.outputs.docker_build_image }}
|
|
clone-can-skip: ${{ needs.clone.outputs.can-skip }}
|
|
|
|
static-check:
|
|
name: Static-Check
|
|
uses: ./.github/workflows/_Static-Check.yml
|
|
needs: [clone, build-docker, build]
|
|
with:
|
|
build-can-skip: ${{ needs.build.outputs.can-skip }}
|
|
can-skip: ${{ needs.clone.outputs.can-skip == 'true' }}
|
|
docker_build_image: ${{ needs.build-docker.outputs.docker_build_image }}
|
|
|
|
ce-framework:
|
|
name: CE-Framework
|
|
uses: ./.github/workflows/_CE-Framework.yml
|
|
needs: [clone, build-docker, build]
|
|
with:
|
|
build-can-skip: ${{ needs.build.outputs.can-skip }}
|
|
can-skip: ${{ needs.clone.outputs.can-skip == 'true' }}
|
|
docker_build_image: ${{ needs.build-docker.outputs.docker_build_image }}
|
|
|
|
ce-cinn-framework:
|
|
name: CE-CINN-Framework
|
|
uses: ./.github/workflows/_CE-CINN-Framework.yml
|
|
needs: [clone, build-docker, build]
|
|
with:
|
|
build-can-skip: ${{ needs.build.outputs.can-skip }}
|
|
can-skip: ${{ needs.clone.outputs.can-skip == 'true' }}
|
|
docker_build_image: ${{ needs.build-docker.outputs.docker_build_image }}
|
|
|
|
api-benchmark:
|
|
name: Api-Benchmark
|
|
uses: ./.github/workflows/_Api-Benchmark.yml
|
|
needs: [clone, build-docker, build]
|
|
with:
|
|
build-can-skip: ${{ needs.build.outputs.can-skip }}
|
|
can-skip: ${{ needs.clone.outputs.can-skip == 'true' }}
|
|
docker_build_image: ${{ needs.build-docker.outputs.docker_build_image }}
|
|
|
|
# auto-parallel:
|
|
# name: Auto-Parallel
|
|
# uses: ./.github/workflows/_Auto-Parallel.yml
|
|
# needs: [clone, build-docker, build]
|
|
# with:
|
|
# can-skip: ${{ needs.build.outputs.can-skip }}
|
|
# docker_build_image: ${{ needs.build-docker.outputs.docker_build_image }}
|
|
|
|
model-benchmark:
|
|
name: Model-Benchmark
|
|
uses: ./.github/workflows/_Model-Benchmark.yml
|
|
needs: [clone, build-docker, build]
|
|
with:
|
|
build-can-skip: ${{ needs.build.outputs.can-skip }}
|
|
can-skip: ${{ needs.clone.outputs.can-skip == 'true' }}
|
|
docker_build_image: ${{ needs.build-docker.outputs.docker_build_image }}
|
|
|
|
doc-preview:
|
|
name: Doc-Preview
|
|
uses: ./.github/workflows/_Doc-Preview.yml
|
|
needs: [clone, build-docker, build]
|
|
with:
|
|
build-can-skip: ${{ needs.build.outputs.can-skip }}
|
|
can-skip: ${{ needs.clone.outputs.can-skip == 'true' }}
|
|
docker_doc_image: ${{ needs.build-docker.outputs.docker_doc_image }}
|
|
|
|
slice:
|
|
name: Slice
|
|
uses: ./.github/workflows/_Slice.yml
|
|
needs: [clone, build-docker, build]
|
|
with:
|
|
build-can-skip: ${{ needs.build.outputs.can-skip }}
|
|
can-skip: ${{ needs.clone.outputs.can-skip == 'true' }}
|
|
docker_build_image: ${{ needs.build-docker.outputs.docker_build_image }}
|
|
slice-check: ${{ needs.clone.outputs.slice-check }}
|
|
|
|
deepmd-test:
|
|
name: DeepMD-Kit-Test
|
|
uses: ./.github/workflows/_Deepmd-pd-test.yml
|
|
needs: [clone, build-docker, build]
|
|
with:
|
|
build-can-skip: ${{ needs.build.outputs.can-skip }}
|
|
can-skip: ${{ needs.clone.outputs.can-skip == 'true' }}
|
|
docker_build_image: ${{ needs.build-docker.outputs.docker_build_image }}
|