From 93baa40f1948e8cf7c69ddc91164b45b36780eff Mon Sep 17 00:00:00 2001 From: Michael Spencer <6477538+MSpencer87@users.noreply.github.com> Date: Thu, 12 Jun 2025 13:32:50 -0700 Subject: [PATCH] Improved structure of k6 test suite (#57) * initial commit * updated filenames, moved rancher files * updated paths, adjusted filenames * updated filenames * path fix --------- Co-authored-by: Michael Spencer --- k6/{ => crds}/crd_utils.js | 4 ++-- k6/{create_CRDs.js => crds/create_crds.js} | 4 ++-- k6/{delete_CRDs.js => crds/delete_crds.js} | 2 +- k6/{get_CRDs.js => crds/get_crds.js} | 4 ++-- k6/{load_CRDs.js => crds/load_crds.js} | 2 +- k6/{update_CRDs.js => crds/update_crds.js} | 2 +- .../update_destructive_crds.js} | 4 ++-- k6/{ => generic}/README_RECORDER.md | 0 k6/{ => generic}/change_config_maps.js | 0 k6/{ => generic}/create_k8s_resources.js | 0 k6/{ => generic}/create_projects.js | 4 ++-- k6/{ => generic}/create_roles_users.js | 2 +- k6/{ => generic}/k8s.js | 4 ++-- k6/{ => generic}/steve_create_pods.js | 0 k6/{ => rancher}/rancher_setup.js | 0 k6/{ => rancher}/rancher_users_utils.js | 0 k6/{ => rancher}/rancher_utils.js | 0 k6/{ => schemas}/schema_utils.js | 0 .../verify_schema_definitions.js} | 4 ++-- k6/{verifySchemas.js => schemas/verify_schemas.js} | 4 ++-- k6/{ => tests}/api_benchmark.js | 0 k6/{ => tests}/k6_with_env.sh | 0 k6/{ => tests}/steve_count_resouces.js | 0 k6/{ => tests}/tokens.js | 4 ++-- k6/{ => vai}/load_steve_k8s_pagination.js | 0 k6/{ => vai}/load_steve_new_pagination.js | 0 k6/{ => vai}/steve_paginated_api_benchmark.js | 0 27 files changed, 22 insertions(+), 22 deletions(-) rename k6/{ => crds}/crd_utils.js (98%) rename k6/{create_CRDs.js => crds/create_crds.js} (96%) rename k6/{delete_CRDs.js => crds/delete_crds.js} (98%) rename k6/{get_CRDs.js => crds/get_crds.js} (96%) rename k6/{load_CRDs.js => crds/load_crds.js} (99%) rename k6/{update_CRDs.js => crds/update_crds.js} (98%) rename k6/{update_destructive_CRDs.js => crds/update_destructive_crds.js} (99%) rename k6/{ => generic}/README_RECORDER.md (100%) rename k6/{ => generic}/change_config_maps.js (100%) rename k6/{ => generic}/create_k8s_resources.js (100%) rename k6/{ => generic}/create_projects.js (98%) rename k6/{ => generic}/create_roles_users.js (98%) rename k6/{ => generic}/k8s.js (96%) rename k6/{ => generic}/steve_create_pods.js (100%) rename k6/{ => rancher}/rancher_setup.js (100%) rename k6/{ => rancher}/rancher_users_utils.js (100%) rename k6/{ => rancher}/rancher_utils.js (100%) rename k6/{ => schemas}/schema_utils.js (100%) rename k6/{verifySchemaDefinitions.js => schemas/verify_schema_definitions.js} (98%) rename k6/{verifySchemas.js => schemas/verify_schemas.js} (98%) rename k6/{ => tests}/api_benchmark.js (100%) rename k6/{ => tests}/k6_with_env.sh (100%) rename k6/{ => tests}/steve_count_resouces.js (100%) rename k6/{ => tests}/tokens.js (98%) rename k6/{ => vai}/load_steve_k8s_pagination.js (100%) rename k6/{ => vai}/load_steve_new_pagination.js (100%) rename k6/{ => vai}/steve_paginated_api_benchmark.js (100%) diff --git a/k6/crd_utils.js b/k6/crds/crd_utils.js similarity index 98% rename from k6/crd_utils.js rename to k6/crds/crd_utils.js index 3805c71..15170f2 100644 --- a/k6/crd_utils.js +++ b/k6/crds/crd_utils.js @@ -1,7 +1,7 @@ import { check, fail, sleep } from 'k6'; import http from 'k6/http' -import { retryUntilExpected } from "./rancher_utils.js"; -import * as YAML from './lib/js-yaml-4.1.0.mjs' +import { retryUntilExpected } from "../rancher/rancher_utils.js"; +import * as YAML from '../lib/js-yaml-4.1.0.mjs' export const baseCRDPath = "v1/apiextensions.k8s.io.customresourcedefinitions" export const crdTag = { url: `/v1/apiextensions.k8s.io.customresourcedefinitions/` } diff --git a/k6/create_CRDs.js b/k6/crds/create_crds.js similarity index 96% rename from k6/create_CRDs.js rename to k6/crds/create_crds.js index 0a0a6a1..43aea3f 100644 --- a/k6/create_CRDs.js +++ b/k6/crds/create_crds.js @@ -1,7 +1,7 @@ import { check, fail, sleep } from 'k6'; -import http from 'k6/http'; +import http from 'k6/http' import { Trend } from 'k6/metrics'; -import { getCookies, login } from "./rancher_utils.js"; +import { getCookies, login } from "../rancher/rancher_utils.js"; import exec from "k6/execution"; import { randomString } from 'https://jslib.k6.io/k6-utils/1.4.0/index.js'; import * as crdUtil from "./crd_utils.js"; diff --git a/k6/delete_CRDs.js b/k6/crds/delete_crds.js similarity index 98% rename from k6/delete_CRDs.js rename to k6/crds/delete_crds.js index 372a78b..ae70060 100644 --- a/k6/delete_CRDs.js +++ b/k6/crds/delete_crds.js @@ -1,7 +1,7 @@ import { check, fail, sleep } from 'k6'; import http from 'k6/http' import { Trend } from 'k6/metrics'; -import { getCookies, login } from "./rancher_utils.js"; +import { getCookies, login } from "../rancher/rancher_utils.js"; import { vu as metaVU } from 'k6/execution' import * as crdUtil from "./crd_utils.js"; diff --git a/k6/get_CRDs.js b/k6/crds/get_crds.js similarity index 96% rename from k6/get_CRDs.js rename to k6/crds/get_crds.js index 02e8b81..adfca4a 100644 --- a/k6/get_CRDs.js +++ b/k6/crds/get_crds.js @@ -2,8 +2,8 @@ import http from 'k6/http' import { check, fail, sleep } from 'k6'; import exec from 'k6/execution'; import { Trend } from 'k6/metrics'; -import { getCookies, login } from "./rancher_utils.js"; -import * as k8s from './k8s.js' +import { getCookies, login } from "../rancher/rancher_utils.js"; +import * as k8s from '../generic/k8s.js' import * as crdUtil from "./crd_utils.js"; diff --git a/k6/load_CRDs.js b/k6/crds/load_crds.js similarity index 99% rename from k6/load_CRDs.js rename to k6/crds/load_crds.js index acdc76f..a7cb7a1 100644 --- a/k6/load_CRDs.js +++ b/k6/crds/load_crds.js @@ -1,7 +1,7 @@ import { check, fail, sleep } from 'k6'; import http from 'k6/http' import { Trend } from 'k6/metrics'; -import { getCookies, login } from "./rancher_utils.js"; +import { getCookies, login } from "../rancher/rancher_utils.js"; import { vu as metaVU } from 'k6/execution' import * as crdUtil from "./crd_utils.js"; diff --git a/k6/update_CRDs.js b/k6/crds/update_crds.js similarity index 98% rename from k6/update_CRDs.js rename to k6/crds/update_crds.js index 06310e5..53458a1 100644 --- a/k6/update_CRDs.js +++ b/k6/crds/update_crds.js @@ -1,7 +1,7 @@ import { check, fail, sleep } from 'k6'; import http from 'k6/http' import { Trend } from 'k6/metrics'; -import { getCookies, login } from "./rancher_utils.js"; +import { getCookies, login } from "../rancher/rancher_utils.js"; import { vu as metaVU } from 'k6/execution' import * as crdUtil from "./crd_utils.js"; diff --git a/k6/update_destructive_CRDs.js b/k6/crds/update_destructive_crds.js similarity index 99% rename from k6/update_destructive_CRDs.js rename to k6/crds/update_destructive_crds.js index 639a6d0..6d31b35 100644 --- a/k6/update_destructive_CRDs.js +++ b/k6/crds/update_destructive_crds.js @@ -1,10 +1,10 @@ import { check, fail, sleep } from 'k6'; import http from 'k6/http' import { Trend } from 'k6/metrics'; -import { getCookies, login } from "./rancher_utils.js"; +import { getCookies, login } from "../rancher/rancher_utils.js"; import { vu as metaVU } from 'k6/execution' import * as crdUtil from "./crd_utils.js"; -import * as k8s from './k8s.js' +import * as k8s from '../generic/k8s.js' const vus = __ENV.K6_VUS || 20 diff --git a/k6/README_RECORDER.md b/k6/generic/README_RECORDER.md similarity index 100% rename from k6/README_RECORDER.md rename to k6/generic/README_RECORDER.md diff --git a/k6/change_config_maps.js b/k6/generic/change_config_maps.js similarity index 100% rename from k6/change_config_maps.js rename to k6/generic/change_config_maps.js diff --git a/k6/create_k8s_resources.js b/k6/generic/create_k8s_resources.js similarity index 100% rename from k6/create_k8s_resources.js rename to k6/generic/create_k8s_resources.js diff --git a/k6/create_projects.js b/k6/generic/create_projects.js similarity index 98% rename from k6/create_projects.js rename to k6/generic/create_projects.js index 60b91c3..f3597ad 100644 --- a/k6/create_projects.js +++ b/k6/generic/create_projects.js @@ -2,8 +2,8 @@ import {check, fail, sleep} from 'k6'; import exec from 'k6/execution'; import http from 'k6/http'; import {Gauge} from 'k6/metrics'; -import {getCookies, login} from "./rancher_utils.js"; -import {getPrincipalIds, getCurrentUserPrincipalId, getClusterIds} from "./rancher_users_utils.js" +import {getCookies, login} from "../rancher/rancher_utils.js"; +import {getPrincipalIds, getCurrentUserPrincipalId, getClusterIds} from "../rancher/rancher_users_utils.js" // Parameters const projectCount = Number(__ENV.PROJECT_COUNT) diff --git a/k6/create_roles_users.js b/k6/generic/create_roles_users.js similarity index 98% rename from k6/create_roles_users.js rename to k6/generic/create_roles_users.js index 3198fb4..55eeb0d 100644 --- a/k6/create_roles_users.js +++ b/k6/generic/create_roles_users.js @@ -2,7 +2,7 @@ import { check, sleep } from 'k6' import exec from 'k6/execution'; import http from 'k6/http'; import {Gauge} from 'k6/metrics'; -import {retryOnConflict} from "./rancher_utils.js"; +import {retryOnConflict} from "../rancher/rancher_utils.js"; // Parameters const roleCount = Number(__ENV.ROLE_COUNT) diff --git a/k6/k8s.js b/k6/generic/k8s.js similarity index 96% rename from k6/k8s.js rename to k6/generic/k8s.js index de83dba..d340bf8 100644 --- a/k6/k8s.js +++ b/k6/generic/k8s.js @@ -2,9 +2,9 @@ import { check } from 'k6'; import { sleep } from 'k6'; import encoding from 'k6/encoding'; import http from 'k6/http'; -import * as YAML from './lib/js-yaml-4.1.0.mjs' +import * as YAML from '../lib/js-yaml-4.1.0.mjs' -import { URL } from './lib/url-1.0.0.js'; +import { URL } from '../lib/url-1.0.0.js'; const timeout = '3600s' diff --git a/k6/steve_create_pods.js b/k6/generic/steve_create_pods.js similarity index 100% rename from k6/steve_create_pods.js rename to k6/generic/steve_create_pods.js diff --git a/k6/rancher_setup.js b/k6/rancher/rancher_setup.js similarity index 100% rename from k6/rancher_setup.js rename to k6/rancher/rancher_setup.js diff --git a/k6/rancher_users_utils.js b/k6/rancher/rancher_users_utils.js similarity index 100% rename from k6/rancher_users_utils.js rename to k6/rancher/rancher_users_utils.js diff --git a/k6/rancher_utils.js b/k6/rancher/rancher_utils.js similarity index 100% rename from k6/rancher_utils.js rename to k6/rancher/rancher_utils.js diff --git a/k6/schema_utils.js b/k6/schemas/schema_utils.js similarity index 100% rename from k6/schema_utils.js rename to k6/schemas/schema_utils.js diff --git a/k6/verifySchemaDefinitions.js b/k6/schemas/verify_schema_definitions.js similarity index 98% rename from k6/verifySchemaDefinitions.js rename to k6/schemas/verify_schema_definitions.js index 2b5b6f0..6f1a51f 100644 --- a/k6/verifySchemaDefinitions.js +++ b/k6/schemas/verify_schema_definitions.js @@ -1,7 +1,7 @@ import { check, fail, sleep } from 'k6'; -import { getCookies, login } from "./rancher_utils.js"; +import { getCookies, login } from "../rancher/rancher_utils.js"; import { Trend } from 'k6/metrics'; -import * as crdUtil from "./crd_utils.js"; +import * as crdUtil from "../crds/crd_utils.js"; import { verifySchemaExistsPolling, verifySchemaDefinitionExistsPolling } from "./schema_utils.js" const vus = __ENV.K6_VUS || 1 diff --git a/k6/verifySchemas.js b/k6/schemas/verify_schemas.js similarity index 98% rename from k6/verifySchemas.js rename to k6/schemas/verify_schemas.js index 17a4d7c..5381097 100644 --- a/k6/verifySchemas.js +++ b/k6/schemas/verify_schemas.js @@ -1,7 +1,7 @@ import { check, fail, sleep } from 'k6'; -import { getCookies, login } from "./rancher_utils.js"; +import { getCookies, login } from "../rancher/rancher_utils.js"; import { Trend } from 'k6/metrics'; -import * as crdUtil from "./crd_utils.js"; +import * as crdUtil from "../crds/crd_utils.js"; import { verifySchemaExistsPolling } from "./schema_utils.js" const vus = __ENV.K6_VUS || 1 diff --git a/k6/api_benchmark.js b/k6/tests/api_benchmark.js similarity index 100% rename from k6/api_benchmark.js rename to k6/tests/api_benchmark.js diff --git a/k6/k6_with_env.sh b/k6/tests/k6_with_env.sh similarity index 100% rename from k6/k6_with_env.sh rename to k6/tests/k6_with_env.sh diff --git a/k6/steve_count_resouces.js b/k6/tests/steve_count_resouces.js similarity index 100% rename from k6/steve_count_resouces.js rename to k6/tests/steve_count_resouces.js diff --git a/k6/tokens.js b/k6/tests/tokens.js similarity index 98% rename from k6/tokens.js rename to k6/tests/tokens.js index 5c930ac..d45b11a 100644 --- a/k6/tokens.js +++ b/k6/tests/tokens.js @@ -1,8 +1,8 @@ import { check, fail, sleep } from 'k6'; import exec from 'k6/execution'; import http from 'k6/http'; -import { getCookies, login, generateAuthorizationHeader, addMinutes } from "./rancher_utils.js"; -import { getPrincipalIds, getCurrentUserId, getClusterIds, getCurrentUserPrincipal, createUser } from "./rancher_users_utils.js" +import { getCookies, login, generateAuthorizationHeader, addMinutes } from "../rancher/rancher_utils.js"; +import { getPrincipalIds, getCurrentUserId, getClusterIds, getCurrentUserPrincipal, createUser } from "../rancher/rancher_users_utils.js" // Parameters diff --git a/k6/load_steve_k8s_pagination.js b/k6/vai/load_steve_k8s_pagination.js similarity index 100% rename from k6/load_steve_k8s_pagination.js rename to k6/vai/load_steve_k8s_pagination.js diff --git a/k6/load_steve_new_pagination.js b/k6/vai/load_steve_new_pagination.js similarity index 100% rename from k6/load_steve_new_pagination.js rename to k6/vai/load_steve_new_pagination.js diff --git a/k6/steve_paginated_api_benchmark.js b/k6/vai/steve_paginated_api_benchmark.js similarity index 100% rename from k6/steve_paginated_api_benchmark.js rename to k6/vai/steve_paginated_api_benchmark.js