• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

valkyrjaio / valkyrja-starter-app-java / 30191994186
100%

Build:
DEFAULT BRANCH: 26.x
Ran 26 Jul 2026 07:00AM UTC
Jobs 2
Files 36
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

26 Jul 2026 06:59AM UTC coverage: 94.006% (-6.0%) from 100.0%
30191994186

push

github

web-flow
[Grpc] Add gRPC application vertical (#37)

# Description

Adds the **`app/grpc/` vertical** to the starter app, mirroring the
existing `app/http/` and `app/cli/` verticals so a Valkyrja app can
serve gRPC with a pre-generated (Sindri) service map.

It provides a gRPC `Config` (implementing `GrpcConfigContract`), an
`App` entry that bootstraps via `WorkerGrpc` (a transport adapter from
the entry modules serves it over HTTP/2), a sample `@GrpcService`
controller, the provider set, and the generated-data scaffold
(`AppGrpcRoutingData` + `.example`, with the generated file git-ignored
like the others). The build's Sindri config map gains a `Grpc` entry so
`./gradlew sindriGrpc` regenerates `AppGrpcRoutingData`.

Verified to compile against the local framework via the composite build
(`includeBuild ../valkyrja`). CI here stays red until the framework and
Sindri release with gRPC and the pinned versions are bumped.

## Types of changes

- [ ] Improvement _(non-breaking change which improves code)_
- [ ] Bug fix _(non-breaking change which fixes an issue)_
- [x] New feature _(non-breaking change which adds functionality)_
- [ ] Deprecation _(breaking change which removes functionality)_
- [ ] Breaking change _(fix or feature that would cause existing
functionality to change)_
- [ ] Documentation improvement

## Changes

- **`app/grpc/Config.java`** (+ `.example`) — gRPC config implementing
`GrpcConfigContract` (port 50051, seven middleware stages, provider
list).
- **`app/grpc/App.java`** — entry that bootstraps the app via
`WorkerGrpc`.
- **`app/grpc/controller/GreeterController.java`** — sample
`@GrpcService` / `@GrpcMethod` controller.
-
**`app/grpc/provider/{ComponentProvider,DataServiceProvider,GrpcRouteProvider}.java`**
— component provider (pulls in the framework gRPC stack + registers the
route provider), data service provider (publishes
`GrpcRoutingDataContract`), and the route provider.
- **`app/grpc/data/`** — `.gitignore` +
`AppContainerData`/`A... (continued)

8 of 8 branches covered (100.0%)

Branch coverage included in aggregate %.

290 of 309 relevant lines covered (93.85%)

5.3 hits per line

Coverage Regressions

Lines Coverage ∆ File
1
92.86
-7.14% src/main/java/app/cli/provider/ComponentProvider.java
1
92.86
-7.14% src/main/java/app/http/provider/ComponentProvider.java
Jobs
ID Job ID Ran Files Coverage
1 30191994186.1 26 Jul 2026 07:00AM UTC 30
96.15
GitHub Action Run
2 30191994186.2 26 Jul 2026 07:00AM UTC 36
34.97
GitHub Action Run
Source Files on build 30191994186
  • Tree
  • List 36
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #30191994186
  • a4a4fbe4 on github
  • Prev Build on 26.x (#30177716217)
  • Next Build on 26.x (#30192112045)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc