Skip to content

Pull Request pipeline #1848

Pull Request pipeline

Pull Request pipeline #1848

Workflow file for this run

name: Pull Request pipeline
on:
pull_request:
types: [ synchronize, opened, reopened, ready_for_review ]
branches:
- main
- 'release-**'
jobs:
check-build-image:
outputs:
check: ${{ steps.changed-files.outputs.any_modified }}
name: Check whether build image should run
runs-on: ubuntu-latest
if: ${{ github.event.pull_request.draft == false }}
steps:
- uses: actions/checkout@v4
- uses: tj-actions/changed-files@e9772d140489982e0e3704fea5ee93d536f1e275
id: changed-files
with:
files_ignore: |
docs/**
**/*.md
tests/performance/**
OWNERS
CODEOWNERS
.reuse/**
- name: List all changed files
run: echo '${{ steps.changed-files.outputs.all_changed_files }}' >> $GITHUB_STEP_SUMMARY
build-image:
name: Build manager image
runs-on: ubuntu-latest
needs: [check-build-image]
if: ${{ needs.check-build-image.outputs.check== 'true' }}
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/build-manager-image
with:
operator-image-name: "istio-manager:PR-${{github.event.number}}"
check-unit-test:
outputs:
check: ${{ steps.changed-files.outputs.any_modified }}
name: Check whether unit test & lint should run based on the changed files
if: github.event.pull_request.draft == false
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: tj-actions/changed-files@e9772d140489982e0e3704fea5ee93d536f1e275
id: changed-files
with:
files_ignore: |
docs/**
**/*.md
tests/performance/**
OWNERS
CODEOWNERS
sec-scanners-config.yaml
.reuse/**
- name: List all changed files
run: echo '${{ steps.changed-files.outputs.all_changed_files }}' >> $GITHUB_STEP_SUMMARY
dispatch-unit-test:
name: Dispatch unit test
needs: [check-unit-test]
uses: ./.github/workflows/pull-unit-lint.yaml
if: ${{ needs.check-unit-test.outputs.check == 'true' }}
secrets: inherit
check-integration:
outputs:
check: ${{ steps.changed-files.outputs.any_modified }}
name: Check whether integration tests should run based on the changed files
if: github.event.pull_request.draft == false
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: tj-actions/changed-files@e9772d140489982e0e3704fea5ee93d536f1e275
id: changed-files
with:
files_ignore: |
docs/**
**/*.md
tests/performance/**
OWNERS
CODEOWNERS
sec-scanners-config.yaml
.reuse/**
- name: List all changed files
run: echo '${{ steps.changed-files.outputs.all_changed_files }}' >> $GITHUB_STEP_SUMMARY
dispatch-integration:
name: Dispatch integration tests
needs: [check-integration,build-image]
uses: ./.github/workflows/pull-integration.yaml
if: ${{ needs.check-integration.outputs.check == 'true' }}
secrets: inherit
check-ui:
outputs:
check: ${{ steps.changed-files.outputs.any_modified }}
name: Check whether UI tests should run based on the changed files
if: github.event.pull_request.draft == false
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: tj-actions/changed-files@e9772d140489982e0e3704fea5ee93d536f1e275
id: changed-files
with:
files: |
config/ui-extensions/**
config/crd/**
tests/ui/**
.github/workflows/ui-tests.yaml
- name: List all changed files
run: echo '${{ steps.changed-files.outputs.all_changed_files }}' >> $GITHUB_STEP_SUMMARY
dispatch-ui:
name: Dispatch UI tests
needs: [check-ui,build-image]
uses: ./.github/workflows/ui-tests.yaml
if: ${{ needs.check-ui.outputs.check == 'true' }}
secrets: inherit
check-verify-pins:
outputs:
check: ${{ steps.changed-files.outputs.any_modified }}
name: Check whether to run verify-commit-pins
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: tj-actions/changed-files@e9772d140489982e0e3704fea5ee93d536f1e275
id: changed-files
with:
files: |
.github/workflows/**
- name: List all changed files
run: echo '${{ steps.changed-files.outputs.all_changed_files }}' >> $GITHUB_STEP_SUMMARY
dispatch-verify-pins:
name: Dispatch verify-commit-pins
needs: [check-verify-pins]
uses: ./.github/workflows/verify-commit-pins.yaml
if: ${{ needs.check-verify-pins.outputs.check == 'true' }}
secrets: inherit