Skip to content

Commit e1ae4d4

Browse files
authored
Add new config file for smoke tests. (#641)
This change adds the new configuration, which will soon be used by the runner. This imcreases flexibility by allowing GitHub changes to immediately affect how the runner operates on CI. Additionally, this change tweaks the build file to allow testing against release builds. This will be live once the new runner is deployed.
1 parent 6928603 commit e1ae4d4

File tree

2 files changed

+86
-0
lines changed

2 files changed

+86
-0
lines changed

smoke-tests/build.gradle

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,10 @@ android {
4949
}
5050
}
5151

52+
if (project.hasProperty("testBuildType")) {
53+
testBuildType project.getProperty("testBuildType")
54+
}
55+
5256
flavorDimensions "systemUnderTest"
5357

5458
// TODO(allisonbm92): Switch to the default flavor.

smoke-tests/runner.config

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
core {
2+
# gcloud
3+
## This option is the path to the Gcloud executable. It may be relative or
4+
## absolute. This is optional, because the default is `/usr/bin/gcloud`.
5+
6+
# gradle
7+
## This option is the path to the Gradle executable. It may be relative or
8+
## absolute. This is optional, because the default is `gradlew`.
9+
10+
# loggingDir
11+
## This option is the path to the directory to be used for logging. All logs
12+
## from the test runner and its sub-processes will be placed in this
13+
## directory. It is optional, and is configured by the `ARTIFACTS` environment
14+
## variable by default.
15+
}
16+
17+
firebase {
18+
# buildTask
19+
## This option specifies the Gradle task to execute to build Firebase
20+
## libraries. It is mandatory.
21+
buildTask assembleAllForSmokeTests
22+
23+
# localMavenRepo
24+
## This option specifies the path to a local Maven repository. This repository
25+
## should contain the Firebase artifacts constructed by the build task. It is
26+
## mandatory.
27+
localMavenRepo build/m2repository
28+
29+
# latestBillOfMaterials
30+
## This option specifies the Bill of Materials for the latest release. This is
31+
## given as a Maven id. The tests will use this information to build a test
32+
## matrix. This is mandatory.
33+
latestBillOfMaterials com.google.firebase:firebase-bom:20.1.0
34+
35+
# project
36+
## This option specifies the path to the main Firebase project. This is
37+
## optional and defaults to the current directory.
38+
}
39+
40+
smokeTest {
41+
# flavors
42+
## This option specifies the Android flavors of the test to build for testing.
43+
## It may be omitted if there are no flavors.
44+
flavors combined
45+
46+
# googleServices
47+
## This option is the path to the Google Services file. If provided, the
48+
## runner will make this available to the build. This file must be
49+
## manually placed in the smoke tests' project directory if this option
50+
## is unspecified.
51+
googleServices /smoke-tests-google-services/google-services.json
52+
53+
# project
54+
## This option specifies the path to the smoke tests' project. It may be
55+
## relative or absolute. It is mandatory.
56+
project smoke-tests
57+
58+
# variants
59+
## This option specifies the Android build variants to build for testing. It
60+
## is mandatory, and there must be at least one build variant.
61+
variants debug, release
62+
}
63+
64+
testLab {
65+
# artifactsBucket
66+
## This option specifies the target GCS bucket for uploading test lab logs.
67+
## These logs are not written to core.loggingDir. This is optional, and the
68+
## public, test lab bucket will be used if nothing is provided. Note, the
69+
## artifactsDir option must also be specified for this to take effect.
70+
artifactsBucket android-ci
71+
72+
# artifactsDir
73+
## This option specifies the directory to use within the bucket specified by
74+
## the artifactsBucket option. It is constructed by default using environment
75+
## variables.
76+
77+
# credentials
78+
## This option is the path to a Google credentials file. It is optional. If
79+
## provided, the runner will authenticate to Google Cloud before running any
80+
## tests on Firebase Test Lab. The default configuration is determined by the
81+
## `GOOGLE_APPLICATION_CREDENTIALS` environment variable.
82+
}

0 commit comments

Comments
 (0)