diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 816cba35..d6e5c466 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -5,21 +5,18 @@ name: Java CI with Maven on: push: - branches: [ master ] + branches: [ master, '*.*' ] paths-ignore: - '.github/**' - '.idea/**' - '.run/**' pull_request: - branches: [ master ] + branches: [ master, '*.*' ] paths-ignore: - '.github/**' - '.idea/**' - '.run/**' -env: - SPARK_LOCAL_IP: 127.0.0.1 - jobs: build: diff --git a/.github/workflows/release-ghcr.yml b/.github/workflows/release-ghcr.yml deleted file mode 100644 index 826b5b2a..00000000 --- a/.github/workflows/release-ghcr.yml +++ /dev/null @@ -1,36 +0,0 @@ -name: Create Github Container Registry Release - -on: - push: - tags: - - '*.*.*.*' - -jobs: - build: - name: Main - if: github.repository_owner == 'memiiso' - runs-on: ubuntu-latest - steps: - - name: Check Out Repo - uses: actions/checkout@v3 - - - name: Set env - run: | - echo "RELEASE_NAME=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV - echo "RELEASE_BRANCH=${GITHUB_REF#refs/heads/}" >> $GITHUB_ENV - echo "RELEASE_TAG=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV - - - name: Login to Github Container Registry - uses: docker/login-action@v2 - with: - registry: ghcr.io - username: ${{ github.repository_owner }} - password: ${{ secrets.GITHUB_TOKEN }} - - - uses: docker/build-push-action@v3 - name: Build & push Docker image - with: - context: ./ - file: ./Dockerfile - push: true - tags: ghcr.io/${{ github.repository_owner }}/debezium-server-iceberg:${{ env.RELEASE_NAME }} \ No newline at end of file diff --git a/.github/workflows/release-latest-ghcr.yml b/.github/workflows/release-latest-ghcr.yml deleted file mode 100644 index 484043e0..00000000 --- a/.github/workflows/release-latest-ghcr.yml +++ /dev/null @@ -1,29 +0,0 @@ -name: Create Github Container Registry latest Release - -on: - push: - branches: [ master ] - -jobs: - build: - name: Main - if: github.repository_owner == 'memiiso' - runs-on: ubuntu-latest - steps: - - name: Check Out Repo - uses: actions/checkout@v3 - - - name: Login to Github Container Registry - uses: docker/login-action@v2 - with: - registry: ghcr.io - username: ${{ github.repository_owner }} - password: ${{ secrets.GITHUB_TOKEN }} - - - uses: docker/build-push-action@v3 - name: Build & push Docker image - with: - context: ./ - file: ./Dockerfile - push: true - tags: ghcr.io/${{ github.repository_owner }}/debezium-server-iceberg:latest \ No newline at end of file diff --git a/.github/workflows/release-latest.yml b/.github/workflows/release-latest.yml deleted file mode 100644 index befe4808..00000000 --- a/.github/workflows/release-latest.yml +++ /dev/null @@ -1,49 +0,0 @@ -name: Create Release of master branch - -on: - push: - branches: [ master ] - -env: - SPARK_LOCAL_IP: 127.0.0.1 - -jobs: - build: - name: Main - if: github.repository_owner == 'memiiso' - runs-on: ubuntu-latest - steps: - - name: Check Out Repo - uses: actions/checkout@v3 - - - name: Set env - run: | - echo "RELEASE_NAME=latest" >> $GITHUB_ENV - echo "RELEASE_BRANCH=${GITHUB_REF#refs/heads/}" >> $GITHUB_ENV - echo "RELEASE_TAG=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV - - - name: Build project - run: mvn -B package -Passembly --file pom.xml -Drevision=${{ env.RELEASE_NAME }} - - - name: Delete ${{ env.RELEASE_NAME }} release - uses: dev-drprasad/delete-tag-and-release@v0.2.0 - with: - delete_release: true # default: false - tag_name: ${{ env.RELEASE_NAME }} - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Release - id: create_release - uses: softprops/action-gh-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - name: Release ${{ env.RELEASE_NAME }} - tag_name: ${{ env.RELEASE_NAME }} - body: Release master branch - draft: false - prerelease: true - files: | - debezium-server-iceberg-sink/target/debezium-server-iceberg-sink-${{ env.RELEASE_NAME }}.jar - debezium-server-iceberg-dist/target/debezium-server-iceberg-dist-${{ env.RELEASE_NAME }}.zip \ No newline at end of file diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a94e238f..dbe29bca 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -2,8 +2,8 @@ name: Create Release on: push: - tags: - - '*.*.*.*' + tags: [ '*.*.*.*' ] + branches: [ master ] env: SPARK_LOCAL_IP: 127.0.0.1 @@ -15,18 +15,22 @@ jobs: runs-on: ubuntu-latest steps: - name: Check Out Repo - uses: actions/checkout@v3 + uses: actions/checkout@v2 - - name: Set env + - name: Set env for master(latest) release + if: github.ref_name == 'master' run: | - echo "RELEASE_NAME=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV - echo "RELEASE_BRANCH=${GITHUB_REF#refs/heads/}" >> $GITHUB_ENV - echo "RELEASE_TAG=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV + echo "RELEASE_NAME=latest" >> $GITHUB_ENV + + - name: Set env for release + if: github.ref_name != 'master' + run: | + echo "RELEASE_NAME=${{ github.ref_name }}" >> $GITHUB_ENV - name: Build project run: mvn -B package -Passembly --file pom.xml -Drevision=${{ env.RELEASE_NAME }} - - name: Delete ${{ env.RELEASE_NAME }} release + - name: Delete previous ${{ env.RELEASE_NAME }} release uses: dev-drprasad/delete-tag-and-release@v0.2.0 with: delete_release: true # default: false @@ -45,6 +49,22 @@ jobs: body: Release ${{ env.RELEASE_NAME }} draft: false prerelease: false + files: | debezium-server-iceberg-sink/target/debezium-server-iceberg-sink-${{ env.RELEASE_NAME }}.jar - debezium-server-iceberg-dist/target/debezium-server-iceberg-dist-${{ env.RELEASE_NAME }}.zip \ No newline at end of file + debezium-server-iceberg-dist/target/debezium-server-iceberg-dist-${{ env.RELEASE_NAME }}.zip + + - name: Login to Github Container Registry + uses: docker/login-action@v2 + with: + registry: ghcr.io + username: ${{ github.repository_owner }} + password: ${{ secrets.GITHUB_TOKEN }} + + - uses: docker/build-push-action@v3 + name: Build & push Docker image + with: + context: ./ + file: ./Dockerfile + push: true + tags: ghcr.io/${{ github.repository_owner }}/debezium-server-iceberg:${{ env.RELEASE_NAME }} \ No newline at end of file