Skip to content

Commit aac9ac0

Browse files
committed
support action
1 parent 846ff92 commit aac9ac0

3 files changed

Lines changed: 126 additions & 3 deletions

File tree

.github/workflows/ci.yml

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
- dev
8+
paths-ignore:
9+
- '.idea/**'
10+
- '.gitattributes'
11+
- '.github/**.json'
12+
- '.gitignore'
13+
- '.gitmodules'
14+
- '**.md'
15+
- '**/*.txt'
16+
- '**/*.png'
17+
- '**/*.jpg'
18+
- 'LICENSE'
19+
- 'NOTICE'
20+
pull_request:
21+
paths-ignore:
22+
- '.idea/**'
23+
- '.gitattributes'
24+
- '.github/**.json'
25+
- '.gitignore'
26+
- '.gitmodules'
27+
- '**.md'
28+
- '**/*.txt'
29+
- '**/*.png'
30+
- '**/*.jpg'
31+
- 'LICENSE'
32+
- 'NOTICE'
33+
34+
jobs:
35+
publish:
36+
name: Publish to MavenLocal
37+
runs-on: ubuntu-latest
38+
steps:
39+
- uses: actions/checkout@v3
40+
- uses: actions/setup-java@v3
41+
with:
42+
distribution: 'zulu'
43+
java-version: 21
44+
- uses: gradle/gradle-build-action@v2
45+
with:
46+
arguments: publishToMavenLocal
47+
48+
build:
49+
name: Build
50+
runs-on: ubuntu-latest
51+
env:
52+
CLIENT_ID: ${{ secrets.CLIENT_ID }}
53+
CLIENT_SECRET: ${{ secrets.CLIENT_SECRET }}
54+
steps:
55+
- uses: actions/checkout@v3
56+
- uses: actions/setup-java@v3
57+
with:
58+
distribution: 'zulu'
59+
java-version: 21
60+
- uses: gradle/gradle-build-action@v2
61+
with:
62+
arguments: app:assembleDebug

.github/workflows/release.yml

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
tags:
6+
- '*'
7+
8+
jobs:
9+
release:
10+
name: Github Release
11+
runs-on: ubuntu-latest
12+
env:
13+
CLIENT_ID: ${{ secrets.CLIENT_ID }}
14+
CLIENT_SECRET: ${{ secrets.CLIENT_SECRET }}
15+
steps:
16+
- uses: actions/checkout@v3
17+
- uses: actions/setup-java@v3
18+
with:
19+
distribution: 'zulu'
20+
java-version: 21
21+
- name: Build APK
22+
uses: gradle/gradle-build-action@v2
23+
with:
24+
arguments: app:assembleRelease
25+
- name: Create Release
26+
uses: ncipollo/release-action@v1
27+
with:
28+
artifacts: "app/build/outputs/apk/release/app-release.apk"
29+
token: ${{ secrets.GITHUB_TOKEN }}
30+
31+
publish:
32+
name: Publish To Github Packages
33+
runs-on: ubuntu-latest
34+
permissions:
35+
contents: read
36+
packages: write
37+
env:
38+
CLIENT_ID: ${{ secrets.CLIENT_ID }}
39+
CLIENT_SECRET: ${{ secrets.CLIENT_SECRET }}
40+
steps:
41+
- uses: actions/checkout@v4
42+
- uses: actions/setup-java@v4
43+
with:
44+
distribution: 'zulu'
45+
java-version: 21
46+
- uses: gradle/gradle-build-action@v2
47+
- name: Publish Package
48+
run: ./gradlew publish
49+
env:
50+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

feature/login/build.gradle.kts

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,26 @@ android {
1616
minSdk = 24
1717
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
1818

19-
// Read CLIENT_ID and CLIENT_SECRET from local.properties
19+
// Read CLIENT_ID and CLIENT_SECRET from local.properties or environment variables
2020
val properties = Properties()
2121
val localPropertiesFile = rootProject.file("local.properties")
22+
var clientId = ""
23+
var clientSecret = ""
2224
if (localPropertiesFile.exists()) {
2325
properties.load(localPropertiesFile.inputStream())
26+
clientId = properties.getProperty("CLIENT_ID", "")
27+
clientSecret = properties.getProperty("CLIENT_SECRET", "")
2428
}
2529

26-
buildConfigField("String", "CLIENT_ID", "${properties.getProperty("CLIENT_ID", "")}")
27-
buildConfigField("String", "CLIENT_SECRET", "${properties.getProperty("CLIENT_SECRET", "")}")
30+
if (clientId.isBlank()) {
31+
clientId = System.getenv("CLIENT_ID") ?: ""
32+
}
33+
if (clientSecret.isBlank()) {
34+
clientSecret = System.getenv("CLIENT_SECRET") ?: ""
35+
}
36+
37+
buildConfigField("String", "CLIENT_ID", "\"$clientId\"")
38+
buildConfigField("String", "CLIENT_SECRET", "\"$clientSecret\"")
2839
}
2940

3041
compileOptions {

0 commit comments

Comments
 (0)