2024-03-02 15:56:06 +01:00
|
|
|
name: Build Debezium (Push)
|
|
|
|
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
branches:
|
|
|
|
- main
|
|
|
|
- 1.*
|
|
|
|
- 2.*
|
|
|
|
|
|
|
|
env:
|
|
|
|
MAVEN_FULL_BUILD_PROJECTS: "\\!debezium-microbenchmark-oracle"
|
|
|
|
|
|
|
|
# Pushes to each branch will trigger a cancellation of any existing push jobs for that branch and
|
|
|
|
# will restart the build based on the latest push for that specific branch.
|
|
|
|
concurrency:
|
|
|
|
group: ${{ github.workflow }}-${{ github.ref_name }}
|
|
|
|
cancel-in-progress: true
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
|
|
|
|
# Approx 1m
|
|
|
|
build_cache:
|
|
|
|
name: "Update Dependencies"
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action (Core)
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
path: core
|
|
|
|
|
|
|
|
- name: Checkout Action (Debezium Server)
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
repository: debezium/debezium-server
|
|
|
|
path: server
|
|
|
|
|
2024-03-04 14:32:14 +01:00
|
|
|
- uses: ./core/.github/actions/setup-java
|
2024-03-02 15:56:06 +01:00
|
|
|
|
|
|
|
# GitHub actions seem to struggle returning actions/cache cache-hit
|
|
|
|
# Directly use the cache action here to control whether to fetch dependencies
|
|
|
|
- id: maven-cache-check
|
|
|
|
uses: actions/cache@v4
|
|
|
|
with:
|
|
|
|
path: ~/.m2/repository
|
|
|
|
key: maven-debezium-test-push-build-${{ hashFiles('core/**/pom.xml') }}
|
|
|
|
restore-keys: maven-debezium-test-push-build-${{ hashFiles('core/**/pom.xml') }}
|
|
|
|
|
|
|
|
# This step is responsible for pulling down artifacts
|
|
|
|
# Unfortunately due to the nature of how some of the maven workflows work, the only reliable way
|
|
|
|
# to guarantee fully seeding the maven cache is to run a full build. This step does not execute
|
|
|
|
# tests, formatting, checkstyle, nor import sorts.
|
|
|
|
#
|
|
|
|
# This check is conditioned so that if the cache-key was not found, we will execute this step.
|
|
|
|
# If the cache-key was found, this means we cannot update the cache and therefore we should
|
|
|
|
# not need to explicitly run this step. This should improve response of format/checkstyle
|
|
|
|
# errors to users faster.
|
|
|
|
#
|
|
|
|
# This job also explicitly excludes the "debezium-microbenchmark-oracle" module temporarily.
|
|
|
|
# There is a dependency on xstream.jar for this module that should be fixed and made to not
|
|
|
|
# be required so that the module can be built on GitHub Actions.
|
|
|
|
- name: Download dependencies (Core)
|
|
|
|
if: steps.maven-cache-check.outputs.cache-hit != 'true'
|
|
|
|
run: >
|
2024-03-04 14:32:14 +01:00
|
|
|
./core/mvnw -B -ntp clean install -f core/pom.xml
|
2024-03-02 15:56:06 +01:00
|
|
|
-pl ${{ env.MAVEN_FULL_BUILD_PROJECTS }}
|
|
|
|
-Dformat.skip=true
|
|
|
|
-Dcheckstyle.skip=true
|
|
|
|
-Dorg.slf4j.simpleLogger.showDateTime=true
|
|
|
|
-Dorg.slf4j.simpleLogger.dateTimeFormat="YYYY-MM-dd HH:mm:ss,SSS"
|
|
|
|
-DskipTests=true
|
|
|
|
-DskipITs=true
|
|
|
|
|
|
|
|
- name: Download dependencies (Debezium Server)
|
|
|
|
if: steps.maven-cache-check.outputs.cache-hit != 'true'
|
|
|
|
run: >
|
2024-03-04 14:32:14 +01:00
|
|
|
./server/mvnw -B -ntp clean install -f server/pom.xml
|
2024-03-02 15:56:06 +01:00
|
|
|
-Dformat.skip=true
|
|
|
|
-Dcheckstyle.skip=true
|
|
|
|
-Dorg.slf4j.simpleLogger.showDateTime=true
|
|
|
|
-Dorg.slf4j.simpleLogger.dateTimeFormat="YYYY-MM-dd HH:mm:ss,SSS"
|
|
|
|
-DskipTests=true
|
|
|
|
-DskipITs=true
|
|
|
|
|
|
|
|
# Approx 1m
|
|
|
|
check_style:
|
|
|
|
name: "Checkstyle and Formatting"
|
|
|
|
needs: [ build_cache ]
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
|
|
|
|
- uses: ./.github/actions/checkstyle-format
|
|
|
|
with:
|
|
|
|
maven-cache-key: maven-debezium-test-push-build-${{ hashFiles('**/pom.xml') }}
|
|
|
|
|
|
|
|
# Approx 40m each
|
|
|
|
build_mongodb:
|
|
|
|
strategy:
|
|
|
|
# Run each MongoDB job sequentially
|
|
|
|
max-parallel: 1
|
|
|
|
matrix:
|
|
|
|
version-mongo-server: [ "5.0", "7.0" ]
|
|
|
|
fail-fast: false
|
|
|
|
name: "MongoDB ${{ matrix.version-mongo-server }}"
|
2024-03-04 15:53:18 +01:00
|
|
|
needs: [ check_style ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
|
|
|
|
- uses: ./.github/actions/build-debezium-mongodb
|
|
|
|
with:
|
|
|
|
maven-cache-key: maven-debezium-test-push-build-${{ hashFiles('**/pom.xml') }}
|
|
|
|
version-mongo-server: ${{ matrix.version-mongo-server }}
|
|
|
|
|
|
|
|
# Approx 40m each
|
|
|
|
build_mysql:
|
|
|
|
strategy:
|
|
|
|
# Run 2 matrix jobs concurrently
|
|
|
|
max-parallel: 2
|
|
|
|
matrix:
|
|
|
|
profile: [ "mysql-ci", "mysql-ci-gtids", "mysql-ci-percona", "mysql-ci-ssl" ]
|
2024-08-14 05:50:04 +02:00
|
|
|
version-mysql-server: [ "8.0", "8.4", "9.0" ]
|
2024-03-02 15:56:06 +01:00
|
|
|
fail-fast: false
|
|
|
|
name: "MySQL ${{ matrix.version-mysql-server }} - ${{ matrix.profile }}"
|
2024-03-04 15:53:18 +01:00
|
|
|
needs: [ check_style ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
|
|
|
|
- uses: ./.github/actions/build-debezium-mysql
|
|
|
|
with:
|
|
|
|
maven-cache-key: maven-debezium-test-push-build-${{ hashFiles('**/pom.xml') }}
|
|
|
|
version-mysql-server: ${{ matrix.version-mysql-server }}
|
|
|
|
profile: ${{ matrix.profile }}
|
|
|
|
|
|
|
|
# Approx 40m each
|
|
|
|
build_mariadb:
|
|
|
|
strategy:
|
|
|
|
# Run each MariaDB job sequentially
|
|
|
|
max-parallel: 1
|
|
|
|
matrix:
|
2024-03-04 14:32:14 +01:00
|
|
|
profile: [ 'mysql-ci', 'mysql-ci-gtids' ]
|
2024-03-02 15:56:06 +01:00
|
|
|
fail-fast: false
|
|
|
|
name: "MariaDB - ${{ matrix.profile }}"
|
2024-03-04 15:53:18 +01:00
|
|
|
needs: [ check_style ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
|
|
|
|
- uses: ./.github/actions/build-debezium-mariadb
|
|
|
|
with:
|
|
|
|
maven-cache-key: maven-debezium-test-push-build-${{ hashFiles('**/pom.xml') }}
|
|
|
|
profile: ${{ matrix.profile }}
|
|
|
|
|
|
|
|
# Approx 40m each
|
2024-03-04 14:32:14 +01:00
|
|
|
build_postgresql:
|
2024-03-02 15:56:06 +01:00
|
|
|
strategy:
|
|
|
|
# Run each PostgreSQL job sequentially
|
|
|
|
max-parallel: 1
|
|
|
|
matrix:
|
2024-07-15 14:07:17 +02:00
|
|
|
profile: [ "assembly,postgres-12", "assembly,postgres-16,pgoutput-decoder" ]
|
2024-03-02 15:56:06 +01:00
|
|
|
fail-fast: false
|
|
|
|
name: "PostgreSQL - ${{ matrix.profile }}"
|
2024-03-04 15:53:18 +01:00
|
|
|
needs: [ check_style ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
|
|
|
|
- uses: ./.github/actions/build-debezium-postgres
|
|
|
|
with:
|
|
|
|
maven-cache-key: maven-debezium-test-push-build-${{ hashFiles('**/pom.xml') }}
|
|
|
|
profile: ${{ matrix.profile }}
|
|
|
|
|
|
|
|
# Approx 1h 45m
|
|
|
|
build_sqlserver:
|
|
|
|
name: "SQL Server"
|
2024-03-04 15:53:18 +01:00
|
|
|
needs: [ check_style ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
|
|
|
|
- uses: ./.github/actions/build-debezium-sqlserver
|
|
|
|
with:
|
|
|
|
maven-cache-key: maven-debezium-test-push-build-${{ hashFiles('**/pom.xml') }}
|
|
|
|
|
|
|
|
# Approx 6m
|
|
|
|
build_oracle:
|
|
|
|
name: "Oracle"
|
2024-03-04 15:53:18 +01:00
|
|
|
needs: [ check_style ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
|
|
|
|
- uses: ./.github/actions/build-debezium-oracle
|
|
|
|
with:
|
|
|
|
maven-cache-key: maven-debezium-test-push-build-${{ hashFiles('**/pom.xml') }}
|
|
|
|
|
|
|
|
# Approx 2m
|
|
|
|
build_outbox:
|
|
|
|
name: "Quarkus Outbox Extension"
|
2024-03-04 15:53:18 +01:00
|
|
|
needs: [ check_style, build_oracle ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
|
|
|
|
- uses: ./.github/actions/build-debezium-outbox
|
|
|
|
with:
|
|
|
|
maven-cache-key: maven-debezium-test-push-build-${{ hashFiles('**/pom.xml') }}
|
|
|
|
|
|
|
|
# Approx 5m
|
|
|
|
build_rest_extension:
|
|
|
|
name: "REST Extension"
|
2024-03-04 15:53:18 +01:00
|
|
|
needs: [ check_style, build_outbox ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
|
|
|
|
- uses: ./.github/actions/build-debezium-rest-extension
|
|
|
|
with:
|
|
|
|
maven-cache-key: maven-debezium-test-push-build-${{ hashFiles('**/pom.xml') }}
|
|
|
|
|
|
|
|
# Approx 2m
|
|
|
|
build_schema_generator:
|
|
|
|
name: "Schema Generator"
|
2024-03-04 15:53:18 +01:00
|
|
|
needs: [ check_style, build_rest_extension ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
|
|
|
|
- uses: ./.github/actions/build-debezium-schema-generator
|
|
|
|
with:
|
|
|
|
maven-cache-key: maven-debezium-test-push-build-${{ hashFiles('**/pom.xml') }}
|
|
|
|
|
|
|
|
# Approx 5m
|
|
|
|
build_debezium_testing:
|
|
|
|
name: "Testing Module"
|
2024-03-04 15:53:18 +01:00
|
|
|
needs: [ check_style, build_schema_generator ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
|
|
|
|
- uses: ./.github/actions/build-debezium-testing
|
|
|
|
with:
|
|
|
|
maven-cache-key: maven-debezium-test-push-build-${{ hashFiles('**/pom.xml') }}
|
|
|
|
|
|
|
|
# Approx 3m
|
|
|
|
build_storage:
|
|
|
|
name: "Storage Module"
|
2024-03-04 15:53:18 +01:00
|
|
|
needs: [ check_style, build_debezium_testing ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
|
|
|
|
- uses: ./.github/actions/build-debezium-storage
|
|
|
|
with:
|
|
|
|
maven-cache-key: maven-debezium-test-push-build-${{ hashFiles('**/pom.xml') }}
|
|
|
|
|
|
|
|
# Approx 25m
|
|
|
|
build_cassandra:
|
|
|
|
name: "Cassandra"
|
2024-03-04 16:54:39 +01:00
|
|
|
needs: [ check_style, build_debezium_server ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action (Debezium Core)
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
path: core
|
|
|
|
|
|
|
|
- name: Checkout Action (Cassandra)
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
repository: debezium/debezium-connector-cassandra
|
|
|
|
path: cassandra
|
2024-04-09 19:09:49 +02:00
|
|
|
ref: ${{ github.ref_name }}
|
2024-03-02 15:56:06 +01:00
|
|
|
|
|
|
|
- uses: ./core/.github/actions/setup-java
|
|
|
|
|
|
|
|
- uses: ./core/.github/actions/maven-cache
|
|
|
|
with:
|
|
|
|
# We specifically only use the hash of the pom files from the core repository
|
|
|
|
key: maven-debezium-test-push-build-${{ hashFiles('core/**/pom.xml') }}
|
|
|
|
|
|
|
|
- uses: ./core/.github/actions/build-debezium-cassandra
|
|
|
|
with:
|
|
|
|
path-core: core
|
|
|
|
path-cassandra: cassandra
|
|
|
|
|
|
|
|
# Approx 1h
|
|
|
|
build_db2:
|
|
|
|
name: "Db2"
|
2024-03-04 15:53:18 +01:00
|
|
|
needs: [ check_style ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action (Debezium Core)
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
path: core
|
|
|
|
|
|
|
|
- name: Checkout Action (Db2)
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
repository: debezium/debezium-connector-db2
|
|
|
|
path: db2
|
2024-04-09 19:09:49 +02:00
|
|
|
ref: ${{ github.ref_name }}
|
2024-03-02 15:56:06 +01:00
|
|
|
|
|
|
|
- uses: ./core/.github/actions/setup-java
|
|
|
|
|
|
|
|
- uses: ./core/.github/actions/maven-cache
|
|
|
|
with:
|
|
|
|
# We specifically only use the hash of the pom files from the core repository
|
|
|
|
key: maven-debezium-test-push-build-${{ hashFiles('core/**/pom.xml') }}
|
|
|
|
|
|
|
|
- uses: ./core/.github/actions/build-debezium-db2
|
|
|
|
with:
|
|
|
|
path-core: core
|
|
|
|
path-db2: db2
|
|
|
|
|
|
|
|
# Approx 45m
|
|
|
|
build_informix:
|
|
|
|
name: "Informix"
|
2024-03-04 15:53:18 +01:00
|
|
|
needs: [ check_style ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action (Debezium Core)
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
path: core
|
|
|
|
|
|
|
|
- name: Checkout Action (Informix)
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
repository: debezium/debezium-connector-informix
|
|
|
|
path: informix
|
2024-04-09 19:09:49 +02:00
|
|
|
ref: ${{ github.ref_name }}
|
2024-03-02 15:56:06 +01:00
|
|
|
|
|
|
|
- uses: ./core/.github/actions/setup-java
|
|
|
|
|
|
|
|
- uses: ./core/.github/actions/maven-cache
|
|
|
|
with:
|
|
|
|
# We specifically only use the hash of the pom files from the core repository
|
|
|
|
key: maven-debezium-test-push-build-${{ hashFiles('core/**/pom.xml') }}
|
|
|
|
|
|
|
|
- uses: ./core/.github/actions/build-debezium-informix
|
|
|
|
with:
|
|
|
|
path-core: core
|
|
|
|
path-informix: informix
|
|
|
|
|
2024-03-05 14:50:22 +01:00
|
|
|
build_ibmi:
|
|
|
|
name: "IBMi"
|
|
|
|
needs: [ check_style ]
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action (Debezium Core)
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
path: core
|
|
|
|
|
|
|
|
- name: Checkout Action (IBMi)
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
repository: debezium/debezium-connector-ibmi
|
|
|
|
path: ibmi
|
2024-04-09 19:09:49 +02:00
|
|
|
ref: ${{ github.ref_name }}
|
2024-03-05 14:50:22 +01:00
|
|
|
|
|
|
|
- uses: ./core/.github/actions/setup-java
|
|
|
|
|
|
|
|
- uses: ./core/.github/actions/maven-cache
|
|
|
|
with:
|
|
|
|
# We specifically only use the hash of the pom files from the core repository
|
|
|
|
key: maven-debezium-test-push-build-${{ hashFiles('core/**/pom.xml') }}
|
|
|
|
|
|
|
|
- uses: ./core/.github/actions/build-debezium-ibmi
|
|
|
|
with:
|
|
|
|
path-core: core
|
|
|
|
path-ibmi: ibmi
|
|
|
|
|
2024-03-02 15:56:06 +01:00
|
|
|
# Approx 20m
|
|
|
|
build_vitess:
|
|
|
|
name: "Vitess"
|
2024-03-04 16:54:39 +01:00
|
|
|
needs: [ check_style, build_storage ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action (Debezium Core)
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
path: core
|
|
|
|
|
|
|
|
- name: Checkout Action (Vitess)
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
repository: debezium/debezium-connector-vitess
|
|
|
|
path: vitess
|
2024-04-09 19:09:49 +02:00
|
|
|
ref: ${{ github.ref_name }}
|
2024-03-02 15:56:06 +01:00
|
|
|
|
|
|
|
- uses: ./core/.github/actions/setup-java
|
|
|
|
|
|
|
|
- uses: ./core/.github/actions/maven-cache
|
|
|
|
with:
|
|
|
|
# We specifically only use the hash of the pom files from the core repository
|
|
|
|
key: maven-debezium-test-push-build-${{ hashFiles('core/**/pom.xml') }}
|
|
|
|
|
|
|
|
- uses: ./core/.github/actions/build-debezium-vitess
|
|
|
|
with:
|
|
|
|
path-core: core
|
|
|
|
path-vitess: vitess
|
|
|
|
|
|
|
|
# Approx 7m
|
|
|
|
build_spanner:
|
|
|
|
name: "Spanner"
|
2024-03-04 15:53:18 +01:00
|
|
|
needs: [ check_style, build_vitess ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action (Debezium Core)
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
path: core
|
|
|
|
|
|
|
|
- name: Checkout Action (Spanner)
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
repository: debezium/debezium-connector-spanner
|
|
|
|
path: spanner
|
2024-04-09 19:09:49 +02:00
|
|
|
ref: ${{ github.ref_name }}
|
2024-03-02 15:56:06 +01:00
|
|
|
|
|
|
|
- uses: ./core/.github/actions/setup-java
|
|
|
|
|
|
|
|
- uses: ./core/.github/actions/maven-cache
|
|
|
|
with:
|
|
|
|
# We specifically only use the hash of the pom files from the core repository
|
|
|
|
key: maven-debezium-test-push-build-${{ hashFiles('core/**/pom.xml') }}
|
|
|
|
|
|
|
|
- uses: ./core/.github/actions/build-debezium-spanner
|
|
|
|
with:
|
|
|
|
path-core: core
|
|
|
|
path-spanner: spanner
|
|
|
|
|
|
|
|
# Approx 1m
|
|
|
|
build_jdbc:
|
|
|
|
name: "JDBC"
|
2024-03-04 15:53:18 +01:00
|
|
|
needs: [ check_style, build_spanner ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2024-07-30 15:02:30 +02:00
|
|
|
- name: Checkout Action
|
2024-03-02 15:56:06 +01:00
|
|
|
uses: actions/checkout@v4
|
|
|
|
|
2024-07-30 15:02:30 +02:00
|
|
|
- uses: ./.github/actions/build-debezium-jdbc
|
2024-03-02 15:56:06 +01:00
|
|
|
with:
|
2024-07-30 15:02:30 +02:00
|
|
|
maven-cache-key: maven-debezium-test-push-build-${{ hashFiles('**/pom.xml') }}
|
2024-03-02 15:56:06 +01:00
|
|
|
|
|
|
|
# Approx 26m
|
2024-03-04 14:32:14 +01:00
|
|
|
build_debezium_server:
|
2024-03-02 15:56:06 +01:00
|
|
|
name: "Debezium Server"
|
2024-03-04 15:53:18 +01:00
|
|
|
needs: [ check_style, build_jdbc ]
|
2024-03-02 15:56:06 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout Action (Debezium Core)
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
path: core
|
|
|
|
|
2024-03-04 14:32:14 +01:00
|
|
|
- name: Checkout Action (Debezium Server)
|
2024-03-02 15:56:06 +01:00
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
repository: debezium/debezium-server
|
|
|
|
path: server
|
2024-04-09 19:09:49 +02:00
|
|
|
ref: ${{ github.ref_name }}
|
2024-03-02 15:56:06 +01:00
|
|
|
|
|
|
|
- uses: ./core/.github/actions/setup-java
|
|
|
|
|
|
|
|
- uses: ./core/.github/actions/maven-cache
|
|
|
|
with:
|
|
|
|
# We specifically only use the hash of the pom files from the core repository
|
|
|
|
key: maven-debezium-test-push-build-${{ hashFiles('core/**/pom.xml') }}
|
|
|
|
|
|
|
|
- uses: ./core/.github/actions/build-debezium-server
|
|
|
|
with:
|
|
|
|
path-core: core
|
2024-03-04 16:54:39 +01:00
|
|
|
path-server: server
|