Skip to content

Commit dd9edbe

Browse files
committed
[CI] Implement SonarCloud
1 parent 3b46d50 commit dd9edbe

File tree

20 files changed

+887
-77
lines changed

20 files changed

+887
-77
lines changed
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
name: 'Gradle Cache'
2+
description: 'Cache Gradle Build Cache to improve workflow execution time'
3+
runs:
4+
using: "composite"
5+
steps:
6+
- uses: actions/cache@v4
7+
with:
8+
path: |
9+
~/.gradle/caches
10+
~/.gradle/wrapper
11+
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
12+
restore-keys: |
13+
${{ runner.os }}-gradle-
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
name: 'Setup Java'
2+
description: 'Setup Java'
3+
runs:
4+
using: "composite"
5+
steps:
6+
- name: Set up JDK 17
7+
uses: actions/setup-java@v4
8+
with:
9+
distribution: adopt
10+
java-version: 17
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
name: 'Setup Ruby'
2+
description: 'Setup Ruby and cache bundler'
3+
runs:
4+
using: "composite"
5+
steps:
6+
- uses: ruby/setup-ruby@v1
7+
with:
8+
ruby-version: 3.1
9+
bundler-cache: true

.github/workflows/android.yml

Lines changed: 21 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ env:
1212
BUILD_CACHE_AWS_BUCKET: ${{ secrets.BUILD_CACHE_AWS_BUCKET }}
1313
BUILD_CACHE_AWS_ACCESS_KEY_ID: ${{ secrets.BUILD_CACHE_AWS_ACCESS_KEY_ID }}
1414
BUILD_CACHE_AWS_SECRET_KEY: ${{ secrets.BUILD_CACHE_AWS_SECRET_KEY }}
15+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
16+
GITHUB_PR_NUM: ${{ github.event.pull_request.number }}
1517

1618
jobs:
1719
lint:
@@ -20,11 +22,7 @@ jobs:
2022
steps:
2123
- name: Check out code
2224
uses: actions/checkout@v3.1.0
23-
- name: Set up JDK
24-
uses: actions/setup-java@v3.6.0
25-
with:
26-
distribution: adopt
27-
java-version: 17
25+
- uses: ./.github/actions/setup-java
2826
- name: spotless
2927
run: ./gradlew spotlessCheck --scan
3028

@@ -34,11 +32,7 @@ jobs:
3432
steps:
3533
- name: Check out code
3634
uses: actions/checkout@v3.1.0
37-
- name: Set up JDK
38-
uses: actions/setup-java@v3.6.0
39-
with:
40-
distribution: adopt
41-
java-version: 17
35+
- uses: ./.github/actions/setup-java
4236
- name: API check
4337
run: ./gradlew apiCheck --scan
4438

@@ -47,21 +41,9 @@ jobs:
4741
steps:
4842
- uses: actions/checkout@v3
4943

50-
- name: set up JDK
51-
uses: actions/setup-java@v3.6.0
52-
with:
53-
distribution: adopt
54-
java-version: 17
44+
- uses: ./.github/actions/setup-java
5545

56-
- name: Cache Gradle and wrapper
57-
uses: actions/cache@v3
58-
with:
59-
path: |
60-
~/.gradle/caches
61-
~/.gradle/wrapper
62-
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
63-
restore-keys: |
64-
${{ runner.os }}-gradle-
46+
- uses: ./.github/actions/gradle-cache
6547

6648
- name: Make Gradle executable
6749
run: chmod +x ./gradlew
@@ -79,26 +61,14 @@ jobs:
7961
- name: Checkout
8062
uses: actions/checkout@v3
8163

82-
- name: set up JDK
83-
uses: actions/setup-java@v3.6.0
84-
with:
85-
distribution: adopt
86-
java-version: 17
64+
- uses: ./.github/actions/setup-java
8765

88-
- name: Cache Gradle and wrapper
89-
uses: actions/cache@v3
90-
with:
91-
path: |
92-
~/.gradle/caches
93-
~/.gradle/wrapper
94-
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
95-
restore-keys: |
96-
${{ runner.os }}-gradle-
66+
- uses: ./.github/actions/gradle-cache
9767

9868
- name: Run unit tests
9969
run: |
100-
./gradlew :stream-video-android-ui-compose:testDebugUnitTest --scan --stacktrace
101-
./gradlew :stream-video-android-core:testDebugUnitTest --scan --stacktrace
70+
./gradlew :stream-video-android-ui-compose:testDebugUnitTest :stream-video-android-ui-compose:testCoverage --scan --stacktrace
71+
./gradlew :stream-video-android-core:testDebugUnitTest :stream-video-android-core:testCoverage --scan --stacktrace
10272

10373
- name: Unit tests core results
10474
uses: actions/upload-artifact@v4
@@ -112,21 +82,26 @@ jobs:
11282
name: unit-tests-compose-results
11383
path: stream-video-android-ui-compose/build/reports/tests/testDebugUnitTest/index.html
11484

85+
- uses: ./.github/actions/setup-ruby
86+
87+
- name: Sonar
88+
run: bundle exec fastlane run_sonar_analysis
89+
env:
90+
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
91+
11592
androidTest-GMD:
11693
name: Android Test with GMD
11794
if: ${{ false }} # disable for now
118-
runs-on: macOS-latest
95+
runs-on: ubuntu-latest
11996
timeout-minutes: 55
12097

12198
steps:
12299
- name: Checkout
123100
uses: actions/checkout@v3
124101

125-
- name: Set up JDK 17
126-
uses: actions/setup-java@v3.6.0
127-
with:
128-
distribution: 'zulu'
129-
java-version: 17
102+
- uses: ./.github/actions/setup-java
103+
104+
- uses: ./.github/actions/enable-kvm
130105

131106
# Sets gradle up
132107
- name: Setup Gradle

.github/workflows/app-distribute.yml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,7 @@ jobs:
1212
runs-on: ubuntu-22.04
1313
steps:
1414
- uses: actions/checkout@v2
15-
- name: Set up JDK 17
16-
uses: actions/setup-java@v2
17-
with:
18-
distribution: adopt
19-
java-version: 17
15+
- uses: ./.github/actions/setup-java
2016
- name: Prepare environment
2117
run: |
2218
echo "${{ secrets.RELEASE_KEYSTORE }}" > .sign/release.keystore.asc

.github/workflows/artifact-upload.yaml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,7 @@ jobs:
1515
- name: Checkout code
1616
uses: actions/checkout@v2
1717

18-
- name: Set up JDK 17
19-
uses: actions/setup-java@v2
20-
with:
21-
distribution: adopt
22-
java-version: 17
18+
- uses: ./.github/actions/setup-java
2319

2420
- name: Prepare environment
2521
run: |

.github/workflows/internal-app-distribute.yml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,7 @@ jobs:
1212
runs-on: ubuntu-22.04
1313
steps:
1414
- uses: actions/checkout@v2
15-
- name: Set up JDK 17
16-
uses: actions/setup-java@v2
17-
with:
18-
distribution: adopt
19-
java-version: 17
15+
- uses: ./.github/actions/setup-java
2016
- name: Prepare environment
2117
run: |
2218
echo "${{ secrets.RELEASE_KEYSTORE }}" > .sign/release.keystore.asc

.github/workflows/publish-snapshot.yml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ on:
55
branches:
66
- develop
77
workflow_dispatch:
8-
8+
99
jobs:
1010
publish:
1111
name: Snapshot build and publish
@@ -14,11 +14,7 @@ jobs:
1414
- name: Check out code
1515
uses: actions/checkout@v3.1.0
1616

17-
- name: Set up JDK 17
18-
uses: actions/setup-java@v3.6.0
19-
with:
20-
distribution: adopt
21-
java-version: 17
17+
- uses: ./.github/actions/setup-java
2218

2319
- name: Release build
2420
# assembleRelease for all modules, excluding non-library modules: samples, docs

.github/workflows/publish.yml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,7 @@ jobs:
1616
# with:
1717
# ref: release
1818

19-
- name: Set up JDK 17
20-
uses: actions/setup-java@v3.6.0
21-
with:
22-
distribution: adopt
23-
java-version: 17
19+
- uses: ./.github/actions/setup-java
2420

2521
- name: Release build
2622
# assembleRelease for all modules, excluding non-library modules: samples, docs

.github/workflows/release-docs.yaml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,7 @@ jobs:
1515
uses: actions/checkout@v3.1.0
1616
with:
1717
ref: main
18-
- name: Set up JDK 17
19-
uses: actions/setup-java@v3.6.0
20-
with:
21-
distribution: adopt
22-
java-version: 17
18+
- uses: ./.github/actions/setup-java
2319
- name: Generate Dokka HTML docs
2420
run: ./gradlew dokkaHtmlMultimodule
2521
- name: Deploy to GitHub pages

0 commit comments

Comments
 (0)