Skip to content

Conversation

@ikhoon
Copy link
Contributor

@ikhoon ikhoon commented Oct 29, 2025

Motivation:

Upgrading Gradle version to 9 is necessary to build and test Armeria on Java 25.

References:

Modifications:

  • Upgraded dependencies required for Gradle 9
    • Gradle 8.10.2 -> 9.2.0
    • JKube pluign 1.18.1 -> 1.18.2
    • Kotlin (plugin) 2.1.10 -> 2.2.21
    • Spring Boot (plugin) 3.5.4 -> 3.5.7
    • ktlint-gradle-plugin 13.0.0 -> 13.1.0
    • protobuf-gradle-plugin 0.8.19 -> 0.9.5
    • scalafmt-gradle-plugin 1.16.2 -> 1.21.5
      • The plugin id has been migrated to cz.augi.gradle.scalafmt as the original plugin is no longer maintained.
    • shadow-gradle-plugin 7.1.2 -> 8.3.9
  • protbuf files are now generated to the default output directory (build/generated/sources/proto).
  • Fixed all the warnings produced in Gradle 8.
  • Removed it/spring/boot2-tomcat8 tests:
    • Spring Boot no longer supports Tomcat 8.
    • Tests didn't run due to misconfigured configurations.
  • Revived it/thrift0.9.1 test which didn't run before because of incorrect source location.

Result:

Armeria can now be built with Gradle 9

@ikhoon ikhoon added this to the 1.34.0 milestone Oct 29, 2025
ikhoon added 11 commits October 30, 2025 00:15
Motivation:

Athenz ZTS server defined in the Docker Compose file fails to start up
because of changes introduced in Athenz 1.12.28.
```java
WARN  o.e.jetty.ee10.webapp.WebAppContext - Failed startup of context oeje10w.WebAppContext@79f227a9{zts,/zts,b=file:///tmp/jetty-0_0_0_0-8443-zts_war-_zts-any-1237552957018305555/webapp/,a=AVAILABLE,h=oeje10s.SessionHandler@14f3c6fc{STARTED}}{/opt/athenz/zts/webapps/zts.war}
jakarta.servlet.ServletException: zts-server==org.glassfish.jersey.servlet.ServletContainer@5aa3f717{jsp=null,order=1,inst=true,async=true,src=DESCRIPTOR:file:///tmp/jetty-0_0_0_0-8443-zts_war-_zts-any-1237552957018305555/webapp/WEB-INF/web.xml,STARTED}
...
Caused by: com.yahoo.athenz.auth.util.CryptoException: Invalid jwks uri: athenz-zts-server/oauth2/keys?rfc=true
	at com.yahoo.athenz.auth.token.jwts.JwtsSigningKeyResolver.addKeySource(JwtsSigningKeyResolver.java:181)
	at com.yahoo.athenz.auth.token.jwts.JwtsSigningKeyResolver.addJwksUriKeySource(JwtsSigningKeyResolver.java:140)
	at com.yahoo.athenz.auth.token.jwts.JwtsSigningKeyResolver.createKeyResolver(JwtsSigningKeyResolver.java:135)
	at com.yahoo.athenz.auth.token.jwts.JwtsSigningKeyResolver.<init>(JwtsSigningKeyResolver.java:92)
	at com.yahoo.athenz.auth.token.jwts.JwtsHelper.getJWTProcessor(JwtsHelper.java:241)
	at com.yahoo.athenz.zts.ZTSImpl.loadJWTProcessors(ZTSImpl.java:501)
	at com.yahoo.athenz.zts.ZTSImpl.<init>(ZTSImpl.java:412)
	at com.yahoo.athenz.zts.ZTSImpl.<init>(ZTSImpl.java:289)
	at com.yahoo.athenz.zts.ZTSImplFactory.<clinit>(ZTSImplFactory.java:20)
	... 75 common frames omitted
```

It seems that a valid jwks_url is required in zts.property to start the
server correctly. If it is not set, the system hostname is used instead,
which leads a `MalformedURLException`.

Modifications:

- Set `https://athenz.io` as a dummy oauth_issuer in zts.properties
- Use athenz/athenz-zts-db:latest for the base image of zts-db
  - Using athenz-zms-db works by initializing it with `/zts-init-db.sql`,
    but it’s not the intended value.

Result:

Revive broken Athenz tests
@ikhoon ikhoon marked this pull request as ready for review November 12, 2025 06:30
Copy link
Contributor

@jrhee17 jrhee17 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants