Skip to content

Commit d31f31b

Browse files
authored
Added fix so JS tests also run (#45)
* Added fix so JS tests also run * Added fix for zip file. Runs JS tests on PR * Artifact test results. * Removed artifacting of tests Added publish workflow Added gradle logging for tests on failure. * Added gpg as test. * Added publish to test. * changed to linux to see if works and skips ios * ubuntu * took out gpg output * Added debugging * Added fix to script for env * Added property to use signing key * Disabled android lib variants. * Added just release variant * Added logging during sign process. * Added envuronment variables to support in memory ascii armored keys. * Syntax error * Added in memory check for key * Added useGpgCommand * Added use in memory keys for database project. * Added signing fix. * Adjusted gpg import * Added publish task. * Added unzip firebase. * Added logging * run publish with debug * Added download zip * Removed token * use later version of download assets plugin * Added v * Added token to get passed issue of rate limiting * use different action * try a diff action to download. * try to download * try to manually download. * try to manually download. * might not like the syntax. * fixed syntax. * fixed syntax. * Added auth token to header. * Added token to script * Added download task * Added check for zip file. * Added extract of zip * Added xcode to the script * Added run of job manually. * Added logging * Added logging * output directory * Added working upload for all targets bar ios. Shelving for now. * Removed logging
1 parent ac36c49 commit d31f31b

File tree

9 files changed

+95
-11
lines changed

9 files changed

+95
-11
lines changed

.github/workflows/publish.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# This workflow will build a Java project with Gradle
2+
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle
3+
4+
name: Publish
5+
6+
on:
7+
push:
8+
branches: [ master ]
9+
10+
jobs:
11+
build:
12+
13+
runs-on: macos-latest
14+
15+
steps:
16+
- uses: actions/checkout@v2
17+
- name: Set up JDK 1.8
18+
uses: actions/setup-java@v1
19+
with:
20+
java-version: 1.8
21+
# - name: Download Unzip Firebase
22+
# run: ./gradlew unzipIOSFirebase
23+
# - name: Publish
24+
# uses: eskatos/gradle-command-action@v1
25+
# with:
26+
# arguments: publish
27+
# env:
28+
# sonatypeUsername: ${{ secrets.SONATYPEUSERNAME }}
29+
# sonatypePassword: ${{ secrets.SONATYPEPASSWORD }}
30+
# ORG_GRADLE_PROJECT_signingKey: ${{ secrets.GPG_PRIVATE_KEY }}
31+
# ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.PASSPHRASE }}
32+
# token: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/gradle.yml renamed to .github/workflows/pull_request.yml

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
# This workflow will build a Java project with Gradle
22
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle
33

4-
name: Tests
4+
name: Pull Request
55

66
on:
7-
push:
8-
branches: [ master ]
97
pull_request:
108
branches: [ master ]
119

@@ -22,8 +20,8 @@ jobs:
2220
java-version: 1.8
2321
- name: Grant execute permission for gradlew
2422
run: chmod +x gradlew
25-
- name: All tests excluding iosTest
26-
run: ./gradlew cleanTest test -x compileDebugUnitTestKotlinAndroid -x compileReleaseUnitTestKotlinAndroid -x iosTest
23+
- name: Run JS Tests
24+
run: ./gradlew cleanTest jsTest
2725
- name: Run Android Instrumented Tests
2826
uses: reactivecircus/android-emulator-runner@v2
2927
with:

build.gradle.kts

Lines changed: 33 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
import de.undercouch.gradle.tasks.download.Download
22
import org.apache.tools.ant.taskdefs.condition.Os
3+
import org.gradle.api.tasks.testing.logging.TestExceptionFormat
4+
import org.gradle.api.tasks.testing.logging.TestLogEvent
35

46
plugins {
57
kotlin("multiplatform") version "1.3.71" apply false
@@ -30,14 +32,22 @@ val minSdkVersion by extra(16)
3032
tasks {
3133
val downloadIOSFirebaseZipFile by creating(Download::class) {
3234
src("https://github.com/firebase/firebase-ios-sdk/releases/download/6.17.0/Firebase-6.17.0.zip")
33-
dest(File("$buildDir/", "Firebase-6.17.0.zip"))
35+
dest(File(buildDir, "Firebase-6.17.0.zip"))
36+
if (System.getenv("token") != null) {
37+
username(System.getenv("token"))
38+
}
3439
overwrite(false)
3540
}
3641

3742
val unzipIOSFirebase by creating(Copy::class) {
38-
dependsOn(downloadIOSFirebaseZipFile)
39-
from(zipTree(downloadIOSFirebaseZipFile.dest))
40-
into("$buildDir")
43+
if (!File("$buildDir/Firebase").exists()) {
44+
val zipFile = File(buildDir, "Firebase-6.17.0.zip")
45+
if (!zipFile.exists()) {
46+
dependsOn(downloadIOSFirebaseZipFile)
47+
}
48+
from(zipTree(zipFile))
49+
into(buildDir)
50+
}
4151
outputs.upToDateWhen { File("$buildDir/Firebase").isDirectory }
4252
}
4353

@@ -110,6 +120,24 @@ subprojects {
110120
commandLine("npm", "publish")
111121
}
112122
}
123+
124+
withType<Test> {
125+
testLogging {
126+
showExceptions = true
127+
exceptionFormat = TestExceptionFormat.FULL
128+
showStandardStreams = true
129+
showCauses = true
130+
showStackTraces = true
131+
events = setOf(
132+
TestLogEvent.STARTED,
133+
TestLogEvent.FAILED,
134+
TestLogEvent.PASSED,
135+
TestLogEvent.SKIPPED,
136+
TestLogEvent.STANDARD_OUT,
137+
TestLogEvent.STANDARD_ERROR
138+
)
139+
}
140+
}
113141
}
114142

115143
// tasks.withType<KotlinCompile<*>> {
@@ -128,9 +156,8 @@ subprojects {
128156

129157
if(Os.isFamily(Os.FAMILY_MAC)) {
130158
tasks.getByPath("compileKotlinIos").dependsOn(rootProject.tasks.named("unzipIOSFirebase"))
131-
tasks.getByPath("compileKotlinIosArm64").dependsOn(rootProject.tasks.named("unzipIOSFirebase"))
132159
} else {
133-
println("Skipping Firebase zip dowload")
160+
println("Skipping Firebase zip download")
134161
}
135162

136163
tasks.named("publishToMavenLocal").configure {

firebase-app/build.gradle.kts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,9 @@ android {
3737
pickFirst("META-INF/AL2.0")
3838
pickFirst("META-INF/LGPL2.1")
3939
}
40+
lintOptions {
41+
isAbortOnError = false
42+
}
4043
}
4144

4245
kotlin {
@@ -108,5 +111,8 @@ kotlin {
108111
}
109112

110113
signing {
114+
val signingKey: String? by project
115+
val signingPassword: String? by project
116+
useInMemoryPgpKeys(signingKey, signingPassword)
111117
sign(publishing.publications)
112118
}

firebase-auth/build.gradle.kts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,5 +124,8 @@ kotlin {
124124
}
125125

126126
signing {
127+
val signingKey: String? by project
128+
val signingPassword: String? by project
129+
useInMemoryPgpKeys(signingKey, signingPassword)
127130
sign(publishing.publications)
128131
}

firebase-common/build.gradle.kts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,9 @@ kotlin {
9696
}
9797

9898
signing {
99+
val signingKey: String? by project
100+
val signingPassword: String? by project
101+
useInMemoryPgpKeys(signingKey, signingPassword)
99102
sign(publishing.publications)
100103
}
101104

firebase-database/build.gradle.kts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,12 @@ plugins {
66
kotlin("native.cocoapods")
77
}
88

9+
repositories {
10+
mavenCentral()
11+
google()
12+
jcenter()
13+
}
14+
915
android {
1016
compileSdkVersion(property("targetSdkVersion") as Int)
1117
defaultConfig {
@@ -85,6 +91,9 @@ kotlin {
8591
}
8692

8793
signing {
94+
val signingKey: String? by project
95+
val signingPassword: String? by project
96+
useInMemoryPgpKeys(signingKey, signingPassword)
8897
sign(publishing.publications)
8998
}
9099

firebase-firestore/build.gradle.kts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,5 +88,8 @@ kotlin {
8888
}
8989
}
9090
signing {
91+
val signingKey: String? by project
92+
val signingPassword: String? by project
93+
useInMemoryPgpKeys(signingKey, signingPassword)
9194
sign(publishing.publications)
9295
}

firebase-functions/build.gradle.kts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,5 +85,8 @@ kotlin {
8585
}
8686

8787
signing {
88+
val signingKey: String? by project
89+
val signingPassword: String? by project
90+
useInMemoryPgpKeys(signingKey, signingPassword)
8891
sign(publishing.publications)
8992
}

0 commit comments

Comments
 (0)