Skip to content

Commit 8a0b820

Browse files
authored
Merge pull request #40 from tillhub/develop
Release 2.0.0
2 parents b987239 + fed386a commit 8a0b820

File tree

168 files changed

+5260
-4271
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

168 files changed

+5260
-4271
lines changed

.claude/settings.local.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"permissions": {
3+
"allow": [
4+
"Bash(./gradlew:*)",
5+
"Bash(gh auth:*)",
6+
"Bash(gh pr diff:*)",
7+
"Bash(find:*)"
8+
],
9+
"deny": [],
10+
"ask": []
11+
}
12+
}

.editorconfig

Lines changed: 0 additions & 54 deletions
This file was deleted.

.github/workflows/develop.yml

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
name: Android CI - Develop
2+
3+
on:
4+
push:
5+
branches: [ "develop" ]
6+
7+
jobs:
8+
ui-tests:
9+
name: Run android tests and build staging
10+
runs-on: ubuntu-latest
11+
timeout-minutes: 60
12+
13+
steps:
14+
15+
- name: Checking out branch
16+
uses: actions/checkout@v4
17+
18+
- name: set up JDK 17
19+
uses: actions/setup-java@v4
20+
with:
21+
java-version: '17'
22+
distribution: 'temurin'
23+
cache: gradle
24+
25+
- name: Setup Android SDK
26+
uses: android-actions/setup-android@v3
27+
28+
# Hardware accelerated Android virtualization on Actions Linux larger hosted runners
29+
- name: Enable KVM
30+
run: |
31+
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
32+
sudo udevadm control --reload-rules
33+
sudo udevadm trigger --name-match=kvm
34+
35+
# Significantly reduce emulator startup time by setting up AVD snapshot caching
36+
- name: Gradle cache
37+
uses: gradle/actions/setup-gradle@v3
38+
39+
- name: AVD cache
40+
uses: actions/cache@v4
41+
id: avd-cache
42+
with:
43+
path: |
44+
~/.android/avd/*
45+
~/.android/adb*
46+
key: avd-30
47+
48+
- name: Create AVD and generate snapshot for caching
49+
if: steps.avd-cache.outputs.cache-hit != 'true'
50+
uses: ReactiveCircus/[email protected]
51+
with:
52+
api-level: 30
53+
target: google_atd
54+
arch: x86
55+
force-avd-creation: false
56+
emulator-options: -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
57+
disable-animations: false
58+
script: echo "Generated AVD snapshot for caching."
59+
60+
- name: Run Android tests
61+
uses: ReactiveCircus/[email protected]
62+
with:
63+
api-level: 30
64+
target: google_atd
65+
arch: x86
66+
force-avd-creation: false
67+
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
68+
disable-animations: true
69+
script: ./gradlew :scan-engine:connectedAndroidTest

.github/workflows/pr-checks.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ jobs:
2222
- name: Setup Android SDK
2323
uses: android-actions/setup-android@v3
2424

25-
- name: Run Detekt Code Analysis
26-
run: ./gradlew detekt
25+
- name: Run Spotless Code Analysis
26+
run: ./gradlew spotlessCheck
2727

2828
- name: Run Unit tests
2929
run: ./gradlew testDebug

.github/workflows/release.yml

Lines changed: 49 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -1,77 +1,53 @@
1-
name: Android CI - Release
1+
name: Publish to Maven Central
22

33
on:
4-
push:
5-
branches: [ "master" ]
4+
push:
5+
branches: [ "master" ]
66

77
jobs:
8-
basic-tests:
9-
name: Run all tests
10-
11-
runs-on: ubuntu-latest
12-
strategy:
13-
matrix:
14-
api-level: [ 30 ]
15-
target: [ google_apis ]
16-
17-
steps:
18-
19-
- name: Checking out branch
20-
uses: actions/checkout@v4
21-
22-
- name: set up JDK 17
23-
uses: actions/setup-java@v4
24-
with:
25-
java-version: '17'
26-
distribution: 'temurin'
27-
cache: gradle
28-
29-
- name: Setup Android SDK
30-
uses: android-actions/setup-android@v3
31-
32-
- name: Run Detekt Code Analysis
33-
run: ./gradlew detekt
34-
35-
- name: Run Unit tests
36-
run: ./gradlew testDebug
37-
38-
# Hardware accelerated Android virtualization on Actions Linux larger hosted runners
39-
- name: Enable KVM
40-
run: |
41-
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
42-
sudo udevadm control --reload-rules
43-
sudo udevadm trigger --name-match=kvm
44-
45-
# Significantly reduce emulator startup time by setting up AVD snapshot caching
46-
- name: Gradle cache
47-
uses: gradle/actions/setup-gradle@v3
48-
49-
- name: AVD cache
50-
uses: actions/cache@v4
51-
id: avd-cache
52-
with:
53-
path: |
54-
~/.android/avd/*
55-
~/.android/adb*
56-
key: avd-${{ matrix.api-level }}
57-
58-
- name: Create AVD and generate snapshot for caching
59-
if: steps.avd-cache.outputs.cache-hit != 'true'
60-
uses: ReactiveCircus/[email protected]
61-
with:
62-
api-level: ${{ matrix.api-level }}
63-
target: ${{ matrix.target }}
64-
force-avd-creation: false
65-
emulator-options: -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
66-
disable-animations: false
67-
script: echo "Generated AVD snapshot for caching."
68-
69-
- name: Run Android tests
70-
uses: ReactiveCircus/[email protected]
71-
with:
72-
api-level: ${{ matrix.api-level }}
73-
target: ${{ matrix.target }}
74-
force-avd-creation: false
75-
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
76-
disable-animations: true
77-
script: ./gradlew scan-engine:connectedCheck
8+
publish:
9+
name: Build and publish to Maven Central
10+
runs-on: macos-latest
11+
timeout-minutes: 60
12+
13+
steps:
14+
- name: Checkout code
15+
uses: actions/checkout@v4
16+
17+
- name: Setup Java
18+
uses: actions/setup-java@v4
19+
with:
20+
distribution: 'zulu'
21+
java-version: '17'
22+
23+
- name: Install GPG
24+
env:
25+
SIGNING_KEY: ${{ secrets.SIGNING_KEY }}
26+
run: |
27+
brew install gpg
28+
echo "$SIGNING_KEY" | gpg --dearmor > ${HOME}/secring.gpg
29+
30+
- name: Setup Gradle
31+
uses: gradle/actions/setup-gradle@v3
32+
33+
- name: Add Gradle Properties
34+
env:
35+
MAVEN_CENTRAL_USER_NAME: ${{ secrets.MAVEN_CENTRAL_USER_NAME }}
36+
MAVEN_CENTRAL_PASSWORD: ${{ secrets.MAVEN_CENTRAL_PASSWORD }}
37+
SIGNING_KEY_ID: ${{ secrets.SIGNING_KEY_ID }}
38+
SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }}
39+
run: |
40+
echo "mavenCentralUsername=${MAVEN_CENTRAL_USER_NAME}" >> gradle.properties
41+
echo "mavenCentralPassword=${MAVEN_CENTRAL_PASSWORD}" >> gradle.properties
42+
echo "signing.keyId=${SIGNING_KEY_ID}" >> gradle.properties
43+
echo "signing.password=${SIGNING_KEY_PASSWORD}" >> gradle.properties
44+
echo "signing.secretKeyRingFile=${HOME}/secring.gpg" >> gradle.properties
45+
46+
- name: Setup Xcode
47+
uses: maxim-lobanov/setup-xcode@v1
48+
with:
49+
xcode-version: latest-stable
50+
51+
- name: Publish To Maven Central
52+
run: |
53+
./gradlew publishAndReleaseToMavenCentral --no-configuration-cache

.gitignore

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ out/
3030
.gradle/
3131
/build
3232
/scan-engine/build
33+
/sample/build
3334
/buildSrc/build
3435

3536
# Local configuration file (sdk path, etc)
@@ -59,3 +60,16 @@ out/
5960
/.idea/navEditor.xml
6061
.externalNativeBuild
6162
.cxx
63+
/.kotlin
64+
65+
# CocoaPods
66+
Pods/
67+
*.xcworkspace
68+
69+
# ============================
70+
# Xcode / iOS
71+
# ============================
72+
iosApp/Pods/
73+
/iosApp/iosApp.xcodeproj/xcuserdata/
74+
/iosApp/iosApp.xcodeproj/project.xcworkspace/xcuserdata/
75+
**/xcuserdata/

0 commit comments

Comments
 (0)