Skip to content

Commit c0cad2e

Browse files
committed
fix(centraldashboard): handle azure platform in metrics service factory
1 parent 3e61392 commit c0cad2e

2 files changed

Lines changed: 29 additions & 0 deletions

File tree

components/centraldashboard/app/metrics_service_factory.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,9 @@ export async function getMetricsService(k8sService: KubernetesService):
2323
const projectId = platformInfo.provider.split('/')[2];
2424
return new StackdriverMetricsService(
2525
new MetricServiceClient(), projectId, nodeNames);
26+
case 'azure':
27+
console.info('"azure" platform detected. Metrics disabled (use Prometheus for AKS).');
28+
return null;
2629
default:
2730
console.warn(`"${
2831
platformInfo

components/centraldashboard/app/metrics_service_factory_test.ts

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,4 +76,30 @@ describe('Metrics Service Factory getMetricsService', () => {
7676

7777
expect(await getMetricsService(mockK8sService)).toBe(null);
7878
});
79+
80+
it('Returns null for azure platform without a console.warn', async () => {
81+
const nodes = [{
82+
apiVersion: 'v1',
83+
kind: 'Node',
84+
metadata: {name: 'aks-node-1'},
85+
spec: {
86+
podCIDR: '10.244.0.0/24',
87+
providerID:
88+
'azure:///subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Compute/virtualMachines/aks-node-1'
89+
},
90+
}] as k8s.V1Node[];
91+
mockK8sService.getNodes.and.returnValue(Promise.resolve(nodes));
92+
mockK8sService.getPlatformInfo.and.returnValue(Promise.resolve({
93+
provider:
94+
'azure:///subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Compute/virtualMachines/aks-node-1',
95+
providerName: 'azure',
96+
kubeflowVersion: '1.0.0'
97+
}));
98+
99+
const warnSpy = spyOn(console, 'warn');
100+
const metricsService = await getMetricsService(mockK8sService);
101+
102+
expect(metricsService).toBe(null);
103+
expect(warnSpy).not.toHaveBeenCalled();
104+
});
79105
});

0 commit comments

Comments
 (0)