Skip to content

Commit cc16ee2

Browse files
authored
Merge pull request #291 from snyk/chore/homebase_removal
chore: remove homebase references in tests code
2 parents 537a0bb + 20ebfaa commit cc16ee2

File tree

4 files changed

+46
-46
lines changed

4 files changed

+46
-46
lines changed

test/helpers/homebase.ts renamed to test/helpers/kubernetes-upstream.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,22 +10,22 @@ import config = require('../../src/common/config');
1010
const toneDownFactor = 5;
1111
const maxPodChecks = 600 / toneDownFactor;
1212

13-
export async function getHomebaseResponseBody(
13+
export async function getUpstreamResponseBody(
1414
relativeUrl: string,
1515
): Promise<any> {
16-
const url = `https://${config.INTERNAL_PROXY_CREDENTIALS}@homebase-int.dev.snyk.io/${relativeUrl}`;
17-
const homebaseResponse = await needle('get', url, null);
18-
const responseBody = homebaseResponse.body;
16+
const url = `https://${config.INTERNAL_PROXY_CREDENTIALS}@kubernetes-upstream-int.dev.snyk.io/${relativeUrl}`;
17+
const upstreamResponse = await needle('get', url, null);
18+
const responseBody = upstreamResponse.body;
1919
return responseBody;
2020
}
2121

22-
export async function validateHomebaseStoredData(
22+
export async function validateUpstreamStoredData(
2323
validatorFn: WorkloadLocatorValidator,
2424
relativeUrl: string,
2525
remainingChecks: number = maxPodChecks,
2626
): Promise<boolean> {
2727
while (remainingChecks > 0) {
28-
const responseBody = await getHomebaseResponseBody(relativeUrl);
28+
const responseBody = await getUpstreamResponseBody(relativeUrl);
2929
const workloads: IWorkloadLocator[] | undefined = responseBody.workloads;
3030
const result = validatorFn(workloads);
3131
if (result) {
@@ -37,13 +37,13 @@ export async function validateHomebaseStoredData(
3737
return false;
3838
}
3939

40-
export async function validateHomebaseStoredMetadata(
40+
export async function validateUpstreamStoredMetadata(
4141
validatorFn: WorkloadMetadataValidator,
4242
relativeUrl: string,
4343
remainingChecks: number = maxPodChecks,
4444
): Promise<boolean> {
4545
while (remainingChecks > 0) {
46-
const responseBody = await getHomebaseResponseBody(relativeUrl);
46+
const responseBody = await getUpstreamResponseBody(relativeUrl);
4747
const workloadInfo: IWorkloadMetadata | undefined =
4848
responseBody.workloadInfo;
4949
const result = validatorFn(workloadInfo);

test/integration/kubernetes.test.ts

Lines changed: 32 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ import * as tap from 'tap';
44
import { WorkloadKind } from '../../src/supervisor/types';
55
import { WorkloadMetadataValidator, WorkloadLocatorValidator } from '../helpers/types';
66
import {
7-
validateHomebaseStoredData,
8-
validateHomebaseStoredMetadata,
9-
getHomebaseResponseBody,
10-
} from '../helpers/homebase';
7+
validateUpstreamStoredData,
8+
validateUpstreamStoredMetadata,
9+
getUpstreamResponseBody,
10+
} from '../helpers/kubernetes-upstream';
1111
import { validateSecureConfiguration, validateVolumeMounts } from '../helpers/deployment';
1212
import * as kubectl from '../helpers/kubectl';
1313

@@ -70,10 +70,10 @@ tap.test('snyk-monitor container started', async (t) => {
7070
console.log('Done -- snyk-monitor exists!');
7171
});
7272

73-
tap.test('snyk-monitor sends data to homebase', async (t) => {
73+
tap.test('snyk-monitor sends data to kubernetes-upstream', async (t) => {
7474
t.plan(2);
7575

76-
console.log(`Begin polling Homebase for the expected workloads with integration ID ${integrationId}...`);
76+
console.log(`Begin polling kubernetes-upstream for the expected workloads with integration ID ${integrationId}...`);
7777

7878
const validatorFn: WorkloadLocatorValidator = (workloads) => {
7979
return workloads !== undefined && workloads.length === 5 &&
@@ -95,16 +95,16 @@ tap.test('snyk-monitor sends data to homebase', async (t) => {
9595
'podSpec' in workloadInfo;
9696
};
9797

98-
// We don't want to spam Homebase with requests; do it infrequently
99-
const homebaseDepGraphTestResult = await validateHomebaseStoredData(
98+
// We don't want to spam kubernetes-upstream with requests; do it infrequently
99+
const depGraphTestResult = await validateUpstreamStoredData(
100100
validatorFn, `api/v2/workloads/${integrationId}/Default cluster/services`);
101-
t.ok(homebaseDepGraphTestResult, 'snyk-monitor sent expected data to homebase in the expected timeframe');
102-
const homebaseWorkloadMetadataResult = await validateHomebaseStoredMetadata(metaValidator,
101+
t.ok(depGraphTestResult, 'snyk-monitor sent expected data to kubernetes-upstream in the expected timeframe');
102+
const workloadMetadataResult = await validateUpstreamStoredMetadata(metaValidator,
103103
`api/v1/workload/${integrationId}/Default cluster/services/Deployment/redis`);
104-
t.ok(homebaseWorkloadMetadataResult, 'snyk-monitor sent expected metadata in the expected timeframe');
104+
t.ok(workloadMetadataResult, 'snyk-monitor sent expected metadata in the expected timeframe');
105105
});
106106

107-
tap.test('snyk-monitor sends correct data to homebase after adding another deployment', async (t) => {
107+
tap.test('snyk-monitor sends correct data to kubernetes-upstream after adding another deployment', async (t) => {
108108
t.plan(3);
109109

110110
const deploymentName = 'nginx-deployment';
@@ -114,27 +114,27 @@ tap.test('snyk-monitor sends correct data to homebase after adding another deplo
114114
const imageName = 'nginx';
115115

116116
await kubectl.applyK8sYaml('./test/fixtures/nginx-deployment.yaml');
117-
console.log(`Begin polling Homebase for the expected workloads with integration ID ${integrationId}...`);
117+
console.log(`Begin polling kubernetes-upstream for the expected workloads with integration ID ${integrationId}...`);
118118

119119
const validatorFn: WorkloadLocatorValidator = (workloads) => {
120120
return workloads !== undefined &&
121121
workloads.find((workload) => workload.name === deploymentName &&
122122
workload.type === WorkloadKind.Deployment) !== undefined;
123123
};
124124

125-
const homebaseTestResult = await validateHomebaseStoredData(
125+
const testResult = await validateUpstreamStoredData(
126126
validatorFn, `api/v2/workloads/${integrationId}/${clusterName}/${namespace}`);
127-
t.ok(homebaseTestResult, 'snyk-monitor sent expected data to homebase in the expected timeframe');
127+
t.ok(testResult, 'snyk-monitor sent expected data to kubernetes-upstream in the expected timeframe');
128128

129-
const depGraphResult = await getHomebaseResponseBody(
129+
const depGraphResult = await getUpstreamResponseBody(
130130
`api/v1/dependency-graphs/${integrationId}/${clusterName}/${namespace}/${deploymentType}/${deploymentName}`);
131131
t.ok('dependencyGraphResults' in depGraphResult,
132132
'expected dependencyGraphResults field to exist in /dependency-graphs response');
133133
t.ok('imageMetadata' in JSON.parse(depGraphResult.dependencyGraphResults[imageName]),
134-
'snyk-monitor sent expected data to homebase in the expected timeframe');
134+
'snyk-monitor sent expected data to kubernetes-upstream in the expected timeframe');
135135
});
136136

137-
tap.test('snyk-monitor pulls images from a private gcr.io registry and sends data to homebase', async (t) => {
137+
tap.test('snyk-monitor pulls images from a private gcr.io registry and sends data to kubernetes-upstream', async (t) => {
138138
t.plan(3);
139139

140140
const deploymentName = 'debian-gcr-io';
@@ -152,19 +152,19 @@ tap.test('snyk-monitor pulls images from a private gcr.io registry and sends dat
152152
workload.type === WorkloadKind.Deployment) !== undefined;
153153
};
154154

155-
const homebaseTestResult = await validateHomebaseStoredData(
155+
const testResult = await validateUpstreamStoredData(
156156
validatorFn, `api/v2/workloads/${integrationId}/${clusterName}/${namespace}`);
157-
t.ok(homebaseTestResult, 'snyk-monitor sent expected data to upstream in the expected timeframe');
157+
t.ok(testResult, 'snyk-monitor sent expected data to upstream in the expected timeframe');
158158

159-
const depGraphResult = await getHomebaseResponseBody(
159+
const depGraphResult = await getUpstreamResponseBody(
160160
`api/v1/dependency-graphs/${integrationId}/${clusterName}/${namespace}/${deploymentType}/${deploymentName}`);
161161
t.ok('dependencyGraphResults' in depGraphResult,
162162
'expected dependencyGraphResults field to exist in /dependency-graphs response');
163163
t.ok('imageMetadata' in JSON.parse(depGraphResult.dependencyGraphResults[imageName]),
164164
'snyk-monitor sent expected data to upstream in the expected timeframe');
165165
});
166166

167-
tap.test('snyk-monitor pulls images from a private ECR and sends data to homebase', async (t) => {
167+
tap.test('snyk-monitor pulls images from a private ECR and sends data to kubernetes-upstream', async (t) => {
168168
if (process.env['TEST_PLATFORM'] !== 'eks') {
169169
t.pass('Not testing private ECR images because we\'re not running in EKS');
170170
return;
@@ -187,43 +187,43 @@ tap.test('snyk-monitor pulls images from a private ECR and sends data to homebas
187187
workload.type === WorkloadKind.Deployment) !== undefined;
188188
};
189189

190-
const homebaseTestResult = await validateHomebaseStoredData(
190+
const testResult = await validateUpstreamStoredData(
191191
validatorFn, `api/v2/workloads/${integrationId}/${clusterName}/${namespace}`);
192-
t.ok(homebaseTestResult, 'snyk-monitor sent expected data to upstream in the expected timeframe');
192+
t.ok(testResult, 'snyk-monitor sent expected data to upstream in the expected timeframe');
193193

194-
const depGraphResult = await getHomebaseResponseBody(
194+
const depGraphResult = await getUpstreamResponseBody(
195195
`api/v1/dependency-graphs/${integrationId}/${clusterName}/${namespace}/${deploymentType}/${deploymentName}`);
196196
t.ok('dependencyGraphResults' in depGraphResult,
197197
'expected dependencyGraphResults field to exist in /dependency-graphs response');
198198
t.ok('imageMetadata' in JSON.parse(depGraphResult.dependencyGraphResults[imageName]),
199199
'snyk-monitor sent expected data to upstream in the expected timeframe');
200200
});
201201

202-
tap.test('snyk-monitor sends deleted workload to homebase', async (t) => {
202+
tap.test('snyk-monitor sends deleted workload to kubernetes-upstream', async (t) => {
203203
// First ensure the deployment exists from the previous test
204204
const deploymentValidatorFn: WorkloadLocatorValidator = (workloads) => {
205205
return workloads !== undefined &&
206206
workloads.find((workload) => workload.name === 'nginx-deployment' &&
207207
workload.type === WorkloadKind.Deployment) !== undefined;
208208
};
209209

210-
const homebaseTestResult = await validateHomebaseStoredData(deploymentValidatorFn,
210+
const testResult = await validateUpstreamStoredData(deploymentValidatorFn,
211211
`api/v2/workloads/${integrationId}/Default cluster/services`);
212-
t.ok(homebaseTestResult, 'snyk-monitor sent expected data to homebase in the expected timeframe');
212+
t.ok(testResult, 'snyk-monitor sent expected data to kubernetes-upstream in the expected timeframe');
213213

214214
const deploymentName = 'nginx-deployment';
215215
const namespace = 'services';
216216
await kubectl.deleteDeployment(deploymentName, namespace);
217217

218-
// Finally, remove the workload and ensure that the snyk-monitor notifies Homebase
218+
// Finally, remove the workload and ensure that the snyk-monitor notifies kubernetes-upstream
219219
const deleteValidatorFn: WorkloadLocatorValidator = (workloads) => {
220220
return workloads !== undefined && workloads.every((workload) => workload.name !== 'nginx-deployment');
221221
};
222222

223223
const clusterName = 'Default cluster';
224-
const homebaseDeleteTestResult = await validateHomebaseStoredData(deleteValidatorFn,
224+
const deleteTestResult = await validateUpstreamStoredData(deleteValidatorFn,
225225
`api/v2/workloads/${integrationId}/${clusterName}/${namespace}`);
226-
t.ok(homebaseDeleteTestResult, 'snyk-monitor sent deleted workload data to homebase in the expected timeframe');
226+
t.ok(deleteTestResult, 'snyk-monitor sent deleted workload data to kubernetes-upstream in the expected timeframe');
227227
});
228228

229229
tap.test(`snyk-monitor has resource limits`, async (t) => {
@@ -277,7 +277,7 @@ tap.test('notify upstream of deleted pods that have no OwnerReference', async (t
277277
);
278278
};
279279

280-
const validationResult = await validateHomebaseStoredData(
280+
const validationResult = await validateUpstreamStoredData(
281281
validatorFn,
282282
`api/v2/workloads/${integrationId}/${clusterName}/${namespace}`,
283283
);

test/integration/package-manager.test.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import * as tap from 'tap';
33
import { unlinkSync } from 'fs';
44
import { resolve } from 'path';
55
import { tmpdir } from 'os';
6-
import { validateHomebaseStoredData } from '../helpers/homebase';
6+
import { validateUpstreamStoredData } from '../helpers/kubernetes-upstream';
77
import kubectl = require('../helpers/kubectl');
88
import { deployMonitor, removeMonitor } from '../setup';
99
import * as fixtureReader from './fixture-reader';
@@ -62,7 +62,7 @@ tap.test(
6262
// For every workload, create a promise that:
6363
// - creates a temporary deployment file for this workload (with the appropriate name and image)
6464
// - apply the deployment
65-
// - clean up the temporary file, then await for the monitor to detect the workload and report to Homebase
65+
// - clean up the temporary file, then await for the monitor to detect the workload and report to kubernetes-upstream
6666
const promisesToAwait = Object.keys(workloads).map((deploymentName) => {
6767
const imageName = workloads[deploymentName];
6868

@@ -73,16 +73,16 @@ tap.test(
7373
.applyK8sYaml(tmpYamlPath)
7474
.then(() => {
7575
unlinkSync(tmpYamlPath);
76-
return validateHomebaseStoredData(
76+
return validateUpstreamStoredData(
7777
validatorFactory(deploymentName),
7878
`api/v2/workloads/${integrationId}/${clusterName}/${namespace}`,
7979
// Wait for up to ~16 minutes for this workload.
8080
// We are starting a lot of them in parallel so they may take a while to scan.
8181
200,
8282
);
8383
})
84-
.then((homebaseResult) => {
85-
t.ok(homebaseResult, `Deployed ${deploymentName} successfully`);
84+
.then((upstreamResult) => {
85+
t.ok(upstreamResult, `Deployed ${deploymentName} successfully`);
8686
});
8787
});
8888

test/setup/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ function createTestYamlDeployment(
4747
value: integrationId,
4848
};
4949

50-
// Inject the baseUrl of homebase that snyk-monitor container use to send metadata
50+
// Inject the baseUrl of kubernetes-upstream that snyk-monitor container use to send metadata
5151
deployment.spec.template.spec.containers[0].env[2] = {
5252
name: 'SNYK_INTEGRATION_API',
5353
value: 'https://kubernetes-upstream.dev.snyk.io',

0 commit comments

Comments
 (0)