feat: add service registry target helper

This commit is contained in:
2026-04-28 15:42:16 +00:00
parent b22f3b6d64
commit 665d3aca90
3 changed files with 27 additions and 7 deletions
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@serve.zone/api",
"version": "5.3.2",
"version": "5.3.3",
"private": false,
"description": "Type-safe API client for Cloudly and the serve.zone control plane.",
"exports": {
@@ -22,7 +22,7 @@
"@push.rocks/smartpromise": "^4.2.3",
"@push.rocks/smartrx": "^3.0.10",
"@push.rocks/smartstream": "^3.2.5",
"@serve.zone/interfaces": "^5.4.5",
"@serve.zone/interfaces": "^5.4.6",
"@tsclass/tsclass": "^9.2.0"
},
"devDependencies": {
+5 -5
View File
@@ -30,8 +30,8 @@ importers:
specifier: ^3.2.5
version: 3.4.0
'@serve.zone/interfaces':
specifier: ^5.4.5
version: 5.4.5
specifier: ^5.4.6
version: 5.4.6
'@tsclass/tsclass':
specifier: ^9.2.0
version: 9.5.0
@@ -1384,8 +1384,8 @@ packages:
'@sec-ant/readable-stream@0.4.1':
resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==}
'@serve.zone/interfaces@5.4.5':
resolution: {integrity: sha512-asqUUjem3MGfIbseovHR8SxE+6FvjeQEYtV+PxcyY8YRXJ/vE3hNCDs7ePXgBbh4JXa+vNMaXHsFfz5Vrk6Ggg==}
'@serve.zone/interfaces@5.4.6':
resolution: {integrity: sha512-o4k7Wr6t3NLiP6gfAZZz8Jx8RlQ4sZYHTbhr4WkXzGf78vczFRIuFLyY1Y+TTNzDLEIzLVIyMsuECMV1KTwB2Q==}
'@shikijs/engine-oniguruma@3.23.0':
resolution: {integrity: sha512-1nWINwKXxKKLqPibT5f4pAFLej9oZzQTsby8942OTlsJzOBZ0MWKiwzMsd+jhzu8YPCHAswGnnN1YtQfirL35g==}
@@ -6566,7 +6566,7 @@ snapshots:
'@sec-ant/readable-stream@0.4.1': {}
'@serve.zone/interfaces@5.4.5':
'@serve.zone/interfaces@5.4.6':
dependencies:
'@api.global/typedrequest-interfaces': 3.0.19
'@push.rocks/smartlog-interfaces': 3.0.2
+20
View File
@@ -31,6 +31,22 @@ export class Service implements plugins.servezoneInterfaces.data.IService {
return newService;
}
public static async getServiceRegistryTarget(
cloudlyClientRef: CloudlyApiClient,
serviceIdArg: string,
tagArg = 'latest',
) {
const getServiceRegistryTargetTR = cloudlyClientRef.typedsocketClient.createTypedRequest<plugins.servezoneInterfaces.requests.service.IRequest_Any_Cloudly_GetServiceRegistryTarget>(
'getServiceRegistryTarget'
);
const response = await getServiceRegistryTargetTR.fire({
identity: cloudlyClientRef.identity,
serviceId: serviceIdArg,
tag: tagArg,
});
return response.registryTarget;
}
/**
* creates a new service
*/
@@ -75,4 +91,8 @@ export class Service implements plugins.servezoneInterfaces.data.IService {
return flatKeyValueObject;
}
public async getRegistryTarget(tagArg = 'latest') {
return Service.getServiceRegistryTarget(this.cloudlyClientRef, this.id, tagArg);
}
}