From 3f2587662e5fe9db6e5b93800372a6d56973964a Mon Sep 17 00:00:00 2001 From: Konstantin Pavlov <1517853+kpavlov@users.noreply.github.com> Date: Thu, 11 Sep 2025 09:19:05 +0300 Subject: [PATCH 1/4] Refactor workflow - Rename workflow to 'Build' - Add push trigger on main branch - Cancel workflow only when the run is NOT on `main` branch - Update Gradle setup --- .github/workflows/{validate-pr.yml => build.yml} | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) rename .github/workflows/{validate-pr.yml => build.yml} (67%) diff --git a/.github/workflows/validate-pr.yml b/.github/workflows/build.yml similarity index 67% rename from .github/workflows/validate-pr.yml rename to .github/workflows/build.yml index 56adb6c0..9f231569 100644 --- a/.github/workflows/validate-pr.yml +++ b/.github/workflows/build.yml @@ -1,13 +1,16 @@ -name: Validate PR +name: Build on: workflow_dispatch: pull_request: branches: [ main ] + push: + branches: [ main ] concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + # Cancel only when the run is NOT on `main` branch + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} jobs: validate-pr: @@ -24,8 +27,11 @@ jobs: - name: Setup Gradle uses: gradle/actions/setup-gradle@v4 + with: + add-job-summary: 'always' + cache-read-only: true - - name: Clean Build with Gradle + - name: Build with Gradle run: ./gradlew clean build - name: Upload JUnit test results @@ -36,7 +42,7 @@ jobs: path: '**/build/test-results/test/*.xml' - name: Disable Auto-Merge on Fail - if: failure() + if: failure() && github.event_name != 'pull_request' run: gh pr merge --disable-auto "$PR_URL" env: PR_URL: ${{github.event.pull_request.html_url}} From 6ed17ae9ab8bd6f54e3a6ef4f8881d1861be5bba Mon Sep 17 00:00:00 2001 From: Konstantin Pavlov <1517853+kpavlov@users.noreply.github.com> Date: Thu, 11 Sep 2025 10:10:01 +0300 Subject: [PATCH 2/4] fix CodeQL --- .github/workflows/codeql.yml | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 29ba0f50..b891b874 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -29,7 +29,9 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v4 + uses: actions/checkout@v5 + with: + fetch-depth: 0 - uses: actions/setup-java@v5 with: @@ -52,12 +54,9 @@ jobs: - name: Build Kotlin sources run: | - ./gradlew \ - :kotlin-sdk-core:compileKotlinJvm \ - :kotlin-sdk-client:compileKotlinJvm \ - :kotlin-sdk-server:compileKotlinJvm \ - :kotlin-sdk:compileKotlinJvm \ - :kotlin-sdk-test:compileKotlinJvm \ + ./gradlew + jvmMainClasses \ + jvmTestClasses \ -Pkotlin.incremental=false \ --no-daemon --stacktrace From 7b5536b59076ef95f45cee149ce84cc1da7cd4db Mon Sep 17 00:00:00 2001 From: Konstantin Pavlov <1517853+kpavlov@users.noreply.github.com> Date: Thu, 11 Sep 2025 11:36:13 +0300 Subject: [PATCH 3/4] Update CodeQL workflow and Gradle properties - Enable ignoring disabled targets for Kotlin Native. - Refine CodeQL build command to specify module targets and rerun tasks. --- .github/workflows/codeql.yml | 11 +++++++---- gradle.properties | 1 + 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index b891b874..63c798f2 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -54,11 +54,14 @@ jobs: - name: Build Kotlin sources run: | - ./gradlew - jvmMainClasses \ - jvmTestClasses \ + ./gradlew \ + :kotlin-sdk-core:compileKotlinJvm \ + :kotlin-sdk-client:compileKotlinJvm \ + :kotlin-sdk-server:compileKotlinJvm \ + :kotlin-sdk:compileKotlinJvm \ + :kotlin-sdk-test:compileKotlinJvm \ -Pkotlin.incremental=false \ - --no-daemon --stacktrace + --no-daemon --stacktrace --rerun-tasks - name: Analyze uses: github/codeql-action/analyze@v3 diff --git a/gradle.properties b/gradle.properties index a868081a..85b95662 100644 --- a/gradle.properties +++ b/gradle.properties @@ -9,3 +9,4 @@ kotlin.code.style=official kotlin.daemon.jvmargs=-Xmx4G # MPP kotlin.mpp.enableCInteropCommonization=true +kotlin.native.ignoreDisabledTargets=true From 09270f4331d59e480773f073dfa7c6bce41545e3 Mon Sep 17 00:00:00 2001 From: Konstantin Pavlov <1517853+kpavlov@users.noreply.github.com> Date: Thu, 11 Sep 2025 12:16:27 +0300 Subject: [PATCH 4/4] Fix auto-merge condition in workflow - Adjust failure condition to only disable auto-merge for pull requests. --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9f231569..fc4123e1 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -42,7 +42,7 @@ jobs: path: '**/build/test-results/test/*.xml' - name: Disable Auto-Merge on Fail - if: failure() && github.event_name != 'pull_request' + if: failure() && github.event_name == 'pull_request' run: gh pr merge --disable-auto "$PR_URL" env: PR_URL: ${{github.event.pull_request.html_url}}