feat: wire service registry targets
This commit is contained in:
@@ -38,6 +38,23 @@ export class ServiceManager {
|
||||
)
|
||||
);
|
||||
|
||||
this.typedrouter.addTypedHandler(
|
||||
new plugins.typedrequest.TypedHandler<plugins.servezoneInterfaces.requests.service.IRequest_Any_Cloudly_GetServiceById>(
|
||||
'getServiceById',
|
||||
async (dataArg) => {
|
||||
await plugins.smartguard.passGuardsOrReject(dataArg, [
|
||||
this.cloudlyRef.authManager.validIdentityGuard,
|
||||
]);
|
||||
const service = await Service.getInstance({
|
||||
id: dataArg.serviceId,
|
||||
});
|
||||
return {
|
||||
service: await service.createSavableObject(),
|
||||
};
|
||||
}
|
||||
)
|
||||
);
|
||||
|
||||
this.typedrouter.addTypedHandler(
|
||||
new plugins.typedrequest.TypedHandler<plugins.servezoneInterfaces.requests.service.IRequest_Any_Cloudly_GetServiceSecretBundlesAsFlatObject>(
|
||||
'getServiceSecretBundlesAsFlatObject',
|
||||
@@ -53,11 +70,36 @@ export class ServiceManager {
|
||||
)
|
||||
);
|
||||
|
||||
this.typedrouter.addTypedHandler(
|
||||
new plugins.typedrequest.TypedHandler<plugins.servezoneInterfaces.requests.service.IRequest_Any_Cloudly_GetServiceRegistryTarget>(
|
||||
'getServiceRegistryTarget',
|
||||
async (dataArg) => {
|
||||
await plugins.smartguard.passGuardsOrReject(dataArg, [
|
||||
this.cloudlyRef.authManager.validIdentityGuard,
|
||||
]);
|
||||
const service = await Service.getInstance({
|
||||
id: dataArg.serviceId,
|
||||
});
|
||||
return {
|
||||
registryTarget: this.cloudlyRef.registryManager.getServiceRegistryTarget(
|
||||
service,
|
||||
dataArg.tag || service.data.imageVersion || 'latest',
|
||||
),
|
||||
};
|
||||
}
|
||||
)
|
||||
);
|
||||
|
||||
this.typedrouter.addTypedHandler(
|
||||
new plugins.typedrequest.TypedHandler<plugins.servezoneInterfaces.requests.service.IRequest_Any_Cloudly_CreateService>(
|
||||
'createService',
|
||||
async (dataArg) => {
|
||||
const service = await Service.createService(dataArg.serviceData);
|
||||
service.data.registryTarget = this.cloudlyRef.registryManager.getServiceRegistryTarget(
|
||||
service,
|
||||
service.data.imageVersion || 'latest',
|
||||
);
|
||||
await service.save();
|
||||
return {
|
||||
service: await service.createSavableObject(),
|
||||
};
|
||||
@@ -76,6 +118,10 @@ export class ServiceManager {
|
||||
...service.data,
|
||||
...dataArg.serviceData,
|
||||
};
|
||||
service.data.registryTarget = this.cloudlyRef.registryManager.getServiceRegistryTarget(
|
||||
service,
|
||||
service.data.imageVersion || 'latest',
|
||||
);
|
||||
await service.save();
|
||||
return {
|
||||
service: await service.createSavableObject(),
|
||||
|
||||
Reference in New Issue
Block a user