Skip to content

Commit f59ff8f

Browse files
committed
ci: Add env vars for split units in sdk-platform-java
1 parent ed0ac75 commit f59ff8f

File tree

3 files changed

+40
-6
lines changed

3 files changed

+40
-6
lines changed

.github/workflows/ci.yaml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,16 @@ jobs:
147147
BUILD_SUBDIR: ${{matrix.package}}
148148
JOB_TYPE: test
149149
JOB_NAME: units-${{matrix.package}}-${{matrix.java}}
150+
- name: Env Var Tests
151+
if: matrix.package == 'sdk-platform-java'
152+
run: .kokoro/build.sh
153+
env:
154+
BUILD_SUBDIR: ${{matrix.package}}
155+
JOB_TYPE: test
156+
SUREFIRE_JVM_OPT: '-PenvVarTest'
157+
GOOGLE_CLOUD_UNIVERSE_DOMAIN: random.com
158+
GOOGLE_CLOUD_ENABLE_DIRECT_PATH_XDS: true
159+
GOOGLE_SDK_JAVA_LOGGING: true
150160
split-units-8:
151161
runs-on: ubuntu-latest
152162
name: "split-units"
@@ -198,6 +208,25 @@ jobs:
198208
JOB_TYPE: test
199209
JOB_NAME: units-8-runtime-${{matrix.java}}
200210
working-directory: ${{matrix.package}}
211+
- name: Run Env Var Tests in Java ${{matrix.java}} with the source compiled in Java 11
212+
if: matrix.package == 'sdk-platform-java'
213+
run: |
214+
mvn test \
215+
-B -ntp \
216+
-Pquick-build \
217+
-PenvVarTest \
218+
-Dorg.slf4j.simpleLogger.showDateTime=true \
219+
-Dorg.slf4j.simpleLogger.dateTimeFormat=HH:mm:ss:SSS \
220+
-Dmaven.wagon.http.retryHandler.count=5 \
221+
--also-make \
222+
-T 1C
223+
env:
224+
BUILD_SUBDIR: ${{matrix.package}}
225+
JOB_TYPE: test
226+
GOOGLE_CLOUD_UNIVERSE_DOMAIN: random.com
227+
GOOGLE_CLOUD_ENABLE_DIRECT_PATH_XDS: true
228+
GOOGLE_SDK_JAVA_LOGGING: true
229+
working-directory: ${{matrix.package}}
201230
windows:
202231
runs-on: windows-latest
203232
steps:

sdk-platform-java/gax-java/gax/src/main/java/com/google/api/gax/logging/Slf4jUtils.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,6 @@
4747
class Slf4jUtils {
4848

4949
private static final Logger NO_OP_LOGGER = org.slf4j.helpers.NOPLogger.NOP_LOGGER;
50-
private static final boolean loggingEnabled = LoggingUtils.isLoggingEnabled();
5150

5251
private static final boolean isSLF4J2x;
5352

@@ -70,7 +69,7 @@ static Logger getLogger(Class<?> clazz) {
7069

7170
// constructor with LoggerFactoryProvider to make testing easier
7271
static Logger getLogger(Class<?> clazz, LoggerFactoryProvider factoryProvider) {
73-
if (loggingEnabled) {
72+
if (LoggingUtils.isLoggingEnabled()) {
7473
ILoggerFactory loggerFactory = factoryProvider.getLoggerFactory();
7574
return loggerFactory.getLogger(clazz.getName());
7675
} else {

sdk-platform-java/gax-java/gax/src/test/java/com/google/api/gax/logging/Slf4jUtilsTest.java

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,10 +57,16 @@ class Slf4jUtilsTest {
5757
// This test should only run GOOGLE_SDK_JAVA_LOGGING != true
5858
@Test
5959
void testGetLogger_loggingDisabled_shouldGetNOPLogger() {
60-
Logger logger = Slf4jUtils.getLogger(Slf4jUtilsTest.class);
61-
assertEquals(NOPLogger.class, logger.getClass());
62-
assertFalse(logger.isInfoEnabled());
63-
assertFalse(logger.isDebugEnabled());
60+
boolean originalValue = LoggingUtils.isLoggingEnabled();
61+
try {
62+
LoggingUtils.setLoggingEnabled(false);
63+
Logger logger = Slf4jUtils.getLogger(Slf4jUtilsTest.class);
64+
assertEquals(NOPLogger.class, logger.getClass());
65+
assertFalse(logger.isInfoEnabled());
66+
assertFalse(logger.isDebugEnabled());
67+
} finally {
68+
LoggingUtils.setLoggingEnabled(originalValue);
69+
}
6470
}
6571

6672
// These tests does not require GOOGLE_SDK_JAVA_LOGGING

0 commit comments

Comments
 (0)