feat: register Network Services in the service catalog (Phase 1)#165
Open
kevwilliams wants to merge 1 commit into
Open
feat: register Network Services in the service catalog (Phase 1)#165kevwilliams wants to merge 1 commit into
kevwilliams wants to merge 1 commit into
Conversation
Add the Kustomize bundle that registers Network Services (networking.datumapis.com) in the platform service catalog and declares its monitored resource and meters. - Service: networking.datumapis.com, phase Draft, owned by datum-cloud. - ServiceConfiguration: declares HTTPRoute as the billable Kind with six optional dimensions (region, gateway, gateway_namespace, gateway_class, httproute_name, httproute_namespace) and four meters inline (requests, egress-bytes, ingress-bytes, connection-seconds). - Bundle is a Kustomize Component under config/services/networking.datumapis.com/, matching the per-service layout used by compute. MonitoredResourceType and MeterDefinition resources are produced by the service catalog's fan-out controller from ServiceConfiguration.spec; no config/billing/ bundle is needed. Design: docs/enhancements/service-catalog-registration.md (PR #156). Refs #155.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements Phase 1 of the service-catalog-registration design brief (PR #156, issue #155): pure YAML, no Go changes.
What this PR adds
A Kustomize bundle under
config/services/that registers Network Services in the platform service catalog and declares its monitored resource and meters:Service(services.miloapis.com/v1alpha1)serviceName: networking.datumapis.comphase: Draftowner.producerProjectRef.name: datum-cloudServiceConfiguration(services.miloapis.com/v1alpha1)HTTPRoute(gateway.networking.k8s.io)region,gateway,gateway_namespace,gateway_class,httproute_name,httproute_namespacenetworking.datumapis.com/gateway/*:requests,egress-bytes,ingress-bytes,connection-secondsBundle layout
Matches the per-service-domain layout used by
computeindatum-cloud/datum. The innerkustomization.yamlis a KustomizeComponent, mirroring the compute reference.What this PR does NOT add
MonitoredResourceTypeorMeterDefinitionresources directly — those are produced by the catalog's fan-out controller fromServiceConfiguration.spec, so noconfig/billing/bundle is needed.datum-cloud/infrahandled by the platform/infra team after sign-off.Phase 2 (usage emission from the edge proxy) remains blocked on OD-5 through OD-8 in the design brief.
Test plan
kubectl kustomize config/services/renders both resources without errorServiceandServiceConfigurationshapes match the catalog CRDs in the deployment targetconfig/services/into Flux; confirm the fan-out controller produces the expectedMonitoredResourceTypeandMeterDefinitionresources in the billing namespaceServiceappears in the catalog inDraftphaseRefs #155. Design brief: PR #156.