The GitHub Actions job "CI" on 
rocketmq-dashboard.git/fix/k8s-cert-gmt-modified-utc has failed.
Run started by GitHub user unbridled-41 (triggered by unbridled-41).

Head commit for run:
17a0b6dc674885e2543940a0b0a6a2430f332b4a / unbridled-41 
<[email protected]>
fix(k8s): stop re-stamping a certificate's modified instant in the JVM zone

K8sCertService stamps both instants from its UTC clock (Clock.systemUTC; the 
class documents the
wire contract: "Serialize certificate instants as UTC wall time: the frontend 
(formatUtcDateTime)
interprets the zoneless wire value as UTC"), but the repository overwrote one 
of them on the way
to the database:

    entity.setGmtCreate(cert.getGmtCreate());        // the service's UTC 
instant
    entity.setGmtModified(LocalDateTime.now());      // the JVM default zone

so in the documented deployment (deploy/docker-compose.yml sets 
TZ=Asia/Shanghai for the app) the
create response - built from the in-memory VO - reported a UTC instant while 
the next
GET /api/k8s-certs, which reads the row back, reported the same field shifted 
by the whole server
offset, disagreeing with gmt_create of its own row. Same defect class as the 
merged certificate
instant fix and the auth-table fix.

Persist the instant the service stamped, falling back to UTC only when the VO 
carries none.

Tests (server/):
mvn -o -B -ntp test -Dtest='MybatisPlusK8sCertRepositoryTest,K8sCertServiceTest'
- new 
MybatisPlusK8sCertRepositoryTest#saveShouldPersistTheUtcModifiedInstantTheServiceStampedTest
  fails before this change with the default zone set to Asia/Shanghai (expected 
the UTC instant,
  observed it shifted by the offset) and passes after it.
- Tests run: 30, Failures: 0, Errors: 0; mvn -o -B -ntp checkstyle:check passes.

Report URL: 
https://github.com/apache/rocketmq-dashboard/actions/runs/37965769981

With regards,
GitHub Actions via GitBox

Reply via email to