name: Build Connector Db2 on: push: branches: - main - 1.* paths: - '.github/workflows/db2-workflow.yml' - 'pom.xml' - 'debezium-api/**' - 'debezium-assembly-descriptors/**' - 'debezium-bom/pom.xml' - 'debezium-checkstyle/**' - 'debezium-core/**' - 'assembly-descriptors/**' - 'debezium-embedded/**' - 'debezium-ide-configs/**' - 'debezium-parent/pom.xml' - 'debezium-revapi/**' pull_request: branches: - main - 1.* paths: - '.github/workflows/db2-workflow.yml' - 'pom.xml' - 'debezium-api/**' - 'debezium-assembly-descriptors/**' - 'debezium-bom/pom.xml' - 'debezium-checkstyle/**' - 'debezium-core/**' - 'assembly-descriptors/**' - 'debezium-embedded/**' - 'debezium-ide-configs/**' - 'debezium-parent/pom.xml' - 'debezium-revapi/**' jobs: build: runs-on: ubuntu-latest steps: - name: Checkout Core uses: actions/checkout@v2 with: path: core - name: Checkout Db2 uses: actions/checkout@v2 with: repository: debezium/debezium-connector-db2 path: db2 - name: Set up Java 17 uses: actions/setup-java@v2 with: distribution: 'temurin' java-version: 17 - name: Get Date id: get-date run: | echo "::set-output name=date::$(/bin/date -u "+%Y-%m")" shell: bash - name: Cache Maven Repository uses: actions/cache@v2 with: path: ~/.m2/repository # refresh cache every month to avoid unlimited growth key: maven-db2-${{ steps.get-date.outputs.date }} restore-keys: | maven-db2-${{ steps.get-date.outputs.date }} - name: Run Formatting and Import Order Checks run: mvn clean install -f core/pom.xml -DskipTests=true -DskipITs=true -Dformat.formatter.goal=validate -Dformat.imports.goal=check -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 - name: Build Debezium Core run: mvn clean install -f core/pom.xml -pl debezium-assembly-descriptors,debezium-bom,debezium-core,debezium-embedded,:debezium-ide-configs,:debezium-checkstyle,debezium-assembly-descriptors,:debezium-revapi -am -DskipTests -DskipITs -Dformat.formatter.goal=validate -Dformat.imports.goal=check -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 - name: Build Debezium Connector Db2 run: mvn clean install -f db2/pom.xml -Passembly -Dformat.formatter.goal=validate -Dformat.imports.goal=check -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120