You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
92 lines
2.8 KiB
YAML
92 lines
2.8 KiB
YAML
# Licensed to the Apache Software Foundation (ASF) under one or more
|
|
# contributor license agreements. See the NOTICE file distributed with
|
|
# this work for additional information regarding copyright ownership.
|
|
# The ASF licenses this file to You under the Apache License, Version 2.0
|
|
# (the "License"); you may not use this file except in compliance with
|
|
# the License. You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
name: Flink CDC CI
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
- release-*
|
|
paths-ignore:
|
|
- 'docs/**'
|
|
- 'README.md'
|
|
pull_request:
|
|
branches:
|
|
- master
|
|
- release-*
|
|
paths-ignore:
|
|
- 'docs/**'
|
|
- 'README.md'
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.event.number || github.run_id }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
license_check:
|
|
name: License Check
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Check out repository code
|
|
uses: actions/checkout@v4
|
|
with:
|
|
submodules: true
|
|
- name: Set up Ruby environment
|
|
uses: ruby/setup-ruby@v1
|
|
with:
|
|
ruby-version: '3.3'
|
|
- name: Set JDK
|
|
uses: actions/setup-java@v4
|
|
with:
|
|
java-version: '8'
|
|
distribution: 'temurin'
|
|
cache: 'maven'
|
|
- name: Compiling jar packages
|
|
run: mvn --no-snapshot-updates -B package -DskipTests
|
|
- name: Run license check
|
|
run: gem install rubyzip -v 2.3.0 && ./tools/ci/license_check.rb
|
|
ut:
|
|
strategy:
|
|
matrix:
|
|
module: [ 'core', 'pipeline_connectors', 'mysql', 'postgres', 'oracle', 'mongodb6', 'mongodb7', 'sqlserver', 'tidb', 'oceanbase', 'db2', 'vitess' ]
|
|
name: Unit Tests
|
|
uses: ./.github/workflows/flink_cdc_base.yml
|
|
with:
|
|
java-version: "[8]"
|
|
module: ${{ matrix.module }}
|
|
pipeline_e2e:
|
|
strategy:
|
|
matrix:
|
|
parallelism: [ 1, 4 ]
|
|
name: Pipeline E2E Tests (${{ matrix.parallelism }}-Parallelism)
|
|
uses: ./.github/workflows/flink_cdc_base.yml
|
|
with:
|
|
java-version: "[8]"
|
|
flink-version: "['1.19.1', '1.20.0']"
|
|
module: pipeline_e2e
|
|
parallelism: ${{ matrix.parallelism }}
|
|
source_e2e:
|
|
name: Source E2E Tests
|
|
uses: ./.github/workflows/flink_cdc_base.yml
|
|
with:
|
|
java-version: "[8]"
|
|
flink-version: "['1.19.1', '1.20.0']"
|
|
module: source_e2e
|
|
migration_test:
|
|
name: Migration Tests
|
|
uses: ./.github/workflows/flink_cdc_migration_test_base.yml
|
|
with:
|
|
java-version: "[8]"
|
|
flink-version: "['1.19.1', '1.20.0']" |