Skip to content

Commit 7b2e0f5

Browse files
setup utility
1 parent 2cd08c0 commit 7b2e0f5

33 files changed

Lines changed: 149 additions & 99 deletions

File tree

.github/scripts/end2end/setup-e2e-env.sh

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ export TARGET_VERSION=$(sed -n 's/^VERSION="\([^"]*\)"/\1/p' "${ZENKO_ROOT}/VERS
125125
if [ "${SKIP_CTST:-}" = "1" ]; then
126126
echo "SKIP_CTST=1 set, skipping CTST-specific setup"
127127
else
128-
export ACCOUNT="zenko-ctst" # cli-testing Keycloak seeder (fallback would be wrong 'AccountTest')
128+
export ACCOUNT="zenko-ctst"
129129
export SEED_KEYCLOAK_DEFAULT_ROLES=true
130130

131131
# --- 13. Kafka host from backbeat config + port-forward ---
@@ -197,8 +197,6 @@ else
197197
fi
198198
export PROMETHEUS_SERVICE="${PROMETHEUS_SVC}.${NAMESPACE}.svc.cluster.local"
199199

200-
# --- 14. Zenko CR metadata (now fetched by tests_common/configuration.ts via k8s API) ---
201-
202200
# Azure archive settings
203201
export AZURE_ARCHIVE_ACCESS_TIER="Hot"
204202
export AZURE_ARCHIVE_MANIFEST_ACCESS_TIER="Hot"

tests/functional/ctst/common/hooks.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import {
88
} from '@cucumber/cucumber';
99
import Zenko from '../world/Zenko';
1010
import { CacheHelper, Identity, WorkCoordination } from 'cli-testing';
11-
import { initConfig, config } from 'tests_common/configuration';
11+
import { initConfig } from 'tests_common/configuration';
1212
import { prepareQuotaScenarios, teardownQuotaScenarios } from 'steps/quotas/quotas';
1313
import { prepareUtilizationScenarios } from 'steps/utilization/utilizationAPI';
1414
import { prepareMetricsScenarios } from './utils';
@@ -24,7 +24,6 @@ BeforeAll(async function () {
2424
// Some hooks are defined in cli-testing and use the configuration,
2525
// we need to have this run before anything else
2626
await initConfig();
27-
console.log("before all ", config);
2827
});
2928

3029
// import 'cli-testing/hooks/KeycloakSetup';

tests/functional/ctst/world/Zenko.ts

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,13 @@ import {
2525
import { extractPropertyFromResults } from '../common/utils';
2626
import ZenkoDrctl from 'steps/dr/drctl';
2727
import assert from 'assert';
28-
import { config, ServiceUserCredentials, ZENKO_ACCOUNT_NAME } from 'tests_common/configuration';
28+
import {
29+
config,
30+
ServiceUserCredentials,
31+
ZENKO_ACCOUNT_NAME,
32+
KEYCLOAK_TEST_PORT,
33+
KEYCLOAK_GRANT_TYPE,
34+
} from 'tests_common/configuration';
2935

3036
// Zenko entities
3137
export interface SavedIdentity {
@@ -290,10 +296,10 @@ export default class Zenko extends World<ZenkoWorldParameters> {
290296
ARWWIName,
291297
ARWWIPassword || '123',
292298
this.parameters.KeycloakHost || 'keycloak.zenko.local',
293-
'80',
299+
KEYCLOAK_TEST_PORT,
294300
`/auth/realms/${this.parameters.KeycloakRealm}/protocol/openid-connect/token`,
295301
Constants.K_CLIENT,
296-
'password',
302+
KEYCLOAK_GRANT_TYPE,
297303
);
298304
if (!webIdentityToken) {
299305
throw new Error('Error when trying to get a WebIdentity token.');
@@ -966,10 +972,10 @@ export default class Zenko extends World<ZenkoWorldParameters> {
966972
username || this.parameters.KeycloakUsername,
967973
this.parameters.KeycloakPassword,
968974
this.parameters.KeycloakHost,
969-
'80',
975+
KEYCLOAK_TEST_PORT,
970976
`/auth/realms/${this.parameters.KeycloakRealm}/protocol/openid-connect/token`,
971977
Constants.K_CLIENT,
972-
'password',
978+
KEYCLOAK_GRANT_TYPE,
973979
);
974980
const axiosInstance = axios.create();
975981
const protocol = this.parameters.ssl === false ? 'http://' : 'https://';

tests/functional/mocha/VaultClient.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
const fs = require('fs');
2-
const { getConfig, VAULT_ENDPOINT } = require('tests_common/configuration');
2+
const { config, VAULT_ENDPOINT } = require('tests_common/configuration');
33
const {
44
IAMClient,
55
DetachUserPolicyCommand,
@@ -156,8 +156,8 @@ class VaultClient {
156156
*/
157157
static getAdminClient() {
158158
const adminCredentials = {
159-
accessKey: getConfig().AdminCredentials.accessKey,
160-
secretKeyValue: getConfig().AdminCredentials.secretKey,
159+
accessKey: config.AdminCredentials.accessKey,
160+
secretKeyValue: config.AdminCredentials.secretKey,
161161
};
162162
const info = this.getEndpointInformation();
163163
return new vaultclient.Client(

tests/functional/mocha/backbeat/IngestionUtility.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ const {
88
ListObjectVersionsCommand,
99
PutObjectCommand,
1010
} = require('@aws-sdk/client-s3');
11-
const { scalityS3Client, ringS3Client } = require('../s3SDK');
11+
const { ringS3Client } = require('../s3SDK');
12+
const { config } = require('tests_common/configuration');
1213
const ReplicationUtility = require('./ReplicationUtility');
1314
const BackbeatAPIUtility = require('./BackbeatAPIUtility');
1415

@@ -213,7 +214,7 @@ class IngestionUtility extends ReplicationUtility {
213214
versionId,
214215
next,
215216
),
216-
next => this._setS3Client(scalityS3Client).getObjectTagging(
217+
next => this._setS3Client(config.ZenkoAccount.s3Client).getObjectTagging(
217218
destBucket,
218219
key,
219220
versionId,

tests/functional/mocha/backbeat/ReplicationUtility.js

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,8 @@ const {
2626
GetObjectTaggingCommand,
2727
DeleteObjectCommand,
2828
} = require('@aws-sdk/client-s3');
29-
const { scalityS3Client, awsS3Client } = require('../s3SDK');
29+
const { awsS3Client } = require('../s3SDK');
30+
const { config } = require('tests_common/configuration');
3031

3132
const srcLocation = process.env.AWS_BACKEND_SOURCE_LOCATION;
3233
const destAWSLocation = process.env.AWS_BACKEND_DESTINATION_LOCATION;
@@ -829,7 +830,7 @@ class ReplicationUtility {
829830
next => this._setS3Client(awsS3Client)
830831
.getObject(destBucket, `${srcBucket}/${key}`, next),
831832
], (err, data) => {
832-
this._setS3Client(scalityS3Client);
833+
this._setS3Client(config.ZenkoAccount.s3Client);
833834
if (err) {
834835
return cb(err);
835836
}
@@ -1112,7 +1113,7 @@ class ReplicationUtility {
11121113
next => this._setS3Client(awsS3Client)
11131114
.getObjectACL(destBucket, `${srcBucket}/${key}`, next),
11141115
], (err, data) => {
1115-
this._setS3Client(scalityS3Client);
1116+
this._setS3Client(config.ZenkoAccount.s3Client);
11161117
if (err) {
11171118
return cb(err);
11181119
}
@@ -1165,7 +1166,7 @@ class ReplicationUtility {
11651166
next => this._setS3Client(awsS3Client)
11661167
.getObjectTagging(destBucket, `${srcBucket}/${key}`, AWSVersionId, next),
11671168
], (err, data) => {
1168-
this._setS3Client(scalityS3Client);
1169+
this._setS3Client(config.ZenkoAccount.s3Client);
11691170
if (err) {
11701171
return cb(err);
11711172
}

tests/functional/mocha/backbeat/tests/api/metrics.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@ const assert = require('assert');
22
const crypto = require('crypto');
33
const { doWhilst, series } = require('async');
44

5-
const { scalityS3Client, awsS3Client } = require('../../../s3SDK');
5+
const { awsS3Client } = require('../../../s3SDK');
6+
const { config } = require('tests_common/configuration');
67
const sharedBlobSvc = require('../../azureSDK');
78
const ReplicationUtility = require('../../ReplicationUtility');
89
const { makeGETRequest, getResponseBody } = require('../../../utils/request');
910

10-
const scalityUtils = new ReplicationUtility(scalityS3Client, sharedBlobSvc);
1111
const awsUtils = new ReplicationUtility(awsS3Client);
1212

1313
const srcBucket = `source-bucket-${Date.now()}`;
@@ -116,11 +116,14 @@ describe('Backbeat replication metrics route validation', function dF() {
116116
});
117117

118118
describe('Backbeat replication metrics data', function dF() {
119+
let scalityUtils;
119120
this.timeout(REPLICATION_TIMEOUT);
120121
const roleArn = 'arn:aws:iam::root:role/s3-replication-role';
121122
const storageClass = `${destAWSLocation},${destAzureLocation}`;
122123
const pathPrefix = '/_/backbeat/api/metrics/crr';
123124

125+
before(() => { scalityUtils = new ReplicationUtility(config.ZenkoAccount.s3Client, sharedBlobSvc); });
126+
124127
beforeEach(done => series([
125128
next => scalityUtils.createVersionedBucket(srcBucket, next),
126129
next => scalityUtils.putBucketReplication(

tests/functional/mocha/backbeat/tests/api/objectMonitor.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@ const assert = require('assert');
22
const crypto = require('crypto');
33
const { series, waterfall, doWhilst } = require('async');
44

5-
const { scalityS3Client, awsS3Client } = require('../../../s3SDK');
5+
const { awsS3Client } = require('../../../s3SDK');
6+
const { config } = require('tests_common/configuration');
67
const ReplicationUtility = require('../../ReplicationUtility');
78
const { makeGETRequest, getResponseBody } = require('../../../utils/request');
89

9-
const scalityUtils = new ReplicationUtility(scalityS3Client);
1010
const awsUtils = new ReplicationUtility(awsS3Client);
1111
const srcBucket = `source-bucket-${Date.now()}`;
1212
const destBucket = process.env.AWS_CRR_BUCKET_NAME;
@@ -54,9 +54,12 @@ function getAndCheckResponse(path, expectedBody, cb) {
5454
}
5555

5656
describe('Backbeat object monitor CRR metrics', function () {
57+
let scalityUtils;
5758
this.timeout(REPLICATION_TIMEOUT);
5859
const roleArn = 'arn:aws:iam::root:role/s3-replication-role';
5960

61+
before(() => { scalityUtils = new ReplicationUtility(config.ZenkoAccount.s3Client); });
62+
6063
beforeEach(done => series([
6164
next => scalityUtils.createVersionedBucket(srcBucket, next),
6265
next => scalityUtils.putBucketReplication(

tests/functional/mocha/backbeat/tests/crr-pause-resume/awsBackend.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@ const assert = require('assert');
22
const crypto = require('crypto');
33
const { series } = require('async');
44

5-
const { scalityS3Client, awsS3Client } = require('../../../s3SDK');
5+
const { awsS3Client } = require('../../../s3SDK');
6+
const { config } = require('tests_common/configuration');
67
const ReplicationUtility = require('../../ReplicationUtility');
78
const BackbeatAPIUtility = require('../../BackbeatAPIUtility');
89

9-
const scalityUtils = new ReplicationUtility(scalityS3Client);
1010
const awsUtils = new ReplicationUtility(awsS3Client);
1111
const backbeatAPIUtils = new BackbeatAPIUtility();
1212
const srcBucket = `source-bucket-${Date.now()}`;
@@ -30,9 +30,12 @@ const REPLICATION_TIMEOUT = 300000;
3030
// the tests checked before replication was complete.
3131

3232
describe('Replication Pause-Resume with AWS backend', function () {
33+
let scalityUtils;
3334
this.timeout(REPLICATION_TIMEOUT);
3435
const roleArn = 'arn:aws:iam::root:role/s3-replication-role';
3536

37+
before(() => { scalityUtils = new ReplicationUtility(config.ZenkoAccount.s3Client); });
38+
3639
beforeEach(done => series([
3740
next => scalityUtils.createVersionedBucket(srcBucket, next),
3841
next => scalityUtils.putBucketReplication(

tests/functional/mocha/backbeat/tests/crr/awsBackend.js

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
const crypto = require('crypto');
22
const { series } = require('async');
33

4-
const { scalityS3Client, awsS3Client } = require('../../../s3SDK');
4+
const { awsS3Client } = require('../../../s3SDK');
5+
const { config } = require('tests_common/configuration');
56
const ReplicationUtility = require('../../ReplicationUtility');
67

7-
const scalityUtils = new ReplicationUtility(scalityS3Client);
88
const awsUtils = new ReplicationUtility(awsS3Client);
99
const srcBucket = `source-bucket-${Date.now()}`;
1010
const destBucket = process.env.AWS_CRR_BUCKET_NAME;
@@ -21,11 +21,13 @@ const keyutf8 = `${keyPrefix}/%EA%9D%8崰㈌㒈保轖䳷䀰⺩ቆ楪僷ꈅꓜ퇬
2121
const REPLICATION_TIMEOUT = 300000;
2222

2323
describe('Replication with AWS backend', function () {
24-
// eslint-disable-next-line
24+
let scalityUtils;
2525
this.timeout(REPLICATION_TIMEOUT);
2626
this.retries(3);
2727
const roleArn = 'arn:aws:iam::root:role/s3-replication-role';
2828

29+
before(() => { scalityUtils = new ReplicationUtility(config.ZenkoAccount.s3Client); });
30+
2931
beforeEach(done => series([
3032
next => scalityUtils.createVersionedBucket(srcBucket, next),
3133
next => scalityUtils.putBucketReplication(
@@ -979,9 +981,12 @@ describe('Replication with AWS backend', function () {
979981
});
980982

981983
describe.skip('Replication with AWS backend: source AWS location', function () {
984+
let scalityUtils;
982985
this.timeout(REPLICATION_TIMEOUT);
983986
const roleArn = 'arn:aws:iam::root:role/s3-replication-role';
984987

988+
before(() => { scalityUtils = new ReplicationUtility(config.ZenkoAccount.s3Client); });
989+
985990
beforeEach(done => series([
986991
next => scalityUtils.createVersionedBucketAWS(srcBucket, next),
987992
next => scalityUtils.putBucketReplication(

0 commit comments

Comments
 (0)