Skip to content

apollo_deployments: introduce jsonnet building blocks for infra config#14481

Open
nimrod-starkware wants to merge 1 commit into
nimrod/jsonnet/applicative-jsonnetfrom
nimrod/jsonnet/infra-building-blocks
Open

apollo_deployments: introduce jsonnet building blocks for infra config#14481
nimrod-starkware wants to merge 1 commit into
nimrod/jsonnet/applicative-jsonnetfrom
nimrod/jsonnet/infra-building-blocks

Conversation

@nimrod-starkware

Copy link
Copy Markdown
Contributor

No description provided.

@reviewable-StarkWare

Copy link
Copy Markdown

This change is Reviewable

@nimrod-starkware nimrod-starkware force-pushed the nimrod/jsonnet/infra-building-blocks branch from e33b2ef to a7174e0 Compare June 14, 2026 11:55
@nimrod-starkware nimrod-starkware force-pushed the nimrod/jsonnet/overrides-test branch from 123caa7 to 24daabc Compare June 14, 2026 14:38
@nimrod-starkware nimrod-starkware force-pushed the nimrod/jsonnet/infra-building-blocks branch from a7174e0 to 1b5f1c9 Compare June 14, 2026 14:38
@nimrod-starkware nimrod-starkware force-pushed the nimrod/jsonnet/infra-building-blocks branch 2 times, most recently from 215e047 to 82b6f02 Compare June 15, 2026 07:25
@nimrod-starkware nimrod-starkware force-pushed the nimrod/jsonnet/overrides-test branch from 24daabc to 69cf6dd Compare June 15, 2026 07:25
@nimrod-starkware nimrod-starkware self-assigned this Jun 16, 2026
@nimrod-starkware nimrod-starkware marked this pull request as ready for review June 16, 2026 12:09
@cursor

cursor Bot commented Jun 16, 2026

Copy link
Copy Markdown

PR Summary

Low Risk
Additive jsonnet libraries with no runtime or deployment wiring in this diff; risk rises once generated config replaces hand-maintained overlays.

Overview
Adds a new lib/infra/ jsonnet layer so per-service components infra can be generated from layout descriptors instead of hand-edited YAML overlays.

catalog.libsonnet fixes the global split between reactive and active node components. templates.libsonnet centralizes default local/remote server and client settings, retry/idle constants tied to scale policy, and canonical reactive component ports (aligned with existing hybrid overlays). component_block.libsonnet exposes small builders for each execution mode (LocalExecutionWithRemoteEnabled, Remote, Disabled, active Enabled/Disabled, etc.).

derive.libsonnet is the main logic: given a layout (services with runs/uses, DNS, ports, scale, localOnly), it builds the full components map for one service—remote clients point at the home service’s URL/port and inherit that service’s retries/idle; local-only reactives get LocalExecutionWithRemoteDisabled; it asserts a service cannot list the same component in both runs and uses. infraFor wraps that for infra-only renderers expected under services/<layout>.jsonnet.

This PR only introduces the libraries; it does not yet wire them into layouts or replace existing overlay files.

Reviewed by Cursor Bugbot for commit b14a07c. Bugbot is set up for automated code reviews on this repo. Configure here.

@nimrod-starkware nimrod-starkware force-pushed the nimrod/jsonnet/infra-building-blocks branch from 82b6f02 to b56f801 Compare June 16, 2026 12:10
@nimrod-starkware nimrod-starkware force-pushed the nimrod/jsonnet/overrides-test branch 2 times, most recently from 4824f43 to 9872396 Compare June 17, 2026 12:07
@nimrod-starkware nimrod-starkware force-pushed the nimrod/jsonnet/infra-building-blocks branch from b56f801 to bbd9eef Compare June 17, 2026 12:07
@nimrod-starkware nimrod-starkware force-pushed the nimrod/jsonnet/applicative-jsonnet branch from 8b8707c to f92f05c Compare June 25, 2026 06:41
@nimrod-starkware nimrod-starkware force-pushed the nimrod/jsonnet/infra-building-blocks branch from 17359bf to b00f1ac Compare June 25, 2026 06:41
@nimrod-starkware nimrod-starkware force-pushed the nimrod/jsonnet/infra-building-blocks branch from b00f1ac to a6fdebb Compare June 28, 2026 08:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants