Summary
Register the new ProvisioningService in the IoC container (cmd/container.go) and register it on the gRPC server (internal/grpcserver/server.go). This wires the new service into the azd runtime so extensions can connect to it.
Parent Epic
Part of #7465 — Provisioning Providers in the AZD Extension Framework
Context
IoC Registration Pattern
All gRPC services are registered in cmd/container.go:
container.MustRegisterSingleton(grpcserver.NewServiceTargetService)
container.MustRegisterSingleton(grpcserver.NewFrameworkService)
gRPC Server Registration Pattern
In internal/grpcserver/server.go Start():
azdext.RegisterServiceTargetServiceServer(s.grpcServer, s.serviceTargetService)
azdext.RegisterFrameworkServiceServer(s.grpcServer, s.frameworkService)
Detailed Requirements
cmd/container.go
container.MustRegisterSingleton(grpcserver.NewProvisioningService)
internal/grpcserver/server.go
- Add
provisioningService *ProvisioningService field to Server struct
- Add parameter to
NewServer() constructor
- Register in
Start():
azdext.RegisterProvisioningServiceServer(s.grpcServer, s.provisioningService)
Acceptance Criteria
Dependencies
Files
- Modify:
cmd/container.go
- Modify:
internal/grpcserver/server.go
Summary
Register the new
ProvisioningServicein the IoC container (cmd/container.go) and register it on the gRPC server (internal/grpcserver/server.go). This wires the new service into the azd runtime so extensions can connect to it.Parent Epic
Part of #7465 — Provisioning Providers in the AZD Extension Framework
Context
IoC Registration Pattern
All gRPC services are registered in
cmd/container.go:gRPC Server Registration Pattern
In
internal/grpcserver/server.goStart():Detailed Requirements
cmd/container.go
internal/grpcserver/server.go
provisioningService *ProvisioningServicefield toServerstructNewServer()constructorStart():Acceptance Criteria
container.MustRegisterSingleton(grpcserver.NewProvisioningService)incmd/container.goprovisioningServicefield added toServerstructNewServer()acceptsProvisioningServiceparameterRegisterProvisioningServiceServer()called inStart()Dependencies
Files
cmd/container.gointernal/grpcserver/server.go