maven: bump io.debezium:debezium-connector-postgres from 2.7.3.Final to 3.0.6.Final #1274
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
branches: [ main ] | |
pull_request: | |
types: [ opened, synchronize, reopened ] | |
jobs: | |
# Unit tests and the Sonar analysis is done in a single job | |
# because SonarCloud requires the test coverage report, | |
# which is generated after unit tests are executed. | |
# It's possible to do it in separate jobs (so it appears a bit prettier in the PR checks), | |
# but that requires the jobs to share the report (which can be done, but doesn't pay out). | |
test-analyze: | |
name: Test and analyze code | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Set up JDK 20 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 20 | |
distribution: 'adopt' | |
- name: Cache Maven packages | |
uses: actions/cache@v4 | |
with: | |
path: ~/.m2 | |
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} | |
restore-keys: ${{ runner.os }}-m2 | |
- name: Install test library to local Maven repo | |
# Not available in a public Maven repo, | |
# so we need to provide a pre-built artifact, | |
# and install to the local Maven repo. | |
run: mvn install:install-file -Dfile=libs/jdbc-connector-for-apache-kafka-6.8.0.jar -DgroupId=io.aiven -DartifactId=jdbc-connector-for-apache-kafka -Dversion=6.8.0 -Dpackaging=jar | |
- name: Test and analyze | |
env: | |
# Managed through https://sonarcloud.io/account/security/ | |
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any | |
# Skipping the tests as they have already been run above | |
# -B (batch mode) to suppress progress (pollutes logs) | |
# -DskipITs to skip integration tests (they are run in a separate job) | |
# -Pcoverage to use a Maven profile, which generates a test coverage report | |
run: mvn -B -DskipITs -Pcoverage verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar -Dsonar.host.url=https://sonarcloud.io -Dsonar.organization=conduitio -Dsonar.projectKey=conduit-kafka-connect-wrapper -Dsonar.login="$SONAR_TOKEN" | |
integration-tests: | |
# Run separately, because they do not affect the code analysis, | |
# and because it will help get the unit tests and SonarCloud results sooner. | |
name: Integration tests | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Set up JDK 20 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 20 | |
distribution: 'adopt' | |
- name: Cache Maven packages | |
uses: actions/cache@v4 | |
with: | |
path: ~/.m2 | |
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} | |
restore-keys: ${{ runner.os }}-m2 | |
- name: Start Postgres | |
run: docker compose -f src/test/resources/docker-compose.yml up -d --wait | |
- name: Install test library to local Maven repo | |
# Not available in a public Maven repo, so we need to provide a pre-built artifact, | |
# and install to the local Maven repo. | |
run: mvn install:install-file -Dfile=libs/jdbc-connector-for-apache-kafka-6.8.0.jar -DgroupId=io.aiven -DartifactId=jdbc-connector-for-apache-kafka -Dversion=6.8.0 -Dpackaging=jar | |
- name: Run integration tests | |
run: mvn integration-test verify |