Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 4ed01ca5fb | |||
| 080d163591 | |||
| a1b1234aac | |||
| c031f31ace |
@@ -1,5 +1,18 @@
|
||||
# Changelog
|
||||
|
||||
## 2026-05-08 - 5.3.7 - fix(cloudly-client)
|
||||
correct Cloudly request handling for cluster config, cluster updates, and image pushes
|
||||
|
||||
- Return the full cluster config response instead of only configData to match the typed request contract
|
||||
- Use the provided identity when requesting certificates and include clusterId in cluster update requests
|
||||
- Send the actual image version during pushes and fail early when Cloudly rejects the upload
|
||||
|
||||
## 2026-05-08 - 5.3.6 - fix(deps)
|
||||
bump @api.global/typedrequest and @api.global/typedsocket patch versions
|
||||
|
||||
- update @api.global/typedrequest from 3.3.0 to 3.3.1
|
||||
- update @api.global/typedsocket from ^4.1.2 to ^4.1.3
|
||||
|
||||
## 2026-05-08 - 5.3.5 - fix(cloudlyapiclient)
|
||||
update typedsocket identity tagging to use async setTag API
|
||||
|
||||
|
||||
+3
-3
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@serve.zone/api",
|
||||
"version": "5.3.5",
|
||||
"version": "5.3.7",
|
||||
"private": false,
|
||||
"description": "Type-safe API client for Cloudly and the serve.zone control plane.",
|
||||
"exports": {
|
||||
@@ -15,9 +15,9 @@
|
||||
"buildDocs": "tsdoc"
|
||||
},
|
||||
"dependencies": {
|
||||
"@api.global/typedrequest": "3.3.0",
|
||||
"@api.global/typedrequest": "3.3.1",
|
||||
"@api.global/typedrequest-interfaces": "^3.0.19",
|
||||
"@api.global/typedsocket": "^4.1.2",
|
||||
"@api.global/typedsocket": "^4.1.3",
|
||||
"@push.rocks/smartexpect": "^2.5.0",
|
||||
"@push.rocks/smartpromise": "^4.2.4",
|
||||
"@push.rocks/smartrx": "^3.0.10",
|
||||
|
||||
Generated
+15
-15
@@ -9,14 +9,14 @@ importers:
|
||||
.:
|
||||
dependencies:
|
||||
'@api.global/typedrequest':
|
||||
specifier: 3.3.0
|
||||
version: 3.3.0
|
||||
specifier: 3.3.1
|
||||
version: 3.3.1
|
||||
'@api.global/typedrequest-interfaces':
|
||||
specifier: ^3.0.19
|
||||
version: 3.0.19
|
||||
'@api.global/typedsocket':
|
||||
specifier: ^4.1.2
|
||||
version: 4.1.2(@push.rocks/smartserve@2.0.4)
|
||||
specifier: ^4.1.3
|
||||
version: 4.1.3(@push.rocks/smartserve@2.0.4)
|
||||
'@push.rocks/smartexpect':
|
||||
specifier: ^2.5.0
|
||||
version: 2.5.0
|
||||
@@ -133,11 +133,11 @@ packages:
|
||||
'@api.global/typedrequest-interfaces@3.0.19':
|
||||
resolution: {integrity: sha512-uuHUXJeOy/inWSDrwD0Cwax2rovpxYllDhM2RWh+6mVpQuNmZ3uw6IVg6dA2G1rOe24Ebs+Y9SzEogo+jYN7vw==}
|
||||
|
||||
'@api.global/typedrequest@3.3.0':
|
||||
resolution: {integrity: sha512-Jwobqla+9k2IBG0duwrCFtc6GU6wsvHS3f0gJJsxTrpapylBW1YSF7NnGHPGs7F9hbATsO6IoUBpR2ScoKyGJA==}
|
||||
'@api.global/typedrequest@3.3.1':
|
||||
resolution: {integrity: sha512-uJ8uGS7T4OvnpvKlc1T6ML/CHOGKZIrgRFYYxnPKho2SZGnBFEfazWKshxlgqPsiWMZDFwX9i8c8sp+l3AGI2w==}
|
||||
|
||||
'@api.global/typedsocket@4.1.2':
|
||||
resolution: {integrity: sha512-fZFuJY9ucFCICjF4wi6OvK8drsv6UcwVVsfamOT1HxFj7OBOYw6QHOceQ+cAQ8IrWbX817sf8gzlesl+jlG8JA==}
|
||||
'@api.global/typedsocket@4.1.3':
|
||||
resolution: {integrity: sha512-gpMyVx90RgNb67YSuOihAqge47UtxaPYc7+6vw7T7kkd3BO7/tg8z32Vovx2EQw2ANczRNwgQmXuZrAbCUjeQA==}
|
||||
peerDependencies:
|
||||
'@push.rocks/smartserve': '>=1.1.0'
|
||||
|
||||
@@ -3631,7 +3631,7 @@ snapshots:
|
||||
|
||||
'@api.global/typedrequest-interfaces@3.0.19': {}
|
||||
|
||||
'@api.global/typedrequest@3.3.0':
|
||||
'@api.global/typedrequest@3.3.1':
|
||||
dependencies:
|
||||
'@api.global/typedrequest-interfaces': 3.0.19
|
||||
'@push.rocks/isounique': 1.0.5
|
||||
@@ -3643,9 +3643,9 @@ snapshots:
|
||||
'@push.rocks/webrequest': 4.0.5
|
||||
'@push.rocks/webstream': 1.0.10
|
||||
|
||||
'@api.global/typedsocket@4.1.2(@push.rocks/smartserve@2.0.4)':
|
||||
'@api.global/typedsocket@4.1.3(@push.rocks/smartserve@2.0.4)':
|
||||
dependencies:
|
||||
'@api.global/typedrequest': 3.3.0
|
||||
'@api.global/typedrequest': 3.3.1
|
||||
'@api.global/typedrequest-interfaces': 3.0.19
|
||||
'@push.rocks/isohash': 2.0.1
|
||||
'@push.rocks/smartdelay': 3.1.0
|
||||
@@ -4125,14 +4125,14 @@ snapshots:
|
||||
|
||||
'@design.estate/dees-comms@1.0.30':
|
||||
dependencies:
|
||||
'@api.global/typedrequest': 3.3.0
|
||||
'@api.global/typedrequest': 3.3.1
|
||||
'@api.global/typedrequest-interfaces': 3.0.19
|
||||
'@push.rocks/smartdelay': 3.1.0
|
||||
broadcast-channel: 7.3.0
|
||||
|
||||
'@design.estate/dees-domtools@2.5.6':
|
||||
dependencies:
|
||||
'@api.global/typedrequest': 3.3.0
|
||||
'@api.global/typedrequest': 3.3.1
|
||||
'@design.estate/dees-comms': 1.0.30
|
||||
'@push.rocks/lik': 6.4.1
|
||||
'@push.rocks/smartdelay': 3.1.0
|
||||
@@ -5093,7 +5093,7 @@ snapshots:
|
||||
|
||||
'@push.rocks/qenv@6.1.4':
|
||||
dependencies:
|
||||
'@api.global/typedrequest': 3.3.0
|
||||
'@api.global/typedrequest': 3.3.1
|
||||
'@configvault.io/interfaces': 1.0.17
|
||||
'@push.rocks/smartlog': 3.2.2
|
||||
'@push.rocks/smartpath': 6.0.0
|
||||
@@ -5574,7 +5574,7 @@ snapshots:
|
||||
|
||||
'@push.rocks/smartserve@2.0.4':
|
||||
dependencies:
|
||||
'@api.global/typedrequest': 3.3.0
|
||||
'@api.global/typedrequest': 3.3.1
|
||||
'@cfworker/json-schema': 4.1.1
|
||||
'@push.rocks/lik': 6.4.1
|
||||
'@push.rocks/smartenv': 6.1.0
|
||||
|
||||
@@ -3,6 +3,6 @@
|
||||
*/
|
||||
export const commitinfo = {
|
||||
name: '@serve.zone/api',
|
||||
version: '5.3.5',
|
||||
version: '5.3.7',
|
||||
description: 'Type-safe API client for Cloudly and the serve.zone control plane.'
|
||||
}
|
||||
|
||||
@@ -125,7 +125,7 @@ export class CloudlyApiClient {
|
||||
*/
|
||||
public async getClusterConfigFromCloudlyByIdentity(
|
||||
identityArg: plugins.servezoneInterfaces.data.IIdentity = this.identity
|
||||
): Promise<plugins.servezoneInterfaces.data.ICluster> {
|
||||
): Promise<plugins.servezoneInterfaces.requests.config.IRequest_Any_Cloudly_GetClusterConfig['response']> {
|
||||
const clusterConfigRequest =
|
||||
this.typedsocketClient.createTypedRequest<plugins.servezoneInterfaces.requests.config.IRequest_Any_Cloudly_GetClusterConfig>(
|
||||
'getClusterConfig'
|
||||
@@ -133,7 +133,7 @@ export class CloudlyApiClient {
|
||||
const response = await clusterConfigRequest.fire({
|
||||
identity: identityArg,
|
||||
});
|
||||
return response.configData;
|
||||
return response;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -170,7 +170,7 @@ export class CloudlyApiClient {
|
||||
'getCertificateForDomain'
|
||||
);
|
||||
const typedResponse = await typedCertificateRequest.fire({
|
||||
identity: this.identity, // do proper auth here
|
||||
identity: optionsArg.identity,
|
||||
domainName: optionsArg.domainName,
|
||||
type: optionsArg.type,
|
||||
});
|
||||
|
||||
@@ -61,8 +61,9 @@ export class Cluster implements plugins.servezoneInterfaces.data.ICluster {
|
||||
);
|
||||
const response = await updateClusterTR.fire({
|
||||
identity: this.cloudlyClientRef.identity,
|
||||
clusterId: this.id,
|
||||
clusterData: this.data,
|
||||
});
|
||||
} as any);
|
||||
|
||||
const resultClusterData = response.resultCluster.data;
|
||||
plugins.smartexpect.expect(resultClusterData).toEqual(this.data);
|
||||
|
||||
+4
-1
@@ -86,9 +86,12 @@ export class Image implements plugins.servezoneInterfaces.data.IImage {
|
||||
const response = await pushImageTR.fire({
|
||||
identity: this.cloudlyClientRef.identity,
|
||||
imageId: this.id,
|
||||
versionString: '',
|
||||
versionString: imageVersion,
|
||||
imageStream: virtualStream,
|
||||
});
|
||||
if (!response.allowed) {
|
||||
throw new Error(`Cloudly rejected image push for ${this.id}:${imageVersion}`);
|
||||
}
|
||||
await virtualStream.readFromWebstream(imageReadableArg);
|
||||
await this.update();
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user