chore(deps): update serve.zone interfaces
This commit is contained in:
@@ -307,8 +307,7 @@ export class ClusterManager {
|
||||
name: dockerSecretName,
|
||||
contentArg: JSON.stringify(await secretBundle.getFlatKeyValueObjectForEnvironment()),
|
||||
labels: {},
|
||||
version:
|
||||
await containerImageFromCloudly.data.versions[serviceArgFromCloudly.data.imageVersion],
|
||||
version: serviceArgFromCloudly.data.imageVersion,
|
||||
},
|
||||
);
|
||||
containerService = await plugins.docker.DockerService.createService(
|
||||
@@ -328,11 +327,24 @@ export class ClusterManager {
|
||||
}
|
||||
}
|
||||
|
||||
public async provisionWorkloadServices(
|
||||
_clusterConfigArg: plugins.servezoneInterfaces.data.ICluster,
|
||||
) {
|
||||
const services =
|
||||
(await this.coreflowRef.cloudlyConnector.cloudlyApiClient.services.getServices()) as unknown as plugins.servezoneInterfaces.data.IService[];
|
||||
for (const service of services) {
|
||||
if (service.data.serviceCategory && service.data.serviceCategory !== 'workload') {
|
||||
continue;
|
||||
}
|
||||
await this.provisionWorkloadService(service);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* update traffic routing
|
||||
*/
|
||||
public async updateTrafficRouting(
|
||||
clusterConfigArg: plugins.servezoneInterfaces.data.IClusterConfig,
|
||||
_clusterConfigArg: plugins.servezoneInterfaces.data.ICluster,
|
||||
) {
|
||||
const services = await this.coreflowRef.dockerHost.getServices();
|
||||
const webGatewayNetwork = await plugins.docker.DockerNetwork.getNetworkByName(
|
||||
@@ -351,8 +363,8 @@ export class ClusterManager {
|
||||
const certificate =
|
||||
await this.coreflowRef.cloudlyConnector.getCertificateForDomainFromCloudly(hostNameArg);
|
||||
reverseProxyConfigs.push({
|
||||
destinationIp: containerDestinationIp,
|
||||
destinationPort: webDestinationPort,
|
||||
destinationIps: [containerDestinationIp],
|
||||
destinationPorts: [Number(webDestinationPort)],
|
||||
hostName: hostNameArg,
|
||||
privateKey: certificate.privateKey,
|
||||
publicKey: certificate.publicKey,
|
||||
@@ -364,10 +376,12 @@ export class ClusterManager {
|
||||
};
|
||||
|
||||
logger.log('info', `Found ${services.length} services!`);
|
||||
const workloadServices =
|
||||
(await this.coreflowRef.cloudlyConnector.cloudlyApiClient.services.getServices()) as unknown as plugins.servezoneInterfaces.data.IService[];
|
||||
for (const service of services) {
|
||||
let workloadConfig: plugins.servezoneInterfaces.data.IClusterConfigContainer;
|
||||
for (const workloadServiceConfig of clusterConfigArg.data.containers) {
|
||||
if (service.Spec.Name === workloadServiceConfig.name) {
|
||||
let workloadConfig: plugins.servezoneInterfaces.data.IService | undefined;
|
||||
for (const workloadServiceConfig of workloadServices) {
|
||||
if (service.Spec.Name === workloadServiceConfig.data.name) {
|
||||
workloadConfig = workloadServiceConfig;
|
||||
break;
|
||||
}
|
||||
@@ -386,13 +400,13 @@ export class ClusterManager {
|
||||
continue;
|
||||
}
|
||||
const containerDestinationIp = containersOfServicesOnNetwork[0].IPv4Address.split('/')[0];
|
||||
const hostNames: string[] = workloadConfig.domains;
|
||||
const hostNames = (workloadConfig.data.domains || []).map((domainEntry) => domainEntry.name);
|
||||
|
||||
// lets route the web port
|
||||
const webDestinationPort: string = workloadConfig.ports.web.toString();
|
||||
const webDestinationPort: string = workloadConfig.data.ports.web.toString();
|
||||
for (const hostName of hostNames) {
|
||||
await pushProxyConfig(
|
||||
workloadConfig.name,
|
||||
workloadConfig.data.name,
|
||||
hostName,
|
||||
containerDestinationIp,
|
||||
webDestinationPort,
|
||||
@@ -400,14 +414,14 @@ export class ClusterManager {
|
||||
}
|
||||
|
||||
// lets route custom ports
|
||||
if (workloadConfig.ports.custom) {
|
||||
const customDomainKeys = Object.keys(workloadConfig.ports.custom);
|
||||
if (workloadConfig.data.ports.custom) {
|
||||
const customDomainKeys = Object.keys(workloadConfig.data.ports.custom);
|
||||
for (const customDomainKey of customDomainKeys) {
|
||||
await pushProxyConfig(
|
||||
workloadConfig.name,
|
||||
workloadConfig.data.name,
|
||||
customDomainKey,
|
||||
containerDestinationIp,
|
||||
workloadConfig.ports.custom[customDomainKey],
|
||||
workloadConfig.data.ports.custom[customDomainKey],
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user