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:
parent
c455974e86
commit
bbc7a8fdfc
3 changed files with 17 additions and 8 deletions
49
.github/workflows/build.yml
vendored
Normal file
49
.github/workflows/build.yml
vendored
Normal 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 }}
|
||||||
8
.github/workflows/codeql.yml
vendored
8
.github/workflows/codeql.yml
vendored
|
|
@ -29,7 +29,9 @@ jobs:
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v5
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
- uses: actions/setup-java@v5
|
- uses: actions/setup-java@v5
|
||||||
with:
|
with:
|
||||||
|
|
@ -52,14 +54,14 @@ jobs:
|
||||||
|
|
||||||
- name: Build Kotlin sources
|
- name: Build Kotlin sources
|
||||||
run: |
|
run: |
|
||||||
./gradlew \
|
./gradlew \
|
||||||
:kotlin-sdk-core:compileKotlinJvm \
|
:kotlin-sdk-core:compileKotlinJvm \
|
||||||
:kotlin-sdk-client:compileKotlinJvm \
|
:kotlin-sdk-client:compileKotlinJvm \
|
||||||
:kotlin-sdk-server:compileKotlinJvm \
|
:kotlin-sdk-server:compileKotlinJvm \
|
||||||
:kotlin-sdk:compileKotlinJvm \
|
:kotlin-sdk:compileKotlinJvm \
|
||||||
:kotlin-sdk-test:compileKotlinJvm \
|
:kotlin-sdk-test:compileKotlinJvm \
|
||||||
-Pkotlin.incremental=false \
|
-Pkotlin.incremental=false \
|
||||||
--no-daemon --stacktrace
|
--no-daemon --stacktrace --rerun-tasks
|
||||||
|
|
||||||
- name: Analyze
|
- name: Analyze
|
||||||
uses: github/codeql-action/analyze@v3
|
uses: github/codeql-action/analyze@v3
|
||||||
|
|
|
||||||
|
|
@ -9,3 +9,4 @@ kotlin.code.style=official
|
||||||
kotlin.daemon.jvmargs=-Xmx4G
|
kotlin.daemon.jvmargs=-Xmx4G
|
||||||
# MPP
|
# MPP
|
||||||
kotlin.mpp.enableCInteropCommonization=true
|
kotlin.mpp.enableCInteropCommonization=true
|
||||||
|
kotlin.native.ignoreDisabledTargets=true
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue