@@ -15,6 +15,7 @@ void edgeKafkaStackHasScriptsAndCiEntry() throws Exception {
1515 Path root = resolvePlatformRoot ();
1616 String edgeKafkaCompose = read (root , "docker-compose.edge-kafka.yml" );
1717 String edgeCompose = read (root , "docker-compose.edge.yml" );
18+ String keycloakRealm = read (root , "deploy/keycloak/scm-realm.json" );
1819 String startScript = read (root , "scripts/start-edge-kafka.sh" );
1920 String stopScript = read (root , "scripts/stop-edge-kafka.sh" );
2021 String runScript = read (root , "scripts/run-e2e-edge-kafka.sh" );
@@ -45,6 +46,7 @@ void edgeKafkaStackHasScriptsAndCiEntry() throws Exception {
4546 assertKafkaOverlayDoesNotUseEmptyProfiles (kafkaOverlay );
4647 assertKafkaHasInternalAndExternalListeners (compose );
4748 assertEdgeStackAcceptsHostIssuedKeycloakTokens (edgeCompose );
49+ assertKeycloakRealmUsesClientRoles (keycloakRealm );
4850 assertServiceImagesUseCiFriendlyJvmDefaults (serviceDockerfile );
4951 assertServiceModulesBuildExecutableJars (parentPom );
5052 assertJdbcStorageIsAutoConfigured (commonSpringImports , jdbcStorageConfiguration ,
@@ -88,6 +90,12 @@ private static void assertEdgeStackAcceptsHostIssuedKeycloakTokens(String edgeCo
8890 assertTrue (edgeCompose .contains ("SCM_JWT_JWKS_URI: http://keycloak:8080/realms/scm/protocol/openid-connect/certs" ));
8991 }
9092
93+ private static void assertKeycloakRealmUsesClientRoles (String keycloakRealm ) {
94+ assertTrue (keycloakRealm .contains ("\" defaultClientScopes\" : [\" profile\" , \" email\" , \" roles\" ]" ));
95+ assertTrue (keycloakRealm .contains ("\" scm-gateway\" : [\" oms.write\" , \" wms.write\" ]" ));
96+ assertFalse (keycloakRealm .contains ("\" optionalClientScopes\" : [\" oms.write\" , \" wms.write\" ]" ));
97+ }
98+
9199 private static void assertServiceImagesUseCiFriendlyJvmDefaults (String serviceDockerfile ) {
92100 assertTrue (serviceDockerfile .contains ("ENV JAVA_OPTS=\" -Xmx256m -Xms128m -XX:MaxMetaspaceSize=128m\" " ));
93101 assertFalse (serviceDockerfile .contains ("-Xmx384m" ));
0 commit comments