Refactor workflow, run on main (#251)

* 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

* fix CodeQL

* Update CodeQL workflow and Gradle properties

- Enable ignoring disabled targets for Kotlin Native.
- Refine CodeQL build command to specify module targets and rerun tasks.

* Fix auto-merge condition in workflow

- Adjust failure condition to only disable auto-merge for pull requests.
This commit is contained in:
Konstantin Pavlov 2025-09-11 12:48:07 +03:00 • committed by GitHub
commit bbc7a8fdfc
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 17 additions and 8 deletions

49
.github/workflows/build.yml vendored Normal file
View file

@ -0,0 +1,49 @@
name: Build
on:
workflow_dispatch:
pull_request:
branches: [ main ]
push:
branches: [ main ]
concurrency:
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:
runs-on: macos-latest
name: Validate PR
steps:
- uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v5
with:
java-version: '21'
distribution: 'temurin'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
with:
add-job-summary: 'always'
cache-read-only: true
- name: Build with Gradle
run: ./gradlew clean build
- name: Upload JUnit test results
if: always()
uses: actions/upload-artifact@v4
with:
name: junit-results
path: '**/build/test-results/test/*.xml'
- name: Disable Auto-Merge on Fail
if: failure() && github.event_name == 'pull_request'
run: gh pr merge --disable-auto "$PR_URL"
env:
PR_URL: ${{github.event.pull_request.html_url}}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

View file

@ -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,14 +54,14 @@ jobs:
- name: Build Kotlin sources
run: |
./gradlew \
./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

View file

@ -9,3 +9,4 @@ kotlin.code.style=official
kotlin.daemon.jvmargs=-Xmx4G
# MPP
kotlin.mpp.enableCInteropCommonization=true
kotlin.native.ignoreDisabledTargets=true