From 29f5babd12a51b874ce741b9045015c285146c91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Sierant?= Date: Sat, 23 Aug 2025 23:54:30 +0200 Subject: [PATCH 1/6] Fix races in pre-commit checks and improve error handling --- .githooks/pre-commit | 130 +++++++++++++++++++++++++++++------------ scripts/funcs/printing | 1 + 2 files changed, 95 insertions(+), 36 deletions(-) diff --git a/.githooks/pre-commit b/.githooks/pre-commit index d68ef1ac7..604561edc 100755 --- a/.githooks/pre-commit +++ b/.githooks/pre-commit @@ -127,49 +127,112 @@ function regenerate_public_rbac_multi_cluster() { } function update_licenses() { - echo 'regenerating licenses' - time scripts/evergreen/update_licenses.sh 2>&1 | prepend "update_licenses" - git add LICENSE-THIRD-PARTY + if [[ "${MDB_UPDATE_LICENSES:-""}" == "true" ]]; then + echo 'regenerating licenses' + time scripts/evergreen/update_licenses.sh 2>&1 | prepend "update_licenses" + git add LICENSE-THIRD-PARTY + fi } function check_erroneous_kubebuilder_annotations() { # Makes sure there are not erroneous kubebuilder annotations that can # end up in CRDs as descriptions. if grep "// kubebuilder" ./* -r --exclude-dir=vendor --include=\*.go; then - echo "Found an erroneous kubebuilder annotation" + echo -e "${RED}Found an erroneous kubebuilder annotation${NO_COLOR}" exit 1 fi } function check_incorrect_makefile_variable_brackets() { if find . -name "Makefile" | grep -v vendor | xargs grep "\${"; then - echo 'ERROR: Makefiles should NEVER contain curly brackets variables' + echo -e "${RED}ERROR: Makefiles should NEVER contain curly brackets variables${NO_COLOR}" exit 1 fi } +function validate_snippets() { + echo scripts/code_snippets/validate_snippets.py +} + +# Helper function to capture background job PID with job name +capture_bg_job() { + local job_name="$1" + local job_pid=$! + bg_job_pids+=("${job_pid}") + bg_job_pids_with_names+=("${job_pid}:${job_name}") + echo "Started ${job_name} with PID: ${job_pid}" +} + +get_job_name() { + local search_pid="$1" + local match + match=$(printf '%s\n' "${bg_job_pids_with_names[@]}" | grep "^${search_pid}:") + echo "${match#*:}" # Remove everything up to and including the colon +} + function pre_commit() { - if [[ "${MDB_UPDATE_LICENSES:-""}" == "true" ]]; then - ( (time update_licenses) 2>&1 | prepend "update_licenses" ) & - fi - ( (time scripts/evergreen/lint_code.sh) 2>&1 | prepend "lint_code.sh" ) & - ( (time start_shellcheck) 2>&1 | prepend "shellcheck" ) & + # Array to store background job PIDs + # IMPORTANT: ensure each task is executed in it's own subshell following the pattern: + # time new_check 2>&1 | prepend "new_check" & + # capture_bg_job "new_check" + + # those bg_job_ vars are global and capture_bg_job is appending to them on each call + bg_job_pids=() + bg_job_pids_with_names=() + + { + # Update release.json first in case there is a newer version + time update_release_json + # We need to generate the values files first + time update_values_yaml_files + # The values files are used for generating the standalone yaml + time generate_standalone_yaml + } 2>&1 | prepend "update_jobs" & + capture_bg_job "update_jobs" + + time update_licenses 2>&1 | prepend "update_licenses" & + capture_bg_job "update_licenses" + + time scripts/evergreen/lint_code.sh 2>&1 | prepend "lint_code.sh" & + capture_bg_job "lint_code.sh" - # Update release.json first in case there is a newer version - (time update_release_json) 2>&1 | prepend "update_release_json" - # We need to generate the values files first - (time update_values_yaml_files) 2>&1 | prepend "update_values_yaml_files" - # The values files are used for generating the standalone yaml - (time generate_standalone_yaml) 2>&1 | prepend "generate_standalone_yaml" + time start_shellcheck 2>&1 | prepend "shellcheck" & + capture_bg_job "shellcheck" - ( (time regenerate_public_rbac_multi_cluster) 2>&1 | prepend "regenerate_public_rbac_multi_cluster" ) & + time validate_snippets 2>&1 | prepend "validate_snippets" & + capture_bg_job "validate_snippets" + + time regenerate_public_rbac_multi_cluster 2>&1 | prepend "regenerate_public_rbac_multi_cluster" & + capture_bg_job "regenerate_public_rbac_multi_cluster" # Run black and isort on python files that have changed - ( (time python_formatting) 2>&1 | prepend "python_formatting") & + time python_formatting 2>&1 | prepend "python_formatting" & + capture_bg_job "python_formatting" + + time check_erroneous_kubebuilder_annotations 2>&1 | prepend "check_erroneous_kubebuilder_annotations" & + capture_bg_job "check_erroneous_kubebuilder_annotations" + + # add any other checks above - ( (time check_erroneous_kubebuilder_annotations) 2>&1 | prepend "check_erroneous_kubebuilder_annotations" ) & + # Wait for all background jobs and check their exit codes + failures=() + for pid in "${bg_job_pids[@]}"; do + wait "${pid}" || { + job_name=$(get_job_name "${pid}") + failures+=(" ${RED}${job_name} (PID ${pid})${NO_COLOR}") + } + done - wait + if [[ ${#failures[@]} -gt 0 ]]; then + echo -e "${RED}Some checks have failed:${NO_COLOR}" + for failure in "${failures[@]}"; do + echo -e "$failure" + done + echo -e "${RED}To see the details look for the job's logs by it's prefixed name (e.g. \"shellcheck:\").${NO_COLOR}" + exit 1 + fi + + echo -e "${GREEN}pre-commit: All checks passed!${NO_COLOR}" } # Function to run shellcheck on a single file @@ -177,27 +240,22 @@ run_shellcheck() { local file="$1" echo "Running shellcheck on $file" if ! shellcheck --color=always -x "$file" -e SC2154 -e SC1091 -e SC1090 -e SC2148 -o require-variable-braces -P "scripts"; then - echo "shellcheck failed on $file" + echo -e "${RED}shellcheck failed on $file${NO_COLOR}" exit 1 fi } +# Export function so it's available in subshells +export -f run_shellcheck start_shellcheck() { - files_1=$(find scripts -type f -name "*.sh") - files_2=$(find scripts/dev/contexts -type f | grep -v private-context) - files_3=$(find scripts/funcs -type f) - files_4=$(find public/architectures -type f -name "*.sh") - files=$(echo -e "$files_1\n$files_2\n$files_3\n$files_4") - # Process each file in parallel - for file in $files; do - run_shellcheck "$file" & - done - - # Wait for all background jobs - for job in $(jobs -p); do - wait "$job" || exit 1 - done - + # shellcheck disable=SC2016 + { + find scripts -type f -name "*.sh" + find scripts/dev/contexts -type f | grep -v private-context + find scripts/funcs -type f + find public/architectures -type f -name "*.sh" + find docs/ -type f -name "*.sh" + } | xargs -I {} -P 20 bash -c 'run_shellcheck "$1"' _ {} } cmd=${1:-"pre-commit"} diff --git a/scripts/funcs/printing b/scripts/funcs/printing index 0ee4b5ec0..71f4649c7 100644 --- a/scripts/funcs/printing +++ b/scripts/funcs/printing @@ -20,4 +20,5 @@ prepend() { } export RED='\033[0;31m' +export GREEN='\033[0;32m' export NO_COLOR='\033[0m' From 6309cff6fe17153a8737549cef7ed9a5b2f5fd33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Sierant?= Date: Sun, 24 Aug 2025 15:55:29 +0200 Subject: [PATCH 2/6] Refactor of existing snippets on master --- .evergreen-snippets.yml | 150 ++++++++++++++++++ .evergreen.yml | 101 +----------- .gitignore | 2 + .../README.md | 100 ++++++------ .../README.md.j2 | 0 .../01_0045_create_namespaces.sh | 1 + .../01_0046_create_image_pull_secrets.sh} | 2 +- .../01_0090_helm_add_mogodb_repo.sh} | 0 .../01_0100_install_operator.sh} | 4 +- ..._create_mongodb_community_user_secrets.sh} | 6 +- ...0310_create_mongodb_community_resource.sh} | 20 ++- .../01_0315_wait_for_community_resource.sh | 7 + ...01_0320_create_mongodb_search_resource.sh} | 2 +- .../01_0325_wait_for_search_resource.sh | 3 + .../01_0330_wait_for_community_resource.sh | 3 + .../01_0335_show_running_pods.sh | 6 + .../code_snippets/01_9010_delete_namespace.sh | 1 + .../env_variables.sh | 7 +- .../env_variables_e2e_prerelease.sh | 4 + .../env_variables_e2e_private.sh | 2 +- .../env_variables_e2e_private_dev.sh | 6 +- .../env_variables_e2e_public.sh | 1 + .../search/01-search-community-deploy/test.sh | 26 +++ .../03_0410_run_mongodb_tools_pod.sh} | 7 +- .../03_0420_import_movies_mflix_database.sh | 14 ++ .../03_0430_create_search_index.sh | 5 + .../03_0435_create_vector_search_index.sh | 12 ++ .../03_0440_wait_for_search_index_ready.sh} | 2 - .../03_0444_list_search_indexes.sh | 4 + .../03_0445_list_vector_search_indexes.sh | 4 + .../03_0450_execute_search_query.sh} | 7 +- .../03_0455_execute_vector_search_query.sh | 30 ++++ .../code_snippets/03_9010_delete_namespace.sh | 1 + .../03-search-query-usage/env_variables.sh | 20 +++ docs/search/03-search-query-usage/test.sh | 24 +++ .../code_snippets/0045_create_namespaces.sh | 1 - .../0315_wait_for_community_resource.sh | 6 - .../0325_wait_for_search_resource.sh | 2 - .../0330_wait_for_community_resource.sh | 2 - .../code_snippets/0335_show_running_pods.sh | 6 - .../0420_import_movies_mflix_database.sh | 10 -- .../code_snippets/0430_create_search_index.sh | 6 - .../code_snippets/9010_delete_namespace.sh | 1 - .../env_variables_e2e_prerelease.sh | 6 - .../quick-start/env_variables_e2e_public.sh | 2 - docs/search/community/quick-start/test.sh | 31 ---- .../code_snippets/code_snippets_cleanup.sh | 38 +++-- .../find_snippets_directories.sh | 14 ++ .../kind_search_snippets_render_template.sh | 3 +- scripts/code_snippets/sample_commit_output.sh | 8 +- scripts/code_snippets/sample_test_runner.sh | 21 ++- ...ask_kind_search_community_snippets_test.sh | 22 --- .../01_0090_helm_add_mogodb_repo.out | 0 .../01_0100_install_operator.out | 46 ++++-- .../01_0315_wait_for_community_resource.out | 16 ++ .../01_0330_wait_for_community_resource.out | 2 + .../01_0335_show_running_pods.out | 20 +-- .../03_0420_import_movies_mflix_database.out | 2 + .../03_0440_wait_for_search_index_ready.out | 0 .../03_0444_list_search_indexes.out | 32 ++++ .../03_0445_list_vector_search_indexes.out | 40 +++++ .../03_0450_execute_search_query.out | 0 .../03_0455_execute_vector_search_query.out | 54 +++++++ ...est_gke_multi_cluster_no_mesh_snippets.sh} | 9 ++ .../test_gke_multi_cluster_snippets.sh} | 6 + .../test_kind_search_community_snippets.sh | 39 +++++ scripts/code_snippets/validate_snippets.py | 68 ++++++++ 67 files changed, 784 insertions(+), 313 deletions(-) create mode 100644 .evergreen-snippets.yml rename docs/search/{community/quick-start => 01-search-community-deploy}/README.md (84%) rename docs/search/{community/quick-start => 01-search-community-deploy}/README.md.j2 (100%) create mode 100755 docs/search/01-search-community-deploy/code_snippets/01_0045_create_namespaces.sh rename docs/search/{community/quick-start/code_snippets/0046_create_image_pull_secrets.sh => 01-search-community-deploy/code_snippets/01_0046_create_image_pull_secrets.sh} (68%) rename docs/search/{community/quick-start/code_snippets/090_helm_add_mogodb_repo.sh => 01-search-community-deploy/code_snippets/01_0090_helm_add_mogodb_repo.sh} (100%) rename docs/search/{community/quick-start/code_snippets/0100_install_operator.sh => 01-search-community-deploy/code_snippets/01_0100_install_operator.sh} (54%) rename docs/search/{community/quick-start/code_snippets/0305_create_mongodb_community_user_secrets.sh => 01-search-community-deploy/code_snippets/01_0305_create_mongodb_community_user_secrets.sh} (56%) rename docs/search/{community/quick-start/code_snippets/0310_create_mongodb_community_resource.sh => 01-search-community-deploy/code_snippets/01_0310_create_mongodb_community_resource.sh} (73%) create mode 100755 docs/search/01-search-community-deploy/code_snippets/01_0315_wait_for_community_resource.sh rename docs/search/{community/quick-start/code_snippets/0320_create_mongodb_search_resource.sh => 01-search-community-deploy/code_snippets/01_0320_create_mongodb_search_resource.sh} (69%) create mode 100755 docs/search/01-search-community-deploy/code_snippets/01_0325_wait_for_search_resource.sh create mode 100755 docs/search/01-search-community-deploy/code_snippets/01_0330_wait_for_community_resource.sh create mode 100755 docs/search/01-search-community-deploy/code_snippets/01_0335_show_running_pods.sh create mode 100755 docs/search/01-search-community-deploy/code_snippets/01_9010_delete_namespace.sh rename docs/search/{community/quick-start => 01-search-community-deploy}/env_variables.sh (79%) create mode 100644 docs/search/01-search-community-deploy/env_variables_e2e_prerelease.sh rename docs/search/{community/quick-start => 01-search-community-deploy}/env_variables_e2e_private.sh (84%) rename docs/search/{community/quick-start => 01-search-community-deploy}/env_variables_e2e_private_dev.sh (87%) create mode 100644 docs/search/01-search-community-deploy/env_variables_e2e_public.sh create mode 100755 docs/search/01-search-community-deploy/test.sh rename docs/search/{community/quick-start/code_snippets/0410_run_mongodb_tools_pod.sh => 03-search-query-usage/code_snippets/03_0410_run_mongodb_tools_pod.sh} (59%) create mode 100755 docs/search/03-search-query-usage/code_snippets/03_0420_import_movies_mflix_database.sh create mode 100755 docs/search/03-search-query-usage/code_snippets/03_0430_create_search_index.sh create mode 100755 docs/search/03-search-query-usage/code_snippets/03_0435_create_vector_search_index.sh rename docs/search/{community/quick-start/code_snippets/0440_wait_for_search_index_ready.sh => 03-search-query-usage/code_snippets/03_0440_wait_for_search_index_ready.sh} (92%) create mode 100755 docs/search/03-search-query-usage/code_snippets/03_0444_list_search_indexes.sh create mode 100755 docs/search/03-search-query-usage/code_snippets/03_0445_list_vector_search_indexes.sh rename docs/search/{community/quick-start/code_snippets/0450_execute_search_query.sh => 03-search-query-usage/code_snippets/03_0450_execute_search_query.sh} (67%) create mode 100644 docs/search/03-search-query-usage/code_snippets/03_0455_execute_vector_search_query.sh create mode 100755 docs/search/03-search-query-usage/code_snippets/03_9010_delete_namespace.sh create mode 100644 docs/search/03-search-query-usage/env_variables.sh create mode 100755 docs/search/03-search-query-usage/test.sh delete mode 100755 docs/search/community/quick-start/code_snippets/0045_create_namespaces.sh delete mode 100755 docs/search/community/quick-start/code_snippets/0315_wait_for_community_resource.sh delete mode 100755 docs/search/community/quick-start/code_snippets/0325_wait_for_search_resource.sh delete mode 100755 docs/search/community/quick-start/code_snippets/0330_wait_for_community_resource.sh delete mode 100755 docs/search/community/quick-start/code_snippets/0335_show_running_pods.sh delete mode 100755 docs/search/community/quick-start/code_snippets/0420_import_movies_mflix_database.sh delete mode 100755 docs/search/community/quick-start/code_snippets/0430_create_search_index.sh delete mode 100755 docs/search/community/quick-start/code_snippets/9010_delete_namespace.sh delete mode 100644 docs/search/community/quick-start/env_variables_e2e_prerelease.sh delete mode 100644 docs/search/community/quick-start/env_variables_e2e_public.sh delete mode 100755 docs/search/community/quick-start/test.sh create mode 100644 scripts/code_snippets/find_snippets_directories.sh delete mode 100755 scripts/code_snippets/task_kind_search_community_snippets_test.sh rename docs/search/community/quick-start/output/090_helm_add_mogodb_repo.out => scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0090_helm_add_mogodb_repo.out (100%) rename docs/search/community/quick-start/output/0100_install_operator.out => scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0100_install_operator.out (94%) create mode 100644 scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0315_wait_for_community_resource.out create mode 100644 scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0330_wait_for_community_resource.out rename docs/search/community/quick-start/output/0335_show_running_pods.out => scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0335_show_running_pods.out (72%) create mode 100644 scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0420_import_movies_mflix_database.out rename docs/search/community/quick-start/output/0440_wait_for_search_index_ready.out => scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0440_wait_for_search_index_ready.out (100%) create mode 100644 scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0444_list_search_indexes.out create mode 100644 scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0445_list_vector_search_indexes.out rename docs/search/community/quick-start/output/0450_execute_search_query.out => scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0450_execute_search_query.out (100%) create mode 100644 scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0455_execute_vector_search_query.out rename scripts/code_snippets/{task_gke_multi_cluster_no_mesh_snippets_test.sh => tests/test_gke_multi_cluster_no_mesh_snippets.sh} (89%) rename scripts/code_snippets/{task_gke_multi_cluster_snippets_test.sh => tests/test_gke_multi_cluster_snippets.sh} (88%) create mode 100755 scripts/code_snippets/tests/test_kind_search_community_snippets.sh create mode 100755 scripts/code_snippets/validate_snippets.py diff --git a/.evergreen-snippets.yml b/.evergreen-snippets.yml new file mode 100644 index 000000000..390a70ed3 --- /dev/null +++ b/.evergreen-snippets.yml @@ -0,0 +1,150 @@ +variables: + - &setup_and_teardown_group_gke_code_snippets + setup_task_can_fail_task: true + setup_group: + - func: clone + - func: setup_gcloud_cli + - func: setup_mongosh + - func: download_kube_tools + - func: build_multi_cluster_binary + teardown_group: + - func: upload_code_snippets_logs + + - &setup_and_teardown_group_kind_code_snippets + setup_task_can_fail_task: true + setup_group: + - func: clone + - func: cleanup_exec_environment + - func: download_kube_tools + - func: configure_docker_auth + - func: setup_kubernetes_environment + - func: setup_cloud_qa + teardown_task: + - func: upload_e2e_logs + - func: upload_code_snippets_logs + - func: teardown_kubernetes_environment + - func: teardown_cloud_qa + +# This variable is copied over from .evergreen.yml because anchors don't work for included files + - &base_om8_dependency + depends_on: + - name: build_om_images + variant: build_om80_images + - name: build_operator_ubi + variant: init_test_run + - name: build_init_database_image_ubi + variant: init_test_run + - name: build_database_image_ubi + variant: init_test_run + - name: build_test_image + variant: init_test_run + - name: build_init_appdb_images_ubi + variant: init_test_run + - name: build_init_om_images_ubi + variant: init_test_run + - name: build_agent_images_ubi + variant: init_test_run + +tasks: + # Code snippets tasks + # Each scripts/code_snippets/tests/test_*.sh should have its task defined here. + # TODO: it should be autogenerated + # Each task executes test_code_snippets functon executes scripts/code_snippets/tests/${task_name} by task name convention + - name: test_gke_multi_cluster_snippets.sh + tags: [ "code_snippets" ] + commands: + - func: test_code_snippets + - func: sample_commit_output + + - name: test_gke_multi_cluster_no_mesh_snippets.sh + tags: [ "code_snippets" ] + commands: + - func: test_code_snippets + - func: sample_commit_output + + - name: test_kind_search_community_snippets.sh + tags: [ "code_snippets", "patch-run" ] + commands: + - func: test_code_snippets + - func: sample_commit_output + + - name: test_kind_search_enterprise_snippets.sh + tags: [ "code_snippets", "patch-run" ] + commands: + - func: test_code_snippets + - func: sample_commit_output + +task_groups: + - name: gke_code_snippets_task_group + <<: *setup_and_teardown_group_gke_code_snippets + max_hosts: -1 + tasks: + - test_gke_multi_cluster_snippets.sh + - test_gke_multi_cluster_no_mesh_snippets.sh + + - name: kind_code_snippets_task_group + <<: *setup_and_teardown_group_kind_code_snippets + max_hosts: -1 + tasks: + - test_kind_search_community_snippets.sh + - test_kind_search_enterprise_snippets.sh + +buildvariants: + # These variants are used to test the code snippets and each one can be used in patches + # Prerelease is especially used when the repo is tagged + # More details in the TD: https://docs.google.com/document/d/1fuTxfRtP8QPtn7sKYxQM_AGcD6xycTZH8svngGxyKhc/edit?tab=t.0#bookmark=id.e8uva0393mbe + - name: public_gke_code_snippets + display_name: public_gke_code_snippets + allowed_requesters: [ "patch" ] + run_on: + - ubuntu2204-small + tasks: + - name: gke_code_snippets_task_group + + - name: prerelease_gke_code_snippets + display_name: prerelease_gke_code_snippets + tags: [ "release" ] + allowed_requesters: [ "patch", "github_tag" ] + depends_on: + - variant: release_images + name: '*' + patch_optional: true + run_on: + - ubuntu2204-small + tasks: + - name: gke_code_snippets_task_group + + - name: private_gke_code_snippets + display_name: private_gke_code_snippets + allowed_requesters: [ "patch" ] + run_on: + - ubuntu2204-small + <<: *base_om8_dependency + tasks: + - name: gke_code_snippets_task_group + + - name: private_kind_code_snippets + display_name: private_kind_code_snippets + tags: [ "e2e_test_suite" ] + allowed_requesters: [ "patch", "github_pr" ] + run_on: + - ubuntu2204-large + <<: *base_om8_dependency + tasks: + - name: kind_code_snippets_task_group + + - name: prerelease_kind_code_snippets + display_name: prerelease_kind_code_snippets + allowed_requesters: [ "patch" ] + run_on: + - ubuntu2204-large + tasks: + - name: kind_code_snippets_task_group + + - name: public_kind_code_snippets + display_name: public_kind_code_snippets + allowed_requesters: [ "patch" ] + run_on: + - ubuntu2204-large + tasks: + - name: kind_code_snippets_task_group diff --git a/.evergreen.yml b/.evergreen.yml index 292380ca7..a754ddb9a 100644 --- a/.evergreen.yml +++ b/.evergreen.yml @@ -5,6 +5,7 @@ include: - filename: .evergreen-functions.yml - filename: .evergreen-tasks.yml - filename: .evergreen-mco.yml + - filename: .evergreen-snippets.yml variables: - &ops_manager_60_latest 6.0.27 # The order/index is important, since these are anchors. Please do not change @@ -79,32 +80,6 @@ variables: - func: setup_building_host - func: build_multi_cluster_binary - - &setup_and_teardown_group_gke_code_snippets - setup_task_can_fail_task: true - setup_group: - - func: clone - - func: setup_gcloud_cli - - func: setup_mongosh - - func: download_kube_tools - - func: build_multi_cluster_binary - teardown_group: - - func: upload_code_snippets_logs - - - &setup_and_teardown_group_kind_code_snippets - setup_task_can_fail_task: true - setup_group: - - func: clone - - func: cleanup_exec_environment - - func: download_kube_tools - - func: configure_docker_auth - - func: setup_kubernetes_environment - - func: setup_cloud_qa - teardown_task: - - func: upload_e2e_logs - - func: upload_code_snippets_logs - - func: teardown_kubernetes_environment - - func: teardown_cloud_qa - - &setup_and_teardown_task_cloudqa setup_task_can_fail_task: true setup_task: @@ -168,6 +143,7 @@ variables: - name: build_init_om_images_ubi variant: init_test_run + # Any change to base_om8_dependency should be reflected to its copy in .evergreen-snippets.yml - &base_om8_dependency depends_on: - name: build_om_images @@ -627,20 +603,6 @@ task_groups: - unit_tests_python - sbom_tests - - name: gke_code_snippets_task_group - <<: *setup_and_teardown_group_gke_code_snippets - max_hosts: -1 - tasks: - - task_gke_multi_cluster_snippets - - task_gke_multi_cluster_no_mesh_snippets - - - name: kind_code_snippets_task_group - <<: *setup_and_teardown_group_kind_code_snippets - max_hosts: -1 - tasks: - - task_kind_search_community_snippets - - task_kind_search_enterprise_snippets - # Task group for deploying mongodbcommunity resources and testing the (former) MCO - name: e2e_mdb_community_task_group max_hosts: -1 @@ -1802,65 +1764,6 @@ buildvariants: tasks: - name: release_all_agents_on_ecr - # These variants are used to test the code snippets and each one can be used in patches - # Prerelease is especially used when the repo is tagged - # More details in the TD: https://docs.google.com/document/d/1fuTxfRtP8QPtn7sKYxQM_AGcD6xycTZH8svngGxyKhc/edit?tab=t.0#bookmark=id.e8uva0393mbe - - name: public_gke_code_snippets - display_name: public_gke_code_snippets - allowed_requesters: ["patch"] - run_on: - - ubuntu2204-small - tasks: - - name: gke_code_snippets_task_group - - - name: prerelease_gke_code_snippets - display_name: prerelease_gke_code_snippets - tags: [ "release" ] - allowed_requesters: ["patch", "github_tag"] - depends_on: - - variant: release_images - name: '*' - patch_optional: true - run_on: - - ubuntu2204-small - tasks: - - name: gke_code_snippets_task_group - - - name: private_gke_code_snippets - display_name: private_gke_code_snippets - allowed_requesters: ["patch"] - run_on: - - ubuntu2204-small - <<: *base_om8_dependency - tasks: - - name: gke_code_snippets_task_group - - - name: private_kind_code_snippets - display_name: private_kind_code_snippets - tags: [ "e2e_test_suite" ] - allowed_requesters: ["patch", "github_pr"] - run_on: - - ubuntu2204-large - <<: *base_om8_dependency - tasks: - - name: kind_code_snippets_task_group - - - name: prerelease_kind_code_snippets - display_name: prerelease_kind_code_snippets - allowed_requesters: ["patch"] - run_on: - - ubuntu2204-large - tasks: - - name: kind_code_snippets_task_group - - - name: public_kind_code_snippets - display_name: public_kind_code_snippets - allowed_requesters: ["patch"] - run_on: - - ubuntu2204-large - tasks: - - name: kind_code_snippets_task_group - ### Build variants for manual patch only - name: backup_csv_images diff --git a/.gitignore b/.gitignore index ec7ebbab0..43e5d90b1 100644 --- a/.gitignore +++ b/.gitignore @@ -91,3 +91,5 @@ docs/**/test.sh.run.log # goreleaser generated files dist +logs +*.run.log diff --git a/docs/search/community/quick-start/README.md b/docs/search/01-search-community-deploy/README.md similarity index 84% rename from docs/search/community/quick-start/README.md rename to docs/search/01-search-community-deploy/README.md index 7f6b6af99..66388aac4 100644 --- a/docs/search/community/quick-start/README.md +++ b/docs/search/01-search-community-deploy/README.md @@ -25,10 +25,10 @@ Download or copy the content of `env_variables.sh`: [env_variables.sh](env_variables.sh) ```shell copy # set it to the context name of the k8s cluster -export K8S_CLUSTER_0_CONTEXT_NAME="" +export K8S_CTX="" # the following namespace will be created if not exists -export MDB_NAMESPACE="mongodb" +export MDB_NS="mongodb" # minimum required MongoDB version for running MongoDB Search is 8.0.10 export MDB_VERSION="8.0.10" @@ -63,9 +63,9 @@ Next, install the MongoDB Kubernetes Operator from the Helm repository you just [code_snippets/0100_install_operator.sh](code_snippets/0100_install_operator.sh) ```shell copy -helm upgrade --install --debug --kube-context "${K8S_CLUSTER_0_CONTEXT_NAME}" \ +helm upgrade --install --debug --kube-context "${K8S_CTX}" \ --create-namespace \ - --namespace="${MDB_NAMESPACE}" \ + --namespace="${MDB_NS}" \ mongodb-kubernetes \ --set "${OPERATOR_ADDITIONAL_HELM_VALUES:-"dummy=value"}" \ "${OPERATOR_HELM_CHART}" @@ -82,15 +82,15 @@ MongoDB requires authentication for secure access. This step creates two Kuberne [code_snippets/0305_create_mongodb_community_user_secrets.sh](code_snippets/0305_create_mongodb_community_user_secrets.sh) ```shell copy -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" --namespace "${MDB_NAMESPACE}" \ +kubectl --context "${K8S_CTX}" --namespace "${MDB_NS}" \ create secret generic mdb-admin-user-password \ --from-literal=password="${MDB_ADMIN_USER_PASSWORD}" -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" --namespace "${MDB_NAMESPACE}" \ +kubectl --context "${K8S_CTX}" --namespace "${MDB_NS}" \ create secret generic mdbc-rs-search-sync-source-password \ --from-literal=password="${MDB_SEARCH_SYNC_USER_PASSWORD}" -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" --namespace "${MDB_NAMESPACE}" \ +kubectl --context "${K8S_CTX}" --namespace "${MDB_NS}" \ create secret generic mdb-user-password \ --from-literal=password="${MDB_USER_PASSWORD}" @@ -106,7 +106,7 @@ Now, deploy MongoDB Community by creating a `MongoDBCommunity` custom resource n [code_snippets/0310_create_mongodb_community_resource.sh](code_snippets/0310_create_mongodb_community_resource.sh) ```yaml copy -kubectl apply --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" -f - < /tmp/mdb_script.js -mongosh --quiet "mongodb://mdb-user:${MDB_USER_PASSWORD}@mdbc-rs-0.mdbc-rs-svc.${MDB_NAMESPACE}.svc.cluster.local:27017/?replicaSet=mdbc-rs" < /tmp/mdb_script.js +mongosh --quiet "mongodb://mdb-user:${MDB_USER_PASSWORD}@mdbc-rs-0.mdbc-rs-svc.${MDB_NS}.svc.cluster.local:27017/?replicaSet=mdbc-rs" < /tmp/mdb_script.js EOF )" -``` +``` \ No newline at end of file diff --git a/docs/search/community/quick-start/README.md.j2 b/docs/search/01-search-community-deploy/README.md.j2 similarity index 100% rename from docs/search/community/quick-start/README.md.j2 rename to docs/search/01-search-community-deploy/README.md.j2 diff --git a/docs/search/01-search-community-deploy/code_snippets/01_0045_create_namespaces.sh b/docs/search/01-search-community-deploy/code_snippets/01_0045_create_namespaces.sh new file mode 100755 index 000000000..076899281 --- /dev/null +++ b/docs/search/01-search-community-deploy/code_snippets/01_0045_create_namespaces.sh @@ -0,0 +1 @@ +kubectl --context "${K8S_CTX}" create namespace "${MDB_NS}" diff --git a/docs/search/community/quick-start/code_snippets/0046_create_image_pull_secrets.sh b/docs/search/01-search-community-deploy/code_snippets/01_0046_create_image_pull_secrets.sh similarity index 68% rename from docs/search/community/quick-start/code_snippets/0046_create_image_pull_secrets.sh rename to docs/search/01-search-community-deploy/code_snippets/01_0046_create_image_pull_secrets.sh index 270bdbe11..7158760c4 100755 --- a/docs/search/community/quick-start/code_snippets/0046_create_image_pull_secrets.sh +++ b/docs/search/01-search-community-deploy/code_snippets/01_0046_create_image_pull_secrets.sh @@ -1,3 +1,3 @@ -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" \ +kubectl --context "${K8S_CTX}" -n "${MDB_NS}" \ create secret generic "image-registries-secret" \ --from-file=.dockerconfigjson="${HOME}/.docker/config.json" --type=kubernetes.io/dockerconfigjson diff --git a/docs/search/community/quick-start/code_snippets/090_helm_add_mogodb_repo.sh b/docs/search/01-search-community-deploy/code_snippets/01_0090_helm_add_mogodb_repo.sh similarity index 100% rename from docs/search/community/quick-start/code_snippets/090_helm_add_mogodb_repo.sh rename to docs/search/01-search-community-deploy/code_snippets/01_0090_helm_add_mogodb_repo.sh diff --git a/docs/search/community/quick-start/code_snippets/0100_install_operator.sh b/docs/search/01-search-community-deploy/code_snippets/01_0100_install_operator.sh similarity index 54% rename from docs/search/community/quick-start/code_snippets/0100_install_operator.sh rename to docs/search/01-search-community-deploy/code_snippets/01_0100_install_operator.sh index 36715a6a2..8ada5bee6 100755 --- a/docs/search/community/quick-start/code_snippets/0100_install_operator.sh +++ b/docs/search/01-search-community-deploy/code_snippets/01_0100_install_operator.sh @@ -1,6 +1,6 @@ -helm upgrade --install --debug --kube-context "${K8S_CLUSTER_0_CONTEXT_NAME}" \ +helm upgrade --install --debug --kube-context "${K8S_CTX}" \ --create-namespace \ - --namespace="${MDB_NAMESPACE}" \ + --namespace="${MDB_NS}" \ mongodb-kubernetes \ --set "${OPERATOR_ADDITIONAL_HELM_VALUES:-"dummy=value"}" \ "${OPERATOR_HELM_CHART}" diff --git a/docs/search/community/quick-start/code_snippets/0305_create_mongodb_community_user_secrets.sh b/docs/search/01-search-community-deploy/code_snippets/01_0305_create_mongodb_community_user_secrets.sh similarity index 56% rename from docs/search/community/quick-start/code_snippets/0305_create_mongodb_community_user_secrets.sh rename to docs/search/01-search-community-deploy/code_snippets/01_0305_create_mongodb_community_user_secrets.sh index 49b29b054..6e28372b7 100755 --- a/docs/search/community/quick-start/code_snippets/0305_create_mongodb_community_user_secrets.sh +++ b/docs/search/01-search-community-deploy/code_snippets/01_0305_create_mongodb_community_user_secrets.sh @@ -1,12 +1,12 @@ -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" --namespace "${MDB_NAMESPACE}" \ +kubectl --context "${K8S_CTX}" --namespace "${MDB_NS}" \ create secret generic mdb-admin-user-password \ --from-literal=password="${MDB_ADMIN_USER_PASSWORD}" -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" --namespace "${MDB_NAMESPACE}" \ +kubectl --context "${K8S_CTX}" --namespace "${MDB_NS}" \ create secret generic mdbc-rs-search-sync-source-password \ --from-literal=password="${MDB_SEARCH_SYNC_USER_PASSWORD}" -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" --namespace "${MDB_NAMESPACE}" \ +kubectl --context "${K8S_CTX}" --namespace "${MDB_NS}" \ create secret generic mdb-user-password \ --from-literal=password="${MDB_USER_PASSWORD}" diff --git a/docs/search/community/quick-start/code_snippets/0310_create_mongodb_community_resource.sh b/docs/search/01-search-community-deploy/code_snippets/01_0310_create_mongodb_community_resource.sh similarity index 73% rename from docs/search/community/quick-start/code_snippets/0310_create_mongodb_community_resource.sh rename to docs/search/01-search-community-deploy/code_snippets/01_0310_create_mongodb_community_resource.sh index c67eb2bc6..83c1a2c6b 100755 --- a/docs/search/community/quick-start/code_snippets/0310_create_mongodb_community_resource.sh +++ b/docs/search/01-search-community-deploy/code_snippets/01_0310_create_mongodb_community_resource.sh @@ -1,4 +1,4 @@ -kubectl apply --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" -f - < /tmp/mdb_script.js -mongosh --quiet "mongodb://mdb-user:${MDB_USER_PASSWORD}@mdbc-rs-0.mdbc-rs-svc.${MDB_NAMESPACE}.svc.cluster.local:27017/?replicaSet=mdbc-rs" < /tmp/mdb_script.js +mongosh --quiet "${MDB_CONNECTION_STRING}" < /tmp/mdb_script.js EOF )" diff --git a/docs/search/03-search-query-usage/code_snippets/03_0455_execute_vector_search_query.sh b/docs/search/03-search-query-usage/code_snippets/03_0455_execute_vector_search_query.sh new file mode 100644 index 000000000..fb522d697 --- /dev/null +++ b/docs/search/03-search-query-usage/code_snippets/03_0455_execute_vector_search_query.sh @@ -0,0 +1,30 @@ +mdb_script=$(cat <<'EOF' +use sample_mflix; +db.embedded_movies.aggregate([ + { + "$vectorSearch": { + "index": "vector_index", + "path": "plot_embedding_voyage_3_large", + "queryVector": [-0.034731735,0.008558298,-0.0153717,-0.029912498,0.011549547,0.010261648,-0.011964999,-0.023265276,0.010303194,-0.006896493,-0.00054528,0.003926015,-0.025757983,0.027419789,0.001199616,-0.036227357,-0.005297005,0.021935832,0.010303194,-0.019193852,0.025093261,-0.040049512,-0.033900831,-0.011466458,-0.01827986,-0.0153717,0.023265276,0.007727395,0.000114249,0.005317777,-0.043871664,-0.02127111,-0.019609304,0.016368784,-0.004756918,0.003552109,0.006522586,-0.005400868,-0.015620971,-0.034565553,-0.018695312,-0.023099095,0.050851244,-0.034731735,0.004819236,0.022268193,-0.095719993,0.05517194,-0.046198189,-0.036393538,0.007187308,-0.02459472,-0.036725901,0.009472291,0.019027673,0.020938748,-0.011051006,0.027087428,0.04586583,-0.022600554,-0.05517194,0.044204023,0.01213118,0.047859997,-0.03938479,0.002928932,0.002056484,0.019443123,-0.028583053,0.013543714,0.022932915,0.011632638,0.004923099,0.000389486,0.020024756,-0.024096178,-0.022766734,0.011217186,-0.003198975,0.007104218,-0.047195274,-0.013377533,0.013294443,0.024096178,-0.056501385,-0.026755067,-0.008433662,-0.001911076,0.007976666,-0.008101301,-0.014042255,0.008641388,-0.02176965,0.010012378,-0.000607598,-0.024927082,0.024927082,-0.018612221,-0.001184036,0.005567048,0.001324251,-0.019526213,-0.023597637,0.060489718,-0.010178559,-0.019609304,0.004112968,-0.011217186,-0.031574301,-0.008766023,0.005483958,-0.061819162,-0.023431456,-0.040714234,0.015039339,0.026422706,0.016202603,0.004653055,0.041046593,-0.018030589,0.040381871,-0.002638116,0.013045172,0.004216831,0.005650138,0.027419789,0.003926015,-0.028749233,0.004798463,-0.030244859,0.063813329,0.007145763,-0.017448956,0.025591804,-0.045201108,0.010718645,0.002804297,0.014291527,0.04586583,-0.015205519,-0.021603471,-0.035230275,0.00760276,0.033236109,0.016534964,-0.043206941,-0.003115885,-0.026256526,0.005940954,0.016534964,0.024262359,-0.001630647,0.028084511,-0.012795902,0.007270399,0.001381376,-0.009763107,-0.006896493,0.008433662,-0.019360034,0.000386889,0.030411039,0.025591804,0.010469374,0.037722982,-0.001147684,-0.005400868,0.052845411,-0.052513052,0.00768585,-0.004299921,0.00922302,0.011881908,0.012962082,-0.068798743,0.003593654,0.020938748,-0.013792985,-0.034565553,-0.007519669,-0.04021569,-0.020689478,0.006273315,0.046862911,0.006107135,0.002638116,-0.013792985,-0.005400868,-0.020274026,0.007644305,-0.010801735,0.026422706,0.043871664,0.003780607,0.010261648,-0.064145692,0.011881908,-0.009056839,0.009347656,-0.02459472,0.026422706,0.033236109,0.041212775,0.019027673,-0.00315743,0.004424557,0.020689478,-0.0153717,-0.015205519,-0.034897912,0.020274026,0.016867325,0.040714234,-0.022766734,-0.010967916,0.026256526,0.007062673,-0.015953332,-0.007727395,0.031574301,-0.002887387,-0.00614868,0.004569965,0.019027673,0.012878992,0.011798819,0.004258377,-0.019193852,-0.021437289,-0.021603471,0.000301202,-0.051183607,-0.004985416,-0.030078677,0.012629721,0.065142773,-0.031740483,-0.021104928,-0.03938479,-0.003365156,-0.016036423,0.036393538,0.009804652,-0.018612221,0.060489718,-0.003697517,0.000547876,0.063480966,0.02758597,0.010053922,-0.003655972,-0.001485239,0.018362951,0.021104928,-0.003905243,0.019443123,-0.002658889,-0.00380138,-0.013626805,0.035894997,0.035396457,-0.005691683,0.002762751,0.012878992,-0.009596926,-0.009970833,-0.015953332,0.022434372,0.00614868,-0.021188019,0.001557943,-0.020190936,0.009763107,0.017448956,0.006730312,0.005567048,0.019692395,-0.00218112,-0.016867325,0.006854947,0.007976666,0.019193852,0.040880412,0.007353489,-0.02127111,-0.031906664,-0.026755067,-0.017947499,0.040381871,0.042209856,0.00913993,-0.0307434,-0.017781317,-0.015039339,0.03057722,0.017532047,0.0187784,-0.060822077,0.002928932,-0.026422706,-0.005899409,0.039717149,0.026588887,-0.000971118,0.004923099,-0.013626805,0.0187784,-0.031408124,-0.000695881,0.050851244,-0.014457707,-0.007311944,-0.001293092,-0.002139574,-0.019276943,0.00290816,0.019360034,-0.017781317,0.002160347,0.016618054,-0.006522586,0.011798819,0.029247776,-0.02775215,0.010344739,-0.018362951,-0.036725901,-0.015870241,0.015704062,-0.012463541,0.02459472,-0.024096178,0.001152877,-0.031408124,0.025425622,0.027087428,0.00922302,0.034565553,0.015704062,-0.020689478,-0.00517237,-0.014706978,-0.001589101,0.026090344,0.014956249,0.011715728,0.004299921,-0.00913993,0.022434372,-0.03705826,0.048524719,-0.030411039,0.008433662,0.017033506,-0.000511525,-0.031408124,0.005940954,-0.012962082,-0.031574301,0.017448956,0.010178559,-0.011383367,-0.020107845,-0.005151597,0.006647222,0.013128263,0.007145763,0.008059756,-0.045201108,-0.004943871,0.015787151,-0.045201108,-0.020772567,-0.020274026,0.028250692,-0.024262359,-0.004424557,0.009804652,0.000472576,-0.005691683,0.001443693,-0.013294443,0.001412535,0.013211353,-0.01213118,-0.002118802,0.017781317,-0.007353489,-0.031075761,-0.004923099,0.011383367,-0.004486875,-0.010178559,0.016618054,0.014457707,0.023763817,-0.02459472,-0.00388447,0.012546631,-0.007519669,0.015704062,-0.014291527,0.009680017,-0.035562634,0.023763817,0.053510133,-0.0555043,-0.003572882,0.022102011,0.021603471,-0.017282777,-0.001474852,-0.043539301,0.007810486,-0.025757983,-0.005400868,0.029912498,-0.00760276,0.014125346,0.030909581,-0.03340229,-0.009680017,0.018030589,0.008849114,0.03057722,0.019775484,0.014125346,0.031906664,-0.03057722,-0.027087428,-0.023597637,-0.022434372,-0.012878992,0.016285693,-0.021603471,-0.029746316,0.029746316,0.020357117,0.006314861,-0.001158071,0.028749233,-0.045201108,0.011383367,0.011134096,-0.021437289,-0.035728816,0.001827986,0.008267482,-0.057498466,0.01213118,-0.01213118,-0.040548053,0.010718645,0.004798463,-0.004881553,-0.019526213,-0.008558298,0.0059825,-0.000262254,-0.017615138,0.005193142,0.019692395,-0.00198378,-0.002845842,0.012546631,0.006107135,-0.008225936,-0.008890659,0.015870241,0.00517237,0.002596571,-0.010427829,-0.019110762,0.024262359,0.012048089,-0.032405205,0.006522586,0.013211353,0.013211353,-0.038221523,-0.007727395,-0.008267482,-0.019276943,0.001474852,0.031408124,-0.035562634,0.017532047,-0.023431456,-0.015454791,-0.011383367,0.016534964,-0.02176965,0.008682934,0.027253609,0.020190936,-0.0247609,-0.007311944,0.009555381,-0.01852913,-0.011632638,0.011549547,0.027419789,-0.034067012,-0.01229736,0.0307434,0.003946788,0.0046946,0.037722982,0.03057722,-0.010427829,0.002284982,0.033236109,0.030078677,-0.013377533,0.007395034,-0.012048089,0.040714234,-0.028749233,-0.000102565,-0.0059825,-0.041046593,0.017698228,-0.006356406,0.003178203,0.009056839,0.023099095,0.00606559,0.011881908,-0.02127111,-0.001126912,-0.027087428,0.011134096,0.001204809,-0.017033506,0.011051006,-0.014374617,0.017864408,0.023431456,-0.002077257,-0.026755067,-0.043871664,0.025757983,-0.006190225,0.001152877,0.011798819,-0.024262359,0.006564131,-0.070128188,-0.004362239,0.012962082,-0.013626805,-0.001402148,-0.012214269,0.011217186,-0.015953332,0.015787151,0.011134096,0.027253609,0.024262359,-0.048192356,0.009970833,0.018944582,-0.00517237,0.021935832,0.02775215,0.003406701,-0.010884825,0.075113602,-0.015953332,0.007727395,0.026755067,-0.006190225,-0.012712811,0.013377533,0.005940954,-0.008309027,0.02459472,0.002316141,-0.022434372,-0.012712811,0.03057722,-0.015787151,0.026755067,-0.001069787,0.03988333,-0.003697517,0.039550968,-0.019027673,-0.0059825,-0.00031029,-0.012546631,-0.003614427,0.007478124,0.005525503,0.032571387,-0.011798819,-0.011466458,-0.00606559,-0.011798819,0.018446039,0.007976666,0.018944582,-0.02176965,0.026588887,-0.006273315,-0.012463541,-0.007395034,0.012048089,-0.029247776,0.015454791,-0.007145763,0.006481041,-0.015620971,-0.00388447,-0.025757983,-0.001651419,-0.032903746,-0.005068507,0.03938479,0.003926015,0.004715373,0.022600554,-0.012546631,0.022932915,0.007810486,0.040714234,0.019941665,0.013543714,0.003406701,0.010884825,-0.03988333,0.042209856,-0.022766734,0.027419789,-0.029580137,0.043206941,0.022932915,0.021104928,-0.056833744,0.005193142,0.036061179,-0.012878992,0.008516753,-0.02758597,-0.030244859,-0.011798819,0.001111332,-0.014125346,-0.014125346,0.019027673,0.029081594,0.018861491,0.013626805,0.06846638,0.023099095,0.041378956,0.001599488,-0.028749233,0.017781317,0.016285693,0.021603471,-0.018113678,0.011300277,-0.032239024,0.022434372,-0.02459472,-0.013626805,0.005483958,0.013460624,-0.031574301,-0.015620971,0.016451873,0.014790068,-0.008849114,0.011134096,0.00461151,0.015122429,0.036227357,0.00206687,0.000877641,0.022102011,-0.028250692,0.022600554,-0.026422706,0.004029878,-0.032072846,0.017116595,0.010884825,0.019609304,0.00614868,0.005733229,0.016119512,0.002866614,-0.014540797,0.012463541,-0.003905243,0.003759835,-0.000485559,-0.022766734,-0.016285693,0.037722982,0.009513836,0.001506011,0.011964999,0.004029878,0.019941665,-0.000965924,0.002129188,0.015205519,0.071125269,0.022932915,0.005940954,-0.00044661,0.010220103,-0.03423319,-0.016285693,-0.016867325,-0.000659529,-0.008018211,-0.011383367,0.000016634,0.004071423,-0.029413955,0.019941665,-0.00913993,-0.024096178,0.010635555,0.010594009,0.001547556,0.036227357,-0.030078677,0.020772567,0.022268193,-0.014125346,0.008766023,-0.012962082,-0.007187308,0.017033506,-0.007187308,-0.015205519,-0.005608593,0.044536386,-0.001235968,0.007852031,0.001599488,0.005857864,-0.005940954,-0.010510919,-0.005567048,0.006730312,0.016285693,-0.010801735,-0.024428539,0.015122429,-0.02176965,0.01528861,-0.007436579,0.00226421,-0.004715373,0.004507647,0.004341467,0.005525503,-0.031075761,-0.005899409,0.037556801,0.014873158,-0.000342747,0.009970833,-0.019443123,0.023597637,-0.012048089,-0.025259443,0.006024044,-0.01827986,0.010012378,0.016784234,0.013211353,-0.005400868,-0.024428539,-0.02176965,-0.035230275,0.009347656,0.028583053,-0.015704062,-0.017781317,0.00226421,0.001199616,-0.003385928,0.008267482,0.002326528,0.022434372,-0.020190936,-0.015787151,0.000789358,0.031241942,0.011300277,0.001506011,-0.023265276,-0.010967916,0.009056839,0.011300277,-0.030244859,0.007478124,0.001111332,-0.035894997,0.0153717,0.002700434,0.021104928,0.010884825,-0.003344383,0.00768585,0.010386284,0.00452842,-0.014706978,0.028084511,0.013377533,0.014873158,0.046862911,-0.015454791,0.021188019,0.013959166,0.012629721,0.025924165,-0.018695312,-0.00922302,-0.0093892,0.007727395,0.036892079,0.007228854,-0.01229736,0.029247776,-0.004943871,-0.027253609,-0.008433662,0.043206941,0.002825069,0.028583053,-0.023431456,0.034897912,-0.041545134,-0.016534964,0.003053567,-0.012712811,0.002741979,-0.007187308,-0.025093261,-0.045201108,-0.004424557,-0.016618054,-0.008890659,0.008018211,-0.05184833,-0.019526213,-0.013377533,-0.010469374,0.030244859,-0.005068507,0.051183607,0.005483958,-0.006024044,0.035064094,-0.011134096,0.014956249,0.002284982,0.001724123,-0.01229736,0.012629721,0.010261648,0.014540797,0.048857078,-0.029580137,-0.024927082,-0.008350573,-0.03988333,0.000939959,0.013543714,0.013626805,-0.021437289,-0.012962082,0.006771857,0.013709894,-0.0059825,0.035396457,-0.006439496,-0.029580137,0.0046946,0.019609304,-0.007270399,0.014291527,-0.015620971,0.00118923,-0.00760276,-0.017199686,0.023265276,0.026588887,-0.030078677,-0.016701145,-0.025757983,0.004964644,0.026588887,0.043206941,0.011051006,-0.009846197,0.028915415,0.031574301,0.023763817,0.009264565,-0.008433662,-0.035064094,-0.000579035,-0.0247609,0.014125346,0.016618054,0.028749233,-0.052513052,-0.016867325,-0.01238045,0.002741979,0.013709894,0.010718645,0.013626805,0.009596926,-0.004403784,-0.02758597,-0.000945152,0.000420645,0.003759835,0.012546631,-0.011881908,0.008392117,0.012795902,0.005483958,-0.009763107,0.006397951,-0.010801735,0.012795902,-0.03938479,0.005733229,0.005733229,-0.000433627,0.015454791,0.002357686,-0.006564131,0.030244859,-0.024428539,0.016036423,0.014291527,-0.004964644,0.029413955,0.040381871,0.012629721,-0.033568468,-0.026422706,-0.037889164,-0.034399372,-0.03423319,0.021935832,0.004133741,-0.014623888,-0.013543714,-0.05517194,0.004736145,0.006314861,0.00006037,0.006356406,0.003323611,-0.010344739,0.007062673,0.005899409,-0.00623177,-0.001973394,-0.0555043,0.011881908,0.001350217,-0.033069927,-0.026921248,0.022268193,0.028583053,-0.021021837,0.010884825,0.019692395,-0.005442413,0.031574301,-0.014956249,0.01238045,-0.006356406,0.006273315,-0.003095113,-0.014540797,-0.02176965,0.005006189,-0.002658889,0.042542219,-0.02176965,0.017199686,-0.016701145,-0.001599488,0.016950415,-0.021188019,0.017864408,0.023763817,-0.000669915,0.025093261,0.021104928,0.008807569,0.037390623,-0.025591804,-0.003178203,-0.001319058,0.020523297,0.005255459,0.019276943,-0.00226421,0.00760276,-0.057166107,-0.006896493,-0.034067012,0.043871664,0.038221523,0.008101301,0.03988333,0.015870241,0.000955538,-0.004299921,-0.002928932,-0.002118802,-0.020523297,-0.001168457,-0.011134096,-0.000685495,0.003323611,0.011549547,0.034565553,0.029247776,-0.029746316,0.005213914,0.019110762,-0.003302838,0.026422706,0.028915415,-0.036227357,0.033236109,0.038387705,-0.035230275,0.004071423,-0.021935832,0.002928932,0.000976311,0.000527104,-0.006854947,-0.003822153,-0.001199616,0.019858574,-0.002762751,0.039052427,-0.008641388,0.032239024,-0.002295369,0.035396457,0.044536386,-0.029413955,0.025093261,-0.03423319,-0.016867325,-0.008849114,0.008433662,-0.004486875,0.017033506,0.006730312,-0.008599843,-0.008225936,-0.024428539,0.006564131,-0.007561215,-0.032072846,-0.019941665,0.035396457,0.019276943,0.010261648,0.005857864,0.032239024,-0.044204023,-0.018944582,0.002409618,0.032903746,0.05517194,-0.03655972,0.007976666,0.030909581,-0.023929998,0.016368784,0.01528861,-0.00768585,0.02176965,0.013626805,-0.02459472,0.04021569,-0.032737568,0.006854947,-0.011383367,0.014873158,-0.02176965,0.00243039,0.0093892,0.0093892,-0.029580137,0.019858574,0.01827986,0.024428539,0.017864408,-0.028250692,-0.001111332,0.056169022,0.007478124,-0.010718645,0.041046593,-0.015704062,0.034731735,0.002523867,-0.032571387,0.004341467,-0.023597637,-0.011881908,-0.035562634,0.006688767,0.007810486,-0.012712811,0.022600554,0.03057722,0.022600554,0.010552464,0.0307434,-0.009638472,0.02176965,-0.018030589,0.024262359,-0.036227357,-0.020772567,0.001641033,-0.022932915,-0.014623888,0.018362951,0.002575798,0.006190225,-0.011051006,0.021021837,0.019110762,0.02127111,-0.028583053,-0.052180689,-0.014291527,-0.010552464,0.036393538,0.042542219,-0.04586583,-0.001869531,0.008350573,-0.008516753,-0.020772567,0.000294711,0.015704062,-0.014457707,-0.020772567,0.008766023,-0.026588887,-0.004736145,-0.028084511,-0.007519669,0.010552464,-0.016534964,0.006190225,0.012962082,-0.016618054,0.012546631,0.02459472,0.022932915,0.020440206,-0.027918331,-0.008059756,0.020689478,-0.014623888,-0.011466458,-0.006896493,-0.020024756,-0.031408124,0.021603471,0.007270399,-0.03057722,0.008350573,-0.021437289,0.00072704,-0.043871664,0.006314861,-0.017199686,0.02176965,0.024262359,-0.020357117,-0.000542683,-0.005213914,0.001963008,-0.00064395,-0.022434372,0.022102011,-0.006688767,-0.028583053,0.002191506,-0.005047734,0.002368073,0.014956249,0.023929998,-0.003302838,-0.032239024,0.022268193,-0.013377533,-0.010801735,0.003676744,0.009015295,-0.039550968,0.010884825,-0.033568468,0.013709894,-0.029413955,-0.006356406,-0.020274026,0.023597637,0.030909581,0.02176965,0.016285693,0.045533467,-0.024096178,-0.030909581,-0.026422706,0.002783524,-0.010594009,0.004362239,-0.070792913,0.009472291,-0.022102011,0.011134096,-0.017448956,-0.011549547,-0.056833744,0.00082571,0.026588887,-0.013709894,0.002575798,0.02176965,-0.000568649,-0.007270399,0.004279149,-0.042874578,-0.026588887,0.016784234,0.036725901,-0.028915415,-0.009513836,0.017448956,0.002035712,-0.007228854,0.011383367,0.011134096,0.028915415,0.0153717,-0.027087428,0.043871664,-0.005089279,0.006314861,0.014291527,-0.003240521,0.025924165,-0.001230775,-0.015454791,-0.012629721,0.031740483,-0.039717149,-0.031075761,0.006605676,-0.008641388,-0.032239024,0.037722982,-0.03705826,-0.024096178,0.001911076,0.018196769,-0.007353489,-0.011300277,-0.029081594,0.004590738,-0.018030589,-0.026588887,0.010261648,0.038221523,0.008392117,-0.01213118,0.018362951,-0.034731735,-0.017781317,-0.011632638,0.005255459,0.000851675,0.014208436,-0.000039922,-0.000228498,0.014790068,0.00913993,0.0004544,-0.011798819,-0.020440206,0.005899409,0.008350573,0.006314861,0.040548053,0.003427474,-0.010801735,0.008599843,0.002586185,-0.041212775,-0.016368784,0.020024756,0.000965924,-0.021021837,-0.008475208,0.0307434,0.00760276,0.003614427,0.003489791,-0.025924165,0.000799744,0.013460624,-0.020440206,0.048857078,0.004320694,-0.048857078,0.015039339,-0.029580137,0.025924165,0.018861491,-0.014706978,0.000576439,-0.031241942,0.0307434,0.0153717,0.014706978,0.028084511,-0.01238045,-0.031241942,0.018196769,-0.034897912,0.008142847,0.010718645,0.00922302,0.047859997,-0.00072704,-0.010427829,0.007104218,0.026256526,0.012214269,-0.013377533,-0.05184833,0.005276232,0.021935832,-0.007021128,0.009804652,0.007893575,0.024096178,-0.002357686,0.033900831,-0.031740483,0.034565553,-0.036892079,-0.015454791,0.030411039,0.010552464,-0.022268193,-0.001391762,-0.008184392,-0.008558298,0.008475208,-0.009929287,0.010427829,0.041378956,-0.009555381,-0.008724478,-0.039052427,0.034731735,-0.014291527,0.023099095,0.029081594,0.007519669,0.010967916,-0.008142847,0.006190225,-0.031075761,0.033734649,-0.001672192,0.047859997,-0.022434372,-0.007395034,0.01213118,0.056169022,0.002762751,-0.029413955,-0.000763392,-0.015787151,0.010801735,0.008142847,0.029912498,-0.0018176,0.033236109,-0.046198189,-0.002492708,-0.006730312,0.008807569,-0.03655972,0.009430746,-0.053842496,-0.060489718,0.046862911,0.002783524,-0.0187784,0.000571246,0.00760276,0.002482322,0.001319058,-0.014291527,0.001464466,-0.011632638,-0.012463541,-0.004902326,0.000841289,0.006688767,0.030244859,0.018944582,0.000532297,-0.015620971,0.007104218,0.005608593,0.002035712,-0.023763817,0.003032795,0.010594009,-0.023597637,-0.042376038,-0.005255459,0.001199616,-0.0247609,-0.007893575,-0.011632638,0.013045172,-0.005691683,-0.007104218,0.027419789,-0.004320694,-0.005525503,-0.026090344,0.031408124,-0.012795902,-0.007062673,0.000939959,0.000030185,0.004175286,0.014291527,0.033236109,-0.038720068,0.074116521,-0.019692395,0.001589101,0.013792985,-0.056169022,-0.028749233,-0.001599488,0.004175286,0.014790068,0.00162026,-0.007519669,-0.041378956,0.016534964,-0.003572882,-0.002575798,-0.019526213,-0.00922302,-0.033900831,-0.042043675,-0.014208436,0.010178559,0.017698228,0.032239024,0.00913993,0.009264565,-0.012463541,-0.005857864,-0.015870241,0.004486875,0.018861491,-0.000176567,-0.029912498,0.016784234,0.012546631,0.051183607,0.023597637,0.032903746,0.0153717,-0.013377533,-0.000016634,-0.061486799,-0.034565553,0.016119512,0.00380138,-0.003863698,0.004362239,-0.017532047,-0.002762751,0.000102565,-0.021437289,0.029247776,-0.010718645,-0.015870241,-0.016285693,0.010220103,-0.000373906,0.012962082,0.010137013,-0.007228854,0.02127111,-0.029247776,0.018113678,0.009181475,0.002233051,0.014374617,-0.00396756,0.010801735,0.007644305,0.020855658,0.014790068,0.032737568,-0.037390623,0.003032795,0.010801735,-0.01553788,-0.014790068,0.019526213,-0.017947499,-0.007893575,-0.011964999,-0.00614868,-0.005857864,-0.032072846,-0.025924165,0.001163264,-0.013294443,-0.01553788,0.016701145,-0.013460624,-0.001111332,0.00760276,0.01553788,-0.033734649,0.048192356,-0.003282066,0.031906664,0.002845842,0.003240521,0.017116595,-0.01827986,0.006896493,-0.00760276,-0.009680017,-0.02459472,-0.020689478,-0.053510133,0.00614868,-0.010552464,-0.032405205,-0.0307434,0.025093261,0.003635199,-0.008101301,-0.00606559,-0.007436579,0.00606559,-0.012962082,0.026921248,0.009098385,0.046530552,-0.011632638,0.032571387,-0.033900831,0.009846197,0.002866614,0.032903746,0.008973749,0.012712811,0.040049512,0.013626805,-0.026256526,-0.031408124,0.036227357,0.011964999,-0.006024044,-0.001848759,0.015704062,-0.021188019,-0.035064094,-0.013377533,-0.009721561,-0.01553788,0.008766023,0.005400868,0.004507647,-0.018362951,-0.026588887,-0.00913993,-0.025591804,0.035894997,0.021935832,-0.031906664,-0.000602404,0.026422706,-0.006397951,0.006647222,0.0093892,0.020606387,0.00913993,0.015620971,-0.024096178,0.00063616,-0.006564131,0.01238045,-0.013709894,0.000563456,-0.009887742,0.016618054,-0.003323611,0.000451803,0.001609874,0.008682934,0.025259443,0.020024756,-0.027253609,0.010884825,0.028250692,-0.054839578,0.033568468,-0.004902326,0.003053567,0.020274026,-0.015704062,-0.00614868,-0.063813329,0.002482322,0.009763107,-0.001609874,-0.012214269,0.020107845,0.001921462,0.018695312,-0.004923099,0.007270399,-0.023763817,0.005234687,0.003406701,0.002565412,0.007104218,0.000841289,0.016202603,0.01827986,-0.031075761,-0.035562634,-0.025259443,-0.007021128,0.000641353,-0.033069927,0.010718645,0.005650138,0.024927082,-0.002658889,0.00380138,0.009929287,-0.004258377,-0.039717149,-0.022434372,0.025425622,0.00198378,0.006356406,0.017615138,-0.032072846,0.046862911,-0.026921248,0.005940954,0.021603471,-0.002253824,0.002825069,-0.030411039,-0.003115885,0.023597637,-0.004320694,-0.007852031,0.018030589,-0.008724478,-0.005733229,0.032903746,0.013876075,0.015454791,-0.023597637,0.005151597,-0.035396457,0.02176965,-0.012463541,0.025591804,0.014540797,-0.027918331,0.004154514,0.008724478,0.016036423,-0.015870241,0.005400868,-0.017365867,-0.044868745,-0.000485559,0.020357117,-0.00760276,-0.023265276,-0.012048089,0.008433662,0.018362951,-0.006979583,0.0307434,0.008392117,0.027087428,-0.019360034,0.016119512,0.02127111,0.010801735,0.00299125,0.002949705,0.012463541,-0.000025966,0.015953332,0.029413955,0.020024756,0.003780607,0.022102011,-0.031740483,0.01553788,0.010386284,0.028749233,-0.010884825,0.008682934,-0.003531337,-0.05517194,-0.019360034,-0.009347656,-0.002025325,0.003261293,-0.025425622,-0.01553788,-0.000251867,0.014291527,0.012546631,0.035728816,-0.007062673,-0.006605676,0.000384293,-0.005047734,-0.032571387,-0.021188019,-0.02127111,-0.016036423,0.008475208,-0.004009106,0.014291527,-0.008101301,0.004424557,-0.038221523,-0.019360034,0.015039339,-0.015454791,-0.029580137,0.035728816,0.004466102,-0.000778971,-0.005068507,-0.017781317,0.00477769,0.001838372,0.030244859,0.01213118,-0.022932915,-0.005359322,0.037390623,0.005899409,0.002046098,0.037889164,0.016701145,0.010303194,0.02127111,-0.009513836,-0.022268193,-0.005650138,-0.00388447,0.016534964,-0.023265276,-0.00054528,0.004819236,0.004715373,-0.001178843,-0.051183607,-0.00614868,-0.010552464,-0.002741979,-0.009181475,0.023597637,0.019193852,0.017199686,-0.036393538,-0.00243039,-0.015870241,-0.014706978,-0.00145408,0.016368784,-0.011632638,-0.014623888,-0.01229736,-0.01553788,0.040880412,0.023929998,-0.014623888,0.002648502,0.031906664,-0.033734649,-0.026755067,0.002783524,0.005359322,0.009970833,0.001412535,0.016950415,0.016285693,-0.006730312,-0.02459472,0.050851244,-0.001827986,-0.020855658,0.020938748,0.004071423,-0.021603471,-0.007852031,-0.023929998,-0.029912498,-0.003365156,0.017365867,-0.010427829,-0.011715728,0.014956249,0.011383367,0.032405205,-0.028583053,-0.017448956,0.018446039,0.017615138,0.035728816,-0.010095468,-0.00254464,0.010012378,0.028250692,-0.020855658,-0.002305755,-0.001002276,-0.014125346,-0.007021128,-0.028583053,-0.045533467,-0.02758597,-0.020440206,0.001350217,0.010053922,0.020689478,-0.017615138,0.026422706,0.040880412,0.012463541,-0.010718645,-0.014706978,0.068134025,0.038720068,0.047859997,-0.012546631,0.015704062,-0.002087643,-0.010303194,0.014790068,0.018612221,0.007395034,-0.014790068,-0.017864408,-0.005068507,-0.054507218,0.004902326,-0.004050651,0.021603471,0.019775484,-0.024262359,-0.012795902,0.021935832,-0.004009106,-0.039717149,0.037556801,-0.016701145,-0.025757983,0.005483958,-0.005110051,-0.021935832,-0.003406701,0.010594009,0.015787151,-0.049854163,0.007727395,-0.008392117,-0.017199686,0.009970833,-0.008849114,-0.013876075,-0.0059825,-0.015870241,-0.007104218,0.028250692,-0.029081594,0.026921248,0.00299125,-0.017781317,0.042542219,0.018196769,0.052845411,-0.004819236,-0.014125346,0.02459472,-0.011715728,0.015787151,-0.005774774,0.004902326,-0.004964644,-0.02758597,-0.013959166,-0.033568468,-0.027918331,-0.017698228,0.003489791,-0.020024756,-0.021603471,0.019360034,0.028084511,-0.002503094,-0.018861491,-0.002295369,0.050851244,-0.020689478,-0.000459593,-0.026090344,0.002783524,-0.005899409,-0.026921248,-0.0093892,-0.004112968,0.031574301,0.003926015,-0.032903746,-0.046198189,-0.019027673,-0.00913993,0.030411039,-0.019443123,0.001963008,-0.005193142,0.010884825,-0.02127111,-0.025259443,0.032737568,0.00089322,0.003282066,0.001713737,-0.006439496,0.016867325,-0.031574301,0.031075761,-0.009970833,0.022600554,-0.023597637,-0.014956249,0.004009106,0.00198378,0.026588887,-0.023431456,-0.023763817,-0.013294443,-0.029746316,0.001381376,-0.042874578,-0.00913993,0.014873158,0.016202603,0.012878992,-0.006024044,0.009638472,0.010552464,-0.017033506,-0.027087428,0.044536386,-0.038055345,0.001329444,-0.019609304,0.023597637,-0.043206941,0.040049512,0.017615138,0.046862911,0.02127111,0.013294443,-0.039550968,-0.018861491,-0.019609304,-0.033734649,0.00623177,-0.017199686,0.041212775,-0.017781317,-0.024262359,0.054507218,-0.009721561,0.005816319,-0.00206687,-0.008766023,0.017365867,-0.000737426,0.018362951,-0.023597637,-0.019110762,0.021935832,0.041545134,-0.020357117,-0.017615138,0.044868745,-0.018030589,-0.032405205,-0.050186522,-0.014540797,0.005213914,-0.006688767,0.047527634,0.040714234], + "numCandidates": 150, + "limit": 10, + "quantization": "scalar" + } + }, + { + "$project": { + "_id": 0, + "plot": 1, + "title": 1, + "score": { $meta: "vectorSearchScore" } + } + } +]); +EOF +) + +kubectl exec --context "${K8S_CTX}" -n "${MDB_NS}" mongodb-tools-pod -- /bin/bash -eu -c "$(cat < /tmp/mdb_script.js +mongosh --quiet "${MDB_CONNECTION_STRING}" < /tmp/mdb_script.js +EOF +)" diff --git a/docs/search/03-search-query-usage/code_snippets/03_9010_delete_namespace.sh b/docs/search/03-search-query-usage/code_snippets/03_9010_delete_namespace.sh new file mode 100755 index 000000000..2d28e4bb7 --- /dev/null +++ b/docs/search/03-search-query-usage/code_snippets/03_9010_delete_namespace.sh @@ -0,0 +1 @@ +kubectl --context "${K8S_CTX}" delete namespace "${MDB_NS}" diff --git a/docs/search/03-search-query-usage/env_variables.sh b/docs/search/03-search-query-usage/env_variables.sh new file mode 100644 index 000000000..af6bd874c --- /dev/null +++ b/docs/search/03-search-query-usage/env_variables.sh @@ -0,0 +1,20 @@ +# The env vars here are all commented out because this snippets module +# is reusable across different MongoDB deployments and all the necessary variables +# should be already defined there. + +# set it to the context name of the k8s cluster +#export K8S_CTX="" +# the following namespace will be used to deploy mongodb tools pod +#export MDB_NS="mongodb" + +# regular user performing restore and search queries on sample mflix database +# the user should be able to restore database using mongorestore +#export MDB_USER_PASSWORD="mdb-user-password-CHANGE-ME" + +# name of MongoDB or MongoDBCommunity resource in case it's deployed in the same cluster +# user only for the connection string in MDB_CONNECTION_STRING env var below +#export MDB_RESOURCE_NAME="mdbc-rs" + +# default connection string if MongoDB database is deployed using the operator +#export MDB_CONNECTION_STRING="mongodb://mdb-user:${MDB_USER_PASSWORD}@${MDB_RESOURCE_NAME}-0.${MDB_RESOURCE_NAME}-svc.${MDB_NS}.svc.cluster.local:27017/?replicaSet=${MDB_RESOURCE_NAME}" + diff --git a/docs/search/03-search-query-usage/test.sh b/docs/search/03-search-query-usage/test.sh new file mode 100755 index 000000000..28e430eb0 --- /dev/null +++ b/docs/search/03-search-query-usage/test.sh @@ -0,0 +1,24 @@ +#!/usr/bin/env bash + +set -eou pipefail + +script_name=$(readlink -f "${BASH_SOURCE[0]}") +script_dir=$(dirname "${script_name}") + +source "${script_dir}/../../../scripts/code_snippets/sample_test_runner.sh" + +cd "${script_dir}" + +prepare_snippets + +run 03_0410_run_mongodb_tools_pod.sh +run_for_output 03_0420_import_movies_mflix_database.sh +run 03_0430_create_search_index.sh +run 03_0435_create_vector_search_index.sh +run_for_output 03_0440_wait_for_search_index_ready.sh +run_for_output 03_0444_list_search_indexes.sh +run_for_output 03_0445_list_vector_search_indexes.sh +run_for_output 03_0450_execute_search_query.sh +run_for_output 03_0455_execute_vector_search_query.sh + +cd - diff --git a/docs/search/community/quick-start/code_snippets/0045_create_namespaces.sh b/docs/search/community/quick-start/code_snippets/0045_create_namespaces.sh deleted file mode 100755 index 7d0899c63..000000000 --- a/docs/search/community/quick-start/code_snippets/0045_create_namespaces.sh +++ /dev/null @@ -1 +0,0 @@ -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" create namespace "${MDB_NAMESPACE}" diff --git a/docs/search/community/quick-start/code_snippets/0315_wait_for_community_resource.sh b/docs/search/community/quick-start/code_snippets/0315_wait_for_community_resource.sh deleted file mode 100755 index d1f423368..000000000 --- a/docs/search/community/quick-start/code_snippets/0315_wait_for_community_resource.sh +++ /dev/null @@ -1,6 +0,0 @@ -echo "Waiting for MongoDBCommunity resource to reach Running phase..." -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" wait --for=jsonpath='{.status.phase}'=Running mdbc/mdbc-rs --timeout=400s -echo; echo "MongoDBCommunity resource" -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" get mdbc/mdbc-rs -echo; echo "Pods running in cluster ${K8S_CLUSTER_0_CONTEXT_NAME}" -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" get pods diff --git a/docs/search/community/quick-start/code_snippets/0325_wait_for_search_resource.sh b/docs/search/community/quick-start/code_snippets/0325_wait_for_search_resource.sh deleted file mode 100755 index fe91e335e..000000000 --- a/docs/search/community/quick-start/code_snippets/0325_wait_for_search_resource.sh +++ /dev/null @@ -1,2 +0,0 @@ -echo "Waiting for MongoDBSearch resource to reach Running phase..." -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" wait --for=jsonpath='{.status.phase}'=Running mdbs/mdbc-rs --timeout=300s diff --git a/docs/search/community/quick-start/code_snippets/0330_wait_for_community_resource.sh b/docs/search/community/quick-start/code_snippets/0330_wait_for_community_resource.sh deleted file mode 100755 index 4490c3967..000000000 --- a/docs/search/community/quick-start/code_snippets/0330_wait_for_community_resource.sh +++ /dev/null @@ -1,2 +0,0 @@ -echo "Waiting for MongoDBCommunity resource to reach Running phase..." -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" wait --for=jsonpath='{.status.phase}'=Running mdbc/mdbc-rs --timeout=400s diff --git a/docs/search/community/quick-start/code_snippets/0335_show_running_pods.sh b/docs/search/community/quick-start/code_snippets/0335_show_running_pods.sh deleted file mode 100755 index d1c200adc..000000000 --- a/docs/search/community/quick-start/code_snippets/0335_show_running_pods.sh +++ /dev/null @@ -1,6 +0,0 @@ -echo; echo "MongoDBCommunity resource" -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" get mdbc/mdbc-rs -echo; echo "MongoDBSearch resource" -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" get mdbs/mdbc-rs -echo; echo "Pods running in cluster ${K8S_CLUSTER_0_CONTEXT_NAME}" -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" get pods diff --git a/docs/search/community/quick-start/code_snippets/0420_import_movies_mflix_database.sh b/docs/search/community/quick-start/code_snippets/0420_import_movies_mflix_database.sh deleted file mode 100755 index 1a5a9a0e6..000000000 --- a/docs/search/community/quick-start/code_snippets/0420_import_movies_mflix_database.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash - -kubectl exec -n "${MDB_NAMESPACE}" --context "${K8S_CLUSTER_0_CONTEXT_NAME}" mongodb-tools-pod -- /bin/bash -eu -c "$(cat </dev/null run_cleanup "test.sh" run_cleanup "teardown.sh" - rm -rf istio* - rm -rf certs - rm -rf secrets + rm -rf .generated 2>/dev/null || true + rm -rf istio* 2>/dev/null || true + rm -rf certs 2>/dev/null || true + rm -rf secrets 2>/dev/null || true + rm ./*.run.log 2>/dev/null || true + popd >/dev/null +} + +echo "Cleaning up from snippets runtime files from the following directories..." +for snippet_dir in $(bash "${script_dir}/find_snippets_directories.sh"); do + cleanup_directory "${snippet_dir}/test.sh" & +done + +wait +echo "Cleaning up done." - popd - ' sh {} \; diff --git a/scripts/code_snippets/find_snippets_directories.sh b/scripts/code_snippets/find_snippets_directories.sh new file mode 100644 index 000000000..463a42ea5 --- /dev/null +++ b/scripts/code_snippets/find_snippets_directories.sh @@ -0,0 +1,14 @@ +#!/usr/bin/env bash + +set -eou pipefail +test "${MDB_BASH_DEBUG:-0}" -eq 1 && set -x + +source scripts/dev/set_env_context.sh + +# It finds all directories containing both test.sh and code_snippets subdirectory +find . -path "*/code_snippets" -type d | while read -r code_snippets_dir; do + parent_dir="$(dirname "${code_snippets_dir}")" + if [[ -f "${parent_dir}/test.sh" ]]; then + echo "${parent_dir}" + fi +done diff --git a/scripts/code_snippets/kind_search_snippets_render_template.sh b/scripts/code_snippets/kind_search_snippets_render_template.sh index 2d63e9046..57d2fcc28 100755 --- a/scripts/code_snippets/kind_search_snippets_render_template.sh +++ b/scripts/code_snippets/kind_search_snippets_render_template.sh @@ -1,7 +1,6 @@ #!/usr/bin/env bash set -eou pipefail -source scripts/dev/set_env_context.sh test_dir="$1" -python scripts/code_snippets/render_template.py "${test_dir}/README.md.j2" "${test_dir}/README.md" +scripts/evergreen/run_python.sh scripts/code_snippets/render_template.py "${test_dir}/README.md.j2" "${test_dir}/README.md" diff --git a/scripts/code_snippets/sample_commit_output.sh b/scripts/code_snippets/sample_commit_output.sh index 0eb12227b..12790b0b5 100755 --- a/scripts/code_snippets/sample_commit_output.sh +++ b/scripts/code_snippets/sample_commit_output.sh @@ -1,6 +1,8 @@ #!/usr/bin/env bash -set -Eeou pipefail +set -eou pipefail +test "${MDB_BASH_DEBUG:-0}" -eq 1 && set -x + source scripts/dev/set_env_context.sh if [[ "${CODE_SNIPPETS_COMMIT_OUTPUT:-"false"}" == "true" ]]; then @@ -8,9 +10,7 @@ if [[ "${CODE_SNIPPETS_COMMIT_OUTPUT:-"false"}" == "true" ]]; then branch="meko-snippets-update-$(date "+%Y%m%d%H%M%S")" git checkout -b "${branch}" git reset - git add public/architectures/**/*.out - git add docs/**/output/*.out - git add docs/**/*.md + git add scripts/code_snippets/tests/outputs/test_* git commit -m "Update code snippets outputs" git remote set-url origin "https://x-access-token:${GH_TOKEN}@github.com/mongodb/mongodb-kubernetes.git" git push origin "${branch}" diff --git a/scripts/code_snippets/sample_test_runner.sh b/scripts/code_snippets/sample_test_runner.sh index bc579b732..0e9c17f0b 100755 --- a/scripts/code_snippets/sample_test_runner.sh +++ b/scripts/code_snippets/sample_test_runner.sh @@ -2,12 +2,22 @@ set -eou pipefail -log_file="$(basename "$0").run.log" +test "${MDB_BASH_DEBUG:-0}" -eq 1 && set -x + +script_name=$(readlink -f "${BASH_SOURCE[0]}") +# we reuse script_dir if already set by the script that is sourcing this file +script_dir=${script_dir:-$(dirname "${script_name}")} + +# script_dir will be set from the file that is sourcing this file +log_file="${RUN_LOG_FILE:-$(basename "${script_dir}").run.log}" + snippets_src_dir="code_snippets" snippets_run_dir=".generated" DEBUG=${DEBUG:-"false"} +_SNIPPETS_OUTPUT_DIR=${_SNIPPETS_OUTPUT_DIR:-"output"} + function snippets_list() { src_dir=$1 # shellcheck disable=SC2012 @@ -18,7 +28,8 @@ function run_cleanup() { script_file=$1 rm -rf "${snippets_run_dir}" 2>/dev/null || true rm -rf "log" 2>/dev/null || true - git restore --staged --worktree rm -rf "output" 2>/dev/null || true + rm -rf ".generated" 2>/dev/null || true + git restore --staged --worktree rm -rf "${_SNIPPETS_OUTPUT_DIR}" 2>/dev/null || true rm -rf "${script_file}.run.log" 2>/dev/null || true } @@ -27,7 +38,7 @@ function prepare_snippets() { touch "${log_file}" mkdir log 2>/dev/null || true - mkdir output 2>/dev/null || true + mkdir "${_SNIPPETS_OUTPUT_DIR}" 2>/dev/null || true rm -rf "${snippets_run_dir}" 2>/dev/null || true mkdir "${snippets_run_dir}" 2>/dev/null || true @@ -36,7 +47,7 @@ function prepare_snippets() { while IFS= read -r file_name; do file_path="${snippets_run_dir}/${file_name}" ( - echo "# This file is generated automatically from ${file_path}" + echo "# This file is generated automatically from ${snippets_src_dir}/${file_name}" echo "# DO NOT EDIT" echo "function ${file_name%.sh}() {" cat "${snippets_src_dir}/${file_name}" @@ -95,7 +106,7 @@ function run_for_output() { ret=$? set -e if [[ ${ret} == 0 ]]; then - tee "output/${cmd}.out" < "${stdout_file}" + tee "${_SNIPPETS_OUTPUT_DIR}/${cmd}.out" < "${stdout_file}" else echo "Error running: ${cmd}" fi diff --git a/scripts/code_snippets/task_kind_search_community_snippets_test.sh b/scripts/code_snippets/task_kind_search_community_snippets_test.sh deleted file mode 100755 index 3d8df6e42..000000000 --- a/scripts/code_snippets/task_kind_search_community_snippets_test.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash - -set -eou pipefail -source scripts/dev/set_env_context.sh - -dump_logs() { - source scripts/evergreen/e2e/dump_diagnostic_information.sh - if [[ "${SKIP_DUMP:-"false"}" != "true" ]]; then - dump_all_non_default_namespaces "$@" - fi -} -trap dump_logs EXIT - -test_dir="./docs/search/community/quick-start" - -source "${test_dir}/env_variables.sh" -echo "Sourcing env variables for ${CODE_SNIPPETS_FLAVOR} flavor" -# shellcheck disable=SC1090 -test -f "${test_dir}/env_variables_${CODE_SNIPPETS_FLAVOR}.sh" && source "${test_dir}/env_variables_${CODE_SNIPPETS_FLAVOR}.sh" - -${test_dir}/test.sh -scripts/code_snippets/kind_search_snippets_render_template.sh ${test_dir} diff --git a/docs/search/community/quick-start/output/090_helm_add_mogodb_repo.out b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0090_helm_add_mogodb_repo.out similarity index 100% rename from docs/search/community/quick-start/output/090_helm_add_mogodb_repo.out rename to scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0090_helm_add_mogodb_repo.out diff --git a/docs/search/community/quick-start/output/0100_install_operator.out b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0100_install_operator.out similarity index 94% rename from docs/search/community/quick-start/output/0100_install_operator.out rename to scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0100_install_operator.out index 95eb4ab71..3c20a449c 100644 --- a/docs/search/community/quick-start/output/0100_install_operator.out +++ b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0100_install_operator.out @@ -1,12 +1,15 @@ Release "mongodb-kubernetes" does not exist. Installing it now. NAME: mongodb-kubernetes -LAST DEPLOYED: Mon Jul 28 15:07:59 2025 +LAST DEPLOYED: Sat Aug 23 12:17:51 2025 NAMESPACE: mongodb STATUS: deployed REVISION: 1 TEST SUITE: None USER-SUPPLIED VALUES: +agent: + version: 108.0.2.8729-1 database: + name: mongodb-kubernetes-database version: 68876175f5ad6d0007fdc1d4 initAppDb: version: 68876175f5ad6d0007fdc1d4 @@ -14,8 +17,22 @@ initDatabase: version: 68876175f5ad6d0007fdc1d4 initOpsManager: version: 68876175f5ad6d0007fdc1d4 +managedSecurityContext: false +mongodb: + imageType: ubi9 + name: mongodb-enterprise-server operator: + enablePVCResize: true + maxConcurrentReconciles: 10 + mdbDefaultArchitecture: non-static + telemetry: + collection: + frequency: 1m + send: + enabled: false version: 68876175f5ad6d0007fdc1d4 +opsManager: + name: mongodb-enterprise-ops-manager-ubi registry: agent: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev appDb: quay.io/mongodb @@ -28,8 +45,8 @@ registry: opsManager: quay.io/mongodb search: community: - name: community - repo: 268558157000.dkr.ecr.eu-west-1.amazonaws.com/mongot + name: mongot/community + repo: 268558157000.dkr.ecr.eu-west-1.amazonaws.com version: fbd60fb055dd500058edcb45677ea85d19421f47 COMPUTED VALUES: @@ -76,7 +93,7 @@ initOpsManager: managedSecurityContext: false mongodb: appdbAssumeOldFormat: false - imageType: ubi8 + imageType: ubi9 name: mongodb-enterprise-server repo: quay.io/mongodb multiCluster: @@ -94,7 +111,7 @@ operator: enableClusterMongoDBRoles: true enablePVCResize: true env: prod - maxConcurrentReconciles: 1 + maxConcurrentReconciles: 10 mdbDefaultArchitecture: non-static name: mongodb-kubernetes-operator nodeSelector: {} @@ -111,9 +128,10 @@ operator: collection: clusters: {} deployments: {} - frequency: 1h + frequency: 1m operators: {} send: + enabled: false frequency: 168h tolerations: [] vaultSecretBackend: @@ -149,8 +167,8 @@ registry: versionUpgradeHook: quay.io/mongodb search: community: - name: community - repo: 268558157000.dkr.ecr.eu-west-1.amazonaws.com/mongot + name: mongot/community + repo: 268558157000.dkr.ecr.eu-west-1.amazonaws.com version: fbd60fb055dd500058edcb45677ea85d19421f47 versionUpgradeHook: name: mongodb-kubernetes-operator-version-upgrade-post-start-hook @@ -533,7 +551,9 @@ spec: fieldRef: fieldPath: metadata.namespace - name: MDB_OPERATOR_TELEMETRY_COLLECTION_FREQUENCY - value: "1h" + value: "1m" + - name: MDB_OPERATOR_TELEMETRY_SEND_ENABLED + value: "false" - name: MDB_OPERATOR_TELEMETRY_SEND_FREQUENCY value: "168h" - name: CLUSTER_CLIENT_TIMEOUT @@ -572,13 +592,13 @@ spec: - name: MONGODB_REPO_URL value: quay.io/mongodb - name: MDB_IMAGE_TYPE - value: ubi8 + value: ubi9 - name: PERFORM_FAILOVER value: 'true' - name: IMAGE_PULL_SECRETS value: image-registries-secret - name: MDB_MAX_CONCURRENT_RECONCILES - value: "1" + value: "10" - name: POD_NAME valueFrom: fieldRef: @@ -600,9 +620,9 @@ spec: value: "ubi8" # Community Env Vars End - name: MDB_SEARCH_COMMUNITY_REPO_URL - value: "268558157000.dkr.ecr.eu-west-1.amazonaws.com/mongot" + value: "268558157000.dkr.ecr.eu-west-1.amazonaws.com" - name: MDB_SEARCH_COMMUNITY_NAME - value: "community" + value: "mongot/community" - name: MDB_SEARCH_COMMUNITY_VERSION value: "fbd60fb055dd500058edcb45677ea85d19421f47" diff --git a/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0315_wait_for_community_resource.out b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0315_wait_for_community_resource.out new file mode 100644 index 000000000..2bc88b5b9 --- /dev/null +++ b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0315_wait_for_community_resource.out @@ -0,0 +1,16 @@ +Waiting for MongoDBCommunity resource to reach Running phase... +mongodbcommunity.mongodbcommunity.mongodb.com/mdbc-rs condition met + +MongoDBCommunity resource +NAME PHASE VERSION +mdbc-rs Running 8.0.10 + +Pods running in cluster kind-kind +NAME READY STATUS RESTARTS AGE +mdb-debug-mdbc-rs-0-0 1/1 Running 0 96s +mdb-debug-mdbc-rs-1-0 1/1 Running 0 95s +mdb-debug-mdbc-rs-2-0 1/1 Running 0 95s +mdbc-rs-0 2/2 Running 0 2m41s +mdbc-rs-1 2/2 Running 0 87s +mdbc-rs-2 2/2 Running 0 38s +mongodb-kubernetes-operator-696b5dd864-kpgkl 1/1 Running 0 2m49s diff --git a/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0330_wait_for_community_resource.out b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0330_wait_for_community_resource.out new file mode 100644 index 000000000..6971e0146 --- /dev/null +++ b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0330_wait_for_community_resource.out @@ -0,0 +1,2 @@ +Waiting for MongoDBCommunity resource to reach Running phase... +mongodbcommunity.mongodbcommunity.mongodb.com/mdbc-rs condition met diff --git a/docs/search/community/quick-start/output/0335_show_running_pods.out b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0335_show_running_pods.out similarity index 72% rename from docs/search/community/quick-start/output/0335_show_running_pods.out rename to scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0335_show_running_pods.out index cd7017404..6c2bcf86a 100644 --- a/docs/search/community/quick-start/output/0335_show_running_pods.out +++ b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0335_show_running_pods.out @@ -5,16 +5,16 @@ mdbc-rs Running 8.0.10 MongoDBSearch resource NAME PHASE AGE -mdbc-rs Running 7m58s +mdbc-rs Running 5m33s Pods running in cluster kind-kind NAME READY STATUS RESTARTS AGE -mdb-debug-mdbc-rs-0-0 1/1 Running 0 10m -mdb-debug-mdbc-rs-1-0 1/1 Running 0 10m -mdb-debug-mdbc-rs-2-0 1/1 Running 0 10m -mdb-debug-mdbc-rs-search-0-0 1/1 Running 0 7m57s -mdbc-rs-0 2/2 Running 1 (3m13s ago) 10m -mdbc-rs-1 2/2 Running 1 (5m49s ago) 9m23s -mdbc-rs-2 2/2 Running 1 (4m32s ago) 8m35s -mdbc-rs-search-0 1/1 Running 0 25s -mongodb-kubernetes-operator-5776c8b4df-wm82f 1/1 Running 0 35s +mdb-debug-mdbc-rs-0-0 1/1 Running 0 7m12s +mdb-debug-mdbc-rs-1-0 1/1 Running 0 7m11s +mdb-debug-mdbc-rs-2-0 1/1 Running 0 7m11s +mdb-debug-mdbc-rs-search-0-0 1/1 Running 0 5m33s +mdbc-rs-0 2/2 Running 1 (31s ago) 8m17s +mdbc-rs-1 2/2 Running 1 (3m8s ago) 7m3s +mdbc-rs-2 2/2 Running 1 (109s ago) 6m14s +mdbc-rs-search-0 1/1 Running 4 (4m17s ago) 5m34s +mongodb-kubernetes-operator-696b5dd864-kpgkl 1/1 Running 0 8m25s diff --git a/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0420_import_movies_mflix_database.out b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0420_import_movies_mflix_database.out new file mode 100644 index 000000000..a7432faf0 --- /dev/null +++ b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0420_import_movies_mflix_database.out @@ -0,0 +1,2 @@ +Downloading sample database archive... +Restoring sample database diff --git a/docs/search/community/quick-start/output/0440_wait_for_search_index_ready.out b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0440_wait_for_search_index_ready.out similarity index 100% rename from docs/search/community/quick-start/output/0440_wait_for_search_index_ready.out rename to scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0440_wait_for_search_index_ready.out diff --git a/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0444_list_search_indexes.out b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0444_list_search_indexes.out new file mode 100644 index 000000000..871ba5e65 --- /dev/null +++ b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0444_list_search_indexes.out @@ -0,0 +1,32 @@ +{ + cursor: { + id: 0, + ns: 'sample_mflix.movies', + firstBatch: [ + { + id: '68a9975db53fad6a875bb74f', + name: 'default', + type: 'search', + latestDefinition: { + indexID: ObjectId('68a9975db53fad6a875bb74f'), + name: 'default', + database: 'sample_mflix', + lastObservedCollectionName: 'movies', + collectionUUID: UUID('b28e600a-fd5f-459f-9a80-1cd85a113261'), + numPartitions: 1, + mappings: { dynamic: true, fields: {} }, + indexFeatureVersion: 3 + } + } + ] + }, + ok: 1, + '$clusterTime': { + clusterTime: Timestamp({ t: 1755944851, i: 1 }), + signature: { + hash: Binary.createFromBase64('P3ygPKAHEg7beuDCsygB5MSm0xQ=', 0), + keyId: Long('7541723951982968838') + } + }, + operationTime: Timestamp({ t: 1755944851, i: 1 }) +} diff --git a/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0445_list_vector_search_indexes.out b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0445_list_vector_search_indexes.out new file mode 100644 index 000000000..2b7013164 --- /dev/null +++ b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0445_list_vector_search_indexes.out @@ -0,0 +1,40 @@ +{ + cursor: { + id: 0, + ns: 'sample_mflix.embedded_movies', + firstBatch: [ + { + id: '68a9975eb53fad6a875bb750', + name: 'vector_index', + type: 'vectorSearch', + latestDefinition: { + type: 'vectorSearch', + indexID: ObjectId('68a9975eb53fad6a875bb750'), + name: 'vector_index', + database: 'sample_mflix', + lastObservedCollectionName: 'embedded_movies', + collectionUUID: UUID('19e50df1-f30c-47ae-9a98-1b0986f19d1e'), + numPartitions: 1, + fields: [ + { + type: 'vector', + path: 'plot_embedding_voyage_3_large', + numDimensions: 2048, + similarity: 'dotProduct', + quantization: 'scalar' + } + ] + } + } + ] + }, + ok: 1, + '$clusterTime': { + clusterTime: Timestamp({ t: 1755944861, i: 1 }), + signature: { + hash: Binary.createFromBase64('MpVLnzPwR4lpliG75kYSEMdvHXk=', 0), + keyId: Long('7541723951982968838') + } + }, + operationTime: Timestamp({ t: 1755944861, i: 1 }) +} diff --git a/docs/search/community/quick-start/output/0450_execute_search_query.out b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0450_execute_search_query.out similarity index 100% rename from docs/search/community/quick-start/output/0450_execute_search_query.out rename to scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0450_execute_search_query.out diff --git a/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0455_execute_vector_search_query.out b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0455_execute_vector_search_query.out new file mode 100644 index 000000000..fb9f3de41 --- /dev/null +++ b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/03_0455_execute_vector_search_query.out @@ -0,0 +1,54 @@ +mdbc-rs [primary] test> switched to db sample_mflix +mdbc-rs [primary] sample_mflix> ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... [ + { + plot: 'At the age of 21, Tim discovers he can travel in time and change what happens and has happened in his own life. His decision to make his world a better place by getting a girlfriend turns out not to be as easy as you might think.', + title: 'About Time', + score: 0.7704131603240967 + }, + { + plot: 'A psychiatrist makes multiple trips through time to save a woman that was murdered by her brutal husband.', + title: 'Retroactive', + score: 0.7597770690917969 + }, + { + plot: 'An officer for a security agency that regulates time travel, must fend for his life against a shady politician who has a tie to his past.', + title: 'Timecop', + score: 0.7574796676635742 + }, + { + plot: 'A time-travel experiment in which a robot probe is sent from the year 2073 to the year 1973 goes terribly wrong thrusting one of the project scientists, a man named Nicholas Sinclair into a...', + title: 'A.P.E.X.', + score: 0.7573235034942627 + }, + { + plot: 'After visiting 2015, Marty McFly must repeat his visit to 1955 to prevent disastrous changes to 1985... without interfering with his first trip.', + title: 'Back to the Future Part II', + score: 0.751945972442627 + }, + { + plot: 'A reporter, learning of time travelers visiting 20th century disasters, tries to change the history they know by averting upcoming disasters.', + title: 'Thrill Seekers', + score: 0.7503504753112793 + }, + { + plot: 'Hoping to alter the events of the past, a 19th century inventor instead travels 800,000 years into the future, where he finds humankind divided into two warring races.', + title: 'The Time Machine', + score: 0.750007152557373 + }, + { + plot: 'Lyle, a motorcycle champion is traveling the Mexican desert, when he find himself in the action radius of a time machine. So he find himself one century back in the past between rapists, ...', + title: 'Timerider: The Adventure of Lyle Swann', + score: 0.7499568462371826 + }, + { + plot: 'A romantic drama about a Chicago librarian with a gene that causes him to involuntarily time travel, and the complications it creates for his marriage.', + title: "The Time Traveler's Wife", + score: 0.7492842674255371 + }, + { + plot: 'A modern aircraft carrier is thrown back in time to 1941 near Hawaii, just hours before the Japanese attack on Pearl Harbor.', + title: 'The Final Countdown', + score: 0.7472751140594482 + } +] +mdbc-rs [primary] sample_mflix> \ No newline at end of file diff --git a/scripts/code_snippets/task_gke_multi_cluster_no_mesh_snippets_test.sh b/scripts/code_snippets/tests/test_gke_multi_cluster_no_mesh_snippets.sh similarity index 89% rename from scripts/code_snippets/task_gke_multi_cluster_no_mesh_snippets_test.sh rename to scripts/code_snippets/tests/test_gke_multi_cluster_no_mesh_snippets.sh index 97245a8c2..8caa97beb 100755 --- a/scripts/code_snippets/task_gke_multi_cluster_no_mesh_snippets_test.sh +++ b/scripts/code_snippets/tests/test_gke_multi_cluster_no_mesh_snippets.sh @@ -3,6 +3,12 @@ set -eou pipefail source scripts/dev/set_env_context.sh +script_name=$(readlink -f "${BASH_SOURCE[0]}") + +_SNIPPETS_OUTPUT_DIR="$(dirname "${script_name}")/outputs/$(basename "${script_name%.*}")" +export _SNIPPETS_OUTPUT_DIR +mkdir -p "${_SNIPPETS_OUTPUT_DIR}" + function cleanup() { if [ "${code_snippets_teardown:-true}" = true ]; then echo "Deleting clusters and resources" @@ -26,6 +32,9 @@ function cleanup() { } trap cleanup EXIT +# store all outputs in + + source public/architectures/setup-multi-cluster/setup-gke/env_variables.sh ./public/architectures/setup-multi-cluster/setup-gke/test.sh diff --git a/scripts/code_snippets/task_gke_multi_cluster_snippets_test.sh b/scripts/code_snippets/tests/test_gke_multi_cluster_snippets.sh similarity index 88% rename from scripts/code_snippets/task_gke_multi_cluster_snippets_test.sh rename to scripts/code_snippets/tests/test_gke_multi_cluster_snippets.sh index 850a68e9c..e9383e16e 100755 --- a/scripts/code_snippets/task_gke_multi_cluster_snippets_test.sh +++ b/scripts/code_snippets/tests/test_gke_multi_cluster_snippets.sh @@ -3,6 +3,12 @@ set -eou pipefail source scripts/dev/set_env_context.sh +script_name=$(readlink -f "${BASH_SOURCE[0]}") + +_SNIPPETS_OUTPUT_DIR="$(dirname "${script_name}")/outputs/$(basename "${script_name%.*}")" +export _SNIPPETS_OUTPUT_DIR +mkdir -p "${_SNIPPETS_OUTPUT_DIR}" + function cleanup() { if [ "${code_snippets_teardown:-true}" = true ]; then echo "Deleting clusters" diff --git a/scripts/code_snippets/tests/test_kind_search_community_snippets.sh b/scripts/code_snippets/tests/test_kind_search_community_snippets.sh new file mode 100755 index 000000000..7fb16a6e5 --- /dev/null +++ b/scripts/code_snippets/tests/test_kind_search_community_snippets.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash + +set -eou pipefail +test "${MDB_BASH_DEBUG:-0}" -eq 1 && set -x + +source scripts/dev/set_env_context.sh + +script_name=$(readlink -f "${BASH_SOURCE[0]}") + +_SNIPPETS_OUTPUT_DIR="$(dirname "${script_name}")/outputs/$(basename "${script_name%.*}")" +export _SNIPPETS_OUTPUT_DIR +mkdir -p "${_SNIPPETS_OUTPUT_DIR}" + +dump_logs() { + source scripts/evergreen/e2e/dump_diagnostic_information.sh + if [[ "${SKIP_DUMP:-"false"}" != "true" ]]; then + dump_all_non_default_namespaces "$@" + echo + fi +} +trap dump_logs EXIT + +test_dir="./docs/search/01-search-community-deploy" +source "${test_dir}/env_variables.sh" +echo "Sourcing env variables for ${CODE_SNIPPETS_FLAVOR} flavor" +# shellcheck disable=SC1090 +test -f "${test_dir}/env_variables_${CODE_SNIPPETS_FLAVOR}.sh" && source "${test_dir}/env_variables_${CODE_SNIPPETS_FLAVOR}.sh" +${test_dir}/test.sh + +test_dir="./docs/search/03-search-query-usage" +echo "Sourcing env variables for ${CODE_SNIPPETS_FLAVOR} flavor" +# shellcheck disable=SC1090 +test -f "${test_dir}/env_variables_${CODE_SNIPPETS_FLAVOR}.sh" && source "${test_dir}/env_variables_${CODE_SNIPPETS_FLAVOR}.sh" + +export MDB_RESOURCE_NAME="mdbc-rs" +export MDB_CONNECTION_STRING="mongodb://mdb-user:${MDB_USER_PASSWORD}@${MDB_RESOURCE_NAME}-0.${MDB_RESOURCE_NAME}-svc.${MDB_NS}.svc.cluster.local:27017/?replicaSet=${MDB_RESOURCE_NAME}" + +${test_dir}/test.sh + diff --git a/scripts/code_snippets/validate_snippets.py b/scripts/code_snippets/validate_snippets.py new file mode 100755 index 000000000..fe2d3d0d5 --- /dev/null +++ b/scripts/code_snippets/validate_snippets.py @@ -0,0 +1,68 @@ +#!/usr/bin/env python3 + +import os +import sys +from collections import defaultdict + + +def find_snippet_directories(): + """Find all directories containing both test.sh and code_snippets subdirectory.""" + snippet_dirs = [] + + # Traverse current directory recursively to find test.sh files + for root, dirs, files in os.walk("."): + if "test.sh" in files: + # Check if this directory also has a code_snippets subdirectory + code_snippets_path = os.path.join(root, "code_snippets") + if os.path.isdir(code_snippets_path): + snippet_dirs.append(root) + + return snippet_dirs + + +def verify_snippets_files_are_unique(): + """Check if files in snippet directories have unique names across all directories.""" + dirs = find_snippet_directories() + + if not dirs: + print("No snippet directories found (no test.sh files).") + return True + + file_map = defaultdict(list) + + print(f"Checking for duplicate file names across code snippet directories:\n {"\t\n".join(dirs)}") + + # Scan all files in code_snippets subdirectories only + for snippet_dir in dirs: + code_snippets_dir = os.path.join(snippet_dir, "code_snippets") + if os.path.exists(code_snippets_dir): + for file in os.listdir(code_snippets_dir): + file_path = os.path.join(code_snippets_dir, file) + if os.path.isfile(file_path): + file_map[file].append(file_path) + + # Check for duplicates + duplicates_found = False + for filename, paths in file_map.items(): + if len(paths) > 1: + if not duplicates_found: + print("ERROR: Duplicate file names found:") + duplicates_found = True + print(f" File '{filename}' appears in multiple locations:") + for path in sorted(paths): + print(f" {path}") + print() + + if duplicates_found: + print("Please rename duplicate files to ensure uniqueness across all snippet directories.") + return False + else: + print("All snippet files have unique names across directories.") + return True + + +if __name__ == "__main__": + checks = [verify_snippets_files_are_unique()] + + # Exit 0 if all checks pass, 1 if any fail + sys.exit(0 if all(checks) else 1) From 10f35fe5271ba01f1bec28dddb1a9b44262ba688 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Sierant?= Date: Sun, 24 Aug 2025 15:55:55 +0200 Subject: [PATCH 3/6] Refactor of snippets (enterprise search) --- .../02_0045_create_namespaces.sh | 1 + .../02_0046_create_image_pull_secrets.sh} | 2 +- .../02_0050_create_ops_manager_resources.sh | 4 + .../02_0090_helm_add_mogodb_repo.sh} | 0 .../02_0100_install_operator.sh} | 4 +- ..._0305_create_mongodb_database_resource.sh} | 4 +- .../02_0310_wait_for_database_resource.sh | 6 + .../02_0315_create_mongodb_users.sh} | 18 +- ...02_0320_create_mongodb_search_resource.sh} | 4 +- .../02_0325_wait_for_search_resource.sh | 2 + .../02_0330_wait_for_database_resource.sh | 2 + .../02_0335_show_running_pods.sh | 6 + .../code_snippets/02_9010_delete_namespace.sh | 1 + .../env_variables.sh | 19 +- .../env_variables_e2e_prerelease.sh | 4 + .../env_variables_e2e_private.sh | 9 +- .../env_variables_e2e_private_dev.sh | 6 +- .../env_variables_e2e_public.sh | 1 + .../02-search-enterprise-deploy/test.sh | 28 ++ docs/search/enterprise/quick-start/README.md | 417 ------------------ .../enterprise/quick-start/README.md.j2 | 179 -------- .../code_snippets/0045_create_namespaces.sh | 1 - .../0050_configure_ops_manager_project.sh | 5 - .../0310_wait_for_database_resource.sh | 6 - .../0325_wait_for_search_resource.sh | 2 - .../0330_wait_for_database_resource.sh | 2 - .../code_snippets/0335_show_running_pods.sh | 6 - .../0410_run_mongodb_tools_pod.sh | 20 - .../0420_import_movies_mflix_database.sh | 10 - .../code_snippets/0430_create_search_index.sh | 6 - .../0440_wait_for_search_index_ready.sh | 5 - .../0450_execute_search_query.sh | 47 -- .../code_snippets/9010_delete_namespace.sh | 1 - .../env_variables_e2e_prerelease.sh | 6 - .../quick-start/env_variables_e2e_public.sh | 2 - .../output/0335_show_running_pods.out | 16 - .../0440_wait_for_search_index_ready.out | 1 - .../output/0450_execute_search_query.out | 22 - docs/search/enterprise/quick-start/test.sh | 32 -- ...sk_kind_search_enterprise_snippets_test.sh | 22 - .../02_0090_helm_add_mogodb_repo.out | 0 .../02_0100_install_operator.out | 144 +++--- .../test_kind_search_enterprise_snippets.sh | 38 ++ scripts/dev/configure_docker_auth.sh | 2 +- .../dev/contexts/private_kind_code_snippets | 2 +- 45 files changed, 216 insertions(+), 899 deletions(-) create mode 100755 docs/search/02-search-enterprise-deploy/code_snippets/02_0045_create_namespaces.sh rename docs/search/{enterprise/quick-start/code_snippets/0046_create_image_pull_secrets.sh => 02-search-enterprise-deploy/code_snippets/02_0046_create_image_pull_secrets.sh} (68%) create mode 100644 docs/search/02-search-enterprise-deploy/code_snippets/02_0050_create_ops_manager_resources.sh rename docs/search/{enterprise/quick-start/code_snippets/090_helm_add_mogodb_repo.sh => 02-search-enterprise-deploy/code_snippets/02_0090_helm_add_mogodb_repo.sh} (100%) rename docs/search/{enterprise/quick-start/code_snippets/0100_install_operator.sh => 02-search-enterprise-deploy/code_snippets/02_0100_install_operator.sh} (54%) rename docs/search/{enterprise/quick-start/code_snippets/0305_create_mongodb_database_resource.sh => 02-search-enterprise-deploy/code_snippets/02_0305_create_mongodb_database_resource.sh} (87%) create mode 100755 docs/search/02-search-enterprise-deploy/code_snippets/02_0310_wait_for_database_resource.sh rename docs/search/{enterprise/quick-start/code_snippets/0315_create_mongodb_users.sh => 02-search-enterprise-deploy/code_snippets/02_0315_create_mongodb_users.sh} (71%) rename docs/search/{enterprise/quick-start/code_snippets/0320_create_mongodb_search_resource.sh => 02-search-enterprise-deploy/code_snippets/02_0320_create_mongodb_search_resource.sh} (63%) create mode 100755 docs/search/02-search-enterprise-deploy/code_snippets/02_0325_wait_for_search_resource.sh create mode 100755 docs/search/02-search-enterprise-deploy/code_snippets/02_0330_wait_for_database_resource.sh create mode 100755 docs/search/02-search-enterprise-deploy/code_snippets/02_0335_show_running_pods.sh create mode 100755 docs/search/02-search-enterprise-deploy/code_snippets/02_9010_delete_namespace.sh rename docs/search/{enterprise/quick-start => 02-search-enterprise-deploy}/env_variables.sh (53%) create mode 100644 docs/search/02-search-enterprise-deploy/env_variables_e2e_prerelease.sh rename docs/search/{enterprise/quick-start => 02-search-enterprise-deploy}/env_variables_e2e_private.sh (64%) rename docs/search/{enterprise/quick-start => 02-search-enterprise-deploy}/env_variables_e2e_private_dev.sh (87%) create mode 100644 docs/search/02-search-enterprise-deploy/env_variables_e2e_public.sh create mode 100755 docs/search/02-search-enterprise-deploy/test.sh delete mode 100644 docs/search/enterprise/quick-start/README.md delete mode 100644 docs/search/enterprise/quick-start/README.md.j2 delete mode 100755 docs/search/enterprise/quick-start/code_snippets/0045_create_namespaces.sh delete mode 100644 docs/search/enterprise/quick-start/code_snippets/0050_configure_ops_manager_project.sh delete mode 100755 docs/search/enterprise/quick-start/code_snippets/0310_wait_for_database_resource.sh delete mode 100755 docs/search/enterprise/quick-start/code_snippets/0325_wait_for_search_resource.sh delete mode 100755 docs/search/enterprise/quick-start/code_snippets/0330_wait_for_database_resource.sh delete mode 100755 docs/search/enterprise/quick-start/code_snippets/0335_show_running_pods.sh delete mode 100755 docs/search/enterprise/quick-start/code_snippets/0410_run_mongodb_tools_pod.sh delete mode 100755 docs/search/enterprise/quick-start/code_snippets/0420_import_movies_mflix_database.sh delete mode 100755 docs/search/enterprise/quick-start/code_snippets/0430_create_search_index.sh delete mode 100755 docs/search/enterprise/quick-start/code_snippets/0440_wait_for_search_index_ready.sh delete mode 100755 docs/search/enterprise/quick-start/code_snippets/0450_execute_search_query.sh delete mode 100755 docs/search/enterprise/quick-start/code_snippets/9010_delete_namespace.sh delete mode 100644 docs/search/enterprise/quick-start/env_variables_e2e_prerelease.sh delete mode 100644 docs/search/enterprise/quick-start/env_variables_e2e_public.sh delete mode 100644 docs/search/enterprise/quick-start/output/0335_show_running_pods.out delete mode 100644 docs/search/enterprise/quick-start/output/0440_wait_for_search_index_ready.out delete mode 100644 docs/search/enterprise/quick-start/output/0450_execute_search_query.out delete mode 100755 docs/search/enterprise/quick-start/test.sh delete mode 100755 scripts/code_snippets/task_kind_search_enterprise_snippets_test.sh rename docs/search/enterprise/quick-start/output/090_helm_add_mogodb_repo.out => scripts/code_snippets/tests/outputs/test_kind_search_enterprise_snippets/02_0090_helm_add_mogodb_repo.out (100%) rename docs/search/enterprise/quick-start/output/0100_install_operator.out => scripts/code_snippets/tests/outputs/test_kind_search_enterprise_snippets/02_0100_install_operator.out (84%) create mode 100755 scripts/code_snippets/tests/test_kind_search_enterprise_snippets.sh diff --git a/docs/search/02-search-enterprise-deploy/code_snippets/02_0045_create_namespaces.sh b/docs/search/02-search-enterprise-deploy/code_snippets/02_0045_create_namespaces.sh new file mode 100755 index 000000000..076899281 --- /dev/null +++ b/docs/search/02-search-enterprise-deploy/code_snippets/02_0045_create_namespaces.sh @@ -0,0 +1 @@ +kubectl --context "${K8S_CTX}" create namespace "${MDB_NS}" diff --git a/docs/search/enterprise/quick-start/code_snippets/0046_create_image_pull_secrets.sh b/docs/search/02-search-enterprise-deploy/code_snippets/02_0046_create_image_pull_secrets.sh similarity index 68% rename from docs/search/enterprise/quick-start/code_snippets/0046_create_image_pull_secrets.sh rename to docs/search/02-search-enterprise-deploy/code_snippets/02_0046_create_image_pull_secrets.sh index 270bdbe11..7158760c4 100755 --- a/docs/search/enterprise/quick-start/code_snippets/0046_create_image_pull_secrets.sh +++ b/docs/search/02-search-enterprise-deploy/code_snippets/02_0046_create_image_pull_secrets.sh @@ -1,3 +1,3 @@ -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" \ +kubectl --context "${K8S_CTX}" -n "${MDB_NS}" \ create secret generic "image-registries-secret" \ --from-file=.dockerconfigjson="${HOME}/.docker/config.json" --type=kubernetes.io/dockerconfigjson diff --git a/docs/search/02-search-enterprise-deploy/code_snippets/02_0050_create_ops_manager_resources.sh b/docs/search/02-search-enterprise-deploy/code_snippets/02_0050_create_ops_manager_resources.sh new file mode 100644 index 000000000..71d451916 --- /dev/null +++ b/docs/search/02-search-enterprise-deploy/code_snippets/02_0050_create_ops_manager_resources.sh @@ -0,0 +1,4 @@ +kubectl --context "${K8S_CTX}" -n "${MDB_NS}" create configmap om-project \ + --from-literal=projectName="${MDB_RESOURCE_NAME}" --from-literal=baseUrl="${OPS_MANAGER_API_URL}" \ + --from-literal=orgId="${OPS_MANAGER_ORG_ID:-}" + diff --git a/docs/search/enterprise/quick-start/code_snippets/090_helm_add_mogodb_repo.sh b/docs/search/02-search-enterprise-deploy/code_snippets/02_0090_helm_add_mogodb_repo.sh similarity index 100% rename from docs/search/enterprise/quick-start/code_snippets/090_helm_add_mogodb_repo.sh rename to docs/search/02-search-enterprise-deploy/code_snippets/02_0090_helm_add_mogodb_repo.sh diff --git a/docs/search/enterprise/quick-start/code_snippets/0100_install_operator.sh b/docs/search/02-search-enterprise-deploy/code_snippets/02_0100_install_operator.sh similarity index 54% rename from docs/search/enterprise/quick-start/code_snippets/0100_install_operator.sh rename to docs/search/02-search-enterprise-deploy/code_snippets/02_0100_install_operator.sh index 36715a6a2..8ada5bee6 100755 --- a/docs/search/enterprise/quick-start/code_snippets/0100_install_operator.sh +++ b/docs/search/02-search-enterprise-deploy/code_snippets/02_0100_install_operator.sh @@ -1,6 +1,6 @@ -helm upgrade --install --debug --kube-context "${K8S_CLUSTER_0_CONTEXT_NAME}" \ +helm upgrade --install --debug --kube-context "${K8S_CTX}" \ --create-namespace \ - --namespace="${MDB_NAMESPACE}" \ + --namespace="${MDB_NS}" \ mongodb-kubernetes \ --set "${OPERATOR_ADDITIONAL_HELM_VALUES:-"dummy=value"}" \ "${OPERATOR_HELM_CHART}" diff --git a/docs/search/enterprise/quick-start/code_snippets/0305_create_mongodb_database_resource.sh b/docs/search/02-search-enterprise-deploy/code_snippets/02_0305_create_mongodb_database_resource.sh similarity index 87% rename from docs/search/enterprise/quick-start/code_snippets/0305_create_mongodb_database_resource.sh rename to docs/search/02-search-enterprise-deploy/code_snippets/02_0305_create_mongodb_database_resource.sh index 6639978f0..a3bb997cc 100755 --- a/docs/search/enterprise/quick-start/code_snippets/0305_create_mongodb_database_resource.sh +++ b/docs/search/02-search-enterprise-deploy/code_snippets/02_0305_create_mongodb_database_resource.sh @@ -1,9 +1,9 @@ -kubectl apply --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" -f - < /tmp/mdb_script.js -mongosh --quiet "mongodb://mdb-user:${MDB_USER_PASSWORD}@mdb-rs-0.mdb-rs-svc.${MDB_NAMESPACE}.svc.cluster.local:27017/?replicaSet=mdb-rs" < /tmp/mdb_script.js -EOF -)" -``` \ No newline at end of file diff --git a/docs/search/enterprise/quick-start/README.md.j2 b/docs/search/enterprise/quick-start/README.md.j2 deleted file mode 100644 index 08ce07d99..000000000 --- a/docs/search/enterprise/quick-start/README.md.j2 +++ /dev/null @@ -1,179 +0,0 @@ -# MongoDB Enterprise Search on Kubernetes - Quick Start - -This guide provides instructions for deploying MongoDB Enterprise Edition along with its Search capabilities onto a Kubernetes cluster. By following these steps, you will set up a MongoDB instance and configure search indexes to perform full-text search queries against your data. - -## Prerequisites - -Before you begin, ensure you have the following tools and configurations in place: - -- **Kubernetes cluster**: A running Kubernetes cluster (e.g., Minikube, Kind, GKE, EKS, AKS) with kubeconfig available locally. -- **kubectl**: The Kubernetes command-line tool, configured to communicate with your cluster. -- **Helm**: The package manager for Kubernetes, used here to install the MongoDB Kubernetes Operator. -- **Bash 5.1+**: All shell commands in this guide are intended to be run in Bash. Scripts in this guide are automatically tested on Linux with Bash 5.1. -- **Ops Manager or Cloud Manager**: Deploying MongoDB Enterprise Edition requires an Ops Manager or Cloud Manager project and API credentials. - -## Setup Steps - -The following steps guide you through deploying MongoDB Enterprise with Search. Each step provides a shell script. -**It is important to first source the `env_variables.sh` script provided and customize its values for your environment.** -The subsequent script snippets rely on the environment variables defined in `env_variables.sh`. You should copy and paste each script into your Bash terminal. - -### 1. Configure Environment Variables - -First, you need to set up your environment. The `env_variables.sh` script, shown below, contains variables for the subsequent steps. You should create this file locally or use the linked one. - -Download or copy the content of `env_variables.sh`: -[env_variables.sh](env_variables.sh) -```shell copy -{% include "env_variables.sh" %} -``` -This will load the variables into your current shell session, making them available for the commands in the following steps. - -### 2. Add MongoDB Helm Repository - -First, add the MongoDB Helm repository. This repository contains the Helm chart required to install the MongoDB Kubernetes Operator. The operator automates the deployment and management of MongoDB instances (both Community and Enterprise editions) on Kubernetes. - -[code_snippets/090_helm_add_mogodb_repo.sh](code_snippets/090_helm_add_mogodb_repo.sh) -```shell copy -{% include "code_snippets/090_helm_add_mogodb_repo.sh" %} -``` - -### 3. Install MongoDB Kubernetes Operator - -Next, install the MongoDB Kubernetes Operator from the Helm repository you just added. The Operator will watch for MongoDB and MongoDBSearch custom resources and manage the lifecycle of your MongoDB deployments. - -[code_snippets/0100_install_operator.sh](code_snippets/0100_install_operator.sh) -```shell copy -{% include "code_snippets/0100_install_operator.sh" %} -``` -This command installs the operator in the `mongodb` namespace (creating it if it doesn't exist). - -## Creating a MongoDB Search Deployment - -With the prerequisites and initial setup complete, you can now deploy MongoDB Enterprise Edition and enable Search. - -### 4. Create MongoDB Enterprise Resource - -Now, deploy MongoDB Enterprise by creating a `MongoDB` custom resource named `mdb-rs`. This resource definition instructs the MongoDB Kubernetes Operator to configure a MongoDB replica set with 3 members, running version 8.0.10. MongoDB Search is supported only from MongoDB Enterprise Server version 8.0.10. It also defines CPU and memory resources for the `mongodb-enterprise-database` container, and sets up three users: - - -[code_snippets/0305_create_mongodb_database_resource.sh](code_snippets/0305_create_mongodb_database_resource.sh) -```yaml copy -{% include "code_snippets/0305_create_mongodb_database_resource.sh" %} -``` - -### 5. Wait for MongoDB Enterprise Resource to be Ready - -After applying the `MongoDB` custom resource, the operator begins deploying the MongoDB nodes (pods). This step uses `kubectl wait` to pause execution until the `mdb-rs` resource's status phase becomes `Running`, indicating that the MongoDB Enterprise replica set is operational. - -[code_snippets/0310_wait_for_database_resource.sh](code_snippets/0310_wait_for_database_resource.sh) -```shell copy -{% include "code_snippets/0310_wait_for_database_resource.sh" %} -``` - -### 6. Create MongoDB Users - -MongoDB requires authentication for secure access. This step creates three Kubernetes secrets: `mdb-admin-user-password`, `mdb-rs-search-sync-source-password`, and `mdb-user-password`. These secrets store the credentials for the MongoDB administrative user, the MongoDB Search service, and a dedicated user, respectively. These secrets will be mounted into the MongoDB pods. - -These secrets are then used to create the following users: -* `mdb-admin` - root user that restores the `sample_mflix` database from backup. -* `search-sync-source` - user that the MongoDB Search service is authenticating to the MongoDB Server as in order to manage and build indexes. -* `mdb-user` - a regular user that will execute search queries. - - -[code_snippets/0315_create_mongodb_users.sh](code_snippets/0315_create_mongodb_users.sh) -```shell copy -{% include "code_snippets/0315_create_mongodb_users.sh" %} -``` -Ensure these secrets and users are created in the same namespace where you deploy MongoDB Server and Search. - -### 7. Create MongoDB Search Resource - -Once your MongoDB deployment is ready, enable Search capabilities by creating a `MongoDBSearch` custom resource, also named `mdb-rs` to associate it with the MongoDB instance. This resource specifies the CPU and memory resource requirements for the search nodes. - -Note: Public Preview of MongoDB Search comes with some limitations, and it is not suitable for production use: -* Only one instance of the search node is supported (load balancing is not supported) - -[code_snippets/0320_create_mongodb_search_resource.sh](code_snippets/0320_create_mongodb_search_resource.sh) -```shell copy -{% include "code_snippets/0320_create_mongodb_search_resource.sh" %} -``` - -### 8. Wait for Search Resource to be Ready - -Similar to the MongoDB deployment, the Search deployment needs time to initialize. This step uses `kubectl wait` to pause until the `MongoDBSearch` resource `mdb-rs` reports a `Running` status in its `.status.phase` field, indicating that the search nodes are operational and integrated. - -[code_snippets/0325_wait_for_search_resource.sh](code_snippets/0325_wait_for_search_resource.sh) -```shell copy -{% include "code_snippets/0325_wait_for_search_resource.sh" %} -``` -This command polls the status of the `MongoDBSearch` resource `mdb-rs`. - -### 9. Verify MongoDB Enterprise Resource Status - -Double-check the status of your `MongoDB` resource to ensure it remains healthy and that the integration with the Search resource is reflected if applicable. - -[code_snippets/0330_wait_for_database_resource.sh](code_snippets/0330_wait_for_database_resource.sh) -```shell copy -{% include "code_snippets/0330_wait_for_database_resource.sh" %} -``` -This provides a final confirmation that the core database is operational. - -### 10. List Running Pods - -View all the running pods in your namespace. You should see pods for the MongoDB replica set members, the MongoDB Kubernetes Operator, and the MongoDB Search nodes. - -[code_snippets/0335_show_running_pods.sh](code_snippets/0335_show_running_pods.sh) -```shell copy -{% include "code_snippets/0335_show_running_pods.sh" %} -``` - -## Using MongoDB Search - -Now that your MongoDB Enterprise database with Search is deployed, you can start using its search capabilities. - -### 11. Deploy MongoDB Tools Pod - -To interact with your MongoDB deployment, this step deploys a utility pod named `mongodb-tools-pod`. This pod runs a MongoDB Enterprise Server image and is kept running with a `sleep infinity` command, allowing you to use `kubectl exec` to run MongoDB client tools like `mongosh` and `mongorestore` from within the Kubernetes cluster. Running steps in a pod inside the cluster simplifies connectivity to your MongoDB deployment without neeeding to expose the database externally (provided steps directly connect to the *.cluster.local hostnames). - -[code_snippets/0410_run_mongodb_tools_pod.sh](code_snippets/0410_run_mongodb_tools_pod.sh) -```shell copy -{% include "code_snippets/0410_run_mongodb_tools_pod.sh" %} -``` - -### 12. Import Sample Data - -To test the search functionality, this step imports the `sample_mflix.movies` collection. It downloads the sample dataset and uses `mongorestore` to load the data into the `sample_mflix` database in your MongoDB deployment, connecting as the admin user. - -[code_snippets/0420_import_movies_mflix_database.sh](code_snippets/0420_import_movies_mflix_database.sh) -```shell copy -{% include "code_snippets/0420_import_movies_mflix_database.sh" %} -``` -This command uses `mongorestore` from the `mongodb-tools-pod` to load data from the downloaded `sample_mflix.archive` file. - -### 13. Create Search Index - -Before performing search queries, create a search index. This step uses `kubectl exec` to run `mongosh` in the `mongodb-tools-pod`. It connects to the `sample_mflix` database as `search-user` and calls `db.movies.createSearchIndex()` to create a search index named "default" with dynamic mappings on the `movies` collection. Dynamic mapping automatically indexes all fields with supported types. MongoDB Search offers flexible index definitions, allowing for dynamic and static field mappings, various analyzer types (standard, language-specific, custom), and features like synonyms and faceted search. - -[code_snippets/0430_create_search_index.sh](code_snippets/0430_create_search_index.sh) -```shell copy -{% include "code_snippets/0430_create_search_index.sh" %} -``` - -### 14. Wait for Search Index to be Ready - -Creating a search index is an asynchronous operation. This script polls periodically the status by executing `db.movies.getSearchIndexes("default")`. - -[code_snippets/0440_wait_for_search_index_ready.sh](code_snippets/0440_wait_for_search_index_ready.sh) -```shell copy -{% include "code_snippets/0440_wait_for_search_index_ready.sh" %} -``` - -### 15. Execute a Search Query - -Once the search index is ready, execute search queries using the `$search` aggregation pipeline stage. MongoDB Search supports a query language, allowing for various types of queries such as text search, autocomplete, faceting, and more. You can combine `$search` with other aggregation stages to further refine and process your results. - -[code_snippets/0450_execute_search_query.sh](code_snippets/0450_execute_search_query.sh) -```shell copy -{% include "code_snippets/0450_execute_search_query.sh" %} -``` diff --git a/docs/search/enterprise/quick-start/code_snippets/0045_create_namespaces.sh b/docs/search/enterprise/quick-start/code_snippets/0045_create_namespaces.sh deleted file mode 100755 index 7d0899c63..000000000 --- a/docs/search/enterprise/quick-start/code_snippets/0045_create_namespaces.sh +++ /dev/null @@ -1 +0,0 @@ -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" create namespace "${MDB_NAMESPACE}" diff --git a/docs/search/enterprise/quick-start/code_snippets/0050_configure_ops_manager_project.sh b/docs/search/enterprise/quick-start/code_snippets/0050_configure_ops_manager_project.sh deleted file mode 100644 index 9ab363540..000000000 --- a/docs/search/enterprise/quick-start/code_snippets/0050_configure_ops_manager_project.sh +++ /dev/null @@ -1,5 +0,0 @@ -if [[ "${ops_manager_version}" == "cloud_qa" && -n "${PROJECT_DIR}" ]]; then - pushd "${PROJECT_DIR}" - scripts/dev/configure_operator.sh - popd -fi diff --git a/docs/search/enterprise/quick-start/code_snippets/0310_wait_for_database_resource.sh b/docs/search/enterprise/quick-start/code_snippets/0310_wait_for_database_resource.sh deleted file mode 100755 index 06b0ea91a..000000000 --- a/docs/search/enterprise/quick-start/code_snippets/0310_wait_for_database_resource.sh +++ /dev/null @@ -1,6 +0,0 @@ -echo "Waiting for MongoDB resource to reach Running phase..." -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" wait --for=jsonpath='{.status.phase}'=Running mdb/mdb-rs --timeout=400s -echo; echo "MongoDB resource" -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" get mdb/mdb-rs -echo; echo "Pods running in cluster ${K8S_CLUSTER_0_CONTEXT_NAME}" -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" get pods diff --git a/docs/search/enterprise/quick-start/code_snippets/0325_wait_for_search_resource.sh b/docs/search/enterprise/quick-start/code_snippets/0325_wait_for_search_resource.sh deleted file mode 100755 index 485a01628..000000000 --- a/docs/search/enterprise/quick-start/code_snippets/0325_wait_for_search_resource.sh +++ /dev/null @@ -1,2 +0,0 @@ -echo "Waiting for MongoDBSearch resource to reach Running phase..." -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" wait --for=jsonpath='{.status.phase}'=Running mdbs/mdb-rs --timeout=300s diff --git a/docs/search/enterprise/quick-start/code_snippets/0330_wait_for_database_resource.sh b/docs/search/enterprise/quick-start/code_snippets/0330_wait_for_database_resource.sh deleted file mode 100755 index 089383894..000000000 --- a/docs/search/enterprise/quick-start/code_snippets/0330_wait_for_database_resource.sh +++ /dev/null @@ -1,2 +0,0 @@ -echo "Waiting for MongoDB resource to reach Running phase..." -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" wait --for=jsonpath='{.status.phase}'=Running mdb/mdb-rs --timeout=400s diff --git a/docs/search/enterprise/quick-start/code_snippets/0335_show_running_pods.sh b/docs/search/enterprise/quick-start/code_snippets/0335_show_running_pods.sh deleted file mode 100755 index 136ef8368..000000000 --- a/docs/search/enterprise/quick-start/code_snippets/0335_show_running_pods.sh +++ /dev/null @@ -1,6 +0,0 @@ -echo; echo "MongoDB resource" -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" get mdb/mdb-rs -echo; echo "MongoDBSearch resource" -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" get mdbs/mdb-rs -echo; echo "Pods running in cluster ${K8S_CLUSTER_0_CONTEXT_NAME}" -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${MDB_NAMESPACE}" get pods diff --git a/docs/search/enterprise/quick-start/code_snippets/0410_run_mongodb_tools_pod.sh b/docs/search/enterprise/quick-start/code_snippets/0410_run_mongodb_tools_pod.sh deleted file mode 100755 index 3918143e9..000000000 --- a/docs/search/enterprise/quick-start/code_snippets/0410_run_mongodb_tools_pod.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash - -kubectl apply -n "${MDB_NAMESPACE}" --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -f - < /tmp/mdb_script.js -mongosh --quiet "mongodb://mdb-user:${MDB_USER_PASSWORD}@mdb-rs-0.mdb-rs-svc.${MDB_NAMESPACE}.svc.cluster.local:27017/?replicaSet=mdb-rs" < /tmp/mdb_script.js -EOF -)" diff --git a/docs/search/enterprise/quick-start/code_snippets/9010_delete_namespace.sh b/docs/search/enterprise/quick-start/code_snippets/9010_delete_namespace.sh deleted file mode 100755 index ed2d3046d..000000000 --- a/docs/search/enterprise/quick-start/code_snippets/9010_delete_namespace.sh +++ /dev/null @@ -1 +0,0 @@ -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" delete namespace "${MDB_NAMESPACE}" diff --git a/docs/search/enterprise/quick-start/env_variables_e2e_prerelease.sh b/docs/search/enterprise/quick-start/env_variables_e2e_prerelease.sh deleted file mode 100644 index b708d7786..000000000 --- a/docs/search/enterprise/quick-start/env_variables_e2e_prerelease.sh +++ /dev/null @@ -1,6 +0,0 @@ -export K8S_CLUSTER_0_CONTEXT_NAME="${CLUSTER_NAME}" - -export PRIVATE_PREVIEW_IMAGE_PULLSECRET="${COMMUNITY_PRIVATE_PREVIEW_PULLSECRET_DOCKERCONFIGJSON}" - -export OPERATOR_ADDITIONAL_HELM_VALUES="" -export OPERATOR_HELM_CHART="${PROJECT_DIR}/helm_chart" diff --git a/docs/search/enterprise/quick-start/env_variables_e2e_public.sh b/docs/search/enterprise/quick-start/env_variables_e2e_public.sh deleted file mode 100644 index 8a835d9b7..000000000 --- a/docs/search/enterprise/quick-start/env_variables_e2e_public.sh +++ /dev/null @@ -1,2 +0,0 @@ -export K8S_CLUSTER_0_CONTEXT_NAME="${CLUSTER_NAME}" -export PRIVATE_PREVIEW_IMAGE_PULLSECRET="${COMMUNITY_PRIVATE_PREVIEW_PULLSECRET_DOCKERCONFIGJSON}" diff --git a/docs/search/enterprise/quick-start/output/0335_show_running_pods.out b/docs/search/enterprise/quick-start/output/0335_show_running_pods.out deleted file mode 100644 index 0101cdfd1..000000000 --- a/docs/search/enterprise/quick-start/output/0335_show_running_pods.out +++ /dev/null @@ -1,16 +0,0 @@ - -MongoDB resource -NAME PHASE VERSION TYPE AGE -mdb-rs Running 8.0.10 ReplicaSet 7m25s - -MongoDBSearch resource -NAME PHASE AGE -mdb-rs Running 4m45s - -Pods running in cluster kind-e2e-operator -NAME READY STATUS RESTARTS AGE -mdb-rs-0 1/1 Running 0 7m21s -mdb-rs-1 1/1 Running 0 6m36s -mdb-rs-2 1/1 Running 0 6m11s -mdb-rs-search-0 1/1 Running 0 3m20s -mongodb-kubernetes-operator-765f667584-jxzlc 1/1 Running 0 7m27s diff --git a/docs/search/enterprise/quick-start/output/0440_wait_for_search_index_ready.out b/docs/search/enterprise/quick-start/output/0440_wait_for_search_index_ready.out deleted file mode 100644 index b264580af..000000000 --- a/docs/search/enterprise/quick-start/output/0440_wait_for_search_index_ready.out +++ /dev/null @@ -1 +0,0 @@ -Sleeping to wait for search indexes to be created diff --git a/docs/search/enterprise/quick-start/output/0450_execute_search_query.out b/docs/search/enterprise/quick-start/output/0450_execute_search_query.out deleted file mode 100644 index f425a96d8..000000000 --- a/docs/search/enterprise/quick-start/output/0450_execute_search_query.out +++ /dev/null @@ -1,22 +0,0 @@ -mdb-rs [primary] test> switched to db sample_mflix -mdb-rs [primary] sample_mflix> ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... [ - { - plot: 'A sports agent stages an unconventional recruitment strategy to get talented Indian cricket players to play Major League Baseball.', - genres: [ 'Biography', 'Drama', 'Sport' ], - title: 'Million Dollar Arm', - released: ISODate('2014-05-16T00:00:00.000Z') - }, - { - plot: 'A Taiwanese high school baseball team travels to Japan in 1931 to compete in a national tournament.', - genres: [ 'Biography', 'Drama', 'History' ], - title: 'Kano', - released: ISODate('2014-02-27T00:00:00.000Z') - }, - { - plot: "12-year-old Josh is a mixed race boy and a promising baseball player. He is abused by his mother's boyfriend Byrd, and neglected by his mother Debbie. He forges his own path in life when ...", - genres: [ 'Drama' ], - title: 'Calloused Hands', - released: ISODate('2013-03-03T00:00:00.000Z') - } -] -mdb-rs [primary] sample_mflix> \ No newline at end of file diff --git a/docs/search/enterprise/quick-start/test.sh b/docs/search/enterprise/quick-start/test.sh deleted file mode 100755 index 2df98c99e..000000000 --- a/docs/search/enterprise/quick-start/test.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/env bash - -set -eou pipefail - -script_name=$(readlink -f "${BASH_SOURCE[0]}") -script_dir=$(dirname "${script_name}") - -source "${script_dir}/../../../../scripts/code_snippets/sample_test_runner.sh" - -cd "${script_dir}" - -prepare_snippets - -run 0045_create_namespaces.sh -run 0046_create_image_pull_secrets.sh -run 0050_configure_ops_manager_project.sh - -run_for_output 090_helm_add_mogodb_repo.sh -run_for_output 0100_install_operator.sh -run 0305_create_mongodb_database_resource.sh -run 0310_wait_for_database_resource.sh -run 0315_create_mongodb_users.sh -run 0320_create_mongodb_search_resource.sh -run 0325_wait_for_search_resource.sh -run 0330_wait_for_database_resource.sh -run_for_output 0335_show_running_pods.sh -run 0410_run_mongodb_tools_pod.sh -run 0420_import_movies_mflix_database.sh -run 0430_create_search_index.sh -run_for_output 0440_wait_for_search_index_ready.sh -run_for_output 0450_execute_search_query.sh -cd - diff --git a/scripts/code_snippets/task_kind_search_enterprise_snippets_test.sh b/scripts/code_snippets/task_kind_search_enterprise_snippets_test.sh deleted file mode 100755 index cf9399478..000000000 --- a/scripts/code_snippets/task_kind_search_enterprise_snippets_test.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash - -set -eou pipefail -source scripts/dev/set_env_context.sh - -dump_logs() { - source scripts/evergreen/e2e/dump_diagnostic_information.sh - if [[ "${SKIP_DUMP:-"false"}" != "true" ]]; then - dump_all_non_default_namespaces "$@" - fi -} -trap dump_logs EXIT - -test_dir="./docs/search/enterprise/quick-start" - -source "${test_dir}/env_variables.sh" -echo "Sourcing env variables for ${CODE_SNIPPETS_FLAVOR} flavor" -# shellcheck disable=SC1090 -test -f "${test_dir}/env_variables_${CODE_SNIPPETS_FLAVOR}.sh" && source "${test_dir}/env_variables_${CODE_SNIPPETS_FLAVOR}.sh" - -${test_dir}/test.sh -scripts/code_snippets/kind_search_snippets_render_template.sh ${test_dir} diff --git a/docs/search/enterprise/quick-start/output/090_helm_add_mogodb_repo.out b/scripts/code_snippets/tests/outputs/test_kind_search_enterprise_snippets/02_0090_helm_add_mogodb_repo.out similarity index 100% rename from docs/search/enterprise/quick-start/output/090_helm_add_mogodb_repo.out rename to scripts/code_snippets/tests/outputs/test_kind_search_enterprise_snippets/02_0090_helm_add_mogodb_repo.out diff --git a/docs/search/enterprise/quick-start/output/0100_install_operator.out b/scripts/code_snippets/tests/outputs/test_kind_search_enterprise_snippets/02_0100_install_operator.out similarity index 84% rename from docs/search/enterprise/quick-start/output/0100_install_operator.out rename to scripts/code_snippets/tests/outputs/test_kind_search_enterprise_snippets/02_0100_install_operator.out index 84ef0e38a..68f8e3322 100644 --- a/docs/search/enterprise/quick-start/output/0100_install_operator.out +++ b/scripts/code_snippets/tests/outputs/test_kind_search_enterprise_snippets/02_0100_install_operator.out @@ -1,35 +1,52 @@ Release "mongodb-kubernetes" does not exist. Installing it now. NAME: mongodb-kubernetes -LAST DEPLOYED: Fri Aug 1 22:48:48 2025 -NAMESPACE: mongodb-test +LAST DEPLOYED: Sun Aug 24 14:01:47 2025 +NAMESPACE: ls STATUS: deployed REVISION: 1 TEST SUITE: None USER-SUPPLIED VALUES: +agent: + version: 108.0.2.8729-1 database: - version: 688cf772f2350700075c5909 + name: mongodb-kubernetes-database + version: 68876175f5ad6d0007fdc1d4 initAppDb: - version: 688cf772f2350700075c5909 + version: 68876175f5ad6d0007fdc1d4 initDatabase: - version: 688cf772f2350700075c5909 + version: 68876175f5ad6d0007fdc1d4 initOpsManager: - version: 688cf772f2350700075c5909 + version: 68876175f5ad6d0007fdc1d4 +managedSecurityContext: false +mongodb: + imageType: ubi9 + name: mongodb-enterprise-server operator: - version: 688cf772f2350700075c5909 + enablePVCResize: true + maxConcurrentReconciles: 10 + mdbDefaultArchitecture: non-static + telemetry: + collection: + frequency: 1m + send: + enabled: false + version: 68876175f5ad6d0007fdc1d4 +opsManager: + name: mongodb-enterprise-ops-manager-ubi registry: agent: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev appDb: quay.io/mongodb database: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev - imagePullSecrets: image-registries-secret2 + imagePullSecrets: image-registries-secret initAppDb: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev initDatabase: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev initOpsManager: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev operator: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev - opsManager: quay.io/mongodb + opsManager: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev search: community: - name: community - repo: 268558157000.dkr.ecr.eu-west-1.amazonaws.com/mongot + name: mongot/community + repo: 268558157000.dkr.ecr.eu-west-1.amazonaws.com version: fbd60fb055dd500058edcb45677ea85d19421f47 COMPUTED VALUES: @@ -63,20 +80,20 @@ community: version: 4.4.0 database: name: mongodb-kubernetes-database - version: 688cf772f2350700075c5909 + version: 68876175f5ad6d0007fdc1d4 initAppDb: name: mongodb-kubernetes-init-appdb - version: 688cf772f2350700075c5909 + version: 68876175f5ad6d0007fdc1d4 initDatabase: name: mongodb-kubernetes-init-database - version: 688cf772f2350700075c5909 + version: 68876175f5ad6d0007fdc1d4 initOpsManager: name: mongodb-kubernetes-init-ops-manager - version: 688cf772f2350700075c5909 + version: 68876175f5ad6d0007fdc1d4 managedSecurityContext: false mongodb: appdbAssumeOldFormat: false - imageType: ubi8 + imageType: ubi9 name: mongodb-enterprise-server repo: quay.io/mongodb multiCluster: @@ -94,7 +111,7 @@ operator: enableClusterMongoDBRoles: true enablePVCResize: true env: prod - maxConcurrentReconciles: 1 + maxConcurrentReconciles: 10 mdbDefaultArchitecture: non-static name: mongodb-kubernetes-operator nodeSelector: {} @@ -111,15 +128,16 @@ operator: collection: clusters: {} deployments: {} - frequency: 1h + frequency: 1m operators: {} send: + enabled: false frequency: 168h tolerations: [] vaultSecretBackend: enabled: false tlsSecretRef: "" - version: 688cf772f2350700075c5909 + version: 68876175f5ad6d0007fdc1d4 watchedResources: - mongodb - opsmanagers @@ -138,19 +156,19 @@ registry: agent: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev appDb: quay.io/mongodb database: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev - imagePullSecrets: image-registries-secret2 + imagePullSecrets: image-registries-secret initAppDb: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev initDatabase: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev initOpsManager: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev operator: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev - opsManager: quay.io/mongodb + opsManager: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev pullPolicy: Always readinessProbe: quay.io/mongodb versionUpgradeHook: quay.io/mongodb search: community: - name: community - repo: 268558157000.dkr.ecr.eu-west-1.amazonaws.com/mongot + name: mongot/community + repo: 268558157000.dkr.ecr.eu-west-1.amazonaws.com version: fbd60fb055dd500058edcb45677ea85d19421f47 versionUpgradeHook: name: mongodb-kubernetes-operator-version-upgrade-post-start-hook @@ -164,42 +182,42 @@ apiVersion: v1 kind: ServiceAccount metadata: name: mongodb-kubernetes-appdb - namespace: mongodb-test + namespace: ls imagePullSecrets: - - name: image-registries-secret2 + - name: image-registries-secret --- # Source: mongodb-kubernetes/templates/database-roles.yaml apiVersion: v1 kind: ServiceAccount metadata: name: mongodb-kubernetes-database-pods - namespace: mongodb-test + namespace: ls imagePullSecrets: - - name: image-registries-secret2 + - name: image-registries-secret --- # Source: mongodb-kubernetes/templates/database-roles.yaml apiVersion: v1 kind: ServiceAccount metadata: name: mongodb-kubernetes-ops-manager - namespace: mongodb-test + namespace: ls imagePullSecrets: - - name: image-registries-secret2 + - name: image-registries-secret --- # Source: mongodb-kubernetes/templates/operator-sa.yaml apiVersion: v1 kind: ServiceAccount metadata: name: mongodb-kubernetes-operator - namespace: mongodb-test + namespace: ls imagePullSecrets: - - name: image-registries-secret2 + - name: image-registries-secret --- # Source: mongodb-kubernetes/templates/operator-roles-clustermongodbroles.yaml kind: ClusterRole apiVersion: rbac.authorization.k8s.io/v1 metadata: - name: mongodb-kubernetes-operator-mongodb-test-cluster-mongodb-role + name: mongodb-kubernetes-operator-ls-cluster-mongodb-role rules: - apiGroups: - mongodb.com @@ -267,22 +285,22 @@ rules: kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: - name: mongodb-kubernetes-operator-mongodb-test-cluster-mongodb-role-binding + name: mongodb-kubernetes-operator-ls-cluster-mongodb-role-binding roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole - name: mongodb-kubernetes-operator-mongodb-test-cluster-mongodb-role + name: mongodb-kubernetes-operator-ls-cluster-mongodb-role subjects: - kind: ServiceAccount name: mongodb-kubernetes-operator - namespace: mongodb-test + namespace: ls --- # Source: mongodb-kubernetes/templates/operator-roles-telemetry.yaml # ClusterRoleBinding for clusterVersionDetection kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: - name: mongodb-kubernetes-operator-mongodb-test-cluster-telemetry-binding + name: mongodb-kubernetes-operator-ls-cluster-telemetry-binding roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole @@ -290,13 +308,13 @@ roleRef: subjects: - kind: ServiceAccount name: mongodb-kubernetes-operator - namespace: mongodb-test + namespace: ls --- # Source: mongodb-kubernetes/templates/operator-roles-webhook.yaml kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: - name: mongodb-kubernetes-operator-mongodb-test-webhook-binding + name: mongodb-kubernetes-operator-ls-webhook-binding roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole @@ -304,14 +322,14 @@ roleRef: subjects: - kind: ServiceAccount name: mongodb-kubernetes-operator - namespace: mongodb-test + namespace: ls --- # Source: mongodb-kubernetes/templates/database-roles.yaml kind: Role apiVersion: rbac.authorization.k8s.io/v1 metadata: name: mongodb-kubernetes-appdb - namespace: mongodb-test + namespace: ls rules: - apiGroups: - '' @@ -333,7 +351,7 @@ kind: Role apiVersion: rbac.authorization.k8s.io/v1 metadata: name: mongodb-kubernetes-operator - namespace: mongodb-test + namespace: ls rules: - apiGroups: - '' @@ -414,7 +432,7 @@ kind: Role apiVersion: rbac.authorization.k8s.io/v1 metadata: name: mongodb-kubernetes-operator-pvc-resize - namespace: mongodb-test + namespace: ls rules: - apiGroups: - '' @@ -433,7 +451,7 @@ kind: RoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: name: mongodb-kubernetes-appdb - namespace: mongodb-test + namespace: ls roleRef: apiGroup: rbac.authorization.k8s.io kind: Role @@ -441,14 +459,14 @@ roleRef: subjects: - kind: ServiceAccount name: mongodb-kubernetes-appdb - namespace: mongodb-test + namespace: ls --- # Source: mongodb-kubernetes/templates/operator-roles-base.yaml kind: RoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: name: mongodb-kubernetes-operator - namespace: mongodb-test + namespace: ls roleRef: apiGroup: rbac.authorization.k8s.io kind: Role @@ -456,14 +474,14 @@ roleRef: subjects: - kind: ServiceAccount name: mongodb-kubernetes-operator - namespace: mongodb-test + namespace: ls --- # Source: mongodb-kubernetes/templates/operator-roles-pvc-resize.yaml kind: RoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: name: mongodb-kubernetes-operator-pvc-resize-binding - namespace: mongodb-test + namespace: ls roleRef: apiGroup: rbac.authorization.k8s.io kind: Role @@ -471,14 +489,14 @@ roleRef: subjects: - kind: ServiceAccount name: mongodb-kubernetes-operator - namespace: mongodb-test + namespace: ls --- # Source: mongodb-kubernetes/templates/operator.yaml apiVersion: apps/v1 kind: Deployment metadata: name: mongodb-kubernetes-operator - namespace: mongodb-test + namespace: ls spec: replicas: 1 selector: @@ -498,10 +516,10 @@ spec: runAsNonRoot: true runAsUser: 2000 imagePullSecrets: - - name: image-registries-secret2 + - name: image-registries-secret containers: - name: mongodb-kubernetes-operator - image: "268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-kubernetes:688cf772f2350700075c5909" + image: "268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-kubernetes:68876175f5ad6d0007fdc1d4" imagePullPolicy: Always args: - -watch-resource=mongodb @@ -533,7 +551,9 @@ spec: fieldRef: fieldPath: metadata.namespace - name: MDB_OPERATOR_TELEMETRY_COLLECTION_FREQUENCY - value: "1h" + value: "1m" + - name: MDB_OPERATOR_TELEMETRY_SEND_ENABLED + value: "false" - name: MDB_OPERATOR_TELEMETRY_SEND_FREQUENCY value: "168h" - name: CLUSTER_CLIENT_TIMEOUT @@ -546,21 +566,21 @@ spec: - name: INIT_DATABASE_IMAGE_REPOSITORY value: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-kubernetes-init-database - name: INIT_DATABASE_VERSION - value: 688cf772f2350700075c5909 + value: 68876175f5ad6d0007fdc1d4 - name: DATABASE_VERSION - value: 688cf772f2350700075c5909 + value: 68876175f5ad6d0007fdc1d4 # Ops Manager - name: OPS_MANAGER_IMAGE_REPOSITORY - value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi + value: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-enterprise-ops-manager-ubi - name: INIT_OPS_MANAGER_IMAGE_REPOSITORY value: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-kubernetes-init-ops-manager - name: INIT_OPS_MANAGER_VERSION - value: 688cf772f2350700075c5909 + value: 68876175f5ad6d0007fdc1d4 # AppDB - name: INIT_APPDB_IMAGE_REPOSITORY value: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-kubernetes-init-appdb - name: INIT_APPDB_VERSION - value: 688cf772f2350700075c5909 + value: 68876175f5ad6d0007fdc1d4 - name: OPS_MANAGER_IMAGE_PULL_POLICY value: Always - name: AGENT_IMAGE @@ -572,13 +592,13 @@ spec: - name: MONGODB_REPO_URL value: quay.io/mongodb - name: MDB_IMAGE_TYPE - value: ubi8 + value: ubi9 - name: PERFORM_FAILOVER value: 'true' - name: IMAGE_PULL_SECRETS - value: image-registries-secret2 + value: image-registries-secret - name: MDB_MAX_CONCURRENT_RECONCILES - value: "1" + value: "10" - name: POD_NAME valueFrom: fieldRef: @@ -600,9 +620,9 @@ spec: value: "ubi8" # Community Env Vars End - name: MDB_SEARCH_COMMUNITY_REPO_URL - value: "268558157000.dkr.ecr.eu-west-1.amazonaws.com/mongot" + value: "268558157000.dkr.ecr.eu-west-1.amazonaws.com" - name: MDB_SEARCH_COMMUNITY_NAME - value: "community" + value: "mongot/community" - name: MDB_SEARCH_COMMUNITY_VERSION value: "fbd60fb055dd500058edcb45677ea85d19421f47" diff --git a/scripts/code_snippets/tests/test_kind_search_enterprise_snippets.sh b/scripts/code_snippets/tests/test_kind_search_enterprise_snippets.sh new file mode 100755 index 000000000..be44ab6dc --- /dev/null +++ b/scripts/code_snippets/tests/test_kind_search_enterprise_snippets.sh @@ -0,0 +1,38 @@ +#!/usr/bin/env bash + +set -eou pipefail +test "${MDB_BASH_DEBUG:-0}" -eq 1 && set -x + +source scripts/dev/set_env_context.sh + +script_name=$(readlink -f "${BASH_SOURCE[0]}") + +_SNIPPETS_OUTPUT_DIR="$(dirname "${script_name}")/outputs/$(basename "${script_name%.*}")" +export _SNIPPETS_OUTPUT_DIR +mkdir -p "${_SNIPPETS_OUTPUT_DIR}" + +dump_logs() { + source scripts/evergreen/e2e/dump_diagnostic_information.sh + if [[ "${SKIP_DUMP:-"false"}" != "true" ]]; then + dump_all_non_default_namespaces "$@" + echo + fi +} +trap dump_logs EXIT + +test_dir="./docs/search/02-search-enterprise-deploy" +source "${test_dir}/env_variables.sh" +echo "Sourcing env variables for ${CODE_SNIPPETS_FLAVOR} flavor" +# shellcheck disable=SC1090 +test -f "${test_dir}/env_variables_${CODE_SNIPPETS_FLAVOR}.sh" && source "${test_dir}/env_variables_${CODE_SNIPPETS_FLAVOR}.sh" +${test_dir}/test.sh + +test_dir="./docs/search/03-search-query-usage" +echo "Sourcing env variables for ${CODE_SNIPPETS_FLAVOR} flavor" +# shellcheck disable=SC1090 +test -f "${test_dir}/env_variables_${CODE_SNIPPETS_FLAVOR}.sh" && source "${test_dir}/env_variables_${CODE_SNIPPETS_FLAVOR}.sh" + +export MDB_RESOURCE_NAME="mdbc-rs" +export MDB_CONNECTION_STRING="mongodb://mdb-user:${MDB_USER_PASSWORD}@${MDB_RESOURCE_NAME}-0.${MDB_RESOURCE_NAME}-svc.${MDB_NS}.svc.cluster.local:27017/?replicaSet=${MDB_RESOURCE_NAME}" + +${test_dir}/test.sh diff --git a/scripts/dev/configure_docker_auth.sh b/scripts/dev/configure_docker_auth.sh index dfcb14f0b..4ea855436 100755 --- a/scripts/dev/configure_docker_auth.sh +++ b/scripts/dev/configure_docker_auth.sh @@ -89,7 +89,7 @@ if grep -q "credsStore" ~/.docker/config.json; then aws ecr get-login-password --region "us-east-1" | docker login --username AWS --password-stdin 268558157000.dkr.ecr.us-east-1.amazonaws.com fi -aws ecr get-login-password --region "eu-west-1" | docker login --username AWS --password-stdin 268558157000.dkr.ecr.eu-west-1.amazonaws.com + aws ecr get-login-password --region "eu-west-1" | docker login --username AWS --password-stdin 268558157000.dkr.ecr.eu-west-1.amazonaws.com if [[ -n "${COMMUNITY_PRIVATE_PREVIEW_PULLSECRET_DOCKERCONFIGJSON:-}" ]]; then # log in to quay.io for the mongodb/mongodb-search-community private repo diff --git a/scripts/dev/contexts/private_kind_code_snippets b/scripts/dev/contexts/private_kind_code_snippets index 4f968896f..6ae3751d8 100644 --- a/scripts/dev/contexts/private_kind_code_snippets +++ b/scripts/dev/contexts/private_kind_code_snippets @@ -10,7 +10,7 @@ script_dir=$(dirname "${script_name}") source "${script_dir}/root-context" source "${script_dir}/e2e_mdb_community" -export NAMESPACE=mongodb-test +export NAMESPACE=mongodb export CODE_SNIPPETS_FLAVOR=e2e_private export ops_manager_version="cloud_qa" From a6abfbb0a2c859a48ec851e2439abe993e44d8dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Sierant?= Date: Sun, 24 Aug 2025 15:55:29 +0200 Subject: [PATCH 4/6] Refactor of existing snippets on master --- .evergreen-functions.yml | 4 +- .evergreen-snippets.yml | 3 +- .evergreen.yml | 10 + .../01_0046_create_image_pull_secrets.sh | 0 .../output/1210_verify_mongosh_connection.out | 15 - .../mongodb-replicaset-mc-no-mesh/test.sh | 22 -- .../output/1210_verify_mongosh_connection.out | 15 - .../mongodb-replicaset-multi-cluster/test.sh | 22 -- .../output/2210_verify_mongosh_connection.out | 15 - .../mongodb-sharded-mc-no-mesh/test.sh | 22 -- .../output/2210_verify_mongosh_connection.out | 15 - .../mongodb-sharded-multi-cluster/test.sh | 22 -- .../output/0150_om_load_balancer.out | 10 - ...330_ops_manager_wait_for_running_state.out | 22 -- ...522_ops_manager_wait_for_running_state.out | 30 -- .../ops-manager-mc-no-mesh/test.sh | 39 -- ...321_ops_manager_wait_for_pending_state.out | 4 - .../ops-manager-multi-cluster/test.sh | 31 -- .../ra-06_0250_generate_certs.sh} | 0 ...0_ops_manager_create_admin_credentials.sh} | 0 ...anager_deploy_on_single_member_cluster.sh} | 0 ...311_ops_manager_wait_for_pending_state.sh} | 0 ...312_ops_manager_wait_for_running_state.sh} | 0 ...06_0320_ops_manager_add_second_cluster.sh} | 0 ...321_ops_manager_wait_for_pending_state.sh} | 0 ...322_ops_manager_wait_for_running_state.sh} | 0 .../ra-06_0400_install_minio_s3.sh} | 0 ..._ops_manager_prepare_s3_backup_secrets.sh} | 0 ...a-06_0510_ops_manager_enable_s3_backup.sh} | 0 ...522_ops_manager_wait_for_running_state.sh} | 0 ...610_create_mdb_org_and_get_credentials.sh} | 0 .../ra-06_9100_delete_backup_namespaces.sh} | 0 .../code_snippets/ra-06_9200_delete_om.sh} | 0 .../env_variables.sh | 0 .../teardown.sh | 4 +- .../ra-06-ops-manager-multi-cluster/test.sh | 31 ++ .../ra-07_1050_generate_certs.sh} | 0 ..._1100_mongodb_replicaset_multi_cluster.sh} | 0 ...t_multi_cluster_wait_for_running_state.sh} | 0 .../ra-07_1200_create_mongodb_user.sh} | 0 .../ra-07_1210_verify_mongosh_connection.sh} | 0 .../ra-07_9000_delete_resources.sh} | 0 .../env_variables.sh | 0 .../teardown.sh | 2 +- .../test.sh | 22 ++ .../ra-08_2050_generate_certs.sh} | 0 ...-08_2100_mongodb_sharded_multi_cluster.sh} | 0 ...d_multi_cluster_wait_for_running_state.sh} | 0 .../ra-08_2200_create_mongodb_user.sh} | 0 .../ra-08_2210_verify_mongosh_connection.sh} | 0 .../ra-08_9000_delete_resources.sh} | 0 .../env_variables.sh | 0 .../teardown.sh | 2 +- .../test.sh | 22 ++ .../ra-10_0100_generate_certs.sh} | 0 .../ra-10_0110_add_cert_to_gcp.sh} | 0 .../ra-10_0150_om_load_balancer.sh} | 0 .../ra-10_0160_add_dns_record.sh} | 0 ...0_ops_manager_create_admin_credentials.sh} | 0 .../ra-10_0320_ops_manager_no_mesh.sh} | 0 ...321_ops_manager_wait_for_pending_state.sh} | 0 .../ra-10_0325_set_up_lb_services.sh} | 0 .../ra-10_0326_set_up_lb_services.sh} | 0 ...330_ops_manager_wait_for_running_state.sh} | 0 .../ra-10_0400_install_minio_s3.sh} | 0 ..._ops_manager_prepare_s3_backup_secrets.sh} | 0 ...a-10_0510_ops_manager_enable_s3_backup.sh} | 0 ...522_ops_manager_wait_for_running_state.sh} | 0 ...610_create_mdb_org_and_get_credentials.sh} | 0 .../ra-10_9000_cleanup_gke_lb.sh} | 0 .../ra-10_9100_delete_backup_namespaces.sh} | 0 .../code_snippets/ra-10_9200_delete_om.sh} | 0 .../env_variables.sh | 0 .../teardown.sh | 6 +- .../ra-10-ops-manager-mc-no-mesh/test.sh | 41 +++ .../ra-11_2050_generate_certs.sh} | 0 ...-11_2100_mongodb_sharded_multi_cluster.sh} | 0 ...d_multi_cluster_wait_for_running_state.sh} | 0 .../ra-11_2200_create_mongodb_user.sh} | 0 .../ra-11_2210_verify_mongosh_connection.sh} | 0 .../ra-11_9000_delete_resources.sh} | 0 .../env_variables.sh | 0 .../teardown.sh | 2 +- .../ra-11-mongodb-sharded-mc-no-mesh/test.sh | 22 ++ .../ra-12_1050_generate_certs.sh} | 0 ..._1100_mongodb_replicaset_multi_cluster.sh} | 0 ...t_multi_cluster_wait_for_running_state.sh} | 0 .../ra-12_1200_create_mongodb_user.sh} | 0 .../ra-12_1210_verify_mongosh_connection.sh} | 0 .../ra-12_9000_delete_resources.sh} | 0 .../env_variables.sh | 0 .../teardown.sh | 2 +- .../test.sh | 22 ++ .../ra-01_0005_gcloud_set_current_project.sh} | 0 .../ra-01_0010_create_gke_cluster_0.sh} | 0 .../ra-01_0010_create_gke_cluster_1.sh} | 0 .../ra-01_0010_create_gke_cluster_2.sh} | 0 .../ra-01_0020_get_gke_credentials.sh} | 0 .../ra-01_0030_verify_access_to_clusters.sh} | 0 .../ra-01_9010_delete_gke_clusters.sh} | 0 .../env_variables.sh | 0 .../ra-01-setup-gke/teardown.sh | 16 + .../ra-01-setup-gke/test.sh | 23 ++ .../ra-02_0045_create_namespaces.sh} | 0 .../ra-02_0046_create_image_pull_secrets.sh} | 0 ...ubectl_mongodb_configure_multi_cluster.sh} | 0 .../ra-02_0205_helm_configure_repo.sh} | 0 .../ra-02_0210_helm_install_operator.sh} | 0 .../ra-02_0211_check_operator_deployment.sh} | 2 +- .../ra-02_9000_delete_namespaces.sh} | 0 .../env_variables.sh | 0 .../ra-02-setup-operator/teardown.sh | 16 + .../ra-02-setup-operator/test.sh | 22 ++ .../ra-03_0040_install_istio.sh} | 0 .../ra-03_0050_label_namespaces.sh} | 0 .../install_istio_separate_network.sh | 0 .../test.sh | 4 +- ...45_create_connectivity_test_namespaces.sh} | 0 ...heck_cluster_connectivity_create_sts_0.sh} | 0 ...heck_cluster_connectivity_create_sts_1.sh} | 0 ...heck_cluster_connectivity_create_sts_2.sh} | 0 ...heck_cluster_connectivity_wait_for_sts.sh} | 0 ...ster_connectivity_create_pod_service_0.sh} | 0 ...ster_connectivity_create_pod_service_1.sh} | 0 ...ster_connectivity_create_pod_service_2.sh} | 0 ...nectivity_create_round_robin_service_0.sh} | 0 ...nectivity_create_round_robin_service_1.sh} | 0 ...nectivity_create_round_robin_service_2.sh} | 0 ...ectivity_verify_pod_0_0_from_cluster_1.sh} | 0 ...ectivity_verify_pod_1_0_from_cluster_0.sh} | 0 ...ectivity_verify_pod_1_0_from_cluster_2.sh} | 0 ...ectivity_verify_pod_2_0_from_cluster_0.sh} | 0 ...100_check_cluster_connectivity_cleanup.sh} | 0 .../ra-04-verify-connectivity/test.sh | 33 ++ .../ra-05_0215_helm_configure_repo.sh} | 0 .../ra-05_0216_helm_install_cert_manager.sh} | 0 .../ra-05_0220_create_issuer.sh} | 0 .../ra-05_0221_verify_issuer.sh} | 0 .../ra-05_0225_create_ca_configmap.sh} | 0 .../test.sh | 10 +- .../ra-09_0100_create_gke_sa.sh} | 0 .../ra-09_0120_add_role_to_sa.sh} | 0 .../ra-09_0130_create_sa_key.sh} | 2 +- .../ra-09_0140_create_namespaces.sh} | 0 .../ra-09_0150_create_sa_secrets.sh} | 0 .../ra-09_0200_install_externaldns.sh} | 0 .../ra-09_0300_setup_dns_zone.sh} | 0 .../code_snippets/ra-09_9000_delete_sa.sh} | 0 .../ra-09_9050_delete_namespace.sh} | 0 .../ra-09_9100_delete_dns_zone.sh} | 0 .../env_variables.sh | 0 .../ra-09-setup-externaldns/teardown.sh | 18 + .../test.sh | 14 +- .../yamls/externaldns.yaml | 0 .../setup-externaldns/teardown.sh | 18 - .../output/0030_verify_access_to_clusters.out | 15 - .../setup-multi-cluster/setup-gke/teardown.sh | 16 - .../setup-multi-cluster/setup-gke/test.sh | 23 -- .../setup-operator/teardown.sh | 16 - .../setup-operator/test.sh | 22 -- .../verify-connectivity/test.sh | 33 -- .../ra-01_0030_verify_access_to_clusters.out | 15 + ...ubectl_mongodb_configure_multi_cluster.out | 24 +- .../ra-02_0205_helm_configure_repo.out | 2 +- .../ra-02_0210_helm_install_operator.out | 205 +++++++---- .../ra-02_0211_check_operator_deployment.out | 2 +- ...ectivity_verify_pod_0_0_from_cluster_1.out | 2 +- ...ectivity_verify_pod_1_0_from_cluster_0.out | 2 +- ...ectivity_verify_pod_1_0_from_cluster_2.out | 2 +- ...ectivity_verify_pod_2_0_from_cluster_0.out | 2 +- .../ra-05_0215_helm_configure_repo.out | 0 .../ra-05_0216_helm_install_cert_manager.out | 2 +- .../ra-05_0221_verify_issuer.out | 0 ...311_ops_manager_wait_for_pending_state.out | 0 ...312_ops_manager_wait_for_running_state.out | 14 +- ...321_ops_manager_wait_for_pending_state.out | 0 ...322_ops_manager_wait_for_running_state.out | 18 +- ...522_ops_manager_wait_for_running_state.out | 22 +- .../01_0100_install_operator.out | 184 +++++----- ...test_gke_multi_cluster_no_mesh_snippets.sh | 68 ++-- .../tests/test_gke_multi_cluster_snippets.sh | 62 +++- scripts/code_snippets/validate_snippets.py | 4 +- .../dev/contexts/prerelease_gke_code_snippets | 2 +- .../dev/contexts/private_gke_code_snippets | 4 +- scripts/dev/contexts/public_gke_code_snippets | 4 +- .../e2e/dump_diagnostic_information.sh | 343 ++++++++++-------- ...gnostic_information_from_all_namespaces.sh | 7 +- scripts/evergreen/e2e/e2e.sh | 2 +- scripts/funcs/operator_deployment | 8 +- 189 files changed, 907 insertions(+), 875 deletions(-) mode change 100755 => 100644 docs/search/01-search-community-deploy/code_snippets/01_0046_create_image_pull_secrets.sh delete mode 100644 public/architectures/mongodb-replicaset-mc-no-mesh/output/1210_verify_mongosh_connection.out delete mode 100755 public/architectures/mongodb-replicaset-mc-no-mesh/test.sh delete mode 100644 public/architectures/mongodb-replicaset-multi-cluster/output/1210_verify_mongosh_connection.out delete mode 100755 public/architectures/mongodb-replicaset-multi-cluster/test.sh delete mode 100644 public/architectures/mongodb-sharded-mc-no-mesh/output/2210_verify_mongosh_connection.out delete mode 100755 public/architectures/mongodb-sharded-mc-no-mesh/test.sh delete mode 100644 public/architectures/mongodb-sharded-multi-cluster/output/2210_verify_mongosh_connection.out delete mode 100755 public/architectures/mongodb-sharded-multi-cluster/test.sh delete mode 100644 public/architectures/ops-manager-mc-no-mesh/output/0150_om_load_balancer.out delete mode 100644 public/architectures/ops-manager-mc-no-mesh/output/0330_ops_manager_wait_for_running_state.out delete mode 100644 public/architectures/ops-manager-mc-no-mesh/output/0522_ops_manager_wait_for_running_state.out delete mode 100755 public/architectures/ops-manager-mc-no-mesh/test.sh delete mode 100644 public/architectures/ops-manager-multi-cluster/output/0321_ops_manager_wait_for_pending_state.out delete mode 100755 public/architectures/ops-manager-multi-cluster/test.sh rename public/architectures/{ops-manager-multi-cluster/code_snippets/0250_generate_certs.sh => ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0250_generate_certs.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/0300_ops_manager_create_admin_credentials.sh => ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0300_ops_manager_create_admin_credentials.sh} (100%) rename public/architectures/{ops-manager-multi-cluster/code_snippets/0310_ops_manager_deploy_on_single_member_cluster.sh => ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0310_ops_manager_deploy_on_single_member_cluster.sh} (100%) rename public/architectures/{ops-manager-multi-cluster/code_snippets/0311_ops_manager_wait_for_pending_state.sh => ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0311_ops_manager_wait_for_pending_state.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/0330_ops_manager_wait_for_running_state.sh => ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0312_ops_manager_wait_for_running_state.sh} (100%) rename public/architectures/{ops-manager-multi-cluster/code_snippets/0320_ops_manager_add_second_cluster.sh => ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0320_ops_manager_add_second_cluster.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/0321_ops_manager_wait_for_pending_state.sh => ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0321_ops_manager_wait_for_pending_state.sh} (100%) rename public/architectures/{ops-manager-multi-cluster/code_snippets/0322_ops_manager_wait_for_running_state.sh => ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0322_ops_manager_wait_for_running_state.sh} (100%) rename public/architectures/{ops-manager-multi-cluster/code_snippets/0400_install_minio_s3.sh => ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0400_install_minio_s3.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/0500_ops_manager_prepare_s3_backup_secrets.sh => ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0500_ops_manager_prepare_s3_backup_secrets.sh} (100%) rename public/architectures/{ops-manager-multi-cluster/code_snippets/0510_ops_manager_enable_s3_backup.sh => ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0510_ops_manager_enable_s3_backup.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/0522_ops_manager_wait_for_running_state.sh => ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0522_ops_manager_wait_for_running_state.sh} (100%) rename public/architectures/{ops-manager-multi-cluster/code_snippets/0610_create_mdb_org_and_get_credentials.sh => ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0610_create_mdb_org_and_get_credentials.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/9100_delete_backup_namespaces.sh => ra-06-ops-manager-multi-cluster/code_snippets/ra-06_9100_delete_backup_namespaces.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/9200_delete_om.sh => ra-06-ops-manager-multi-cluster/code_snippets/ra-06_9200_delete_om.sh} (100%) rename public/architectures/{ops-manager-multi-cluster => ra-06-ops-manager-multi-cluster}/env_variables.sh (100%) rename public/architectures/{ops-manager-multi-cluster => ra-06-ops-manager-multi-cluster}/teardown.sh (75%) create mode 100755 public/architectures/ra-06-ops-manager-multi-cluster/test.sh rename public/architectures/{mongodb-replicaset-multi-cluster/code_snippets/1050_generate_certs.sh => ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_1050_generate_certs.sh} (100%) rename public/architectures/{mongodb-replicaset-multi-cluster/code_snippets/1100_mongodb_replicaset_multi_cluster.sh => ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_1100_mongodb_replicaset_multi_cluster.sh} (100%) rename public/architectures/{mongodb-replicaset-mc-no-mesh/code_snippets/1110_mongodb_replicaset_multi_cluster_wait_for_running_state.sh => ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_1110_mongodb_replicaset_multi_cluster_wait_for_running_state.sh} (100%) rename public/architectures/{mongodb-replicaset-mc-no-mesh/code_snippets/1200_create_mongodb_user.sh => ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_1200_create_mongodb_user.sh} (100%) rename public/architectures/{mongodb-replicaset-mc-no-mesh/code_snippets/1210_verify_mongosh_connection.sh => ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_1210_verify_mongosh_connection.sh} (100%) rename public/architectures/{mongodb-replicaset-mc-no-mesh/code_snippets/9000_delete_resources.sh => ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_9000_delete_resources.sh} (100%) rename public/architectures/{mongodb-replicaset-multi-cluster => ra-07-mongodb-replicaset-multi-cluster}/env_variables.sh (100%) rename public/architectures/{mongodb-replicaset-multi-cluster => ra-07-mongodb-replicaset-multi-cluster}/teardown.sh (86%) create mode 100755 public/architectures/ra-07-mongodb-replicaset-multi-cluster/test.sh rename public/architectures/{mongodb-sharded-multi-cluster/code_snippets/2050_generate_certs.sh => ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_2050_generate_certs.sh} (100%) rename public/architectures/{mongodb-sharded-multi-cluster/code_snippets/2100_mongodb_sharded_multi_cluster.sh => ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_2100_mongodb_sharded_multi_cluster.sh} (100%) rename public/architectures/{mongodb-sharded-mc-no-mesh/code_snippets/2110_mongodb_sharded_multi_cluster_wait_for_running_state.sh => ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_2110_mongodb_sharded_multi_cluster_wait_for_running_state.sh} (100%) rename public/architectures/{mongodb-sharded-mc-no-mesh/code_snippets/2200_create_mongodb_user.sh => ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_2200_create_mongodb_user.sh} (100%) rename public/architectures/{mongodb-sharded-mc-no-mesh/code_snippets/2210_verify_mongosh_connection.sh => ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_2210_verify_mongosh_connection.sh} (100%) rename public/architectures/{mongodb-sharded-mc-no-mesh/code_snippets/9000_delete_resources.sh => ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_9000_delete_resources.sh} (100%) rename public/architectures/{mongodb-sharded-multi-cluster => ra-08-mongodb-sharded-multi-cluster}/env_variables.sh (100%) rename public/architectures/{mongodb-replicaset-mc-no-mesh => ra-08-mongodb-sharded-multi-cluster}/teardown.sh (86%) create mode 100755 public/architectures/ra-08-mongodb-sharded-multi-cluster/test.sh rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/0100_generate_certs.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0100_generate_certs.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/0110_add_cert_to_gcp.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0110_add_cert_to_gcp.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/0150_om_load_balancer.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0150_om_load_balancer.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/0160_add_dns_record.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0160_add_dns_record.sh} (100%) rename public/architectures/{ops-manager-multi-cluster/code_snippets/0300_ops_manager_create_admin_credentials.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0300_ops_manager_create_admin_credentials.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/0320_ops_manager_no_mesh.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0320_ops_manager_no_mesh.sh} (100%) rename public/architectures/{ops-manager-multi-cluster/code_snippets/0321_ops_manager_wait_for_pending_state.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0321_ops_manager_wait_for_pending_state.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/0325_set_up_lb_services.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0325_set_up_lb_services.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/0326_set_up_lb_services.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0326_set_up_lb_services.sh} (100%) rename public/architectures/{ops-manager-multi-cluster/code_snippets/0312_ops_manager_wait_for_running_state.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0330_ops_manager_wait_for_running_state.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/0400_install_minio_s3.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0400_install_minio_s3.sh} (100%) rename public/architectures/{ops-manager-multi-cluster/code_snippets/0500_ops_manager_prepare_s3_backup_secrets.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0500_ops_manager_prepare_s3_backup_secrets.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/0510_ops_manager_enable_s3_backup.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0510_ops_manager_enable_s3_backup.sh} (100%) rename public/architectures/{ops-manager-multi-cluster/code_snippets/0522_ops_manager_wait_for_running_state.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0522_ops_manager_wait_for_running_state.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/0610_create_mdb_org_and_get_credentials.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0610_create_mdb_org_and_get_credentials.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh/code_snippets/9000_cleanup_gke_lb.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_9000_cleanup_gke_lb.sh} (100%) rename public/architectures/{ops-manager-multi-cluster/code_snippets/9100_delete_backup_namespaces.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_9100_delete_backup_namespaces.sh} (100%) rename public/architectures/{ops-manager-multi-cluster/code_snippets/9200_delete_om.sh => ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_9200_delete_om.sh} (100%) rename public/architectures/{ops-manager-mc-no-mesh => ra-10-ops-manager-mc-no-mesh}/env_variables.sh (100%) rename public/architectures/{ops-manager-mc-no-mesh => ra-10-ops-manager-mc-no-mesh}/teardown.sh (67%) create mode 100755 public/architectures/ra-10-ops-manager-mc-no-mesh/test.sh rename public/architectures/{mongodb-sharded-mc-no-mesh/code_snippets/2050_generate_certs.sh => ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_2050_generate_certs.sh} (100%) rename public/architectures/{mongodb-sharded-mc-no-mesh/code_snippets/2100_mongodb_sharded_multi_cluster.sh => ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_2100_mongodb_sharded_multi_cluster.sh} (100%) rename public/architectures/{mongodb-sharded-multi-cluster/code_snippets/2110_mongodb_sharded_multi_cluster_wait_for_running_state.sh => ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_2110_mongodb_sharded_multi_cluster_wait_for_running_state.sh} (100%) rename public/architectures/{mongodb-sharded-multi-cluster/code_snippets/2200_create_mongodb_user.sh => ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_2200_create_mongodb_user.sh} (100%) rename public/architectures/{mongodb-sharded-multi-cluster/code_snippets/2210_verify_mongosh_connection.sh => ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_2210_verify_mongosh_connection.sh} (100%) rename public/architectures/{mongodb-sharded-multi-cluster/code_snippets/9000_delete_resources.sh => ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_9000_delete_resources.sh} (100%) rename public/architectures/{mongodb-sharded-mc-no-mesh => ra-11-mongodb-sharded-mc-no-mesh}/env_variables.sh (100%) rename public/architectures/{mongodb-sharded-mc-no-mesh => ra-11-mongodb-sharded-mc-no-mesh}/teardown.sh (86%) create mode 100755 public/architectures/ra-11-mongodb-sharded-mc-no-mesh/test.sh rename public/architectures/{mongodb-replicaset-mc-no-mesh/code_snippets/1050_generate_certs.sh => ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_1050_generate_certs.sh} (100%) rename public/architectures/{mongodb-replicaset-mc-no-mesh/code_snippets/1100_mongodb_replicaset_multi_cluster.sh => ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_1100_mongodb_replicaset_multi_cluster.sh} (100%) rename public/architectures/{mongodb-replicaset-multi-cluster/code_snippets/1110_mongodb_replicaset_multi_cluster_wait_for_running_state.sh => ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_1110_mongodb_replicaset_multi_cluster_wait_for_running_state.sh} (100%) rename public/architectures/{mongodb-replicaset-multi-cluster/code_snippets/1200_create_mongodb_user.sh => ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_1200_create_mongodb_user.sh} (100%) rename public/architectures/{mongodb-replicaset-multi-cluster/code_snippets/1210_verify_mongosh_connection.sh => ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_1210_verify_mongosh_connection.sh} (100%) rename public/architectures/{mongodb-replicaset-multi-cluster/code_snippets/9000_delete_resources.sh => ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_9000_delete_resources.sh} (100%) rename public/architectures/{mongodb-replicaset-mc-no-mesh => ra-12-mongodb-replicaset-mc-no-mesh}/env_variables.sh (100%) rename public/architectures/{mongodb-sharded-multi-cluster => ra-12-mongodb-replicaset-mc-no-mesh}/teardown.sh (86%) create mode 100755 public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/test.sh rename public/architectures/setup-multi-cluster/{setup-gke/code_snippets/0005_gcloud_set_current_project.sh => ra-01-setup-gke/code_snippets/ra-01_0005_gcloud_set_current_project.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-gke/code_snippets/0010_create_gke_cluster_0.sh => ra-01-setup-gke/code_snippets/ra-01_0010_create_gke_cluster_0.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-gke/code_snippets/0010_create_gke_cluster_1.sh => ra-01-setup-gke/code_snippets/ra-01_0010_create_gke_cluster_1.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-gke/code_snippets/0010_create_gke_cluster_2.sh => ra-01-setup-gke/code_snippets/ra-01_0010_create_gke_cluster_2.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-gke/code_snippets/0020_get_gke_credentials.sh => ra-01-setup-gke/code_snippets/ra-01_0020_get_gke_credentials.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-gke/code_snippets/0030_verify_access_to_clusters.sh => ra-01-setup-gke/code_snippets/ra-01_0030_verify_access_to_clusters.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-gke/code_snippets/9010_delete_gke_clusters.sh => ra-01-setup-gke/code_snippets/ra-01_9010_delete_gke_clusters.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-gke => ra-01-setup-gke}/env_variables.sh (100%) create mode 100755 public/architectures/setup-multi-cluster/ra-01-setup-gke/teardown.sh create mode 100755 public/architectures/setup-multi-cluster/ra-01-setup-gke/test.sh rename public/architectures/setup-multi-cluster/{setup-operator/code_snippets/0045_create_namespaces.sh => ra-02-setup-operator/code_snippets/ra-02_0045_create_namespaces.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-operator/code_snippets/0046_create_image_pull_secrets.sh => ra-02-setup-operator/code_snippets/ra-02_0046_create_image_pull_secrets.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-operator/code_snippets/0200_kubectl_mongodb_configure_multi_cluster.sh => ra-02-setup-operator/code_snippets/ra-02_0200_kubectl_mongodb_configure_multi_cluster.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-operator/code_snippets/0205_helm_configure_repo.sh => ra-02-setup-operator/code_snippets/ra-02_0205_helm_configure_repo.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-operator/code_snippets/0210_helm_install_operator.sh => ra-02-setup-operator/code_snippets/ra-02_0210_helm_install_operator.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-operator/code_snippets/0211_check_operator_deployment.sh => ra-02-setup-operator/code_snippets/ra-02_0211_check_operator_deployment.sh} (79%) rename public/architectures/setup-multi-cluster/{setup-operator/code_snippets/9000_delete_namespaces.sh => ra-02-setup-operator/code_snippets/ra-02_9000_delete_namespaces.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-operator => ra-02-setup-operator}/env_variables.sh (100%) create mode 100755 public/architectures/setup-multi-cluster/ra-02-setup-operator/teardown.sh create mode 100755 public/architectures/setup-multi-cluster/ra-02-setup-operator/test.sh rename public/architectures/setup-multi-cluster/{setup-istio/code_snippets/0040_install_istio.sh => ra-03-setup-istio/code_snippets/ra-03_0040_install_istio.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-istio/code_snippets/0050_label_namespaces.sh => ra-03-setup-istio/code_snippets/ra-03_0050_label_namespaces.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-istio => ra-03-setup-istio}/install_istio_separate_network.sh (100%) rename public/architectures/setup-multi-cluster/{setup-istio => ra-03-setup-istio}/test.sh (77%) rename public/architectures/setup-multi-cluster/{verify-connectivity/code_snippets/0045_create_connectivity_test_namespaces.sh => ra-04-verify-connectivity/code_snippets/ra-04_0045_create_connectivity_test_namespaces.sh} (100%) rename public/architectures/setup-multi-cluster/{verify-connectivity/code_snippets/0050_check_cluster_connectivity_create_sts_0.sh => ra-04-verify-connectivity/code_snippets/ra-04_0050_check_cluster_connectivity_create_sts_0.sh} (100%) rename public/architectures/setup-multi-cluster/{verify-connectivity/code_snippets/0050_check_cluster_connectivity_create_sts_1.sh => ra-04-verify-connectivity/code_snippets/ra-04_0050_check_cluster_connectivity_create_sts_1.sh} (100%) rename public/architectures/setup-multi-cluster/{verify-connectivity/code_snippets/0050_check_cluster_connectivity_create_sts_2.sh => ra-04-verify-connectivity/code_snippets/ra-04_0050_check_cluster_connectivity_create_sts_2.sh} (100%) rename public/architectures/setup-multi-cluster/{verify-connectivity/code_snippets/0060_check_cluster_connectivity_wait_for_sts.sh => ra-04-verify-connectivity/code_snippets/ra-04_0060_check_cluster_connectivity_wait_for_sts.sh} (100%) rename public/architectures/setup-multi-cluster/{verify-connectivity/code_snippets/0070_check_cluster_connectivity_create_pod_service_0.sh => ra-04-verify-connectivity/code_snippets/ra-04_0070_check_cluster_connectivity_create_pod_service_0.sh} (100%) rename public/architectures/setup-multi-cluster/{verify-connectivity/code_snippets/0070_check_cluster_connectivity_create_pod_service_1.sh => ra-04-verify-connectivity/code_snippets/ra-04_0070_check_cluster_connectivity_create_pod_service_1.sh} (100%) rename public/architectures/setup-multi-cluster/{verify-connectivity/code_snippets/0070_check_cluster_connectivity_create_pod_service_2.sh => ra-04-verify-connectivity/code_snippets/ra-04_0070_check_cluster_connectivity_create_pod_service_2.sh} (100%) rename public/architectures/setup-multi-cluster/{verify-connectivity/code_snippets/0080_check_cluster_connectivity_create_round_robin_service_0.sh => ra-04-verify-connectivity/code_snippets/ra-04_0080_check_cluster_connectivity_create_round_robin_service_0.sh} (100%) rename public/architectures/setup-multi-cluster/{verify-connectivity/code_snippets/0080_check_cluster_connectivity_create_round_robin_service_1.sh => ra-04-verify-connectivity/code_snippets/ra-04_0080_check_cluster_connectivity_create_round_robin_service_1.sh} (100%) rename public/architectures/setup-multi-cluster/{verify-connectivity/code_snippets/0080_check_cluster_connectivity_create_round_robin_service_2.sh => ra-04-verify-connectivity/code_snippets/ra-04_0080_check_cluster_connectivity_create_round_robin_service_2.sh} (100%) rename public/architectures/setup-multi-cluster/{verify-connectivity/code_snippets/0090_check_cluster_connectivity_verify_pod_0_0_from_cluster_1.sh => ra-04-verify-connectivity/code_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_0_0_from_cluster_1.sh} (100%) rename public/architectures/setup-multi-cluster/{verify-connectivity/code_snippets/0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_0.sh => ra-04-verify-connectivity/code_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_0.sh} (100%) rename public/architectures/setup-multi-cluster/{verify-connectivity/code_snippets/0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_2.sh => ra-04-verify-connectivity/code_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_2.sh} (100%) rename public/architectures/setup-multi-cluster/{verify-connectivity/code_snippets/0090_check_cluster_connectivity_verify_pod_2_0_from_cluster_0.sh => ra-04-verify-connectivity/code_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_2_0_from_cluster_0.sh} (100%) rename public/architectures/setup-multi-cluster/{verify-connectivity/code_snippets/0100_check_cluster_connectivity_cleanup.sh => ra-04-verify-connectivity/code_snippets/ra-04_0100_check_cluster_connectivity_cleanup.sh} (100%) create mode 100755 public/architectures/setup-multi-cluster/ra-04-verify-connectivity/test.sh rename public/architectures/setup-multi-cluster/{setup-cert-manager/code_snippets/0215_helm_configure_repo.sh => ra-05-setup-cert-manager/code_snippets/ra-05_0215_helm_configure_repo.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-cert-manager/code_snippets/0216_helm_install_cert_manager.sh => ra-05-setup-cert-manager/code_snippets/ra-05_0216_helm_install_cert_manager.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-cert-manager/code_snippets/0220_create_issuer.sh => ra-05-setup-cert-manager/code_snippets/ra-05_0220_create_issuer.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-cert-manager/code_snippets/0221_verify_issuer.sh => ra-05-setup-cert-manager/code_snippets/ra-05_0221_verify_issuer.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-cert-manager/code_snippets/0225_create_ca_configmap.sh => ra-05-setup-cert-manager/code_snippets/ra-05_0225_create_ca_configmap.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-cert-manager => ra-05-setup-cert-manager}/test.sh (51%) rename public/architectures/setup-multi-cluster/{setup-externaldns/code_snippets/0100_create_gke_sa.sh => ra-09-setup-externaldns/code_snippets/ra-09_0100_create_gke_sa.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-externaldns/code_snippets/0120_add_role_to_sa.sh => ra-09-setup-externaldns/code_snippets/ra-09_0120_add_role_to_sa.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-externaldns/code_snippets/0130_create_sa_key.sh => ra-09-setup-externaldns/code_snippets/ra-09_0130_create_sa_key.sh} (62%) rename public/architectures/setup-multi-cluster/{setup-externaldns/code_snippets/0140_create_namespaces.sh => ra-09-setup-externaldns/code_snippets/ra-09_0140_create_namespaces.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-externaldns/code_snippets/0150_create_sa_secrets.sh => ra-09-setup-externaldns/code_snippets/ra-09_0150_create_sa_secrets.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-externaldns/code_snippets/0200_install_externaldns.sh => ra-09-setup-externaldns/code_snippets/ra-09_0200_install_externaldns.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-externaldns/code_snippets/0300_setup_dns_zone.sh => ra-09-setup-externaldns/code_snippets/ra-09_0300_setup_dns_zone.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-externaldns/code_snippets/9000_delete_sa.sh => ra-09-setup-externaldns/code_snippets/ra-09_9000_delete_sa.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-externaldns/code_snippets/9050_delete_namespace.sh => ra-09-setup-externaldns/code_snippets/ra-09_9050_delete_namespace.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-externaldns/code_snippets/9100_delete_dns_zone.sh => ra-09-setup-externaldns/code_snippets/ra-09_9100_delete_dns_zone.sh} (100%) rename public/architectures/setup-multi-cluster/{setup-externaldns => ra-09-setup-externaldns}/env_variables.sh (100%) create mode 100755 public/architectures/setup-multi-cluster/ra-09-setup-externaldns/teardown.sh rename public/architectures/setup-multi-cluster/{setup-externaldns => ra-09-setup-externaldns}/test.sh (54%) rename public/architectures/setup-multi-cluster/{setup-externaldns => ra-09-setup-externaldns}/yamls/externaldns.yaml (100%) delete mode 100755 public/architectures/setup-multi-cluster/setup-externaldns/teardown.sh delete mode 100644 public/architectures/setup-multi-cluster/setup-gke/output/0030_verify_access_to_clusters.out delete mode 100755 public/architectures/setup-multi-cluster/setup-gke/teardown.sh delete mode 100755 public/architectures/setup-multi-cluster/setup-gke/test.sh delete mode 100755 public/architectures/setup-multi-cluster/setup-operator/teardown.sh delete mode 100755 public/architectures/setup-multi-cluster/setup-operator/test.sh delete mode 100755 public/architectures/setup-multi-cluster/verify-connectivity/test.sh create mode 100644 scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-01_0030_verify_access_to_clusters.out rename public/architectures/setup-multi-cluster/setup-operator/output/0200_kubectl_mongodb_configure_multi_cluster.out => scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-02_0200_kubectl_mongodb_configure_multi_cluster.out (83%) rename public/architectures/setup-multi-cluster/setup-operator/output/0205_helm_configure_repo.out => scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-02_0205_helm_configure_repo.out (85%) rename public/architectures/setup-multi-cluster/setup-operator/output/0210_helm_install_operator.out => scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-02_0210_helm_install_operator.out (68%) rename public/architectures/setup-multi-cluster/setup-operator/output/0211_check_operator_deployment.out => scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-02_0211_check_operator_deployment.out (85%) rename public/architectures/setup-multi-cluster/verify-connectivity/output/0090_check_cluster_connectivity_verify_pod_0_0_from_cluster_1.out => scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_0_0_from_cluster_1.out (71%) rename public/architectures/setup-multi-cluster/verify-connectivity/output/0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_0.out => scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_0.out (71%) rename public/architectures/setup-multi-cluster/verify-connectivity/output/0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_2.out => scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_2.out (71%) rename public/architectures/setup-multi-cluster/verify-connectivity/output/0090_check_cluster_connectivity_verify_pod_2_0_from_cluster_0.out => scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_2_0_from_cluster_0.out (71%) rename public/architectures/setup-multi-cluster/setup-cert-manager/output/0215_helm_configure_repo.out => scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-05_0215_helm_configure_repo.out (100%) rename public/architectures/setup-multi-cluster/setup-cert-manager/output/0216_helm_install_cert_manager.out => scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-05_0216_helm_install_cert_manager.out (96%) rename public/architectures/setup-multi-cluster/setup-cert-manager/output/0221_verify_issuer.out => scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-05_0221_verify_issuer.out (100%) rename public/architectures/ops-manager-multi-cluster/output/0311_ops_manager_wait_for_pending_state.out => scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0311_ops_manager_wait_for_pending_state.out (100%) rename public/architectures/ops-manager-multi-cluster/output/0312_ops_manager_wait_for_running_state.out => scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0312_ops_manager_wait_for_running_state.out (65%) rename public/architectures/ops-manager-mc-no-mesh/output/0321_ops_manager_wait_for_pending_state.out => scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0321_ops_manager_wait_for_pending_state.out (100%) rename public/architectures/ops-manager-multi-cluster/output/0322_ops_manager_wait_for_running_state.out => scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0322_ops_manager_wait_for_running_state.out (62%) rename public/architectures/ops-manager-multi-cluster/output/0522_ops_manager_wait_for_running_state.out => scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0522_ops_manager_wait_for_running_state.out (63%) diff --git a/.evergreen-functions.yml b/.evergreen-functions.yml index 48bd65806..510e6b6c9 100644 --- a/.evergreen-functions.yml +++ b/.evergreen-functions.yml @@ -793,7 +793,7 @@ functions: working_dir: src/github.com/mongodb/mongodb-kubernetes binary: scripts/code_snippets/sample_commit_output.sh - # it executes a script by convention: ./scripts/code_snippets/${task_name}_test.sh + # it executes a script by convention: ./scripts/code_snippets/tests/${task_name} test_code_snippets: - *switch_context - command: shell.exec @@ -806,4 +806,4 @@ functions: - code_snippets_reset - task_name script: | - ./scripts/code_snippets/${task_name}_test.sh + ./scripts/code_snippets/tests/${task_name} diff --git a/.evergreen-snippets.yml b/.evergreen-snippets.yml index 390a70ed3..9f316248f 100644 --- a/.evergreen-snippets.yml +++ b/.evergreen-snippets.yml @@ -7,7 +7,8 @@ variables: - func: setup_mongosh - func: download_kube_tools - func: build_multi_cluster_binary - teardown_group: + teardown_task: + - func: upload_e2e_logs - func: upload_code_snippets_logs - &setup_and_teardown_group_kind_code_snippets diff --git a/.evergreen.yml b/.evergreen.yml index a754ddb9a..527e61938 100644 --- a/.evergreen.yml +++ b/.evergreen.yml @@ -1764,6 +1764,16 @@ buildvariants: tasks: - name: release_all_agents_on_ecr + # Only called manually, It's used for testing the task release_agents_on_ecr in case the release.json + # has not changed, and you still want to push the images to ecr. + - name: manual_ecr_release_agent_currently_used + display_name: manual_ecr_release_agent_currently_used + tags: [ "release_all_agents_manually" ] + run_on: + - ubuntu2204-large + tasks: + - name: release_all_currently_used_agents_on_ecr + ### Build variants for manual patch only - name: backup_csv_images diff --git a/docs/search/01-search-community-deploy/code_snippets/01_0046_create_image_pull_secrets.sh b/docs/search/01-search-community-deploy/code_snippets/01_0046_create_image_pull_secrets.sh old mode 100755 new mode 100644 diff --git a/public/architectures/mongodb-replicaset-mc-no-mesh/output/1210_verify_mongosh_connection.out b/public/architectures/mongodb-replicaset-mc-no-mesh/output/1210_verify_mongosh_connection.out deleted file mode 100644 index 15875e92a..000000000 --- a/public/architectures/mongodb-replicaset-mc-no-mesh/output/1210_verify_mongosh_connection.out +++ /dev/null @@ -1,15 +0,0 @@ -{ - authInfo: { - authenticatedUsers: [ { user: 'rs-user', db: 'admin' } ], - authenticatedUserRoles: [ { role: 'root', db: 'admin' } ] - }, - ok: 1, - '$clusterTime': { - clusterTime: Timestamp({ t: 1751960325, i: 1 }), - signature: { - hash: Binary.createFromBase64('1zdo7WUvUyl6qvurToyZCoOwmdY=', 0), - keyId: Long('7524612286879629318') - } - }, - operationTime: Timestamp({ t: 1751960325, i: 1 }) -} diff --git a/public/architectures/mongodb-replicaset-mc-no-mesh/test.sh b/public/architectures/mongodb-replicaset-mc-no-mesh/test.sh deleted file mode 100755 index 4b7622391..000000000 --- a/public/architectures/mongodb-replicaset-mc-no-mesh/test.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash - -set -eou pipefail - -script_name=$(readlink -f "${BASH_SOURCE[0]}") -script_dir=$(dirname "${script_name}") - -source scripts/code_snippets/sample_test_runner.sh - -pushd "${script_dir}" - -prepare_snippets - -run 1050_generate_certs.sh -run 1100_mongodb_replicaset_multi_cluster.sh -run 1110_mongodb_replicaset_multi_cluster_wait_for_running_state.sh - -run 1200_create_mongodb_user.sh -sleep 10 -run_for_output 1210_verify_mongosh_connection.sh - -popd diff --git a/public/architectures/mongodb-replicaset-multi-cluster/output/1210_verify_mongosh_connection.out b/public/architectures/mongodb-replicaset-multi-cluster/output/1210_verify_mongosh_connection.out deleted file mode 100644 index 8fd3ba143..000000000 --- a/public/architectures/mongodb-replicaset-multi-cluster/output/1210_verify_mongosh_connection.out +++ /dev/null @@ -1,15 +0,0 @@ -{ - authInfo: { - authenticatedUsers: [ { user: 'rs-user', db: 'admin' } ], - authenticatedUserRoles: [ { role: 'root', db: 'admin' } ] - }, - ok: 1, - '$clusterTime': { - clusterTime: Timestamp({ t: 1747925179, i: 1 }), - signature: { - hash: Binary.createFromBase64('T1ZP+QUFgBXayfOsRI6XFdEmjKI=', 0), - keyId: Long('7507281432415305733') - } - }, - operationTime: Timestamp({ t: 1747925179, i: 1 }) -} diff --git a/public/architectures/mongodb-replicaset-multi-cluster/test.sh b/public/architectures/mongodb-replicaset-multi-cluster/test.sh deleted file mode 100755 index 4b7622391..000000000 --- a/public/architectures/mongodb-replicaset-multi-cluster/test.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash - -set -eou pipefail - -script_name=$(readlink -f "${BASH_SOURCE[0]}") -script_dir=$(dirname "${script_name}") - -source scripts/code_snippets/sample_test_runner.sh - -pushd "${script_dir}" - -prepare_snippets - -run 1050_generate_certs.sh -run 1100_mongodb_replicaset_multi_cluster.sh -run 1110_mongodb_replicaset_multi_cluster_wait_for_running_state.sh - -run 1200_create_mongodb_user.sh -sleep 10 -run_for_output 1210_verify_mongosh_connection.sh - -popd diff --git a/public/architectures/mongodb-sharded-mc-no-mesh/output/2210_verify_mongosh_connection.out b/public/architectures/mongodb-sharded-mc-no-mesh/output/2210_verify_mongosh_connection.out deleted file mode 100644 index a1ebea3a0..000000000 --- a/public/architectures/mongodb-sharded-mc-no-mesh/output/2210_verify_mongosh_connection.out +++ /dev/null @@ -1,15 +0,0 @@ -{ - authInfo: { - authenticatedUsers: [ { user: 'sc-user', db: 'admin' } ], - authenticatedUserRoles: [ { role: 'root', db: 'admin' } ] - }, - ok: 1, - '$clusterTime': { - clusterTime: Timestamp({ t: 1751960997, i: 1 }), - signature: { - hash: Binary.createFromBase64('nqvfLcd6LgzPn3D2ZvGFBF6xcdw=', 0), - keyId: Long('7524614838090203143') - } - }, - operationTime: Timestamp({ t: 1751960997, i: 1 }) -} diff --git a/public/architectures/mongodb-sharded-mc-no-mesh/test.sh b/public/architectures/mongodb-sharded-mc-no-mesh/test.sh deleted file mode 100755 index d45db935c..000000000 --- a/public/architectures/mongodb-sharded-mc-no-mesh/test.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash - -set -eou pipefail - -script_name=$(readlink -f "${BASH_SOURCE[0]}") -script_dir=$(dirname "${script_name}") - -source scripts/code_snippets/sample_test_runner.sh - -pushd "${script_dir}" - -prepare_snippets - -run 2050_generate_certs.sh -run 2100_mongodb_sharded_multi_cluster.sh -run 2110_mongodb_sharded_multi_cluster_wait_for_running_state.sh - -run 2200_create_mongodb_user.sh -sleep 10 -run_for_output 2210_verify_mongosh_connection.sh - -popd diff --git a/public/architectures/mongodb-sharded-multi-cluster/output/2210_verify_mongosh_connection.out b/public/architectures/mongodb-sharded-multi-cluster/output/2210_verify_mongosh_connection.out deleted file mode 100644 index 664ae8d80..000000000 --- a/public/architectures/mongodb-sharded-multi-cluster/output/2210_verify_mongosh_connection.out +++ /dev/null @@ -1,15 +0,0 @@ -{ - authInfo: { - authenticatedUsers: [ { user: 'sc-user', db: 'admin' } ], - authenticatedUserRoles: [ { role: 'root', db: 'admin' } ] - }, - ok: 1, - '$clusterTime': { - clusterTime: Timestamp({ t: 1747926002, i: 2 }), - signature: { - hash: Binary.createFromBase64('txVMxsU5ZT7eK/o9G3nqe96BdiY=', 0), - keyId: Long('7507284709475352599') - } - }, - operationTime: Timestamp({ t: 1747926002, i: 2 }) -} diff --git a/public/architectures/mongodb-sharded-multi-cluster/test.sh b/public/architectures/mongodb-sharded-multi-cluster/test.sh deleted file mode 100755 index d45db935c..000000000 --- a/public/architectures/mongodb-sharded-multi-cluster/test.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash - -set -eou pipefail - -script_name=$(readlink -f "${BASH_SOURCE[0]}") -script_dir=$(dirname "${script_name}") - -source scripts/code_snippets/sample_test_runner.sh - -pushd "${script_dir}" - -prepare_snippets - -run 2050_generate_certs.sh -run 2100_mongodb_sharded_multi_cluster.sh -run 2110_mongodb_sharded_multi_cluster_wait_for_running_state.sh - -run 2200_create_mongodb_user.sh -sleep 10 -run_for_output 2210_verify_mongosh_connection.sh - -popd diff --git a/public/architectures/ops-manager-mc-no-mesh/output/0150_om_load_balancer.out b/public/architectures/ops-manager-mc-no-mesh/output/0150_om_load_balancer.out deleted file mode 100644 index 2c9773b92..000000000 --- a/public/architectures/ops-manager-mc-no-mesh/output/0150_om_load_balancer.out +++ /dev/null @@ -1,10 +0,0 @@ -NAME NETWORK DIRECTION PRIORITY ALLOW DENY DISABLED -fw-ops-manager-hc default INGRESS 1000 tcp:8443 False -NAME PROTOCOL -om-healthcheck HTTPS -NAME BACKENDS PROTOCOL -om-backend-service HTTPS -NAME DEFAULT_SERVICE -om-url-map backendServices/om-backend-service -NAME SSL_CERTIFICATES URL_MAP REGION CERTIFICATE_MAP -om-lb-proxy om-certificate om-url-map diff --git a/public/architectures/ops-manager-mc-no-mesh/output/0330_ops_manager_wait_for_running_state.out b/public/architectures/ops-manager-mc-no-mesh/output/0330_ops_manager_wait_for_running_state.out deleted file mode 100644 index 7230ebd38..000000000 --- a/public/architectures/ops-manager-mc-no-mesh/output/0330_ops_manager_wait_for_running_state.out +++ /dev/null @@ -1,22 +0,0 @@ -Waiting for Application Database to reach Running phase... -mongodbopsmanager.mongodb.com/om condition met - -Waiting for Ops Manager to reach Running phase... -mongodbopsmanager.mongodb.com/om condition met - -MongoDBOpsManager resource -NAME REPLICAS VERSION STATE (OPSMANAGER) STATE (APPDB) STATE (BACKUP) AGE WARNINGS -om 8.0.5 Running Running Disabled 16m - -Pods running in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-686cc1e099f9ef000722c191-862 -NAME READY STATUS RESTARTS AGE -om-0-0 1/1 Running 0 12m -om-db-0-0 3/3 Running 0 3m49s -om-db-0-1 3/3 Running 0 4m51s - -Pods running in cluster gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-686cc1e099f9ef000722c191-862 -NAME READY STATUS RESTARTS AGE -om-1-0 1/1 Running 0 12m -om-1-1 1/1 Running 0 8m -om-db-1-0 3/3 Running 0 106s -om-db-1-1 3/3 Running 0 2m50s diff --git a/public/architectures/ops-manager-mc-no-mesh/output/0522_ops_manager_wait_for_running_state.out b/public/architectures/ops-manager-mc-no-mesh/output/0522_ops_manager_wait_for_running_state.out deleted file mode 100644 index b28afaad6..000000000 --- a/public/architectures/ops-manager-mc-no-mesh/output/0522_ops_manager_wait_for_running_state.out +++ /dev/null @@ -1,30 +0,0 @@ - -Waiting for Backup to reach Running phase... -mongodbopsmanager.mongodb.com/om condition met -Waiting for Application Database to reach Running phase... -mongodbopsmanager.mongodb.com/om condition met - -Waiting for Ops Manager to reach Running phase... -mongodbopsmanager.mongodb.com/om condition met - -MongoDBOpsManager resource -NAME REPLICAS VERSION STATE (OPSMANAGER) STATE (APPDB) STATE (BACKUP) AGE WARNINGS -om 8.0.5 Running Running Running 20m - -Pods running in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-686cc1e099f9ef000722c191-862 -NAME READY STATUS RESTARTS AGE -om-0-0 1/1 Running 0 16m -om-db-0-0 3/3 Running 0 8m3s -om-db-0-1 3/3 Running 0 9m5s - -Pods running in cluster gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-686cc1e099f9ef000722c191-862 -NAME READY STATUS RESTARTS AGE -om-1-0 1/1 Running 0 16m -om-1-1 1/1 Running 0 12m -om-db-1-0 3/3 Running 0 6m -om-db-1-1 3/3 Running 0 7m4s - -Pods running in cluster gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2-686cc1e099f9ef000722c191-862 -NAME READY STATUS RESTARTS AGE -om-2-backup-daemon-0 1/1 Running 0 3m50s -om-db-2-0 3/3 Running 0 5m1s diff --git a/public/architectures/ops-manager-mc-no-mesh/test.sh b/public/architectures/ops-manager-mc-no-mesh/test.sh deleted file mode 100755 index 4c8e92a6f..000000000 --- a/public/architectures/ops-manager-mc-no-mesh/test.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/env bash - -set -eou pipefail - -script_name=$(readlink -f "${BASH_SOURCE[0]}") -script_dir=$(dirname "${script_name}") - -source scripts/code_snippets/sample_test_runner.sh - -pushd "${script_dir}" - -prepare_snippets - -run 0100_generate_certs.sh -run 0110_add_cert_to_gcp.sh - -run_for_output 0150_om_load_balancer.sh - -run 0160_add_dns_record.sh - -run 0300_ops_manager_create_admin_credentials.sh - -run 0320_ops_manager_no_mesh.sh - -run_for_output 0321_ops_manager_wait_for_pending_state.sh - -run 0325_set_up_lb_services.sh -run 0326_set_up_lb_services.sh - -run_for_output 0330_ops_manager_wait_for_running_state.sh - -run 0400_install_minio_s3.sh -run 0500_ops_manager_prepare_s3_backup_secrets.sh -run 0510_ops_manager_enable_s3_backup.sh -run_for_output 0522_ops_manager_wait_for_running_state.sh - -run 0610_create_mdb_org_and_get_credentials.sh - -popd diff --git a/public/architectures/ops-manager-multi-cluster/output/0321_ops_manager_wait_for_pending_state.out b/public/architectures/ops-manager-multi-cluster/output/0321_ops_manager_wait_for_pending_state.out deleted file mode 100644 index 0e3908c8c..000000000 --- a/public/architectures/ops-manager-multi-cluster/output/0321_ops_manager_wait_for_pending_state.out +++ /dev/null @@ -1,4 +0,0 @@ -Waiting for Application Database to reach Pending phase... -mongodbopsmanager.mongodb.com/om condition met -Waiting for Ops Manager to reach Pending phase... -mongodbopsmanager.mongodb.com/om condition met diff --git a/public/architectures/ops-manager-multi-cluster/test.sh b/public/architectures/ops-manager-multi-cluster/test.sh deleted file mode 100755 index 760f5837e..000000000 --- a/public/architectures/ops-manager-multi-cluster/test.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/env bash - -set -eou pipefail - -script_name=$(readlink -f "${BASH_SOURCE[0]}") -script_dir=$(dirname "${script_name}") - -source scripts/code_snippets/sample_test_runner.sh - -pushd "${script_dir}" - -prepare_snippets - -run 0250_generate_certs.sh - -run 0300_ops_manager_create_admin_credentials.sh -run 0310_ops_manager_deploy_on_single_member_cluster.sh -run_for_output 0311_ops_manager_wait_for_pending_state.sh -run_for_output 0312_ops_manager_wait_for_running_state.sh -run 0320_ops_manager_add_second_cluster.sh -run_for_output 0321_ops_manager_wait_for_pending_state.sh -run_for_output 0322_ops_manager_wait_for_running_state.sh - -run 0400_install_minio_s3.sh -run 0500_ops_manager_prepare_s3_backup_secrets.sh -run 0510_ops_manager_enable_s3_backup.sh -run_for_output 0522_ops_manager_wait_for_running_state.sh - -run 0610_create_mdb_org_and_get_credentials.sh - -popd diff --git a/public/architectures/ops-manager-multi-cluster/code_snippets/0250_generate_certs.sh b/public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0250_generate_certs.sh similarity index 100% rename from public/architectures/ops-manager-multi-cluster/code_snippets/0250_generate_certs.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0250_generate_certs.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/0300_ops_manager_create_admin_credentials.sh b/public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0300_ops_manager_create_admin_credentials.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/0300_ops_manager_create_admin_credentials.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0300_ops_manager_create_admin_credentials.sh diff --git a/public/architectures/ops-manager-multi-cluster/code_snippets/0310_ops_manager_deploy_on_single_member_cluster.sh b/public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0310_ops_manager_deploy_on_single_member_cluster.sh similarity index 100% rename from public/architectures/ops-manager-multi-cluster/code_snippets/0310_ops_manager_deploy_on_single_member_cluster.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0310_ops_manager_deploy_on_single_member_cluster.sh diff --git a/public/architectures/ops-manager-multi-cluster/code_snippets/0311_ops_manager_wait_for_pending_state.sh b/public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0311_ops_manager_wait_for_pending_state.sh similarity index 100% rename from public/architectures/ops-manager-multi-cluster/code_snippets/0311_ops_manager_wait_for_pending_state.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0311_ops_manager_wait_for_pending_state.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/0330_ops_manager_wait_for_running_state.sh b/public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0312_ops_manager_wait_for_running_state.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/0330_ops_manager_wait_for_running_state.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0312_ops_manager_wait_for_running_state.sh diff --git a/public/architectures/ops-manager-multi-cluster/code_snippets/0320_ops_manager_add_second_cluster.sh b/public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0320_ops_manager_add_second_cluster.sh similarity index 100% rename from public/architectures/ops-manager-multi-cluster/code_snippets/0320_ops_manager_add_second_cluster.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0320_ops_manager_add_second_cluster.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/0321_ops_manager_wait_for_pending_state.sh b/public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0321_ops_manager_wait_for_pending_state.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/0321_ops_manager_wait_for_pending_state.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0321_ops_manager_wait_for_pending_state.sh diff --git a/public/architectures/ops-manager-multi-cluster/code_snippets/0322_ops_manager_wait_for_running_state.sh b/public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0322_ops_manager_wait_for_running_state.sh similarity index 100% rename from public/architectures/ops-manager-multi-cluster/code_snippets/0322_ops_manager_wait_for_running_state.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0322_ops_manager_wait_for_running_state.sh diff --git a/public/architectures/ops-manager-multi-cluster/code_snippets/0400_install_minio_s3.sh b/public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0400_install_minio_s3.sh similarity index 100% rename from public/architectures/ops-manager-multi-cluster/code_snippets/0400_install_minio_s3.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0400_install_minio_s3.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/0500_ops_manager_prepare_s3_backup_secrets.sh b/public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0500_ops_manager_prepare_s3_backup_secrets.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/0500_ops_manager_prepare_s3_backup_secrets.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0500_ops_manager_prepare_s3_backup_secrets.sh diff --git a/public/architectures/ops-manager-multi-cluster/code_snippets/0510_ops_manager_enable_s3_backup.sh b/public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0510_ops_manager_enable_s3_backup.sh similarity index 100% rename from public/architectures/ops-manager-multi-cluster/code_snippets/0510_ops_manager_enable_s3_backup.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0510_ops_manager_enable_s3_backup.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/0522_ops_manager_wait_for_running_state.sh b/public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0522_ops_manager_wait_for_running_state.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/0522_ops_manager_wait_for_running_state.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0522_ops_manager_wait_for_running_state.sh diff --git a/public/architectures/ops-manager-multi-cluster/code_snippets/0610_create_mdb_org_and_get_credentials.sh b/public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0610_create_mdb_org_and_get_credentials.sh similarity index 100% rename from public/architectures/ops-manager-multi-cluster/code_snippets/0610_create_mdb_org_and_get_credentials.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_0610_create_mdb_org_and_get_credentials.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/9100_delete_backup_namespaces.sh b/public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_9100_delete_backup_namespaces.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/9100_delete_backup_namespaces.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_9100_delete_backup_namespaces.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/9200_delete_om.sh b/public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_9200_delete_om.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/9200_delete_om.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/code_snippets/ra-06_9200_delete_om.sh diff --git a/public/architectures/ops-manager-multi-cluster/env_variables.sh b/public/architectures/ra-06-ops-manager-multi-cluster/env_variables.sh similarity index 100% rename from public/architectures/ops-manager-multi-cluster/env_variables.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/env_variables.sh diff --git a/public/architectures/ops-manager-multi-cluster/teardown.sh b/public/architectures/ra-06-ops-manager-multi-cluster/teardown.sh similarity index 75% rename from public/architectures/ops-manager-multi-cluster/teardown.sh rename to public/architectures/ra-06-ops-manager-multi-cluster/teardown.sh index cb0389a60..573a27b4a 100755 --- a/public/architectures/ops-manager-multi-cluster/teardown.sh +++ b/public/architectures/ra-06-ops-manager-multi-cluster/teardown.sh @@ -11,8 +11,8 @@ pushd "${script_dir}" prepare_snippets -run 9100_delete_backup_namespaces.sh & -run 9200_delete_om.sh & +run ra-06_9100_delete_backup_namespaces.sh & +run ra-06_9200_delete_om.sh & wait popd diff --git a/public/architectures/ra-06-ops-manager-multi-cluster/test.sh b/public/architectures/ra-06-ops-manager-multi-cluster/test.sh new file mode 100755 index 000000000..eb08178f3 --- /dev/null +++ b/public/architectures/ra-06-ops-manager-multi-cluster/test.sh @@ -0,0 +1,31 @@ +#!/usr/bin/env bash + +set -eou pipefail + +script_name=$(readlink -f "${BASH_SOURCE[0]}") +script_dir=$(dirname "${script_name}") + +source scripts/code_snippets/sample_test_runner.sh + +pushd "${script_dir}" + +prepare_snippets + +run ra-06_0250_generate_certs.sh + +run ra-06_0300_ops_manager_create_admin_credentials.sh +run ra-06_0310_ops_manager_deploy_on_single_member_cluster.sh +run_for_output ra-06_0311_ops_manager_wait_for_pending_state.sh +run_for_output ra-06_0312_ops_manager_wait_for_running_state.sh +run ra-06_0320_ops_manager_add_second_cluster.sh +run_for_output ra-06_0321_ops_manager_wait_for_pending_state.sh +run_for_output ra-06_0322_ops_manager_wait_for_running_state.sh + +run ra-06_0400_install_minio_s3.sh +run ra-06_0500_ops_manager_prepare_s3_backup_secrets.sh +run ra-06_0510_ops_manager_enable_s3_backup.sh +run_for_output ra-06_0522_ops_manager_wait_for_running_state.sh + +run ra-06_0610_create_mdb_org_and_get_credentials.sh + +popd diff --git a/public/architectures/mongodb-replicaset-multi-cluster/code_snippets/1050_generate_certs.sh b/public/architectures/ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_1050_generate_certs.sh similarity index 100% rename from public/architectures/mongodb-replicaset-multi-cluster/code_snippets/1050_generate_certs.sh rename to public/architectures/ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_1050_generate_certs.sh diff --git a/public/architectures/mongodb-replicaset-multi-cluster/code_snippets/1100_mongodb_replicaset_multi_cluster.sh b/public/architectures/ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_1100_mongodb_replicaset_multi_cluster.sh similarity index 100% rename from public/architectures/mongodb-replicaset-multi-cluster/code_snippets/1100_mongodb_replicaset_multi_cluster.sh rename to public/architectures/ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_1100_mongodb_replicaset_multi_cluster.sh diff --git a/public/architectures/mongodb-replicaset-mc-no-mesh/code_snippets/1110_mongodb_replicaset_multi_cluster_wait_for_running_state.sh b/public/architectures/ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_1110_mongodb_replicaset_multi_cluster_wait_for_running_state.sh similarity index 100% rename from public/architectures/mongodb-replicaset-mc-no-mesh/code_snippets/1110_mongodb_replicaset_multi_cluster_wait_for_running_state.sh rename to public/architectures/ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_1110_mongodb_replicaset_multi_cluster_wait_for_running_state.sh diff --git a/public/architectures/mongodb-replicaset-mc-no-mesh/code_snippets/1200_create_mongodb_user.sh b/public/architectures/ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_1200_create_mongodb_user.sh similarity index 100% rename from public/architectures/mongodb-replicaset-mc-no-mesh/code_snippets/1200_create_mongodb_user.sh rename to public/architectures/ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_1200_create_mongodb_user.sh diff --git a/public/architectures/mongodb-replicaset-mc-no-mesh/code_snippets/1210_verify_mongosh_connection.sh b/public/architectures/ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_1210_verify_mongosh_connection.sh similarity index 100% rename from public/architectures/mongodb-replicaset-mc-no-mesh/code_snippets/1210_verify_mongosh_connection.sh rename to public/architectures/ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_1210_verify_mongosh_connection.sh diff --git a/public/architectures/mongodb-replicaset-mc-no-mesh/code_snippets/9000_delete_resources.sh b/public/architectures/ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_9000_delete_resources.sh similarity index 100% rename from public/architectures/mongodb-replicaset-mc-no-mesh/code_snippets/9000_delete_resources.sh rename to public/architectures/ra-07-mongodb-replicaset-multi-cluster/code_snippets/ra-07_9000_delete_resources.sh diff --git a/public/architectures/mongodb-replicaset-multi-cluster/env_variables.sh b/public/architectures/ra-07-mongodb-replicaset-multi-cluster/env_variables.sh similarity index 100% rename from public/architectures/mongodb-replicaset-multi-cluster/env_variables.sh rename to public/architectures/ra-07-mongodb-replicaset-multi-cluster/env_variables.sh diff --git a/public/architectures/mongodb-replicaset-multi-cluster/teardown.sh b/public/architectures/ra-07-mongodb-replicaset-multi-cluster/teardown.sh similarity index 86% rename from public/architectures/mongodb-replicaset-multi-cluster/teardown.sh rename to public/architectures/ra-07-mongodb-replicaset-multi-cluster/teardown.sh index dd5dd71a8..7695b3849 100755 --- a/public/architectures/mongodb-replicaset-multi-cluster/teardown.sh +++ b/public/architectures/ra-07-mongodb-replicaset-multi-cluster/teardown.sh @@ -11,6 +11,6 @@ pushd "${script_dir}" prepare_snippets -run 9000_delete_resources.sh +run ra-07_9000_delete_resources.sh popd diff --git a/public/architectures/ra-07-mongodb-replicaset-multi-cluster/test.sh b/public/architectures/ra-07-mongodb-replicaset-multi-cluster/test.sh new file mode 100755 index 000000000..a49ca11f3 --- /dev/null +++ b/public/architectures/ra-07-mongodb-replicaset-multi-cluster/test.sh @@ -0,0 +1,22 @@ +#!/usr/bin/env bash + +set -eou pipefail + +script_name=$(readlink -f "${BASH_SOURCE[0]}") +script_dir=$(dirname "${script_name}") + +source scripts/code_snippets/sample_test_runner.sh + +pushd "${script_dir}" + +prepare_snippets + +run ra-07_1050_generate_certs.sh +run ra-07_1100_mongodb_replicaset_multi_cluster.sh +run ra-07_1110_mongodb_replicaset_multi_cluster_wait_for_running_state.sh + +run ra-07_1200_create_mongodb_user.sh +sleep 10 +run_for_output ra-07_1210_verify_mongosh_connection.sh + +popd diff --git a/public/architectures/mongodb-sharded-multi-cluster/code_snippets/2050_generate_certs.sh b/public/architectures/ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_2050_generate_certs.sh similarity index 100% rename from public/architectures/mongodb-sharded-multi-cluster/code_snippets/2050_generate_certs.sh rename to public/architectures/ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_2050_generate_certs.sh diff --git a/public/architectures/mongodb-sharded-multi-cluster/code_snippets/2100_mongodb_sharded_multi_cluster.sh b/public/architectures/ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_2100_mongodb_sharded_multi_cluster.sh similarity index 100% rename from public/architectures/mongodb-sharded-multi-cluster/code_snippets/2100_mongodb_sharded_multi_cluster.sh rename to public/architectures/ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_2100_mongodb_sharded_multi_cluster.sh diff --git a/public/architectures/mongodb-sharded-mc-no-mesh/code_snippets/2110_mongodb_sharded_multi_cluster_wait_for_running_state.sh b/public/architectures/ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_2110_mongodb_sharded_multi_cluster_wait_for_running_state.sh similarity index 100% rename from public/architectures/mongodb-sharded-mc-no-mesh/code_snippets/2110_mongodb_sharded_multi_cluster_wait_for_running_state.sh rename to public/architectures/ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_2110_mongodb_sharded_multi_cluster_wait_for_running_state.sh diff --git a/public/architectures/mongodb-sharded-mc-no-mesh/code_snippets/2200_create_mongodb_user.sh b/public/architectures/ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_2200_create_mongodb_user.sh similarity index 100% rename from public/architectures/mongodb-sharded-mc-no-mesh/code_snippets/2200_create_mongodb_user.sh rename to public/architectures/ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_2200_create_mongodb_user.sh diff --git a/public/architectures/mongodb-sharded-mc-no-mesh/code_snippets/2210_verify_mongosh_connection.sh b/public/architectures/ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_2210_verify_mongosh_connection.sh similarity index 100% rename from public/architectures/mongodb-sharded-mc-no-mesh/code_snippets/2210_verify_mongosh_connection.sh rename to public/architectures/ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_2210_verify_mongosh_connection.sh diff --git a/public/architectures/mongodb-sharded-mc-no-mesh/code_snippets/9000_delete_resources.sh b/public/architectures/ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_9000_delete_resources.sh similarity index 100% rename from public/architectures/mongodb-sharded-mc-no-mesh/code_snippets/9000_delete_resources.sh rename to public/architectures/ra-08-mongodb-sharded-multi-cluster/code_snippets/ra-08_9000_delete_resources.sh diff --git a/public/architectures/mongodb-sharded-multi-cluster/env_variables.sh b/public/architectures/ra-08-mongodb-sharded-multi-cluster/env_variables.sh similarity index 100% rename from public/architectures/mongodb-sharded-multi-cluster/env_variables.sh rename to public/architectures/ra-08-mongodb-sharded-multi-cluster/env_variables.sh diff --git a/public/architectures/mongodb-replicaset-mc-no-mesh/teardown.sh b/public/architectures/ra-08-mongodb-sharded-multi-cluster/teardown.sh similarity index 86% rename from public/architectures/mongodb-replicaset-mc-no-mesh/teardown.sh rename to public/architectures/ra-08-mongodb-sharded-multi-cluster/teardown.sh index dd5dd71a8..9b70289c8 100755 --- a/public/architectures/mongodb-replicaset-mc-no-mesh/teardown.sh +++ b/public/architectures/ra-08-mongodb-sharded-multi-cluster/teardown.sh @@ -11,6 +11,6 @@ pushd "${script_dir}" prepare_snippets -run 9000_delete_resources.sh +run ra-08_9000_delete_resources.sh popd diff --git a/public/architectures/ra-08-mongodb-sharded-multi-cluster/test.sh b/public/architectures/ra-08-mongodb-sharded-multi-cluster/test.sh new file mode 100755 index 000000000..3c3a49294 --- /dev/null +++ b/public/architectures/ra-08-mongodb-sharded-multi-cluster/test.sh @@ -0,0 +1,22 @@ +#!/usr/bin/env bash + +set -eou pipefail + +script_name=$(readlink -f "${BASH_SOURCE[0]}") +script_dir=$(dirname "${script_name}") + +source scripts/code_snippets/sample_test_runner.sh + +pushd "${script_dir}" + +prepare_snippets + +run ra-08_2050_generate_certs.sh +run ra-08_2100_mongodb_sharded_multi_cluster.sh +run ra-08_2110_mongodb_sharded_multi_cluster_wait_for_running_state.sh + +run ra-08_2200_create_mongodb_user.sh +sleep 10 +run_for_output ra-08_2210_verify_mongosh_connection.sh + +popd diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/0100_generate_certs.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0100_generate_certs.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/0100_generate_certs.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0100_generate_certs.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/0110_add_cert_to_gcp.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0110_add_cert_to_gcp.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/0110_add_cert_to_gcp.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0110_add_cert_to_gcp.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/0150_om_load_balancer.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0150_om_load_balancer.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/0150_om_load_balancer.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0150_om_load_balancer.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/0160_add_dns_record.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0160_add_dns_record.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/0160_add_dns_record.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0160_add_dns_record.sh diff --git a/public/architectures/ops-manager-multi-cluster/code_snippets/0300_ops_manager_create_admin_credentials.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0300_ops_manager_create_admin_credentials.sh similarity index 100% rename from public/architectures/ops-manager-multi-cluster/code_snippets/0300_ops_manager_create_admin_credentials.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0300_ops_manager_create_admin_credentials.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/0320_ops_manager_no_mesh.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0320_ops_manager_no_mesh.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/0320_ops_manager_no_mesh.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0320_ops_manager_no_mesh.sh diff --git a/public/architectures/ops-manager-multi-cluster/code_snippets/0321_ops_manager_wait_for_pending_state.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0321_ops_manager_wait_for_pending_state.sh similarity index 100% rename from public/architectures/ops-manager-multi-cluster/code_snippets/0321_ops_manager_wait_for_pending_state.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0321_ops_manager_wait_for_pending_state.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/0325_set_up_lb_services.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0325_set_up_lb_services.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/0325_set_up_lb_services.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0325_set_up_lb_services.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/0326_set_up_lb_services.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0326_set_up_lb_services.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/0326_set_up_lb_services.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0326_set_up_lb_services.sh diff --git a/public/architectures/ops-manager-multi-cluster/code_snippets/0312_ops_manager_wait_for_running_state.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0330_ops_manager_wait_for_running_state.sh similarity index 100% rename from public/architectures/ops-manager-multi-cluster/code_snippets/0312_ops_manager_wait_for_running_state.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0330_ops_manager_wait_for_running_state.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/0400_install_minio_s3.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0400_install_minio_s3.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/0400_install_minio_s3.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0400_install_minio_s3.sh diff --git a/public/architectures/ops-manager-multi-cluster/code_snippets/0500_ops_manager_prepare_s3_backup_secrets.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0500_ops_manager_prepare_s3_backup_secrets.sh similarity index 100% rename from public/architectures/ops-manager-multi-cluster/code_snippets/0500_ops_manager_prepare_s3_backup_secrets.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0500_ops_manager_prepare_s3_backup_secrets.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/0510_ops_manager_enable_s3_backup.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0510_ops_manager_enable_s3_backup.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/0510_ops_manager_enable_s3_backup.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0510_ops_manager_enable_s3_backup.sh diff --git a/public/architectures/ops-manager-multi-cluster/code_snippets/0522_ops_manager_wait_for_running_state.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0522_ops_manager_wait_for_running_state.sh similarity index 100% rename from public/architectures/ops-manager-multi-cluster/code_snippets/0522_ops_manager_wait_for_running_state.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0522_ops_manager_wait_for_running_state.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/0610_create_mdb_org_and_get_credentials.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0610_create_mdb_org_and_get_credentials.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/0610_create_mdb_org_and_get_credentials.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_0610_create_mdb_org_and_get_credentials.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/code_snippets/9000_cleanup_gke_lb.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_9000_cleanup_gke_lb.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/code_snippets/9000_cleanup_gke_lb.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_9000_cleanup_gke_lb.sh diff --git a/public/architectures/ops-manager-multi-cluster/code_snippets/9100_delete_backup_namespaces.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_9100_delete_backup_namespaces.sh similarity index 100% rename from public/architectures/ops-manager-multi-cluster/code_snippets/9100_delete_backup_namespaces.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_9100_delete_backup_namespaces.sh diff --git a/public/architectures/ops-manager-multi-cluster/code_snippets/9200_delete_om.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_9200_delete_om.sh similarity index 100% rename from public/architectures/ops-manager-multi-cluster/code_snippets/9200_delete_om.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/code_snippets/ra-10_9200_delete_om.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/env_variables.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/env_variables.sh similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/env_variables.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/env_variables.sh diff --git a/public/architectures/ops-manager-mc-no-mesh/teardown.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/teardown.sh similarity index 67% rename from public/architectures/ops-manager-mc-no-mesh/teardown.sh rename to public/architectures/ra-10-ops-manager-mc-no-mesh/teardown.sh index 7719fa13d..c6060f0b1 100755 --- a/public/architectures/ops-manager-mc-no-mesh/teardown.sh +++ b/public/architectures/ra-10-ops-manager-mc-no-mesh/teardown.sh @@ -11,9 +11,9 @@ pushd "${script_dir}" prepare_snippets -run 9000_cleanup_gke_lb.sh & -run 9100_delete_backup_namespaces.sh & -run 9200_delete_om.sh & +run ra-10_9000_cleanup_gke_lb.sh & +run ra-10_9100_delete_backup_namespaces.sh & +run ra-10_9200_delete_om.sh & wait popd diff --git a/public/architectures/ra-10-ops-manager-mc-no-mesh/test.sh b/public/architectures/ra-10-ops-manager-mc-no-mesh/test.sh new file mode 100755 index 000000000..ff7731845 --- /dev/null +++ b/public/architectures/ra-10-ops-manager-mc-no-mesh/test.sh @@ -0,0 +1,41 @@ +#!/usr/bin/env bash + +set -eou pipefail + +script_name=$(readlink -f "${BASH_SOURCE[0]}") +script_dir=$(dirname "${script_name}") + +source scripts/code_snippets/sample_test_runner.sh + +pushd "${script_dir}" + +prepare_snippets + +run ra-10_0100_generate_certs.sh +sleep 10 # wait for cert-manager to generate secrets + +run ra-10_0110_add_cert_to_gcp.sh + +run_for_output ra-10_0150_om_load_balancer.sh + +run ra-10_0160_add_dns_record.sh + +run ra-10_0300_ops_manager_create_admin_credentials.sh + +run ra-10_0320_ops_manager_no_mesh.sh + +run_for_output ra-10_0321_ops_manager_wait_for_pending_state.sh + +run ra-10_0325_set_up_lb_services.sh +run ra-10_0326_set_up_lb_services.sh + +run_for_output ra-10_0330_ops_manager_wait_for_running_state.sh + +run ra-10_0400_install_minio_s3.sh +run ra-10_0500_ops_manager_prepare_s3_backup_secrets.sh +run ra-10_0510_ops_manager_enable_s3_backup.sh +run_for_output ra-10_0522_ops_manager_wait_for_running_state.sh + +run ra-10_0610_create_mdb_org_and_get_credentials.sh + +popd diff --git a/public/architectures/mongodb-sharded-mc-no-mesh/code_snippets/2050_generate_certs.sh b/public/architectures/ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_2050_generate_certs.sh similarity index 100% rename from public/architectures/mongodb-sharded-mc-no-mesh/code_snippets/2050_generate_certs.sh rename to public/architectures/ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_2050_generate_certs.sh diff --git a/public/architectures/mongodb-sharded-mc-no-mesh/code_snippets/2100_mongodb_sharded_multi_cluster.sh b/public/architectures/ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_2100_mongodb_sharded_multi_cluster.sh similarity index 100% rename from public/architectures/mongodb-sharded-mc-no-mesh/code_snippets/2100_mongodb_sharded_multi_cluster.sh rename to public/architectures/ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_2100_mongodb_sharded_multi_cluster.sh diff --git a/public/architectures/mongodb-sharded-multi-cluster/code_snippets/2110_mongodb_sharded_multi_cluster_wait_for_running_state.sh b/public/architectures/ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_2110_mongodb_sharded_multi_cluster_wait_for_running_state.sh similarity index 100% rename from public/architectures/mongodb-sharded-multi-cluster/code_snippets/2110_mongodb_sharded_multi_cluster_wait_for_running_state.sh rename to public/architectures/ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_2110_mongodb_sharded_multi_cluster_wait_for_running_state.sh diff --git a/public/architectures/mongodb-sharded-multi-cluster/code_snippets/2200_create_mongodb_user.sh b/public/architectures/ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_2200_create_mongodb_user.sh similarity index 100% rename from public/architectures/mongodb-sharded-multi-cluster/code_snippets/2200_create_mongodb_user.sh rename to public/architectures/ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_2200_create_mongodb_user.sh diff --git a/public/architectures/mongodb-sharded-multi-cluster/code_snippets/2210_verify_mongosh_connection.sh b/public/architectures/ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_2210_verify_mongosh_connection.sh similarity index 100% rename from public/architectures/mongodb-sharded-multi-cluster/code_snippets/2210_verify_mongosh_connection.sh rename to public/architectures/ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_2210_verify_mongosh_connection.sh diff --git a/public/architectures/mongodb-sharded-multi-cluster/code_snippets/9000_delete_resources.sh b/public/architectures/ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_9000_delete_resources.sh similarity index 100% rename from public/architectures/mongodb-sharded-multi-cluster/code_snippets/9000_delete_resources.sh rename to public/architectures/ra-11-mongodb-sharded-mc-no-mesh/code_snippets/ra-11_9000_delete_resources.sh diff --git a/public/architectures/mongodb-sharded-mc-no-mesh/env_variables.sh b/public/architectures/ra-11-mongodb-sharded-mc-no-mesh/env_variables.sh similarity index 100% rename from public/architectures/mongodb-sharded-mc-no-mesh/env_variables.sh rename to public/architectures/ra-11-mongodb-sharded-mc-no-mesh/env_variables.sh diff --git a/public/architectures/mongodb-sharded-mc-no-mesh/teardown.sh b/public/architectures/ra-11-mongodb-sharded-mc-no-mesh/teardown.sh similarity index 86% rename from public/architectures/mongodb-sharded-mc-no-mesh/teardown.sh rename to public/architectures/ra-11-mongodb-sharded-mc-no-mesh/teardown.sh index dd5dd71a8..d9423a9cd 100755 --- a/public/architectures/mongodb-sharded-mc-no-mesh/teardown.sh +++ b/public/architectures/ra-11-mongodb-sharded-mc-no-mesh/teardown.sh @@ -11,6 +11,6 @@ pushd "${script_dir}" prepare_snippets -run 9000_delete_resources.sh +run ra-11_9000_delete_resources.sh popd diff --git a/public/architectures/ra-11-mongodb-sharded-mc-no-mesh/test.sh b/public/architectures/ra-11-mongodb-sharded-mc-no-mesh/test.sh new file mode 100755 index 000000000..917f85714 --- /dev/null +++ b/public/architectures/ra-11-mongodb-sharded-mc-no-mesh/test.sh @@ -0,0 +1,22 @@ +#!/usr/bin/env bash + +set -eou pipefail + +script_name=$(readlink -f "${BASH_SOURCE[0]}") +script_dir=$(dirname "${script_name}") + +source scripts/code_snippets/sample_test_runner.sh + +pushd "${script_dir}" + +prepare_snippets + +run ra-11_2050_generate_certs.sh +run ra-11_2100_mongodb_sharded_multi_cluster.sh +run ra-11_2110_mongodb_sharded_multi_cluster_wait_for_running_state.sh + +run ra-11_2200_create_mongodb_user.sh +sleep 10 +run_for_output ra-11_2210_verify_mongosh_connection.sh + +popd diff --git a/public/architectures/mongodb-replicaset-mc-no-mesh/code_snippets/1050_generate_certs.sh b/public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_1050_generate_certs.sh similarity index 100% rename from public/architectures/mongodb-replicaset-mc-no-mesh/code_snippets/1050_generate_certs.sh rename to public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_1050_generate_certs.sh diff --git a/public/architectures/mongodb-replicaset-mc-no-mesh/code_snippets/1100_mongodb_replicaset_multi_cluster.sh b/public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_1100_mongodb_replicaset_multi_cluster.sh similarity index 100% rename from public/architectures/mongodb-replicaset-mc-no-mesh/code_snippets/1100_mongodb_replicaset_multi_cluster.sh rename to public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_1100_mongodb_replicaset_multi_cluster.sh diff --git a/public/architectures/mongodb-replicaset-multi-cluster/code_snippets/1110_mongodb_replicaset_multi_cluster_wait_for_running_state.sh b/public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_1110_mongodb_replicaset_multi_cluster_wait_for_running_state.sh similarity index 100% rename from public/architectures/mongodb-replicaset-multi-cluster/code_snippets/1110_mongodb_replicaset_multi_cluster_wait_for_running_state.sh rename to public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_1110_mongodb_replicaset_multi_cluster_wait_for_running_state.sh diff --git a/public/architectures/mongodb-replicaset-multi-cluster/code_snippets/1200_create_mongodb_user.sh b/public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_1200_create_mongodb_user.sh similarity index 100% rename from public/architectures/mongodb-replicaset-multi-cluster/code_snippets/1200_create_mongodb_user.sh rename to public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_1200_create_mongodb_user.sh diff --git a/public/architectures/mongodb-replicaset-multi-cluster/code_snippets/1210_verify_mongosh_connection.sh b/public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_1210_verify_mongosh_connection.sh similarity index 100% rename from public/architectures/mongodb-replicaset-multi-cluster/code_snippets/1210_verify_mongosh_connection.sh rename to public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_1210_verify_mongosh_connection.sh diff --git a/public/architectures/mongodb-replicaset-multi-cluster/code_snippets/9000_delete_resources.sh b/public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_9000_delete_resources.sh similarity index 100% rename from public/architectures/mongodb-replicaset-multi-cluster/code_snippets/9000_delete_resources.sh rename to public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/code_snippets/ra-12_9000_delete_resources.sh diff --git a/public/architectures/mongodb-replicaset-mc-no-mesh/env_variables.sh b/public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/env_variables.sh similarity index 100% rename from public/architectures/mongodb-replicaset-mc-no-mesh/env_variables.sh rename to public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/env_variables.sh diff --git a/public/architectures/mongodb-sharded-multi-cluster/teardown.sh b/public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/teardown.sh similarity index 86% rename from public/architectures/mongodb-sharded-multi-cluster/teardown.sh rename to public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/teardown.sh index dd5dd71a8..13940afce 100755 --- a/public/architectures/mongodb-sharded-multi-cluster/teardown.sh +++ b/public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/teardown.sh @@ -11,6 +11,6 @@ pushd "${script_dir}" prepare_snippets -run 9000_delete_resources.sh +run ra-12_9000_delete_resources.sh popd diff --git a/public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/test.sh b/public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/test.sh new file mode 100755 index 000000000..c53de03b1 --- /dev/null +++ b/public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/test.sh @@ -0,0 +1,22 @@ +#!/usr/bin/env bash + +set -eou pipefail + +script_name=$(readlink -f "${BASH_SOURCE[0]}") +script_dir=$(dirname "${script_name}") + +source scripts/code_snippets/sample_test_runner.sh + +pushd "${script_dir}" + +prepare_snippets + +run ra-12_1050_generate_certs.sh +run ra-12_1100_mongodb_replicaset_multi_cluster.sh +run ra-12_1110_mongodb_replicaset_multi_cluster_wait_for_running_state.sh + +run ra-12_1200_create_mongodb_user.sh +sleep 10 +run_for_output ra-12_1210_verify_mongosh_connection.sh + +popd diff --git a/public/architectures/setup-multi-cluster/setup-gke/code_snippets/0005_gcloud_set_current_project.sh b/public/architectures/setup-multi-cluster/ra-01-setup-gke/code_snippets/ra-01_0005_gcloud_set_current_project.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-gke/code_snippets/0005_gcloud_set_current_project.sh rename to public/architectures/setup-multi-cluster/ra-01-setup-gke/code_snippets/ra-01_0005_gcloud_set_current_project.sh diff --git a/public/architectures/setup-multi-cluster/setup-gke/code_snippets/0010_create_gke_cluster_0.sh b/public/architectures/setup-multi-cluster/ra-01-setup-gke/code_snippets/ra-01_0010_create_gke_cluster_0.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-gke/code_snippets/0010_create_gke_cluster_0.sh rename to public/architectures/setup-multi-cluster/ra-01-setup-gke/code_snippets/ra-01_0010_create_gke_cluster_0.sh diff --git a/public/architectures/setup-multi-cluster/setup-gke/code_snippets/0010_create_gke_cluster_1.sh b/public/architectures/setup-multi-cluster/ra-01-setup-gke/code_snippets/ra-01_0010_create_gke_cluster_1.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-gke/code_snippets/0010_create_gke_cluster_1.sh rename to public/architectures/setup-multi-cluster/ra-01-setup-gke/code_snippets/ra-01_0010_create_gke_cluster_1.sh diff --git a/public/architectures/setup-multi-cluster/setup-gke/code_snippets/0010_create_gke_cluster_2.sh b/public/architectures/setup-multi-cluster/ra-01-setup-gke/code_snippets/ra-01_0010_create_gke_cluster_2.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-gke/code_snippets/0010_create_gke_cluster_2.sh rename to public/architectures/setup-multi-cluster/ra-01-setup-gke/code_snippets/ra-01_0010_create_gke_cluster_2.sh diff --git a/public/architectures/setup-multi-cluster/setup-gke/code_snippets/0020_get_gke_credentials.sh b/public/architectures/setup-multi-cluster/ra-01-setup-gke/code_snippets/ra-01_0020_get_gke_credentials.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-gke/code_snippets/0020_get_gke_credentials.sh rename to public/architectures/setup-multi-cluster/ra-01-setup-gke/code_snippets/ra-01_0020_get_gke_credentials.sh diff --git a/public/architectures/setup-multi-cluster/setup-gke/code_snippets/0030_verify_access_to_clusters.sh b/public/architectures/setup-multi-cluster/ra-01-setup-gke/code_snippets/ra-01_0030_verify_access_to_clusters.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-gke/code_snippets/0030_verify_access_to_clusters.sh rename to public/architectures/setup-multi-cluster/ra-01-setup-gke/code_snippets/ra-01_0030_verify_access_to_clusters.sh diff --git a/public/architectures/setup-multi-cluster/setup-gke/code_snippets/9010_delete_gke_clusters.sh b/public/architectures/setup-multi-cluster/ra-01-setup-gke/code_snippets/ra-01_9010_delete_gke_clusters.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-gke/code_snippets/9010_delete_gke_clusters.sh rename to public/architectures/setup-multi-cluster/ra-01-setup-gke/code_snippets/ra-01_9010_delete_gke_clusters.sh diff --git a/public/architectures/setup-multi-cluster/setup-gke/env_variables.sh b/public/architectures/setup-multi-cluster/ra-01-setup-gke/env_variables.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-gke/env_variables.sh rename to public/architectures/setup-multi-cluster/ra-01-setup-gke/env_variables.sh diff --git a/public/architectures/setup-multi-cluster/ra-01-setup-gke/teardown.sh b/public/architectures/setup-multi-cluster/ra-01-setup-gke/teardown.sh new file mode 100755 index 000000000..8aad13311 --- /dev/null +++ b/public/architectures/setup-multi-cluster/ra-01-setup-gke/teardown.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env bash + +set -eou pipefail + +script_name=$(readlink -f "${BASH_SOURCE[0]}") +script_dir=$(dirname "${script_name}") + +source scripts/code_snippets/sample_test_runner.sh + +pushd "${script_dir}" + +prepare_snippets + +run ra-01_9010_delete_gke_clusters.sh + +popd diff --git a/public/architectures/setup-multi-cluster/ra-01-setup-gke/test.sh b/public/architectures/setup-multi-cluster/ra-01-setup-gke/test.sh new file mode 100755 index 000000000..b38509182 --- /dev/null +++ b/public/architectures/setup-multi-cluster/ra-01-setup-gke/test.sh @@ -0,0 +1,23 @@ +#!/usr/bin/env bash + +set -eou pipefail + +script_name=$(readlink -f "${BASH_SOURCE[0]}") +script_dir=$(dirname "${script_name}") + +source scripts/code_snippets/sample_test_runner.sh + +pushd "${script_dir}" + +prepare_snippets + +run ra-01_0005_gcloud_set_current_project.sh +run ra-01_0010_create_gke_cluster_0.sh & +run ra-01_0010_create_gke_cluster_1.sh & +run ra-01_0010_create_gke_cluster_2.sh & +wait + +run ra-01_0020_get_gke_credentials.sh +run_for_output ra-01_0030_verify_access_to_clusters.sh + +popd diff --git a/public/architectures/setup-multi-cluster/setup-operator/code_snippets/0045_create_namespaces.sh b/public/architectures/setup-multi-cluster/ra-02-setup-operator/code_snippets/ra-02_0045_create_namespaces.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-operator/code_snippets/0045_create_namespaces.sh rename to public/architectures/setup-multi-cluster/ra-02-setup-operator/code_snippets/ra-02_0045_create_namespaces.sh diff --git a/public/architectures/setup-multi-cluster/setup-operator/code_snippets/0046_create_image_pull_secrets.sh b/public/architectures/setup-multi-cluster/ra-02-setup-operator/code_snippets/ra-02_0046_create_image_pull_secrets.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-operator/code_snippets/0046_create_image_pull_secrets.sh rename to public/architectures/setup-multi-cluster/ra-02-setup-operator/code_snippets/ra-02_0046_create_image_pull_secrets.sh diff --git a/public/architectures/setup-multi-cluster/setup-operator/code_snippets/0200_kubectl_mongodb_configure_multi_cluster.sh b/public/architectures/setup-multi-cluster/ra-02-setup-operator/code_snippets/ra-02_0200_kubectl_mongodb_configure_multi_cluster.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-operator/code_snippets/0200_kubectl_mongodb_configure_multi_cluster.sh rename to public/architectures/setup-multi-cluster/ra-02-setup-operator/code_snippets/ra-02_0200_kubectl_mongodb_configure_multi_cluster.sh diff --git a/public/architectures/setup-multi-cluster/setup-operator/code_snippets/0205_helm_configure_repo.sh b/public/architectures/setup-multi-cluster/ra-02-setup-operator/code_snippets/ra-02_0205_helm_configure_repo.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-operator/code_snippets/0205_helm_configure_repo.sh rename to public/architectures/setup-multi-cluster/ra-02-setup-operator/code_snippets/ra-02_0205_helm_configure_repo.sh diff --git a/public/architectures/setup-multi-cluster/setup-operator/code_snippets/0210_helm_install_operator.sh b/public/architectures/setup-multi-cluster/ra-02-setup-operator/code_snippets/ra-02_0210_helm_install_operator.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-operator/code_snippets/0210_helm_install_operator.sh rename to public/architectures/setup-multi-cluster/ra-02-setup-operator/code_snippets/ra-02_0210_helm_install_operator.sh diff --git a/public/architectures/setup-multi-cluster/setup-operator/code_snippets/0211_check_operator_deployment.sh b/public/architectures/setup-multi-cluster/ra-02-setup-operator/code_snippets/ra-02_0211_check_operator_deployment.sh similarity index 79% rename from public/architectures/setup-multi-cluster/setup-operator/code_snippets/0211_check_operator_deployment.sh rename to public/architectures/setup-multi-cluster/ra-02-setup-operator/code_snippets/ra-02_0211_check_operator_deployment.sh index fef1f8f27..19f4a121b 100755 --- a/public/architectures/setup-multi-cluster/setup-operator/code_snippets/0211_check_operator_deployment.sh +++ b/public/architectures/setup-multi-cluster/ra-02-setup-operator/code_snippets/ra-02_0211_check_operator_deployment.sh @@ -1,4 +1,4 @@ -kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${OPERATOR_NAMESPACE}" rollout status deployment/mongodb-kubernetes-operator-multi-cluster +kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${OPERATOR_NAMESPACE}" rollout status --timeout=2m deployment/mongodb-kubernetes-operator-multi-cluster echo "Operator deployment in ${OPERATOR_NAMESPACE} namespace" kubectl --context "${K8S_CLUSTER_0_CONTEXT_NAME}" -n "${OPERATOR_NAMESPACE}" get deployments echo; echo "Operator pod in ${OPERATOR_NAMESPACE} namespace" diff --git a/public/architectures/setup-multi-cluster/setup-operator/code_snippets/9000_delete_namespaces.sh b/public/architectures/setup-multi-cluster/ra-02-setup-operator/code_snippets/ra-02_9000_delete_namespaces.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-operator/code_snippets/9000_delete_namespaces.sh rename to public/architectures/setup-multi-cluster/ra-02-setup-operator/code_snippets/ra-02_9000_delete_namespaces.sh diff --git a/public/architectures/setup-multi-cluster/setup-operator/env_variables.sh b/public/architectures/setup-multi-cluster/ra-02-setup-operator/env_variables.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-operator/env_variables.sh rename to public/architectures/setup-multi-cluster/ra-02-setup-operator/env_variables.sh diff --git a/public/architectures/setup-multi-cluster/ra-02-setup-operator/teardown.sh b/public/architectures/setup-multi-cluster/ra-02-setup-operator/teardown.sh new file mode 100755 index 000000000..ed888c2dd --- /dev/null +++ b/public/architectures/setup-multi-cluster/ra-02-setup-operator/teardown.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env bash + +set -eou pipefail + +script_name=$(readlink -f "${BASH_SOURCE[0]}") +script_dir=$(dirname "${script_name}") + +source scripts/code_snippets/sample_test_runner.sh + +pushd "${script_dir}" + +prepare_snippets + +run ra-02_9000_delete_namespaces.sh + +popd diff --git a/public/architectures/setup-multi-cluster/ra-02-setup-operator/test.sh b/public/architectures/setup-multi-cluster/ra-02-setup-operator/test.sh new file mode 100755 index 000000000..aebb69474 --- /dev/null +++ b/public/architectures/setup-multi-cluster/ra-02-setup-operator/test.sh @@ -0,0 +1,22 @@ +#!/usr/bin/env bash + +set -eou pipefail + +script_name=$(readlink -f "${BASH_SOURCE[0]}") +script_dir=$(dirname "${script_name}") + +source scripts/code_snippets/sample_test_runner.sh + +pushd "${script_dir}" + +prepare_snippets + +run ra-02_0045_create_namespaces.sh +run ra-02_0046_create_image_pull_secrets.sh + +run_for_output ra-02_0200_kubectl_mongodb_configure_multi_cluster.sh +run_for_output ra-02_0205_helm_configure_repo.sh +run_for_output ra-02_0210_helm_install_operator.sh +run_for_output ra-02_0211_check_operator_deployment.sh + +popd diff --git a/public/architectures/setup-multi-cluster/setup-istio/code_snippets/0040_install_istio.sh b/public/architectures/setup-multi-cluster/ra-03-setup-istio/code_snippets/ra-03_0040_install_istio.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-istio/code_snippets/0040_install_istio.sh rename to public/architectures/setup-multi-cluster/ra-03-setup-istio/code_snippets/ra-03_0040_install_istio.sh diff --git a/public/architectures/setup-multi-cluster/setup-istio/code_snippets/0050_label_namespaces.sh b/public/architectures/setup-multi-cluster/ra-03-setup-istio/code_snippets/ra-03_0050_label_namespaces.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-istio/code_snippets/0050_label_namespaces.sh rename to public/architectures/setup-multi-cluster/ra-03-setup-istio/code_snippets/ra-03_0050_label_namespaces.sh diff --git a/public/architectures/setup-multi-cluster/setup-istio/install_istio_separate_network.sh b/public/architectures/setup-multi-cluster/ra-03-setup-istio/install_istio_separate_network.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-istio/install_istio_separate_network.sh rename to public/architectures/setup-multi-cluster/ra-03-setup-istio/install_istio_separate_network.sh diff --git a/public/architectures/setup-multi-cluster/setup-istio/test.sh b/public/architectures/setup-multi-cluster/ra-03-setup-istio/test.sh similarity index 77% rename from public/architectures/setup-multi-cluster/setup-istio/test.sh rename to public/architectures/setup-multi-cluster/ra-03-setup-istio/test.sh index 9d874fdd0..f03d28154 100755 --- a/public/architectures/setup-multi-cluster/setup-istio/test.sh +++ b/public/architectures/setup-multi-cluster/ra-03-setup-istio/test.sh @@ -11,7 +11,7 @@ pushd "${script_dir}" prepare_snippets -run 0040_install_istio.sh -run 0050_label_namespaces.sh +run ra-03_0040_install_istio.sh +run ra-03_0050_label_namespaces.sh popd diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0045_create_connectivity_test_namespaces.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0045_create_connectivity_test_namespaces.sh similarity index 100% rename from public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0045_create_connectivity_test_namespaces.sh rename to public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0045_create_connectivity_test_namespaces.sh diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0050_check_cluster_connectivity_create_sts_0.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0050_check_cluster_connectivity_create_sts_0.sh similarity index 100% rename from public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0050_check_cluster_connectivity_create_sts_0.sh rename to public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0050_check_cluster_connectivity_create_sts_0.sh diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0050_check_cluster_connectivity_create_sts_1.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0050_check_cluster_connectivity_create_sts_1.sh similarity index 100% rename from public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0050_check_cluster_connectivity_create_sts_1.sh rename to public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0050_check_cluster_connectivity_create_sts_1.sh diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0050_check_cluster_connectivity_create_sts_2.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0050_check_cluster_connectivity_create_sts_2.sh similarity index 100% rename from public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0050_check_cluster_connectivity_create_sts_2.sh rename to public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0050_check_cluster_connectivity_create_sts_2.sh diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0060_check_cluster_connectivity_wait_for_sts.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0060_check_cluster_connectivity_wait_for_sts.sh similarity index 100% rename from public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0060_check_cluster_connectivity_wait_for_sts.sh rename to public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0060_check_cluster_connectivity_wait_for_sts.sh diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0070_check_cluster_connectivity_create_pod_service_0.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0070_check_cluster_connectivity_create_pod_service_0.sh similarity index 100% rename from public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0070_check_cluster_connectivity_create_pod_service_0.sh rename to public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0070_check_cluster_connectivity_create_pod_service_0.sh diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0070_check_cluster_connectivity_create_pod_service_1.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0070_check_cluster_connectivity_create_pod_service_1.sh similarity index 100% rename from public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0070_check_cluster_connectivity_create_pod_service_1.sh rename to public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0070_check_cluster_connectivity_create_pod_service_1.sh diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0070_check_cluster_connectivity_create_pod_service_2.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0070_check_cluster_connectivity_create_pod_service_2.sh similarity index 100% rename from public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0070_check_cluster_connectivity_create_pod_service_2.sh rename to public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0070_check_cluster_connectivity_create_pod_service_2.sh diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0080_check_cluster_connectivity_create_round_robin_service_0.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0080_check_cluster_connectivity_create_round_robin_service_0.sh similarity index 100% rename from public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0080_check_cluster_connectivity_create_round_robin_service_0.sh rename to public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0080_check_cluster_connectivity_create_round_robin_service_0.sh diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0080_check_cluster_connectivity_create_round_robin_service_1.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0080_check_cluster_connectivity_create_round_robin_service_1.sh similarity index 100% rename from public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0080_check_cluster_connectivity_create_round_robin_service_1.sh rename to public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0080_check_cluster_connectivity_create_round_robin_service_1.sh diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0080_check_cluster_connectivity_create_round_robin_service_2.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0080_check_cluster_connectivity_create_round_robin_service_2.sh similarity index 100% rename from public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0080_check_cluster_connectivity_create_round_robin_service_2.sh rename to public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0080_check_cluster_connectivity_create_round_robin_service_2.sh diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0090_check_cluster_connectivity_verify_pod_0_0_from_cluster_1.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_0_0_from_cluster_1.sh similarity index 100% rename from public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0090_check_cluster_connectivity_verify_pod_0_0_from_cluster_1.sh rename to public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_0_0_from_cluster_1.sh diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_0.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_0.sh similarity index 100% rename from public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_0.sh rename to public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_0.sh diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_2.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_2.sh similarity index 100% rename from public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_2.sh rename to public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_2.sh diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0090_check_cluster_connectivity_verify_pod_2_0_from_cluster_0.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_2_0_from_cluster_0.sh similarity index 100% rename from public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0090_check_cluster_connectivity_verify_pod_2_0_from_cluster_0.sh rename to public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_2_0_from_cluster_0.sh diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0100_check_cluster_connectivity_cleanup.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0100_check_cluster_connectivity_cleanup.sh similarity index 100% rename from public/architectures/setup-multi-cluster/verify-connectivity/code_snippets/0100_check_cluster_connectivity_cleanup.sh rename to public/architectures/setup-multi-cluster/ra-04-verify-connectivity/code_snippets/ra-04_0100_check_cluster_connectivity_cleanup.sh diff --git a/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/test.sh b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/test.sh new file mode 100755 index 000000000..f78d2073d --- /dev/null +++ b/public/architectures/setup-multi-cluster/ra-04-verify-connectivity/test.sh @@ -0,0 +1,33 @@ +#!/usr/bin/env bash + +set -eou pipefail + +script_name=$(readlink -f "${BASH_SOURCE[0]}") +script_dir=$(dirname "${script_name}") + +source scripts/code_snippets/sample_test_runner.sh + +pushd "${script_dir}" + +prepare_snippets + +run ra-04_0045_create_connectivity_test_namespaces.sh + +run ra-04_0050_check_cluster_connectivity_create_sts_0.sh +run ra-04_0050_check_cluster_connectivity_create_sts_1.sh +run ra-04_0050_check_cluster_connectivity_create_sts_2.sh + +run ra-04_0060_check_cluster_connectivity_wait_for_sts.sh +run ra-04_0070_check_cluster_connectivity_create_pod_service_0.sh +run ra-04_0070_check_cluster_connectivity_create_pod_service_1.sh +run ra-04_0070_check_cluster_connectivity_create_pod_service_2.sh +run ra-04_0080_check_cluster_connectivity_create_round_robin_service_0.sh +run ra-04_0080_check_cluster_connectivity_create_round_robin_service_1.sh +run ra-04_0080_check_cluster_connectivity_create_round_robin_service_2.sh +run_for_output ra-04_0090_check_cluster_connectivity_verify_pod_0_0_from_cluster_1.sh +run_for_output ra-04_0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_0.sh +run_for_output ra-04_0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_2.sh +run_for_output ra-04_0090_check_cluster_connectivity_verify_pod_2_0_from_cluster_0.sh +run ra-04_0100_check_cluster_connectivity_cleanup.sh + +popd diff --git a/public/architectures/setup-multi-cluster/setup-cert-manager/code_snippets/0215_helm_configure_repo.sh b/public/architectures/setup-multi-cluster/ra-05-setup-cert-manager/code_snippets/ra-05_0215_helm_configure_repo.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-cert-manager/code_snippets/0215_helm_configure_repo.sh rename to public/architectures/setup-multi-cluster/ra-05-setup-cert-manager/code_snippets/ra-05_0215_helm_configure_repo.sh diff --git a/public/architectures/setup-multi-cluster/setup-cert-manager/code_snippets/0216_helm_install_cert_manager.sh b/public/architectures/setup-multi-cluster/ra-05-setup-cert-manager/code_snippets/ra-05_0216_helm_install_cert_manager.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-cert-manager/code_snippets/0216_helm_install_cert_manager.sh rename to public/architectures/setup-multi-cluster/ra-05-setup-cert-manager/code_snippets/ra-05_0216_helm_install_cert_manager.sh diff --git a/public/architectures/setup-multi-cluster/setup-cert-manager/code_snippets/0220_create_issuer.sh b/public/architectures/setup-multi-cluster/ra-05-setup-cert-manager/code_snippets/ra-05_0220_create_issuer.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-cert-manager/code_snippets/0220_create_issuer.sh rename to public/architectures/setup-multi-cluster/ra-05-setup-cert-manager/code_snippets/ra-05_0220_create_issuer.sh diff --git a/public/architectures/setup-multi-cluster/setup-cert-manager/code_snippets/0221_verify_issuer.sh b/public/architectures/setup-multi-cluster/ra-05-setup-cert-manager/code_snippets/ra-05_0221_verify_issuer.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-cert-manager/code_snippets/0221_verify_issuer.sh rename to public/architectures/setup-multi-cluster/ra-05-setup-cert-manager/code_snippets/ra-05_0221_verify_issuer.sh diff --git a/public/architectures/setup-multi-cluster/setup-cert-manager/code_snippets/0225_create_ca_configmap.sh b/public/architectures/setup-multi-cluster/ra-05-setup-cert-manager/code_snippets/ra-05_0225_create_ca_configmap.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-cert-manager/code_snippets/0225_create_ca_configmap.sh rename to public/architectures/setup-multi-cluster/ra-05-setup-cert-manager/code_snippets/ra-05_0225_create_ca_configmap.sh diff --git a/public/architectures/setup-multi-cluster/setup-cert-manager/test.sh b/public/architectures/setup-multi-cluster/ra-05-setup-cert-manager/test.sh similarity index 51% rename from public/architectures/setup-multi-cluster/setup-cert-manager/test.sh rename to public/architectures/setup-multi-cluster/ra-05-setup-cert-manager/test.sh index 6019bab95..5913b4b40 100755 --- a/public/architectures/setup-multi-cluster/setup-cert-manager/test.sh +++ b/public/architectures/setup-multi-cluster/ra-05-setup-cert-manager/test.sh @@ -11,10 +11,10 @@ pushd "${script_dir}" prepare_snippets -run_for_output 0215_helm_configure_repo.sh -run_for_output 0216_helm_install_cert_manager.sh -run 0220_create_issuer.sh -run_for_output 0221_verify_issuer.sh -run 0225_create_ca_configmap.sh +run_for_output ra-05_0215_helm_configure_repo.sh +run_for_output ra-05_0216_helm_install_cert_manager.sh +run ra-05_0220_create_issuer.sh +run_for_output ra-05_0221_verify_issuer.sh +run ra-05_0225_create_ca_configmap.sh popd diff --git a/public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/0100_create_gke_sa.sh b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_0100_create_gke_sa.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/0100_create_gke_sa.sh rename to public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_0100_create_gke_sa.sh diff --git a/public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/0120_add_role_to_sa.sh b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_0120_add_role_to_sa.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/0120_add_role_to_sa.sh rename to public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_0120_add_role_to_sa.sh diff --git a/public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/0130_create_sa_key.sh b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_0130_create_sa_key.sh similarity index 62% rename from public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/0130_create_sa_key.sh rename to public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_0130_create_sa_key.sh index af41bc117..349bcb19e 100644 --- a/public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/0130_create_sa_key.sh +++ b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_0130_create_sa_key.sh @@ -1,3 +1,3 @@ mkdir -p secrets -gcloud iam service-accounts keys create secrets/external-dns-sa-key.json --iam-account="${DNS_SA_EMAIL}" +gcloud iam service-accounts keys create secrets/external-dns-sa-key.json --iam-account="${DNS_SA_EMAIL}" || true diff --git a/public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/0140_create_namespaces.sh b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_0140_create_namespaces.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/0140_create_namespaces.sh rename to public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_0140_create_namespaces.sh diff --git a/public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/0150_create_sa_secrets.sh b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_0150_create_sa_secrets.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/0150_create_sa_secrets.sh rename to public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_0150_create_sa_secrets.sh diff --git a/public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/0200_install_externaldns.sh b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_0200_install_externaldns.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/0200_install_externaldns.sh rename to public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_0200_install_externaldns.sh diff --git a/public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/0300_setup_dns_zone.sh b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_0300_setup_dns_zone.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/0300_setup_dns_zone.sh rename to public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_0300_setup_dns_zone.sh diff --git a/public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/9000_delete_sa.sh b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_9000_delete_sa.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/9000_delete_sa.sh rename to public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_9000_delete_sa.sh diff --git a/public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/9050_delete_namespace.sh b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_9050_delete_namespace.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/9050_delete_namespace.sh rename to public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_9050_delete_namespace.sh diff --git a/public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/9100_delete_dns_zone.sh b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_9100_delete_dns_zone.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-externaldns/code_snippets/9100_delete_dns_zone.sh rename to public/architectures/setup-multi-cluster/ra-09-setup-externaldns/code_snippets/ra-09_9100_delete_dns_zone.sh diff --git a/public/architectures/setup-multi-cluster/setup-externaldns/env_variables.sh b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/env_variables.sh similarity index 100% rename from public/architectures/setup-multi-cluster/setup-externaldns/env_variables.sh rename to public/architectures/setup-multi-cluster/ra-09-setup-externaldns/env_variables.sh diff --git a/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/teardown.sh b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/teardown.sh new file mode 100755 index 000000000..f7223dac3 --- /dev/null +++ b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/teardown.sh @@ -0,0 +1,18 @@ +#!/usr/bin/env bash + +set -eou pipefail + +script_name=$(readlink -f "${BASH_SOURCE[0]}") +script_dir=$(dirname "${script_name}") + +source scripts/code_snippets/sample_test_runner.sh + +pushd "${script_dir}" + +prepare_snippets + +run ra-09_9000_delete_sa.sh +run ra-09_9050_delete_namespace.sh +run ra-09_9100_delete_dns_zone.sh + +popd diff --git a/public/architectures/setup-multi-cluster/setup-externaldns/test.sh b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/test.sh similarity index 54% rename from public/architectures/setup-multi-cluster/setup-externaldns/test.sh rename to public/architectures/setup-multi-cluster/ra-09-setup-externaldns/test.sh index be99a98ac..972409af3 100755 --- a/public/architectures/setup-multi-cluster/setup-externaldns/test.sh +++ b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/test.sh @@ -11,14 +11,14 @@ pushd "${script_dir}" prepare_snippets -run 0100_create_gke_sa.sh +run ra-09_0100_create_gke_sa.sh # need to wait as the SA is not immediately available sleep 10 -run 0120_add_role_to_sa.sh -run 0130_create_sa_key.sh -run 0140_create_namespaces.sh -run 0150_create_sa_secrets.sh -run 0200_install_externaldns.sh -run 0300_setup_dns_zone.sh +run ra-09_0120_add_role_to_sa.sh +run ra-09_0130_create_sa_key.sh +run ra-09_0140_create_namespaces.sh +run ra-09_0150_create_sa_secrets.sh +run ra-09_0200_install_externaldns.sh +run ra-09_0300_setup_dns_zone.sh popd diff --git a/public/architectures/setup-multi-cluster/setup-externaldns/yamls/externaldns.yaml b/public/architectures/setup-multi-cluster/ra-09-setup-externaldns/yamls/externaldns.yaml similarity index 100% rename from public/architectures/setup-multi-cluster/setup-externaldns/yamls/externaldns.yaml rename to public/architectures/setup-multi-cluster/ra-09-setup-externaldns/yamls/externaldns.yaml diff --git a/public/architectures/setup-multi-cluster/setup-externaldns/teardown.sh b/public/architectures/setup-multi-cluster/setup-externaldns/teardown.sh deleted file mode 100755 index f6fb4ad2e..000000000 --- a/public/architectures/setup-multi-cluster/setup-externaldns/teardown.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/usr/bin/env bash - -set -eou pipefail - -script_name=$(readlink -f "${BASH_SOURCE[0]}") -script_dir=$(dirname "${script_name}") - -source scripts/code_snippets/sample_test_runner.sh - -pushd "${script_dir}" - -prepare_snippets - -run 9000_delete_sa.sh -run 9050_delete_namespace.sh -run 9100_delete_dns_zone.sh - -popd diff --git a/public/architectures/setup-multi-cluster/setup-gke/output/0030_verify_access_to_clusters.out b/public/architectures/setup-multi-cluster/setup-gke/output/0030_verify_access_to_clusters.out deleted file mode 100644 index 814af3902..000000000 --- a/public/architectures/setup-multi-cluster/setup-gke/output/0030_verify_access_to_clusters.out +++ /dev/null @@ -1,15 +0,0 @@ -Nodes in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-686cc1e099f9ef000722c191-862 -NAME STATUS ROLES AGE VERSION -gke-k8s-mdb-0-686cc1e099-default-pool-63c33f99-532x Ready 3m7s v1.32.4-gke.1415000 -gke-k8s-mdb-0-686cc1e099-default-pool-63c33f99-fs12 Ready 3m7s v1.32.4-gke.1415000 -gke-k8s-mdb-0-686cc1e099-default-pool-63c33f99-hghj Ready 3m7s v1.32.4-gke.1415000 - -Nodes in cluster gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-686cc1e099f9ef000722c191-862 -NAME STATUS ROLES AGE VERSION -gke-k8s-mdb-1-686cc1e099-default-pool-93d5418d-712x Ready 57s v1.32.4-gke.1415000 -gke-k8s-mdb-1-686cc1e099-default-pool-93d5418d-hpcc Ready 58s v1.32.4-gke.1415000 -gke-k8s-mdb-1-686cc1e099-default-pool-93d5418d-wg14 Ready 61s v1.32.4-gke.1415000 - -Nodes in cluster gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2-686cc1e099f9ef000722c191-862 -NAME STATUS ROLES AGE VERSION -gke-k8s-mdb-2-686cc1e099-default-pool-d128293d-tng2 Ready 3m12s v1.32.4-gke.1415000 diff --git a/public/architectures/setup-multi-cluster/setup-gke/teardown.sh b/public/architectures/setup-multi-cluster/setup-gke/teardown.sh deleted file mode 100755 index 155327fc8..000000000 --- a/public/architectures/setup-multi-cluster/setup-gke/teardown.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/usr/bin/env bash - -set -eou pipefail - -script_name=$(readlink -f "${BASH_SOURCE[0]}") -script_dir=$(dirname "${script_name}") - -source scripts/code_snippets/sample_test_runner.sh - -pushd "${script_dir}" - -prepare_snippets - -run 9010_delete_gke_clusters.sh - -popd diff --git a/public/architectures/setup-multi-cluster/setup-gke/test.sh b/public/architectures/setup-multi-cluster/setup-gke/test.sh deleted file mode 100755 index 040e2092a..000000000 --- a/public/architectures/setup-multi-cluster/setup-gke/test.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/usr/bin/env bash - -set -eou pipefail - -script_name=$(readlink -f "${BASH_SOURCE[0]}") -script_dir=$(dirname "${script_name}") - -source scripts/code_snippets/sample_test_runner.sh - -pushd "${script_dir}" - -prepare_snippets - -run 0005_gcloud_set_current_project.sh -run 0010_create_gke_cluster_0.sh & -run 0010_create_gke_cluster_1.sh & -run 0010_create_gke_cluster_2.sh & -wait - -run 0020_get_gke_credentials.sh -run_for_output 0030_verify_access_to_clusters.sh - -popd diff --git a/public/architectures/setup-multi-cluster/setup-operator/teardown.sh b/public/architectures/setup-multi-cluster/setup-operator/teardown.sh deleted file mode 100755 index faef13d92..000000000 --- a/public/architectures/setup-multi-cluster/setup-operator/teardown.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/usr/bin/env bash - -set -eou pipefail - -script_name=$(readlink -f "${BASH_SOURCE[0]}") -script_dir=$(dirname "${script_name}") - -source scripts/code_snippets/sample_test_runner.sh - -pushd "${script_dir}" - -prepare_snippets - -run 9000_delete_namespaces.sh - -popd diff --git a/public/architectures/setup-multi-cluster/setup-operator/test.sh b/public/architectures/setup-multi-cluster/setup-operator/test.sh deleted file mode 100755 index 12cbd5f47..000000000 --- a/public/architectures/setup-multi-cluster/setup-operator/test.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash - -set -eou pipefail - -script_name=$(readlink -f "${BASH_SOURCE[0]}") -script_dir=$(dirname "${script_name}") - -source scripts/code_snippets/sample_test_runner.sh - -pushd "${script_dir}" - -prepare_snippets - -run 0045_create_namespaces.sh -run 0046_create_image_pull_secrets.sh - -run_for_output 0200_kubectl_mongodb_configure_multi_cluster.sh -run_for_output 0205_helm_configure_repo.sh -run_for_output 0210_helm_install_operator.sh -run_for_output 0211_check_operator_deployment.sh - -popd diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/test.sh b/public/architectures/setup-multi-cluster/verify-connectivity/test.sh deleted file mode 100755 index 543ffab2e..000000000 --- a/public/architectures/setup-multi-cluster/verify-connectivity/test.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env bash - -set -eou pipefail - -script_name=$(readlink -f "${BASH_SOURCE[0]}") -script_dir=$(dirname "${script_name}") - -source scripts/code_snippets/sample_test_runner.sh - -pushd "${script_dir}" - -prepare_snippets - -run 0045_create_connectivity_test_namespaces.sh - -run 0050_check_cluster_connectivity_create_sts_0.sh -run 0050_check_cluster_connectivity_create_sts_1.sh -run 0050_check_cluster_connectivity_create_sts_2.sh - -run 0060_check_cluster_connectivity_wait_for_sts.sh -run 0070_check_cluster_connectivity_create_pod_service_0.sh -run 0070_check_cluster_connectivity_create_pod_service_1.sh -run 0070_check_cluster_connectivity_create_pod_service_2.sh -run 0080_check_cluster_connectivity_create_round_robin_service_0.sh -run 0080_check_cluster_connectivity_create_round_robin_service_1.sh -run 0080_check_cluster_connectivity_create_round_robin_service_2.sh -run_for_output 0090_check_cluster_connectivity_verify_pod_0_0_from_cluster_1.sh -run_for_output 0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_0.sh -run_for_output 0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_2.sh -run_for_output 0090_check_cluster_connectivity_verify_pod_2_0_from_cluster_0.sh -run 0100_check_cluster_connectivity_cleanup.sh - -popd diff --git a/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-01_0030_verify_access_to_clusters.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-01_0030_verify_access_to_clusters.out new file mode 100644 index 000000000..156ad4795 --- /dev/null +++ b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-01_0030_verify_access_to_clusters.out @@ -0,0 +1,15 @@ +Nodes in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-68876175f5ad6d0007fdc1d4-31160 +NAME STATUS ROLES AGE VERSION +gke-k8s-mdb-0-68876175f5-default-pool-c1ce34c2-4bg5 Ready 7m20s v1.33.2-gke.1240000 +gke-k8s-mdb-0-68876175f5-default-pool-c1ce34c2-bk96 Ready 7m22s v1.33.2-gke.1240000 +gke-k8s-mdb-0-68876175f5-default-pool-c1ce34c2-r0px Ready 7m21s v1.33.2-gke.1240000 + +Nodes in cluster gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-68876175f5ad6d0007fdc1d4-31160 +NAME STATUS ROLES AGE VERSION +gke-k8s-mdb-1-68876175f5-default-pool-6f4972b3-bxwx Ready 6m30s v1.33.2-gke.1240000 +gke-k8s-mdb-1-68876175f5-default-pool-6f4972b3-djkk Ready 6m30s v1.33.2-gke.1240000 +gke-k8s-mdb-1-68876175f5-default-pool-6f4972b3-ps8q Ready 6m30s v1.33.2-gke.1240000 + +Nodes in cluster gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2-68876175f5ad6d0007fdc1d4-31160 +NAME STATUS ROLES AGE VERSION +gke-k8s-mdb-2-68876175f5-default-pool-e4665169-g134 Ready 7m16s v1.33.2-gke.1240000 diff --git a/public/architectures/setup-multi-cluster/setup-operator/output/0200_kubectl_mongodb_configure_multi_cluster.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-02_0200_kubectl_mongodb_configure_multi_cluster.out similarity index 83% rename from public/architectures/setup-multi-cluster/setup-operator/output/0200_kubectl_mongodb_configure_multi_cluster.out rename to scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-02_0200_kubectl_mongodb_configure_multi_cluster.out index c04777b8d..6a82b75ec 100644 --- a/public/architectures/setup-multi-cluster/setup-operator/output/0200_kubectl_mongodb_configure_multi_cluster.out +++ b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-02_0200_kubectl_mongodb_configure_multi_cluster.out @@ -1,49 +1,49 @@ -Build: , +Build: 1bcc69172341bbdb7eed4366df26dd960f53119e, 2025-08-24T21:36:12Z Ensured namespaces exist in all clusters. -creating central cluster roles in cluster: gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-686cc1e099f9ef000722c191-862 +creating central cluster roles in cluster: gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-68876175f5ad6d0007fdc1d4-31160 created clusterrole: mongodb-kubernetes-operator-multi-cluster-role-telemetry created clusterrolebinding: mongodb-kubernetes-operator-multi-telemetry-cluster-role-binding created clusterrolebinding: mongodb-kubernetes-operator-mongodb-operator-multi-cluster-mongodb-role-binding created clusterrole: mongodb-kubernetes-operator-multi-cluster-role-telemetry created clusterrolebinding: mongodb-kubernetes-operator-multi-telemetry-cluster-role-binding created clusterrolebinding: mongodb-kubernetes-operator-mongodb-operator-multi-cluster-mongodb-role-binding -creating member roles in cluster: gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-686cc1e099f9ef000722c191-862 +creating member roles in cluster: gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-68876175f5ad6d0007fdc1d4-31160 created clusterrole: mongodb-kubernetes-operator-multi-cluster-role-telemetry created clusterrolebinding: mongodb-kubernetes-operator-multi-telemetry-cluster-role-binding created clusterrole: mongodb-kubernetes-operator-multi-cluster-role-telemetry created clusterrolebinding: mongodb-kubernetes-operator-multi-telemetry-cluster-role-binding -creating member roles in cluster: gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2-686cc1e099f9ef000722c191-862 +creating member roles in cluster: gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2-68876175f5ad6d0007fdc1d4-31160 created clusterrole: mongodb-kubernetes-operator-multi-cluster-role-telemetry created clusterrolebinding: mongodb-kubernetes-operator-multi-telemetry-cluster-role-binding created clusterrole: mongodb-kubernetes-operator-multi-cluster-role-telemetry created clusterrolebinding: mongodb-kubernetes-operator-multi-telemetry-cluster-role-binding Ensured ServiceAccounts and Roles. -Creating KubeConfig secret mongodb-operator/mongodb-enterprise-operator-multi-cluster-kubeconfig in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-686cc1e099f9ef000722c191-862 +Creating KubeConfig secret mongodb-operator/mongodb-enterprise-operator-multi-cluster-kubeconfig in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-68876175f5ad6d0007fdc1d4-31160 Ensured database Roles in member clusters. -Creating Member list Configmap mongodb-operator/mongodb-kubernetes-operator-member-list in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-686cc1e099f9ef000722c191-862 +Creating Member list Configmap mongodb-operator/mongodb-kubernetes-operator-member-list in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-68876175f5ad6d0007fdc1d4-31160 -Build: , +Build: 1bcc69172341bbdb7eed4366df26dd960f53119e, 2025-08-24T21:36:12Z Ensured namespaces exist in all clusters. -creating central cluster roles in cluster: gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-686cc1e099f9ef000722c191-862 +creating central cluster roles in cluster: gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-68876175f5ad6d0007fdc1d4-31160 created clusterrole: mongodb-kubernetes-operator-multi-cluster-role-telemetry created clusterrolebinding: mongodb-kubernetes-operator-multi-telemetry-cluster-role-binding created clusterrolebinding: mongodb-kubernetes-operator-mongodb-operator-multi-cluster-mongodb-role-binding created clusterrole: mongodb-kubernetes-operator-multi-cluster-role-telemetry created clusterrolebinding: mongodb-kubernetes-operator-multi-telemetry-cluster-role-binding created clusterrolebinding: mongodb-kubernetes-operator-mongodb-operator-multi-cluster-mongodb-role-binding -creating member roles in cluster: gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-686cc1e099f9ef000722c191-862 +creating member roles in cluster: gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-68876175f5ad6d0007fdc1d4-31160 created clusterrole: mongodb-kubernetes-operator-multi-cluster-role-telemetry created clusterrolebinding: mongodb-kubernetes-operator-multi-telemetry-cluster-role-binding created clusterrole: mongodb-kubernetes-operator-multi-cluster-role-telemetry created clusterrolebinding: mongodb-kubernetes-operator-multi-telemetry-cluster-role-binding -creating member roles in cluster: gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2-686cc1e099f9ef000722c191-862 +creating member roles in cluster: gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2-68876175f5ad6d0007fdc1d4-31160 created clusterrole: mongodb-kubernetes-operator-multi-cluster-role-telemetry created clusterrolebinding: mongodb-kubernetes-operator-multi-telemetry-cluster-role-binding created clusterrole: mongodb-kubernetes-operator-multi-cluster-role-telemetry created clusterrolebinding: mongodb-kubernetes-operator-multi-telemetry-cluster-role-binding Ensured ServiceAccounts and Roles. -Creating KubeConfig secret mongodb-operator/mongodb-enterprise-operator-multi-cluster-kubeconfig in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-686cc1e099f9ef000722c191-862 +Creating KubeConfig secret mongodb-operator/mongodb-enterprise-operator-multi-cluster-kubeconfig in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-68876175f5ad6d0007fdc1d4-31160 Secret mongodb-operator/mongodb-enterprise-operator-multi-cluster-kubeconfig already exists, updating it Ensured database Roles in member clusters. -Creating Member list Configmap mongodb-operator/mongodb-kubernetes-operator-member-list in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-686cc1e099f9ef000722c191-862 +Creating Member list Configmap mongodb-operator/mongodb-kubernetes-operator-member-list in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-68876175f5ad6d0007fdc1d4-31160 diff --git a/public/architectures/setup-multi-cluster/setup-operator/output/0205_helm_configure_repo.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-02_0205_helm_configure_repo.out similarity index 85% rename from public/architectures/setup-multi-cluster/setup-operator/output/0205_helm_configure_repo.out rename to scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-02_0205_helm_configure_repo.out index e8630fdff..b1576c236 100644 --- a/public/architectures/setup-multi-cluster/setup-operator/output/0205_helm_configure_repo.out +++ b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-02_0205_helm_configure_repo.out @@ -1,4 +1,4 @@ -"mongodb" has been added to your repositories +"mongodb" already exists with the same configuration, skipping Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "mongodb" chart repository Update Complete. ⎈Happy Helming!⎈ diff --git a/public/architectures/setup-multi-cluster/setup-operator/output/0210_helm_install_operator.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-02_0210_helm_install_operator.out similarity index 68% rename from public/architectures/setup-multi-cluster/setup-operator/output/0210_helm_install_operator.out rename to scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-02_0210_helm_install_operator.out index cc5174432..0d2b497dc 100644 --- a/public/architectures/setup-multi-cluster/setup-operator/output/0210_helm_install_operator.out +++ b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-02_0210_helm_install_operator.out @@ -1,30 +1,71 @@ Release "mongodb-kubernetes-operator-multi-cluster" does not exist. Installing it now. NAME: mongodb-kubernetes-operator-multi-cluster -LAST DEPLOYED: Tue Jul 8 07:13:27 2025 +LAST DEPLOYED: Mon Aug 25 08:57:37 2025 NAMESPACE: mongodb-operator STATUS: deployed REVISION: 1 TEST SUITE: None USER-SUPPLIED VALUES: -dummy: value +agent: + version: 108.0.0.8694-1 +customEnvVars: OM_DEBUG_HTTP=true +database: + name: mongodb-kubernetes-database + version: 68876175f5ad6d0007fdc1d4 +initAppDb: + version: 68876175f5ad6d0007fdc1d4 +initDatabase: + version: 68876175f5ad6d0007fdc1d4 +initOpsManager: + version: 68876175f5ad6d0007fdc1d4 +managedSecurityContext: false +mongodb: + imageType: ubi9 + name: mongodb-enterprise-server multiCluster: clusters: - - gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-686cc1e099f9ef000722c191-862 - - gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-686cc1e099f9ef000722c191-862 - - gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2-686cc1e099f9ef000722c191-862 + - gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-68876175f5ad6d0007fdc1d4-31160 + - gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-68876175f5ad6d0007fdc1d4-31160 + - gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2-68876175f5ad6d0007fdc1d4-31160 namespace: mongodb-operator operator: createOperatorServiceAccount: false createResourcesServiceAccountsAndRoles: false + enablePVCResize: true env: dev + maxConcurrentReconciles: 10 + mdbDefaultArchitecture: non-static name: mongodb-kubernetes-operator-multi-cluster namespace: mongodb-operator + telemetry: + collection: + frequency: 1m + send: + enabled: false + version: 68876175f5ad6d0007fdc1d4 watchNamespace: mongodb-om,mongodb +opsManager: + name: mongodb-enterprise-ops-manager-ubi +registry: + agent: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev + appDb: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev + database: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev + imagePullSecrets: image-registries-secret + initAppDb: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev + initDatabase: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev + initOpsManager: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev + operator: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev + opsManager: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev +search: + community: + name: mongodb-search-community + repo: quay.io/mongodb + version: 1.47.0 COMPUTED VALUES: agent: name: mongodb-agent-ubi - version: 108.0.2.8729-1 + version: 108.0.0.8694-1 community: agent: name: mongodb-agent-ubi @@ -50,31 +91,31 @@ community: useCertManager: true useX509: false version: 4.4.0 +customEnvVars: OM_DEBUG_HTTP=true database: name: mongodb-kubernetes-database - version: 1.2.0 -dummy: value + version: 68876175f5ad6d0007fdc1d4 initAppDb: name: mongodb-kubernetes-init-appdb - version: 1.2.0 + version: 68876175f5ad6d0007fdc1d4 initDatabase: name: mongodb-kubernetes-init-database - version: 1.2.0 + version: 68876175f5ad6d0007fdc1d4 initOpsManager: name: mongodb-kubernetes-init-ops-manager - version: 1.2.0 + version: 68876175f5ad6d0007fdc1d4 managedSecurityContext: false mongodb: appdbAssumeOldFormat: false - imageType: ubi8 + imageType: ubi9 name: mongodb-enterprise-server repo: quay.io/mongodb multiCluster: clusterClientTimeout: 10 clusters: - - gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-686cc1e099f9ef000722c191-862 - - gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-686cc1e099f9ef000722c191-862 - - gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2-686cc1e099f9ef000722c191-862 + - gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-68876175f5ad6d0007fdc1d4-31160 + - gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-68876175f5ad6d0007fdc1d4-31160 + - gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2-68876175f5ad6d0007fdc1d4-31160 kubeConfigSecretName: mongodb-enterprise-operator-multi-cluster-kubeconfig performFailOver: true namespace: mongodb-operator @@ -88,7 +129,7 @@ operator: enableClusterMongoDBRoles: true enablePVCResize: true env: dev - maxConcurrentReconciles: 1 + maxConcurrentReconciles: 10 mdbDefaultArchitecture: non-static name: mongodb-kubernetes-operator-multi-cluster namespace: mongodb-operator @@ -106,15 +147,16 @@ operator: collection: clusters: {} deployments: {} - frequency: 1h + frequency: 1m operators: {} send: + enabled: false frequency: 168h tolerations: [] vaultSecretBackend: enabled: false tlsSecretRef: "" - version: 1.2.0 + version: 68876175f5ad6d0007fdc1d4 watchNamespace: mongodb-om,mongodb watchedResources: - mongodb @@ -131,15 +173,15 @@ readinessProbe: name: mongodb-kubernetes-readinessprobe version: 1.0.22 registry: - agent: quay.io/mongodb - appDb: quay.io/mongodb - database: quay.io/mongodb - imagePullSecrets: null - initAppDb: quay.io/mongodb - initDatabase: quay.io/mongodb - initOpsManager: quay.io/mongodb - operator: quay.io/mongodb - opsManager: quay.io/mongodb + agent: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev + appDb: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev + database: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev + imagePullSecrets: image-registries-secret + initAppDb: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev + initDatabase: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev + initOpsManager: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev + operator: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev + opsManager: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev pullPolicy: Always readinessProbe: quay.io/mongodb versionUpgradeHook: quay.io/mongodb @@ -148,7 +190,6 @@ search: name: mongodb-search-community repo: quay.io/mongodb version: 1.47.0 -subresourceEnabled: true versionUpgradeHook: name: mongodb-kubernetes-operator-version-upgrade-post-start-hook version: 1.0.9 @@ -156,34 +197,7 @@ versionUpgradeHook: HOOKS: MANIFEST: --- -# Source: mongodb-kubernetes/templates/operator-roles.yaml -kind: ClusterRole -apiVersion: rbac.authorization.k8s.io/v1 -metadata: - name: mongodb-kubernetes-operator-mongodb-webhook -rules: - - apiGroups: - - "admissionregistration.k8s.io" - resources: - - validatingwebhookconfigurations - verbs: - - get - - create - - update - - delete - - apiGroups: - - "" - resources: - - services - verbs: - - get - - list - - watch - - create - - update - - delete ---- -# Source: mongodb-kubernetes/templates/operator-roles.yaml +# Source: mongodb-kubernetes/templates/operator-roles-telemetry.yaml # Additional ClusterRole for clusterVersionDetection kind: ClusterRole apiVersion: rbac.authorization.k8s.io/v1 @@ -211,30 +225,57 @@ rules: verbs: - list --- -# Source: mongodb-kubernetes/templates/operator-roles.yaml +# Source: mongodb-kubernetes/templates/operator-roles-webhook.yaml +kind: ClusterRole +apiVersion: rbac.authorization.k8s.io/v1 +metadata: + name: mongodb-kubernetes-operator-mongodb-webhook +rules: + - apiGroups: + - "admissionregistration.k8s.io" + resources: + - validatingwebhookconfigurations + verbs: + - get + - create + - update + - delete + - apiGroups: + - "" + resources: + - services + verbs: + - get + - list + - watch + - create + - update + - delete +--- +# Source: mongodb-kubernetes/templates/operator-roles-telemetry.yaml +# ClusterRoleBinding for clusterVersionDetection kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: - name: mongodb-kubernetes-operator-multi-cluster-mongodb-operator-webhook-binding + name: mongodb-kubernetes-operator-multi-cluster-mongodb-operator-cluster-telemetry-binding roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole - name: mongodb-kubernetes-operator-mongodb-webhook + name: mongodb-kubernetes-operator-multi-cluster-cluster-telemetry subjects: - kind: ServiceAccount name: mongodb-kubernetes-operator-multi-cluster namespace: mongodb-operator --- -# Source: mongodb-kubernetes/templates/operator-roles.yaml -# ClusterRoleBinding for clusterVersionDetection +# Source: mongodb-kubernetes/templates/operator-roles-webhook.yaml kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: - name: mongodb-kubernetes-operator-multi-cluster-mongodb-operator-cluster-telemetry-binding + name: mongodb-kubernetes-operator-multi-cluster-mongodb-operator-webhook-binding roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole - name: mongodb-kubernetes-operator-multi-cluster-cluster-telemetry + name: mongodb-kubernetes-operator-mongodb-webhook subjects: - kind: ServiceAccount name: mongodb-kubernetes-operator-multi-cluster @@ -264,9 +305,11 @@ spec: securityContext: runAsNonRoot: true runAsUser: 2000 + imagePullSecrets: + - name: image-registries-secret containers: - name: mongodb-kubernetes-operator-multi-cluster - image: "quay.io/mongodb/mongodb-kubernetes:1.2.0" + image: "268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-kubernetes:68876175f5ad6d0007fdc1d4" imagePullPolicy: Always args: - -watch-resource=mongodb @@ -300,7 +343,9 @@ spec: - name: WATCH_NAMESPACE value: "mongodb-om,mongodb" - name: MDB_OPERATOR_TELEMETRY_COLLECTION_FREQUENCY - value: "1h" + value: "1m" + - name: MDB_OPERATOR_TELEMETRY_SEND_ENABLED + value: "false" - name: MDB_OPERATOR_TELEMETRY_SEND_FREQUENCY value: "168h" - name: CLUSTER_CLIENT_TIMEOUT @@ -309,41 +354,43 @@ spec: value: Always # Database - name: MONGODB_ENTERPRISE_DATABASE_IMAGE - value: quay.io/mongodb/mongodb-kubernetes-database + value: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-kubernetes-database - name: INIT_DATABASE_IMAGE_REPOSITORY - value: quay.io/mongodb/mongodb-kubernetes-init-database + value: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-kubernetes-init-database - name: INIT_DATABASE_VERSION - value: 1.2.0 + value: 68876175f5ad6d0007fdc1d4 - name: DATABASE_VERSION - value: 1.2.0 + value: 68876175f5ad6d0007fdc1d4 # Ops Manager - name: OPS_MANAGER_IMAGE_REPOSITORY - value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi + value: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-enterprise-ops-manager-ubi - name: INIT_OPS_MANAGER_IMAGE_REPOSITORY - value: quay.io/mongodb/mongodb-kubernetes-init-ops-manager + value: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-kubernetes-init-ops-manager - name: INIT_OPS_MANAGER_VERSION - value: 1.2.0 + value: 68876175f5ad6d0007fdc1d4 # AppDB - name: INIT_APPDB_IMAGE_REPOSITORY - value: quay.io/mongodb/mongodb-kubernetes-init-appdb + value: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-kubernetes-init-appdb - name: INIT_APPDB_VERSION - value: 1.2.0 + value: 68876175f5ad6d0007fdc1d4 - name: OPS_MANAGER_IMAGE_PULL_POLICY value: Always - name: AGENT_IMAGE - value: "quay.io/mongodb/mongodb-agent-ubi:108.0.2.8729-1" + value: "268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-agent-ubi:108.0.0.8694-1" - name: MDB_AGENT_IMAGE_REPOSITORY - value: "quay.io/mongodb/mongodb-agent-ubi" + value: "268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-agent-ubi" - name: MONGODB_IMAGE value: mongodb-enterprise-server - name: MONGODB_REPO_URL value: quay.io/mongodb - name: MDB_IMAGE_TYPE - value: ubi8 + value: ubi9 - name: PERFORM_FAILOVER value: 'true' + - name: IMAGE_PULL_SECRETS + value: image-registries-secret - name: MDB_MAX_CONCURRENT_RECONCILES - value: "1" + value: "10" - name: POD_NAME valueFrom: fieldRef: @@ -370,6 +417,8 @@ spec: value: "mongodb-search-community" - name: MDB_SEARCH_COMMUNITY_VERSION value: "1.47.0" + - name: OM_DEBUG_HTTP + value: 'true' volumes: - name: kube-config-volume secret: diff --git a/public/architectures/setup-multi-cluster/setup-operator/output/0211_check_operator_deployment.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-02_0211_check_operator_deployment.out similarity index 85% rename from public/architectures/setup-multi-cluster/setup-operator/output/0211_check_operator_deployment.out rename to scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-02_0211_check_operator_deployment.out index 12cff4d42..2f01f86c7 100644 --- a/public/architectures/setup-multi-cluster/setup-operator/output/0211_check_operator_deployment.out +++ b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-02_0211_check_operator_deployment.out @@ -6,4 +6,4 @@ mongodb-kubernetes-operator-multi-cluster 1/1 1 1 8s Operator pod in mongodb-operator namespace NAME READY STATUS RESTARTS AGE -mongodb-kubernetes-operator-multi-cluster-5b875c54c5-d2gq6 1/1 Running 0 8s +mongodb-kubernetes-operator-multi-cluster-64647b6db5-2jfn5 1/1 Running 0 9s diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/output/0090_check_cluster_connectivity_verify_pod_0_0_from_cluster_1.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_0_0_from_cluster_1.out similarity index 71% rename from public/architectures/setup-multi-cluster/verify-connectivity/output/0090_check_cluster_connectivity_verify_pod_0_0_from_cluster_1.out rename to scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_0_0_from_cluster_1.out index a4bba85c3..4665128e6 100644 --- a/public/architectures/setup-multi-cluster/verify-connectivity/output/0090_check_cluster_connectivity_verify_pod_0_0_from_cluster_1.out +++ b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_0_0_from_cluster_1.out @@ -1,2 +1,2 @@ -Checking cross-cluster DNS resolution and connectivity from echoserver1-0 in gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-682f2df6e1745e000788a1d5-24552 to echoserver0-0 +Checking cross-cluster DNS resolution and connectivity from echoserver1-0 in gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-68876175f5ad6d0007fdc1d4-31160 to echoserver0-0 SUCCESS diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/output/0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_0.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_0.out similarity index 71% rename from public/architectures/setup-multi-cluster/verify-connectivity/output/0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_0.out rename to scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_0.out index 2272553f9..0e6fcac94 100644 --- a/public/architectures/setup-multi-cluster/verify-connectivity/output/0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_0.out +++ b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_0.out @@ -1,2 +1,2 @@ -Checking cross-cluster DNS resolution and connectivity from echoserver0-0 in gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-682f2df6e1745e000788a1d5-24552 to echoserver1-0 +Checking cross-cluster DNS resolution and connectivity from echoserver0-0 in gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-68876175f5ad6d0007fdc1d4-31160 to echoserver1-0 SUCCESS diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/output/0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_2.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_2.out similarity index 71% rename from public/architectures/setup-multi-cluster/verify-connectivity/output/0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_2.out rename to scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_2.out index 174dfd35d..7b79ecdd0 100644 --- a/public/architectures/setup-multi-cluster/verify-connectivity/output/0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_2.out +++ b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_1_0_from_cluster_2.out @@ -1,2 +1,2 @@ -Checking cross-cluster DNS resolution and connectivity from echoserver2-0 in gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2-682f2df6e1745e000788a1d5-24552 to echoserver1-0 +Checking cross-cluster DNS resolution and connectivity from echoserver2-0 in gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2-68876175f5ad6d0007fdc1d4-31160 to echoserver1-0 SUCCESS diff --git a/public/architectures/setup-multi-cluster/verify-connectivity/output/0090_check_cluster_connectivity_verify_pod_2_0_from_cluster_0.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_2_0_from_cluster_0.out similarity index 71% rename from public/architectures/setup-multi-cluster/verify-connectivity/output/0090_check_cluster_connectivity_verify_pod_2_0_from_cluster_0.out rename to scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_2_0_from_cluster_0.out index 7c5f21ec9..78286fa61 100644 --- a/public/architectures/setup-multi-cluster/verify-connectivity/output/0090_check_cluster_connectivity_verify_pod_2_0_from_cluster_0.out +++ b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-04_0090_check_cluster_connectivity_verify_pod_2_0_from_cluster_0.out @@ -1,2 +1,2 @@ -Checking cross-cluster DNS resolution and connectivity from echoserver0-0 in gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-682f2df6e1745e000788a1d5-24552 to echoserver2-0 +Checking cross-cluster DNS resolution and connectivity from echoserver0-0 in gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-68876175f5ad6d0007fdc1d4-31160 to echoserver2-0 SUCCESS diff --git a/public/architectures/setup-multi-cluster/setup-cert-manager/output/0215_helm_configure_repo.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-05_0215_helm_configure_repo.out similarity index 100% rename from public/architectures/setup-multi-cluster/setup-cert-manager/output/0215_helm_configure_repo.out rename to scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-05_0215_helm_configure_repo.out diff --git a/public/architectures/setup-multi-cluster/setup-cert-manager/output/0216_helm_install_cert_manager.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-05_0216_helm_install_cert_manager.out similarity index 96% rename from public/architectures/setup-multi-cluster/setup-cert-manager/output/0216_helm_install_cert_manager.out rename to scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-05_0216_helm_install_cert_manager.out index e00ae2241..b6242935f 100644 --- a/public/architectures/setup-multi-cluster/setup-cert-manager/output/0216_helm_install_cert_manager.out +++ b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-05_0216_helm_install_cert_manager.out @@ -1,6 +1,6 @@ Release "cert-manager" does not exist. Installing it now. NAME: cert-manager -LAST DEPLOYED: Tue Jul 8 07:13:38 2025 +LAST DEPLOYED: Mon Aug 25 09:08:18 2025 NAMESPACE: cert-manager STATUS: deployed REVISION: 1 diff --git a/public/architectures/setup-multi-cluster/setup-cert-manager/output/0221_verify_issuer.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-05_0221_verify_issuer.out similarity index 100% rename from public/architectures/setup-multi-cluster/setup-cert-manager/output/0221_verify_issuer.out rename to scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-05_0221_verify_issuer.out diff --git a/public/architectures/ops-manager-multi-cluster/output/0311_ops_manager_wait_for_pending_state.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0311_ops_manager_wait_for_pending_state.out similarity index 100% rename from public/architectures/ops-manager-multi-cluster/output/0311_ops_manager_wait_for_pending_state.out rename to scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0311_ops_manager_wait_for_pending_state.out diff --git a/public/architectures/ops-manager-multi-cluster/output/0312_ops_manager_wait_for_running_state.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0312_ops_manager_wait_for_running_state.out similarity index 65% rename from public/architectures/ops-manager-multi-cluster/output/0312_ops_manager_wait_for_running_state.out rename to scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0312_ops_manager_wait_for_running_state.out index 45a23aefb..7ece648e9 100644 --- a/public/architectures/ops-manager-multi-cluster/output/0312_ops_manager_wait_for_running_state.out +++ b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0312_ops_manager_wait_for_running_state.out @@ -6,13 +6,13 @@ mongodbopsmanager.mongodb.com/om condition met MongoDBOpsManager resource NAME REPLICAS VERSION STATE (OPSMANAGER) STATE (APPDB) STATE (BACKUP) AGE WARNINGS -om 8.0.5 Running Running Disabled 12m +om 8.0.5 Running Running Disabled 18m -Pods running in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-682f2df6e1745e000788a1d5-24552 +Pods running in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-68876175f5ad6d0007fdc1d4-31160 NAME READY STATUS RESTARTS AGE -om-0-0 2/2 Running 0 9m41s -om-db-0-0 4/4 Running 0 51s -om-db-0-1 4/4 Running 0 2m25s -om-db-0-2 4/4 Running 0 4m16s +om-0-0 2/2 Running 0 15m +om-db-0-0 4/4 Running 0 7m31s +om-db-0-1 4/4 Running 0 9m2s +om-db-0-2 4/4 Running 0 10m -Pods running in cluster gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-682f2df6e1745e000788a1d5-24552 +Pods running in cluster gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-68876175f5ad6d0007fdc1d4-31160 diff --git a/public/architectures/ops-manager-mc-no-mesh/output/0321_ops_manager_wait_for_pending_state.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0321_ops_manager_wait_for_pending_state.out similarity index 100% rename from public/architectures/ops-manager-mc-no-mesh/output/0321_ops_manager_wait_for_pending_state.out rename to scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0321_ops_manager_wait_for_pending_state.out diff --git a/public/architectures/ops-manager-multi-cluster/output/0322_ops_manager_wait_for_running_state.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0322_ops_manager_wait_for_running_state.out similarity index 62% rename from public/architectures/ops-manager-multi-cluster/output/0322_ops_manager_wait_for_running_state.out rename to scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0322_ops_manager_wait_for_running_state.out index 2b45590a2..fc67f254a 100644 --- a/public/architectures/ops-manager-multi-cluster/output/0322_ops_manager_wait_for_running_state.out +++ b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0322_ops_manager_wait_for_running_state.out @@ -6,17 +6,17 @@ mongodbopsmanager.mongodb.com/om condition met MongoDBOpsManager resource NAME REPLICAS VERSION STATE (OPSMANAGER) STATE (APPDB) STATE (BACKUP) AGE WARNINGS -om 8.0.5 Running Running Disabled 20m +om 8.0.5 Running Running Disabled 26m -Pods running in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-682f2df6e1745e000788a1d5-24552 +Pods running in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-68876175f5ad6d0007fdc1d4-31160 NAME READY STATUS RESTARTS AGE om-0-0 2/2 Running 0 2m53s -om-db-0-0 4/4 Running 0 8m42s -om-db-0-1 4/4 Running 0 10m -om-db-0-2 4/4 Running 0 12m +om-db-0-0 4/4 Running 0 14m +om-db-0-1 4/4 Running 0 16m +om-db-0-2 4/4 Running 0 17m -Pods running in cluster gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-682f2df6e1745e000788a1d5-24552 +Pods running in cluster gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-68876175f5ad6d0007fdc1d4-31160 NAME READY STATUS RESTARTS AGE -om-1-0 2/2 Running 0 3m24s -om-db-1-0 4/4 Running 0 7m43s -om-db-1-1 4/4 Running 0 5m31s +om-1-0 2/2 Running 0 3m25s +om-db-1-0 4/4 Running 0 7m16s +om-db-1-1 4/4 Running 0 5m2s diff --git a/public/architectures/ops-manager-multi-cluster/output/0522_ops_manager_wait_for_running_state.out b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0522_ops_manager_wait_for_running_state.out similarity index 63% rename from public/architectures/ops-manager-multi-cluster/output/0522_ops_manager_wait_for_running_state.out rename to scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0522_ops_manager_wait_for_running_state.out index 9f404efdc..c3a0d3b14 100644 --- a/public/architectures/ops-manager-multi-cluster/output/0522_ops_manager_wait_for_running_state.out +++ b/scripts/code_snippets/tests/outputs/test_gke_multi_cluster_snippets/ra-06_0522_ops_manager_wait_for_running_state.out @@ -9,21 +9,21 @@ mongodbopsmanager.mongodb.com/om condition met MongoDBOpsManager resource NAME REPLICAS VERSION STATE (OPSMANAGER) STATE (APPDB) STATE (BACKUP) AGE WARNINGS -om 8.0.5 Running Running Running 23m +om 8.0.5 Running Running Running 29m -Pods running in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-682f2df6e1745e000788a1d5-24552 +Pods running in cluster gke_scratch-kubernetes-team_europe-central2-a_k8s-mdb-0-68876175f5ad6d0007fdc1d4-31160 NAME READY STATUS RESTARTS AGE -om-0-0 2/2 Running 0 5m46s -om-db-0-0 4/4 Running 0 11m -om-db-0-1 4/4 Running 0 13m -om-db-0-2 4/4 Running 0 15m +om-0-0 2/2 Running 0 6m2s +om-db-0-0 4/4 Running 0 18m +om-db-0-1 4/4 Running 0 19m +om-db-0-2 4/4 Running 0 20m -Pods running in cluster gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-682f2df6e1745e000788a1d5-24552 +Pods running in cluster gke_scratch-kubernetes-team_europe-central2-b_k8s-mdb-1-68876175f5ad6d0007fdc1d4-31160 NAME READY STATUS RESTARTS AGE -om-1-0 2/2 Running 0 6m17s +om-1-0 2/2 Running 0 6m33s om-db-1-0 4/4 Running 0 10m -om-db-1-1 4/4 Running 0 8m24s +om-db-1-1 4/4 Running 0 8m10s -Pods running in cluster gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2-682f2df6e1745e000788a1d5-24552 +Pods running in cluster gke_scratch-kubernetes-team_europe-central2-c_k8s-mdb-2-68876175f5ad6d0007fdc1d4-31160 NAME READY STATUS RESTARTS AGE -om-2-backup-daemon-0 2/2 Running 0 2m31s +om-2-backup-daemon-0 2/2 Running 0 2m49s diff --git a/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0100_install_operator.out b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0100_install_operator.out index 3c20a449c..e00b5bd25 100644 --- a/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0100_install_operator.out +++ b/scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0100_install_operator.out @@ -1,11 +1,18 @@ Release "mongodb-kubernetes" does not exist. Installing it now. NAME: mongodb-kubernetes +<<<<<<<< HEAD:docs/community-search/quick-start/output/0100_install_operator.out +LAST DEPLOYED: Tue Jul 8 07:04:51 2025 +======== LAST DEPLOYED: Sat Aug 23 12:17:51 2025 +>>>>>>>> 6309cff6f (Refactor of existing snippets on master):scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0100_install_operator.out NAMESPACE: mongodb STATUS: deployed REVISION: 1 TEST SUITE: None USER-SUPPLIED VALUES: +<<<<<<<< HEAD:docs/community-search/quick-start/output/0100_install_operator.out +dummy: value +======== agent: version: 108.0.2.8729-1 database: @@ -48,6 +55,7 @@ search: name: mongot/community repo: 268558157000.dkr.ecr.eu-west-1.amazonaws.com version: fbd60fb055dd500058edcb45677ea85d19421f47 +>>>>>>>> 6309cff6f (Refactor of existing snippets on master):scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0100_install_operator.out COMPUTED VALUES: agent: @@ -80,16 +88,17 @@ community: version: 4.4.0 database: name: mongodb-kubernetes-database - version: 68876175f5ad6d0007fdc1d4 + version: 1.2.0 +dummy: value initAppDb: name: mongodb-kubernetes-init-appdb - version: 68876175f5ad6d0007fdc1d4 + version: 1.2.0 initDatabase: name: mongodb-kubernetes-init-database - version: 68876175f5ad6d0007fdc1d4 + version: 1.2.0 initOpsManager: name: mongodb-kubernetes-init-ops-manager - version: 68876175f5ad6d0007fdc1d4 + version: 1.2.0 managedSecurityContext: false mongodb: appdbAssumeOldFormat: false @@ -137,7 +146,7 @@ operator: vaultSecretBackend: enabled: false tlsSecretRef: "" - version: 68876175f5ad6d0007fdc1d4 + version: 1.2.0 watchedResources: - mongodb - opsmanagers @@ -153,23 +162,30 @@ readinessProbe: name: mongodb-kubernetes-readinessprobe version: 1.0.22 registry: - agent: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev + agent: quay.io/mongodb appDb: quay.io/mongodb - database: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev - imagePullSecrets: image-registries-secret - initAppDb: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev - initDatabase: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev - initOpsManager: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev - operator: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev + database: quay.io/mongodb + imagePullSecrets: null + initAppDb: quay.io/mongodb + initDatabase: quay.io/mongodb + initOpsManager: quay.io/mongodb + operator: quay.io/mongodb opsManager: quay.io/mongodb pullPolicy: Always readinessProbe: quay.io/mongodb versionUpgradeHook: quay.io/mongodb search: community: +<<<<<<<< HEAD:docs/community-search/quick-start/output/0100_install_operator.out + name: mongodb-search-community + repo: quay.io/mongodb + version: 1.47.0 +subresourceEnabled: true +======== name: mongot/community repo: 268558157000.dkr.ecr.eu-west-1.amazonaws.com version: fbd60fb055dd500058edcb45677ea85d19421f47 +>>>>>>>> 6309cff6f (Refactor of existing snippets on master):scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0100_install_operator.out versionUpgradeHook: name: mongodb-kubernetes-operator-version-upgrade-post-start-hook version: 1.0.9 @@ -183,8 +199,6 @@ kind: ServiceAccount metadata: name: mongodb-kubernetes-appdb namespace: mongodb -imagePullSecrets: - - name: image-registries-secret --- # Source: mongodb-kubernetes/templates/database-roles.yaml apiVersion: v1 @@ -192,8 +206,6 @@ kind: ServiceAccount metadata: name: mongodb-kubernetes-database-pods namespace: mongodb -imagePullSecrets: - - name: image-registries-secret --- # Source: mongodb-kubernetes/templates/database-roles.yaml apiVersion: v1 @@ -201,8 +213,6 @@ kind: ServiceAccount metadata: name: mongodb-kubernetes-ops-manager namespace: mongodb -imagePullSecrets: - - name: image-registries-secret --- # Source: mongodb-kubernetes/templates/operator-sa.yaml apiVersion: v1 @@ -210,10 +220,8 @@ kind: ServiceAccount metadata: name: mongodb-kubernetes-operator namespace: mongodb -imagePullSecrets: - - name: image-registries-secret --- -# Source: mongodb-kubernetes/templates/operator-roles-clustermongodbroles.yaml +# Source: mongodb-kubernetes/templates/operator-roles.yaml kind: ClusterRole apiVersion: rbac.authorization.k8s.io/v1 metadata: @@ -226,7 +234,34 @@ rules: resources: - clustermongodbroles --- -# Source: mongodb-kubernetes/templates/operator-roles-telemetry.yaml +# Source: mongodb-kubernetes/templates/operator-roles.yaml +kind: ClusterRole +apiVersion: rbac.authorization.k8s.io/v1 +metadata: + name: mongodb-kubernetes-operator-mongodb-webhook +rules: + - apiGroups: + - "admissionregistration.k8s.io" + resources: + - validatingwebhookconfigurations + verbs: + - get + - create + - update + - delete + - apiGroups: + - "" + resources: + - services + verbs: + - get + - list + - watch + - create + - update + - delete +--- +# Source: mongodb-kubernetes/templates/operator-roles.yaml # Additional ClusterRole for clusterVersionDetection kind: ClusterRole apiVersion: rbac.authorization.k8s.io/v1 @@ -254,34 +289,7 @@ rules: verbs: - list --- -# Source: mongodb-kubernetes/templates/operator-roles-webhook.yaml -kind: ClusterRole -apiVersion: rbac.authorization.k8s.io/v1 -metadata: - name: mongodb-kubernetes-operator-mongodb-webhook -rules: - - apiGroups: - - "admissionregistration.k8s.io" - resources: - - validatingwebhookconfigurations - verbs: - - get - - create - - update - - delete - - apiGroups: - - "" - resources: - - services - verbs: - - get - - list - - watch - - create - - update - - delete ---- -# Source: mongodb-kubernetes/templates/operator-roles-clustermongodbroles.yaml +# Source: mongodb-kubernetes/templates/operator-roles.yaml kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: @@ -295,30 +303,30 @@ subjects: name: mongodb-kubernetes-operator namespace: mongodb --- -# Source: mongodb-kubernetes/templates/operator-roles-telemetry.yaml -# ClusterRoleBinding for clusterVersionDetection +# Source: mongodb-kubernetes/templates/operator-roles.yaml kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: - name: mongodb-kubernetes-operator-mongodb-cluster-telemetry-binding + name: mongodb-kubernetes-operator-mongodb-webhook-binding roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole - name: mongodb-kubernetes-operator-cluster-telemetry + name: mongodb-kubernetes-operator-mongodb-webhook subjects: - kind: ServiceAccount name: mongodb-kubernetes-operator namespace: mongodb --- -# Source: mongodb-kubernetes/templates/operator-roles-webhook.yaml +# Source: mongodb-kubernetes/templates/operator-roles.yaml +# ClusterRoleBinding for clusterVersionDetection kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: - name: mongodb-kubernetes-operator-mongodb-webhook-binding + name: mongodb-kubernetes-operator-mongodb-cluster-telemetry-binding roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole - name: mongodb-kubernetes-operator-mongodb-webhook + name: mongodb-kubernetes-operator-cluster-telemetry subjects: - kind: ServiceAccount name: mongodb-kubernetes-operator @@ -346,7 +354,7 @@ rules: - delete - get --- -# Source: mongodb-kubernetes/templates/operator-roles-base.yaml +# Source: mongodb-kubernetes/templates/operator-roles.yaml kind: Role apiVersion: rbac.authorization.k8s.io/v1 metadata: @@ -426,14 +434,7 @@ rules: - opsmanagers/status - mongodbmulticluster/status - mongodbsearch/status ---- -# Source: mongodb-kubernetes/templates/operator-roles-pvc-resize.yaml -kind: Role -apiVersion: rbac.authorization.k8s.io/v1 -metadata: - name: mongodb-kubernetes-operator-pvc-resize - namespace: mongodb -rules: + - apiGroups: - '' resources: @@ -461,7 +462,7 @@ subjects: name: mongodb-kubernetes-appdb namespace: mongodb --- -# Source: mongodb-kubernetes/templates/operator-roles-base.yaml +# Source: mongodb-kubernetes/templates/operator-roles.yaml kind: RoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: @@ -476,21 +477,6 @@ subjects: name: mongodb-kubernetes-operator namespace: mongodb --- -# Source: mongodb-kubernetes/templates/operator-roles-pvc-resize.yaml -kind: RoleBinding -apiVersion: rbac.authorization.k8s.io/v1 -metadata: - name: mongodb-kubernetes-operator-pvc-resize-binding - namespace: mongodb -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: Role - name: mongodb-kubernetes-operator-pvc-resize -subjects: - - kind: ServiceAccount - name: mongodb-kubernetes-operator - namespace: mongodb ---- # Source: mongodb-kubernetes/templates/operator.yaml apiVersion: apps/v1 kind: Deployment @@ -515,11 +501,9 @@ spec: securityContext: runAsNonRoot: true runAsUser: 2000 - imagePullSecrets: - - name: image-registries-secret containers: - name: mongodb-kubernetes-operator - image: "268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-kubernetes:68876175f5ad6d0007fdc1d4" + image: "quay.io/mongodb/mongodb-kubernetes:1.2.0" imagePullPolicy: Always args: - -watch-resource=mongodb @@ -562,31 +546,31 @@ spec: value: Always # Database - name: MONGODB_ENTERPRISE_DATABASE_IMAGE - value: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-kubernetes-database + value: quay.io/mongodb/mongodb-kubernetes-database - name: INIT_DATABASE_IMAGE_REPOSITORY - value: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-kubernetes-init-database + value: quay.io/mongodb/mongodb-kubernetes-init-database - name: INIT_DATABASE_VERSION - value: 68876175f5ad6d0007fdc1d4 + value: 1.2.0 - name: DATABASE_VERSION - value: 68876175f5ad6d0007fdc1d4 + value: 1.2.0 # Ops Manager - name: OPS_MANAGER_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi - name: INIT_OPS_MANAGER_IMAGE_REPOSITORY - value: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-kubernetes-init-ops-manager + value: quay.io/mongodb/mongodb-kubernetes-init-ops-manager - name: INIT_OPS_MANAGER_VERSION - value: 68876175f5ad6d0007fdc1d4 + value: 1.2.0 # AppDB - name: INIT_APPDB_IMAGE_REPOSITORY - value: 268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-kubernetes-init-appdb + value: quay.io/mongodb/mongodb-kubernetes-init-appdb - name: INIT_APPDB_VERSION - value: 68876175f5ad6d0007fdc1d4 + value: 1.2.0 - name: OPS_MANAGER_IMAGE_PULL_POLICY value: Always - name: AGENT_IMAGE - value: "268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-agent-ubi:108.0.2.8729-1" + value: "quay.io/mongodb/mongodb-agent-ubi:108.0.2.8729-1" - name: MDB_AGENT_IMAGE_REPOSITORY - value: "268558157000.dkr.ecr.us-east-1.amazonaws.com/dev/mongodb-agent-ubi" + value: "quay.io/mongodb/mongodb-agent-ubi" - name: MONGODB_IMAGE value: mongodb-enterprise-server - name: MONGODB_REPO_URL @@ -595,8 +579,6 @@ spec: value: ubi9 - name: PERFORM_FAILOVER value: 'true' - - name: IMAGE_PULL_SECRETS - value: image-registries-secret - name: MDB_MAX_CONCURRENT_RECONCILES value: "10" - name: POD_NAME @@ -620,9 +602,15 @@ spec: value: "ubi8" # Community Env Vars End - name: MDB_SEARCH_COMMUNITY_REPO_URL +<<<<<<<< HEAD:docs/community-search/quick-start/output/0100_install_operator.out + value: "quay.io/mongodb" + - name: MDB_SEARCH_COMMUNITY_NAME + value: "mongodb-search-community" +======== value: "268558157000.dkr.ecr.eu-west-1.amazonaws.com" - name: MDB_SEARCH_COMMUNITY_NAME value: "mongot/community" +>>>>>>>> 6309cff6f (Refactor of existing snippets on master):scripts/code_snippets/tests/outputs/test_kind_search_community_snippets/01_0100_install_operator.out - name: MDB_SEARCH_COMMUNITY_VERSION - value: "fbd60fb055dd500058edcb45677ea85d19421f47" + value: "1.47.0" diff --git a/scripts/code_snippets/tests/test_gke_multi_cluster_no_mesh_snippets.sh b/scripts/code_snippets/tests/test_gke_multi_cluster_no_mesh_snippets.sh index 8caa97beb..0eff029ff 100755 --- a/scripts/code_snippets/tests/test_gke_multi_cluster_no_mesh_snippets.sh +++ b/scripts/code_snippets/tests/test_gke_multi_cluster_no_mesh_snippets.sh @@ -12,45 +12,67 @@ mkdir -p "${_SNIPPETS_OUTPUT_DIR}" function cleanup() { if [ "${code_snippets_teardown:-true}" = true ]; then echo "Deleting clusters and resources" - ./public/architectures/ops-manager-mc-no-mesh/teardown.sh & - ./public/architectures/setup-multi-cluster/setup-externaldns/teardown.sh & + ./public/architectures/ra-10-ops-manager-mc-no-mesh/teardown.sh & + ./public/architectures/setup-multi-cluster/ra-09-setup-externaldns/teardown.sh & wait - ./public/architectures/setup-multi-cluster/setup-gke/teardown.sh + ./public/architectures/setup-multi-cluster/ra-01-setup-gke/teardown.sh elif [ "${code_snippets_reset:-false}" = true ]; then echo "Deleting resources, keeping the clusters" - ./public/architectures/ops-manager-mc-no-mesh/teardown.sh & - ./public/architectures/mongodb-sharded-mc-no-mesh/teardown.sh & - ./public/architectures/mongodb-replicaset-mc-no-mesh/teardown.sh & - ./public/architectures/setup-multi-cluster/setup-externaldns/teardown.sh & + ./public/architectures/ra-10-ops-manager-mc-no-mesh/teardown.sh & + ./public/architectures/ra-11-mongodb-sharded-mc-no-mesh/teardown.sh & + ./public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/teardown.sh & + ./public/architectures/setup-multi-cluster/ra-09-setup-externaldns/teardown.sh & wait - ./public/architectures/setup-multi-cluster/setup-operator/teardown.sh + ./public/architectures/setup-multi-cluster/ra-02-setup-operator/teardown.sh else echo "Not deleting anything" fi } -trap cleanup EXIT -# store all outputs in +dump_logs() { + scripts/evergreen/e2e/dump_diagnostic_information_from_all_namespaces.sh "${K8S_CLUSTER_0_CONTEXT_NAME}" + scripts/evergreen/e2e/dump_diagnostic_information_from_all_namespaces.sh "${K8S_CLUSTER_1_CONTEXT_NAME}" + scripts/evergreen/e2e/dump_diagnostic_information_from_all_namespaces.sh "${K8S_CLUSTER_2_CONTEXT_NAME}" +} + +cmd=${1:-""} +if [[ "${cmd}" == "dump_logs" ]]; then + source public/architectures/setup-multi-cluster/ra-01-setup-gke/env_variables.sh + dump_logs + exit 0 +elif [[ "${cmd}" == "cleanup" ]]; then + source public/architectures/setup-multi-cluster/ra-01-setup-gke/env_variables.sh + cleanup + exit 0 +fi + +function on_exit() { + dump_logs + cleanup +} + +trap on_exit EXIT +source public/architectures/setup-multi-cluster/ra-01-setup-gke/env_variables.sh +# we need some env vars, e.g. OM_NAMESPACE for teardown in case setup gke is failing +source public/architectures/setup-multi-cluster/ra-02-setup-operator/env_variables.sh -source public/architectures/setup-multi-cluster/setup-gke/env_variables.sh -./public/architectures/setup-multi-cluster/setup-gke/test.sh +./public/architectures/setup-multi-cluster/ra-01-setup-gke/test.sh -source public/architectures/setup-multi-cluster/setup-operator/env_variables.sh -./public/architectures/setup-multi-cluster/setup-operator/test.sh +./public/architectures/setup-multi-cluster/ra-02-setup-operator/test.sh -./public/architectures/setup-multi-cluster/setup-cert-manager/test.sh +./public/architectures/setup-multi-cluster/ra-05-setup-cert-manager/test.sh -source public/architectures/setup-multi-cluster/setup-externaldns/env_variables.sh -./public/architectures/setup-multi-cluster/setup-externaldns/test.sh +source public/architectures/setup-multi-cluster/ra-09-setup-externaldns/env_variables.sh +./public/architectures/setup-multi-cluster/ra-09-setup-externaldns/test.sh -source public/architectures/ops-manager-mc-no-mesh/env_variables.sh -./public/architectures/ops-manager-mc-no-mesh/test.sh +source public/architectures/ra-10-ops-manager-mc-no-mesh/env_variables.sh +./public/architectures/ra-10-ops-manager-mc-no-mesh/test.sh -source public/architectures/mongodb-replicaset-mc-no-mesh/env_variables.sh -./public/architectures/mongodb-replicaset-mc-no-mesh/test.sh +source public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/env_variables.sh +./public/architectures/ra-12-mongodb-replicaset-mc-no-mesh/test.sh -source public/architectures/mongodb-sharded-mc-no-mesh/env_variables.sh -./public/architectures/mongodb-sharded-mc-no-mesh/test.sh +source public/architectures/ra-11-mongodb-sharded-mc-no-mesh/env_variables.sh +./public/architectures/ra-11-mongodb-sharded-mc-no-mesh/test.sh diff --git a/scripts/code_snippets/tests/test_gke_multi_cluster_snippets.sh b/scripts/code_snippets/tests/test_gke_multi_cluster_snippets.sh index e9383e16e..614d167f4 100755 --- a/scripts/code_snippets/tests/test_gke_multi_cluster_snippets.sh +++ b/scripts/code_snippets/tests/test_gke_multi_cluster_snippets.sh @@ -12,38 +12,62 @@ mkdir -p "${_SNIPPETS_OUTPUT_DIR}" function cleanup() { if [ "${code_snippets_teardown:-true}" = true ]; then echo "Deleting clusters" - ./public/architectures/setup-multi-cluster/setup-gke/teardown.sh + ./public/architectures/setup-multi-cluster/ra-01-setup-gke/teardown.sh elif [ "${code_snippets_reset:-false}" = true ]; then echo "Deleting resources, keeping the clusters" - ./public/architectures/ops-manager-multi-cluster/teardown.sh & - ./public/architectures/mongodb-sharded-multi-cluster/teardown.sh & - ./public/architectures/mongodb-replicaset-multi-cluster/teardown.sh & + ./public/architectures/ra-06-ops-manager-multi-cluster/teardown.sh & + ./public/architectures/ra-08-mongodb-sharded-multi-cluster/teardown.sh & + ./public/architectures/ra-07-mongodb-replicaset-multi-cluster/teardown.sh & wait - ./public/architectures/setup-multi-cluster/setup-operator/teardown.sh + ./public/architectures/setup-multi-cluster/ra-02-setup-operator/teardown.sh else echo "Not deleting anything" fi } -trap cleanup EXIT -source public/architectures/setup-multi-cluster/setup-gke/env_variables.sh -./public/architectures/setup-multi-cluster/setup-gke/test.sh +dump_logs() { + scripts/evergreen/e2e/dump_diagnostic_information_from_all_namespaces.sh "${K8S_CLUSTER_0_CONTEXT_NAME}" + scripts/evergreen/e2e/dump_diagnostic_information_from_all_namespaces.sh "${K8S_CLUSTER_1_CONTEXT_NAME}" + scripts/evergreen/e2e/dump_diagnostic_information_from_all_namespaces.sh "${K8S_CLUSTER_2_CONTEXT_NAME}" +} + +cmd=${1:-""} +if [[ "${cmd}" == "dump_logs" ]]; then + source public/architectures/setup-multi-cluster/ra-01-setup-gke/env_variables.sh + dump_logs + exit 0 +elif [[ "${cmd}" == "cleanup" ]]; then + source public/architectures/setup-multi-cluster/ra-01-setup-gke/env_variables.sh + cleanup + exit 0 +fi +# if no cmd, proceed with the test normally +function on_exit() { + dump_logs + cleanup +} + +trap on_exit EXIT + + +source public/architectures/setup-multi-cluster/ra-01-setup-gke/env_variables.sh +./public/architectures/setup-multi-cluster/ra-01-setup-gke/test.sh -source public/architectures/setup-multi-cluster/setup-operator/env_variables.sh -./public/architectures/setup-multi-cluster/setup-operator/test.sh +source public/architectures/setup-multi-cluster/ra-02-setup-operator/env_variables.sh +./public/architectures/setup-multi-cluster/ra-02-setup-operator/test.sh -./public/architectures/setup-multi-cluster/setup-istio/test.sh +./public/architectures/setup-multi-cluster/ra-03-setup-istio/test.sh -./public/architectures/setup-multi-cluster/verify-connectivity/test.sh +./public/architectures/setup-multi-cluster/ra-04-verify-connectivity/test.sh -./public/architectures/setup-multi-cluster/setup-cert-manager/test.sh +./public/architectures/setup-multi-cluster/ra-05-setup-cert-manager/test.sh -source public/architectures/ops-manager-multi-cluster/env_variables.sh -./public/architectures/ops-manager-multi-cluster/test.sh +source public/architectures/ra-06-ops-manager-multi-cluster/env_variables.sh +./public/architectures/ra-06-ops-manager-multi-cluster/test.sh -source public/architectures/mongodb-replicaset-multi-cluster/env_variables.sh -./public/architectures/mongodb-replicaset-multi-cluster/test.sh +source public/architectures/ra-07-mongodb-replicaset-multi-cluster/env_variables.sh +./public/architectures/ra-07-mongodb-replicaset-multi-cluster/test.sh -source public/architectures/mongodb-sharded-multi-cluster/env_variables.sh -./public/architectures/mongodb-sharded-multi-cluster/test.sh +source public/architectures/ra-08-mongodb-sharded-multi-cluster/env_variables.sh +./public/architectures/ra-08-mongodb-sharded-multi-cluster/test.sh diff --git a/scripts/code_snippets/validate_snippets.py b/scripts/code_snippets/validate_snippets.py index fe2d3d0d5..be797add9 100755 --- a/scripts/code_snippets/validate_snippets.py +++ b/scripts/code_snippets/validate_snippets.py @@ -54,10 +54,10 @@ def verify_snippets_files_are_unique(): print() if duplicates_found: - print("Please rename duplicate files to ensure uniqueness across all snippet directories.") + print("Failure - please rename duplicate files to ensure uniqueness across all snippet directories.") return False else: - print("All snippet files have unique names across directories.") + print("OK - all snippets have unique names across directories.") return True diff --git a/scripts/dev/contexts/prerelease_gke_code_snippets b/scripts/dev/contexts/prerelease_gke_code_snippets index 61a07676f..c07a18630 100644 --- a/scripts/dev/contexts/prerelease_gke_code_snippets +++ b/scripts/dev/contexts/prerelease_gke_code_snippets @@ -10,7 +10,7 @@ script_dir=$(dirname "${script_name}") source "${script_dir}/root-context" export MDB_GKE_PROJECT="scratch-kubernetes-team" -export K8S_CLUSTER_SUFFIX="-${version_id}-${RANDOM}" +export K8S_CLUSTER_SUFFIX="${K8S_CLUSTER_SUFFIX:-"-${version_id}-${RANDOM}"}" export CODE_SNIPPETS_COMMIT_OUTPUT=true # we reset evg host to use a default ~/.kube/config for GKE instead of the one from evg host diff --git a/scripts/dev/contexts/private_gke_code_snippets b/scripts/dev/contexts/private_gke_code_snippets index 50bc169ce..c88583802 100644 --- a/scripts/dev/contexts/private_gke_code_snippets +++ b/scripts/dev/contexts/private_gke_code_snippets @@ -10,8 +10,10 @@ script_dir=$(dirname "${script_name}") source "${script_dir}/root-context" source "${script_dir}/variables/om80" +export KUBE_ENVIRONMENT_NAME=multi + export MDB_GKE_PROJECT="scratch-kubernetes-team" -export K8S_CLUSTER_SUFFIX="-${version_id}-${RANDOM}" +export K8S_CLUSTER_SUFFIX="${K8S_CLUSTER_SUFFIX:-"-${version_id}-${RANDOM}"}" # we reset evg host to use a default ~/.kube/config for GKE instead of the one from evg host export EVG_HOST_NAME="" diff --git a/scripts/dev/contexts/public_gke_code_snippets b/scripts/dev/contexts/public_gke_code_snippets index dddae3db9..6cc413dc4 100644 --- a/scripts/dev/contexts/public_gke_code_snippets +++ b/scripts/dev/contexts/public_gke_code_snippets @@ -9,9 +9,11 @@ script_dir=$(dirname "${script_name}") source "${script_dir}/root-context" +export KUBE_ENVIRONMENT_NAME=multi + export MDB_GKE_PROJECT="scratch-kubernetes-team" # shellcheck disable=SC2154 -export K8S_CLUSTER_SUFFIX="-${version_id}-${RANDOM}" +export K8S_CLUSTER_SUFFIX="${K8S_CLUSTER_SUFFIX:-"-${version_id}-${RANDOM}"}" # we reset evg host to use a default ~/.kube/config for GKE instead of the one from evg host export EVG_HOST_NAME="" diff --git a/scripts/evergreen/e2e/dump_diagnostic_information.sh b/scripts/evergreen/e2e/dump_diagnostic_information.sh index f4ea7b986..fbaa38b2a 100755 --- a/scripts/evergreen/e2e/dump_diagnostic_information.sh +++ b/scripts/evergreen/e2e/dump_diagnostic_information.sh @@ -8,12 +8,11 @@ set +e source scripts/funcs/printing -dump_all_non_default_namespaces() { - echo "Gathering logs from all non-default namespaces" +_dump_all_non_default_namespaces() { + local context="${1}" local original_context original_context="$(kubectl config current-context)" - kubectl config use-context "${1:-${original_context}}" &> /dev/null prefix="${1:-${original_context}}_" # shellcheck disable=SC2154 if [[ "${KUBE_ENVIRONMENT_NAME:-}" != "multi" ]]; then @@ -21,36 +20,40 @@ dump_all_non_default_namespaces() { fi mkdir -p logs - namespaces=$(kubectl get namespace --output=jsonpath="{.items[*].metadata.name}" | tr ' ' '\n' | \ + namespaces=$(kubectl --context="${context}" get namespace --output=jsonpath="{.items[*].metadata.name}" | tr ' ' '\n' | \ grep -v "default" | \ grep -v "kube-node-lease" | \ grep -v "kube-node-lease" | \ grep -v "kube-public" | \ grep -v "kube-system" | \ grep -v "local-path-storage" | \ + grep -v "gmp-" | \ + grep -v "gke-managed" | \ + grep -v "local-path-storage" | \ + grep -v "local-path-storage" | \ grep -v "metallb-system" ) for ns in ${namespaces}; do - if kubectl get namespace "${ns}" -o jsonpath='{.metadata.annotations}'; then + if kubectl --context="${context}" get namespace "${ns}" -o jsonpath='{.metadata.annotations}'; then echo "Dumping all diagnostic information for namespace ${ns}" - dump_namespace "${ns}" "${prefix}" + dump_namespace "${context}" "${ns}" "${prefix}" fi done } -dump_all() { +dump_all_non_default_namespaces() { + local context="${1}" + _dump_all_non_default_namespaces "$@" 2>&1 | prepend "${context}" +} + +_dump_all() { [[ "${MODE-}" = "dev" ]] && return mkdir -p logs - # TODO: provide a cleaner way of handling this. For now we run the same command with kubectl configured - # with a different context. - local original_context - original_context="$(kubectl config current-context)" - kubectl config use-context "${1:-${original_context}}" &> /dev/null - prefix="${1:-${original_context}}_" - # shellcheck disable=SC2154 + local context="${1}" + prefix="${context}_" if [[ "${KUBE_ENVIRONMENT_NAME:-}" != "multi" ]]; then prefix="" fi @@ -59,197 +62,241 @@ dump_all() { # but in some exceptional cases (e.g. clusterwide operator) there can be more than 1 namespace to print diagnostics # In this case the python test app may create the test namespace and add necessary labels and annotations so they # would be dumped for diagnostics as well - for ns in $(kubectl get namespace -l "evg=task" --output=jsonpath={.items..metadata.name}); do - if kubectl get namespace "${ns}" -o jsonpath='{.metadata.annotations}' | grep -q "${task_id:-'not-specified'}"; then + for ns in $(kubectl --context="${context}" get namespace -l "evg=task" --output=jsonpath={.items..metadata.name}); do + if kubectl --context="${context}" get namespace "${ns}" -o jsonpath='{.metadata.annotations}' | grep -q "${task_id:-'not-specified'}"; then echo "Dumping all diagnostic information for namespace ${ns}" - dump_namespace "${ns}" "${prefix}" + dump_namespace "${context}" "${ns}" "${prefix}" fi done - if kubectl get namespace "olm" &>/dev/null; then + if kubectl --context="${context}" get namespace "olm" &>/dev/null; then echo "Dumping olm namespace" - dump_namespace "olm" "olm" + dump_namespace "${context}" "olm" "olm" fi - kubectl config use-context "${original_context}" &> /dev/null + kubectl --context="${context}" -n "kube-system" get configmap coredns -o yaml > "logs/${prefix}coredns.yaml" - kubectl -n "kube-system" get configmap coredns -o yaml > "logs/${prefix}coredns.yaml" + kubectl --context="${context}" events --all-namespaces > "logs/${prefix}kube_events.json" +} - kubectl events --all-namespaces > "logs/${prefix}kube_events.json" +dump_all() { + local context="${1}" + _dump_all "$@" 2>&1 | prepend "${context}" } dump_objects() { - local object=$1 - local msg=$2 - local namespace=${3} - local action=${4:-get -o yaml} + local context=$1 + local object=$2 + local msg=$3 + local namespace=${4} + local action=${5:-get -o yaml} + local out_file=${6:-""} + + # First check if the resource type exists + if ! kubectl --context="${context}" get "${object}" --no-headers -o name -n "${namespace}" >/dev/null 2>&1; then + # Resource type doesn't exist, skip silently + return + fi - if [ "$(kubectl get "${object}" --no-headers -o name -n "${namespace}" | wc -l)" = "0" ]; then - # if no objects of this type, return + # Check if there are any objects of this type + local resource_count + resource_count=$(kubectl --context="${context}" get "${object}" --no-headers -o name -n "${namespace}" 2>/dev/null | wc -l) + if [ "${resource_count}" -eq 0 ]; then + # Resource type exists but no objects of this type, return return fi - header "${msg}" - # shellcheck disable=SC2086 - kubectl -n "${namespace}" ${action} "${object}" 2>&1 + # Capture output first to check if it contains actual resources + local temp_output + temp_output=$(kubectl --context="${context}" -n "${namespace}" ${action} "${object}" 2>&1) + + # Check if output contains actual resources (not just empty list) + # Skip if it's an empty YAML list (contains "items: []") + if printf '%s\n' "${temp_output}" | grep -Fq "items: []"; then + # Empty list, don't create file + return + fi + + if [[ -n "${out_file}" ]]; then + { + header "${msg}" + echo "${temp_output}" + } > "${out_file}" + else + header "${msg}" + kubectl --context="${context}" -n "${namespace}" ${action} "${object}" 2>&1 + fi } # get_operator_managed_pods returns a list of names of the Pods that are managed # by the Operator. get_operator_managed_pods() { - local namespace=${1} - kubectl get pods --namespace "${namespace}" --selector=controller=mongodb-enterprise-operator --no-headers -o custom-columns=":metadata.name" + local context=${1} + local namespace=${2} + kubectl --context="${context}" get pods --namespace "${namespace}" --selector=controller=mongodb-enterprise-operator --no-headers -o custom-columns=":metadata.name" } get_all_pods() { - local namespace=${1} - kubectl get pods --namespace "${namespace}" --no-headers -o custom-columns=":metadata.name" + local context=${1} + local namespace=${2} + kubectl --context="${context}" get pods --namespace "${namespace}" --no-headers -o custom-columns=":metadata.name" } is_mdb_resource_pod() { - local pod="${1}" - local namespace="${2}" + local context="${1}" + local pod="${2}" + local namespace="${3}" - kubectl exec "${pod}" -n "${namespace}" -- ls /var/log/mongodb-mms-automation/automation-agent-verbose.log &>/dev/null + kubectl --context="${context}" exec "${pod}" -n "${namespace}" -- ls /var/log/mongodb-mms-automation/automation-agent-verbose.log &>/dev/null } # dump_pod_logs dumps agent and mongodb logs. dump_pod_logs() { - local pod="${1}" - local namespace="${2}" - local prefix="${3}" + local context="${1}" + local pod="${2}" + local namespace="${3}" + local prefix="${4}" - if is_mdb_resource_pod "${pod}" "${namespace}"; then + if is_mdb_resource_pod "${context}" "${pod}" "${namespace}"; then # for MDB resource Pods, we dump the log files from the file system echo "Writing agent and mongodb logs for pod ${pod} to logs" - kubectl cp "${namespace}/${pod}:/var/log/mongodb-mms-automation/automation-agent-verbose.log" "logs/${prefix}${pod}-agent-verbose.log" &> /dev/null - kubectl cp "${namespace}/${pod}:/var/log/mongodb-mms-automation/automation-agent.log" "logs/${prefix}${pod}-agent.log" &> /dev/null - kubectl cp "${namespace}/${pod}:/var/log/mongodb-mms-automation/monitoring-agent-verbose.log" "logs/${prefix}${pod}-monitoring-agent-verbose.log" &> /dev/null - kubectl cp "${namespace}/${pod}:/var/log/mongodb-mms-automation/monitoring-agent.log" "logs/${prefix}${pod}-monitoring-agent.log" &> /dev/null - kubectl logs -n "${namespace}" "${pod}" -c "mongodb-agent-monitoring" > "logs/${prefix}${pod}-monitoring-agent-stdout.log" || true - kubectl logs -n "${namespace}" "${pod}" -c "mongod" > "logs/${prefix}${pod}-mongod-container.log" || true - kubectl logs -n "${namespace}" "${pod}" -c "mongodb-agent" > "logs/${prefix}${pod}-mongodb-agent-container.log" || true - kubectl cp "${namespace}/${pod}:/var/log/mongodb-mms-automation/mongodb.log" "logs/${prefix}${pod}-mongodb.log" &> /dev/null || true + kubectl --context="${context}" cp "${namespace}/${pod}:/var/log/mongodb-mms-automation/automation-agent-verbose.log" "logs/${prefix}${pod}-agent-verbose.log" &> /dev/null + kubectl --context="${context}" cp "${namespace}/${pod}:/var/log/mongodb-mms-automation/automation-agent.log" "logs/${prefix}${pod}-agent.log" &> /dev/null + kubectl --context="${context}" cp "${namespace}/${pod}:/var/log/mongodb-mms-automation/monitoring-agent-verbose.log" "logs/${prefix}${pod}-monitoring-agent-verbose.log" &> /dev/null + kubectl --context="${context}" cp "${namespace}/${pod}:/var/log/mongodb-mms-automation/monitoring-agent.log" "logs/${prefix}${pod}-monitoring-agent.log" &> /dev/null + kubectl --context="${context}" logs -n "${namespace}" "${pod}" -c "mongodb-agent-monitoring" > "logs/${prefix}${pod}-monitoring-agent-stdout.log" || true + kubectl --context="${context}" logs -n "${namespace}" "${pod}" -c "mongod" > "logs/${prefix}${pod}-mongod-container.log" || true + kubectl --context="${context}" logs -n "${namespace}" "${pod}" -c "mongodb-agent" > "logs/${prefix}${pod}-mongodb-agent-container.log" || true + kubectl --context="${context}" cp "${namespace}/${pod}:/var/log/mongodb-mms-automation/mongodb.log" "logs/${prefix}${pod}-mongodb.log" &> /dev/null || true # note that this file may get empty if the logs have already grew too much - seems it's better to have it explicitly empty then just omit - kubectl logs -n "${namespace}" "${pod}" | jq -c -r 'select( .logType == "agent-launcher-script") | .contents' 2> /dev/null > "logs/${prefix}${pod}-launcher.log" + kubectl --context="${context}" logs -n "${namespace}" "${pod}" | jq -c -r 'select( .logType == "agent-launcher-script") | .contents' 2> /dev/null > "logs/${prefix}${pod}-launcher.log" else # for all other pods we want each log per container from kubectl - for container in $(kubectl get pods -n "${namespace}" "${pod}" -o jsonpath='{.spec.containers[*].name}'); do - echo "Writing log file for pod ${pod} - container ${container} to logs/${pod}-${container}.log" - kubectl logs -n "${namespace}" "${pod}" -c "${container}" > "logs/${pod}-${container}.log" + for container in $(kubectl --context="${context}" get pods -n "${namespace}" "${pod}" -o jsonpath='{.spec.containers[*].name}'); do + echo "Writing log file for pod ${pod} - container ${container} to logs/${prefix}${pod}-${container}.log" + kubectl --context="${context}" logs -n "${namespace}" "${pod}" -c "${container}" > "logs/${prefix}${pod}-${container}.log" # Check if the container has restarted by examining its restart count - restartCount=$(kubectl get pod -n "${namespace}" "${pod}" -o jsonpath="{.status.containerStatuses[?(@.name=='${container}')].restartCount}") + restartCount=$(kubectl --context="${context}" get pod -n "${namespace}" "${pod}" -o jsonpath="{.status.containerStatuses[?(@.name=='${container}')].restartCount}") if [ "${restartCount}" -gt 0 ]; then - echo "Writing log file for restarted ${pod} - container ${container} to logs/${pod}-${container}-previous.log" - kubectl logs --previous -n "${namespace}" "${pod}" -c "${container}" > "logs/${pod}-${container}-previous.log" || true + echo "Writing log file for restarted ${pod} - container ${container} to logs/${prefix}${pod}-${container}-previous.log" + kubectl --context="${context}" logs --previous -n "${namespace}" "${pod}" -c "${container}" > "logs/${prefix}${pod}-${container}-previous.log" || true fi done fi - if kubectl exec "${pod}" -n "${namespace}" -- ls /var/log/mongodb-mms-automation/automation-agent-stderr.log &>/dev/null; then - kubectl cp "${namespace}/${pod}:/var/log/mongodb-mms-automation/automation-agent-stderr.log" "logs/${prefix}${pod}-agent-stderr.log" &> /dev/null + if kubectl --context="${context}" exec "${pod}" -n "${namespace}" -- ls /var/log/mongodb-mms-automation/automation-agent-stderr.log &>/dev/null; then + kubectl --context="${context}" cp "${namespace}/${pod}:/var/log/mongodb-mms-automation/automation-agent-stderr.log" "logs/${prefix}${pod}-agent-stderr.log" &> /dev/null fi } # dump_pod_readiness_state dumps readiness and agent-health-status files. dump_pod_readiness_state() { - local pod="${1}" - local namespace="${2}" - local prefix="${3}" + local context="${1}" + local pod="${2}" + local namespace="${3}" + local prefix="${4}" # kubectl cp won't create any files if the file doesn't exist in the container agent_health_status="logs/${prefix}${pod}-agent-health-status.json" echo "Writing agent ${agent_health_status}" - kubectl cp -c "mongodb-agent" "${namespace}/${pod}:/var/log/mongodb-mms-automation/agent-health-status.json" "${agent_health_status}" &> /dev/null + kubectl --context="${context}" cp -c "mongodb-agent" "${namespace}/${pod}:/var/log/mongodb-mms-automation/agent-health-status.json" "${agent_health_status}" &> /dev/null ([[ -f "${agent_health_status}" ]] && jq . < "${agent_health_status}" > tmpfile && mv tmpfile "${agent_health_status}") if [[ ! -f "${agent_health_status}" ]]; then echo "Agent health status not found; trying community health status: " - kubectl cp -c "mongodb-agent" "${namespace}/${pod}:/var/log/mongodb-mms-automation/healthstatus/agent-health-status.json" "${agent_health_status}" &> /dev/null + kubectl --context="${context}" cp -c "mongodb-agent" "${namespace}/${pod}:/var/log/mongodb-mms-automation/healthstatus/agent-health-status.json" "${agent_health_status}" &> /dev/null ([[ -f "${agent_health_status}" ]] && jq . < "${agent_health_status}" > tmpfile && mv tmpfile "${agent_health_status}") fi - kubectl cp "${namespace}/${pod}:/var/log/mongodb-mms-automation/readiness.log" "logs/${prefix}${pod}-readiness.log" &> /dev/null + kubectl --context="${context}" cp "${namespace}/${pod}:/var/log/mongodb-mms-automation/readiness.log" "logs/${prefix}${pod}-readiness.log" &> /dev/null } # dump_pod_config dumps mongod configuration and cluster-config. dump_pod_config() { - local pod="${1}" - local namespace="${2}" - local prefix="${3}" + local context="${1}" + local pod="${2}" + local namespace="${3}" + local prefix="${4}" # cluster-config.json is a mounted volume and the actual file is located in the "..data" directory pod_cluster_config="logs/${prefix}${pod}-cluster-config.json" - kubectl cp "${namespace}/${pod}:/var/lib/mongodb-automation/..data/cluster-config.json" "${pod_cluster_config}" &> /dev/null + kubectl --context="${context}" cp "${namespace}/${pod}:/var/lib/mongodb-automation/..data/cluster-config.json" "${pod_cluster_config}" &> /dev/null ([[ -f "${pod_cluster_config}" ]] && jq . < "${pod_cluster_config}" > tmpfile && mv tmpfile "${pod_cluster_config}") # Mongodb Configuration - kubectl cp "${namespace}/${pod}:data/automation-mongod.conf" "logs/${prefix}${pod}-automation-mongod.conf" &> /dev/null + kubectl --context="${context}" cp "${namespace}/${pod}:data/automation-mongod.conf" "logs/${prefix}${pod}-automation-mongod.conf" &> /dev/null } dump_configmaps() { - local namespace="${1}" - local prefix="${2}" - kubectl -n "${namespace}" get configmaps -o yaml > "logs/${prefix}z_configmaps.txt" + local context="${1}" + local namespace="${2}" + local prefix="${3}" + kubectl --context="${context}" -n "${namespace}" get configmaps -o yaml > "logs/${prefix}z_configmaps.txt" } decode_secret() { - local secret=${1} - local namespace=${2} + local context=${1} + local secret=${2} + local namespace=${3} - kubectl get secret "${secret}" -o json -n "${namespace}" | jq -r '.data | with_entries(.value |= @base64d)' 2> /dev/null + kubectl --context="${context}" get secret "${secret}" -o json -n "${namespace}" | jq -r '.data | with_entries(.value |= @base64d)' 2> /dev/null } dump_secrets() { - local namespace="${1}" - local prefix="${2}" - for secret in $(kubectl get secrets -n "${namespace}" --no-headers | grep -v service-account-token | grep -v dockerconfigjson | awk '{ print $1 }'); do - decode_secret "${secret}" "${namespace}" > "logs/${prefix}z_secret_${secret}.txt" + local context="${1}" + local namespace="${2}" + local prefix="${3}" + for secret in $(kubectl --context="${context}" get secrets -n "${namespace}" --no-headers | grep -v service-account-token | grep -v dockerconfigjson | awk '{ print $1 }'); do + decode_secret "${context}" "${secret}" "${namespace}" > "logs/${prefix}z_secret_${secret}.txt" done } dump_services() { - local namespace="${1}" - local prefix="${2}" - kubectl -n "${namespace}" get svc -o yaml > "logs/${prefix}z_services.txt" + local context="${1}" + local namespace="${2}" + local prefix="${3}" + kubectl --context="${context}" -n "${namespace}" get svc -o yaml > "logs/${prefix}z_services.txt" } dump_metrics() { - local namespace="${1}" - local operator_pod="${2}" - kubectl exec -it "${operator_pod}" -n "${namespace}" -- curl localhost:8080/metrics > "logs/metrics_${operator_pod}.txt" + local context="${1}" + local namespace="${2}" + local operator_pod="${3}" + local prefix="${4}" + kubectl --context="${context}" exec -it "${operator_pod}" -n "${namespace}" -- curl localhost:8080/metrics > "logs/${prefix}metrics_${operator_pod}.txt" } # dump_pods writes logs for each relevant Pod in the namespace: agent, mongodb # logs, etc. dump_pods() { - local namespace="${1}" - local prefix="${2}" + local context="${1}" + local namespace="${2}" + local prefix="${3}" - pods=$(get_all_pods "${namespace}") + pods=$(get_all_pods "${context}" "${namespace}") # we only have readiness and automationconfig in mdb pods for pod in ${pods}; do - dump_pod_readiness_state "${pod}" "${namespace}" "${prefix}" - dump_pod_config "${pod}" "${namespace}" "${prefix}" + dump_pod_readiness_state "${context}" "${pod}" "${namespace}" "${prefix}" + dump_pod_config "${context}" "${pod}" "${namespace}" "${prefix}" done # for all pods in the namespace we want to have logs and describe output echo "Iterating over pods to dump logs: ${pods}" for pod in ${pods}; do - kubectl describe "pod/${pod}" -n "${namespace}" > "logs/${prefix}${pod}-pod-describe.txt" - dump_pod_logs "${pod}" "${namespace}" "${prefix}" + kubectl --context="${context}" describe "pod/${pod}" -n "${namespace}" > "logs/${prefix}${pod}-pod-describe.txt" + dump_pod_logs "${context}" "${pod}" "${namespace}" "${prefix}" done - if (kubectl get pod -n "${namespace}" -l app.kubernetes.io/name=controller ) &> /dev/null ; then - operator_pod=$(kubectl get pod -n "${namespace}" -l app.kubernetes.io/component=controller --no-headers -o custom-columns=":metadata.name") + if (kubectl --context="${context}" get pod -n "${namespace}" -l app.kubernetes.io/name=controller ) &> /dev/null ; then + operator_pod=$(kubectl --context="${context}" get pod -n "${namespace}" -l app.kubernetes.io/component=controller --no-headers -o custom-columns=":metadata.name") if [ -n "${operator_pod}" ]; then - kubectl describe "pod/${operator_pod}" -n "${namespace}" > "logs/z_${operator_pod}-pod-describe.txt" - dump_metrics "${namespace}" "${operator_pod}" + kubectl --context="${context}" describe "pod/${operator_pod}" -n "${namespace}" > "logs/${prefix}z_${operator_pod}-pod-describe.txt" + dump_metrics "${context}" "${namespace}" "${operator_pod}" "${prefix}" fi fi @@ -260,53 +307,57 @@ dump_pods() { # high density of information; the main objective of this file is to direct you # to a place where to find your problem, not to tell you what the problem is. dump_diagnostics() { - local namespace="${1}" - - dump_objects mongodb "MongoDB Resources" "${namespace}" - dump_objects mongodbcommunity "MongoDBCommunity Resources" "${namespace}" - dump_objects mongodbusers "MongoDBUser Resources" "${namespace}" - dump_objects opsmanagers "MongoDBOpsManager Resources" "${namespace}" - dump_objects mongodbmulticluster "MongoDB Multi Resources" "${namespace}" - dump_objects mongodbsearch "MongoDB Search Resources" "${namespace}" + local context="${1}" + local namespace="${2}" header "All namespace resources" - kubectl get all -n "${namespace}" + kubectl --context="${context}" get all -n "${namespace}" + + dump_objects "${context}" mongodb "MongoDB Resources" "${namespace}" "get -o yaml" + dump_objects "${context}" mongodbcommunity "MongoDBCommunity Resources" "${namespace}" "get -o yaml" + dump_objects "${context}" mongodbusers "MongoDBUser Resources" "${namespace}" "get -o yaml" + dump_objects "${context}" opsmanagers "MongoDBOpsManager Resources" "${namespace}" "get -o yaml" + dump_objects "${context}" mongodbmulticluster "MongoDB Multi Resources" "${namespace}" "get -o yaml" + dump_objects "${context}" mongodbsearch "MongoDB Search Resources" "${namespace}" "get -o yaml" } download_test_results() { - local namespace="${1}" - local test_pod_name="${2:-e2e-test}" + local context="${1}" + local namespace="${2}" + local test_pod_name="${3:-e2e-test}" echo "Downloading test results from ${test_pod_name} pod" # Try to copy from shared volume using the keepalive container - if kubectl cp "${namespace}/${test_pod_name}:/tmp/results/result.suite" "logs/result.suite" -c keepalive 2>/dev/null; then + if kubectl --context="${context}" cp "${namespace}/${test_pod_name}:/tmp/results/result.suite" "logs/result.suite" -c keepalive 2>/dev/null; then echo "Successfully downloaded result.suite from test pod" else echo "Could not find result.suite via direct copy" # Get logs from the test container - kubectl logs -n "${namespace}" "${test_pod_name}" -c e2e-test > "logs/result.suite" 2>/dev/null + kubectl --context="${context}" logs -n "${namespace}" "${test_pod_name}" -c e2e-test > "logs/result.suite" 2>/dev/null fi } # dump_events gets all events from a namespace and saves them to a file dump_events() { - local namespace="${1}" - local prefix="${2}" + local context="${1}" + local namespace="${2}" + local prefix="${3}" echo "Collecting events for namespace ${namespace}" # Sort by lastTimestamp to have the most recent events at the top - kubectl get events --sort-by='.lastTimestamp' -n "${namespace}" > "logs/${prefix}events.txt" + kubectl --context="${context}" get events --sort-by='.lastTimestamp' -n "${namespace}" > "logs/${prefix}events.txt" # Also get events in yaml format for more details - kubectl get events -n "${namespace}" -o yaml > "logs/${prefix}events_detailed.yaml" + kubectl --context="${context}" get events -n "${namespace}" -o yaml > "logs/${prefix}events_detailed.yaml" } # dump_namespace dumps a namespace, diagnostics, logs and generic Kubernetes # resources. dump_namespace() { - local namespace=${1} - local prefix="${2}" + local context=${1} + local namespace=${2} + local prefix="${3}_${namespace}_" # do not fail for any reason set +e @@ -316,42 +367,42 @@ dump_namespace() { mkdir -p logs # 2. Write diagnostics file - dump_diagnostics "${namespace}" > "logs/${prefix}0_diagnostics.txt" + dump_diagnostics "${context}" "${namespace}" > "logs/${prefix}0_diagnostics.txt" # 3. Print Pod logs - dump_pods "${namespace}" "${prefix}" + dump_pods "${context}" "${namespace}" "${prefix}" # 4. Print other Kubernetes resources - dump_configmaps "${namespace}" "${prefix}" - dump_secrets "${namespace}" "${prefix}" - dump_services "${namespace}" "${prefix}" - dump_events "${namespace}" "${prefix}" + dump_configmaps "${context}" "${namespace}" "${prefix}" + dump_secrets "${context}" "${namespace}" "${prefix}" + dump_services "${context}" "${namespace}" "${prefix}" + dump_events "${context}" "${namespace}" "${prefix}" # Download test results from the test pod in community - download_test_results "${namespace}" "e2e-test" - - dump_objects pvc "Persistent Volume Claims" "${namespace}" > "logs/${prefix}z_persistent_volume_claims.txt" - dump_objects deploy "Deployments" "${namespace}" > "logs/${prefix}z_deployments.txt" - dump_objects deploy "Deployments" "${namespace}" "describe" > "logs/${prefix}z_deployments_describe.txt" - dump_objects sts "StatefulSets" "${namespace}" describe > "logs/${prefix}z_statefulsets.txt" - dump_objects sts "StatefulSets Yaml" "${namespace}" >> "logs/${prefix}z_statefulsets.txt" - dump_objects serviceaccounts "ServiceAccounts" "${namespace}" > "logs/${prefix}z_service_accounts.txt" - dump_objects clusterrolebindings "ClusterRoleBindings" "${namespace}" > "logs/${prefix}z_clusterrolebindings.txt" - dump_objects clusterroles "ClusterRoles" "${namespace}" > "logs/${prefix}z_clusterroles.txt" - dump_objects rolebindings "RoleBindings" "${namespace}" > "logs/${prefix}z_rolebindings.txt" - dump_objects roles "Roles" "${namespace}" > "logs/${prefix}z_roles.txt" - dump_objects validatingwebhookconfigurations "Validating Webhook Configurations" "${namespace}" > "logs/${prefix}z_validatingwebhookconfigurations.txt" - dump_objects certificates.cert-manager.io "Cert-manager certificates" "${namespace}" 2> /dev/null > "logs/${prefix}z_certificates_certmanager.txt" - dump_objects catalogsources "OLM CatalogSources" "${namespace}" 2> /dev/null > "logs/${prefix}z_olm_catalogsources.txt" - dump_objects operatorgroups "OLM OperatorGroups" "${namespace}" 2> /dev/null > "logs/${prefix}z_olm_operatorgroups.txt" - dump_objects subscriptions "OLM Subscriptions" "${namespace}" 2> /dev/null > "logs/${prefix}z_olm_subscriptions.txt" - dump_objects installplans "OLM InstallPlans" "${namespace}" 2> /dev/null > "logs/${prefix}z_olm_installplans.txt" - dump_objects clusterserviceversions "OLM ClusterServiceVersions" "${namespace}" 2> /dev/null > "logs/${prefix}z_olm_clusterserviceversions.txt" - dump_objects pods "Pods" "${namespace}" 2> /dev/null > "logs/${prefix}z_pods.txt" - - kubectl get crd -o name + download_test_results "${context}" "${namespace}" "e2e-test" + + dump_objects "${context}" pvc "Persistent Volume Claims" "${namespace}" "get -o yaml" "logs/${prefix}z_persistent_volume_claims.txt" + dump_objects "${context}" deploy "Deployments" "${namespace}" "get -o yaml" "logs/${prefix}z_deployments.txt" + dump_objects "${context}" deploy "Deployments" "${namespace}" "describe" "logs/${prefix}z_deployments_describe.txt" + dump_objects "${context}" sts "StatefulSets" "${namespace}" "describe" "logs/${prefix}z_statefulsets.txt" + dump_objects "${context}" sts "StatefulSets Yaml" "${namespace}" "get -o yaml" "logs/${prefix}z_statefulsets.txt" + dump_objects "${context}" serviceaccounts "ServiceAccounts" "${namespace}" "get -o yaml" "logs/${prefix}z_service_accounts.txt" + dump_objects "${context}" clusterrolebindings "ClusterRoleBindings" "${namespace}" "get -o yaml" "logs/${prefix}z_clusterrolebindings.txt" + dump_objects "${context}" clusterroles "ClusterRoles" "${namespace}" "get -o yaml" "logs/${prefix}z_clusterroles.txt" + dump_objects "${context}" rolebindings "RoleBindings" "${namespace}" "get -o yaml" "logs/${prefix}z_rolebindings.txt" + dump_objects "${context}" roles "Roles" "${namespace}" "get -o yaml" "logs/${prefix}z_roles.txt" + dump_objects "${context}" validatingwebhookconfigurations "Validating Webhook Configurations" "${namespace}" "get -o yaml" "logs/${prefix}z_validatingwebhookconfigurations.txt" + dump_objects "${context}" certificates.cert-manager.io "Cert-manager certificates" "${namespace}" "get -o yaml" "logs/${prefix}z_certificates_certmanager.txt" 2> /dev/null + dump_objects "${context}" catalogsources "OLM CatalogSources" "${namespace}" "get -o yaml" "logs/${prefix}z_olm_catalogsources.txt" 2> /dev/null + dump_objects "${context}" operatorgroups "OLM OperatorGroups" "${namespace}" "get -o yaml" "logs/${prefix}z_olm_operatorgroups.txt" 2> /dev/null + dump_objects "${context}" subscriptions "OLM Subscriptions" "${namespace}" "get -o yaml" "logs/${prefix}z_olm_subscriptions.txt" 2> /dev/null + dump_objects "${context}" installplans "OLM InstallPlans" "${namespace}" "get -o yaml" "logs/${prefix}z_olm_installplans.txt" 2> /dev/null + dump_objects "${context}" clusterserviceversions "OLM ClusterServiceVersions" "${namespace}" "get -o yaml" "logs/${prefix}z_olm_clusterserviceversions.txt" 2> /dev/null + dump_objects "${context}" pods "Pods" "${namespace}" "get -o yaml" "logs/${prefix}z_pods.txt" 2> /dev/null + + kubectl --context="${context}" get crd -o name # shellcheck disable=SC2046 - kubectl describe $(kubectl get crd -o name | grep mongodb) > "logs/${prefix}z_mongodb_crds.log" + kubectl --context="${context}" describe $(kubectl --context="${context}" get crd -o name | grep mongodb) > "logs/${prefix}z_mongodb_crds.log" - kubectl describe nodes > "logs/${prefix}z_nodes_detailed.log" || true + kubectl --context="${context}" describe nodes > "logs/${prefix}z_nodes_detailed.log" || true } diff --git a/scripts/evergreen/e2e/dump_diagnostic_information_from_all_namespaces.sh b/scripts/evergreen/e2e/dump_diagnostic_information_from_all_namespaces.sh index 72571a811..59a41f19f 100755 --- a/scripts/evergreen/e2e/dump_diagnostic_information_from_all_namespaces.sh +++ b/scripts/evergreen/e2e/dump_diagnostic_information_from_all_namespaces.sh @@ -7,4 +7,9 @@ set +e source scripts/funcs/printing source scripts/evergreen/e2e/dump_diagnostic_information.sh -dump_all_non_default_namespaces "$@" +# If no context provided, use current context +if [ $# -eq 0 ]; then + dump_all_non_default_namespaces "$(kubectl config current-context)" +else + dump_all_non_default_namespaces "$@" +fi diff --git a/scripts/evergreen/e2e/e2e.sh b/scripts/evergreen/e2e/e2e.sh index 9d6e8de83..e1e6ed556 100755 --- a/scripts/evergreen/e2e/e2e.sh +++ b/scripts/evergreen/e2e/e2e.sh @@ -42,7 +42,7 @@ dump_cluster_information() { done else # Dump all the information we can from this namespace - dump_all || true + dump_all "$(kubectl config current-context)" || true fi } diff --git a/scripts/funcs/operator_deployment b/scripts/funcs/operator_deployment index 55f690546..cf1a0aff1 100644 --- a/scripts/funcs/operator_deployment +++ b/scripts/funcs/operator_deployment @@ -69,9 +69,11 @@ get_operator_helm_values() { # shellcheck disable=SC2154 if [[ "${KUBE_ENVIRONMENT_NAME-}" = "multi" ]]; then - comma_separated_list="$(echo "${MEMBER_CLUSTERS}" | tr ' ' ',')" - # shellcheck disable=SC2154 - config+=("multiCluster.clusters={${comma_separated_list}}") + if [[ -n "${MEMBER_CLUSTERS:-}" ]]; then + comma_separated_list="$(echo "${MEMBER_CLUSTERS}" | tr ' ' ',')" + # shellcheck disable=SC2154 + config+=("multiCluster.clusters={${comma_separated_list}}") + fi config+=("operator.createOperatorServiceAccount=false") fi From c000b5a158b848ae9bc08d696cfc62a8c9ce8f77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Sierant?= Date: Tue, 26 Aug 2025 13:26:20 +0200 Subject: [PATCH 5/6] Review fixes --- .../e2e/dump_diagnostic_information.sh | 38 +++++++++---------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/scripts/evergreen/e2e/dump_diagnostic_information.sh b/scripts/evergreen/e2e/dump_diagnostic_information.sh index fbaa38b2a..2e7fde7d2 100755 --- a/scripts/evergreen/e2e/dump_diagnostic_information.sh +++ b/scripts/evergreen/e2e/dump_diagnostic_information.sh @@ -106,26 +106,26 @@ dump_objects() { return fi - # Capture output first to check if it contains actual resources - local temp_output - temp_output=$(kubectl --context="${context}" -n "${namespace}" ${action} "${object}" 2>&1) - - # Check if output contains actual resources (not just empty list) - # Skip if it's an empty YAML list (contains "items: []") - if printf '%s\n' "${temp_output}" | grep -Fq "items: []"; then - # Empty list, don't create file - return - fi - - if [[ -n "${out_file}" ]]; then - { - header "${msg}" - echo "${temp_output}" - } > "${out_file}" - else + # Capture output first to check if it contains actual resources + local temp_output + temp_output=$(kubectl --context="${context}" -n "${namespace}" ${action} "${object}" 2>&1) + + # Check if output contains actual resources (not just empty list) + # Skip if it's an empty YAML list (contains "items: []") + if printf '%s\n' "${temp_output}" | grep -Fq "items: []"; then + # Empty list, don't create file + return + fi + + if [[ -n "${out_file}" ]]; then + { header "${msg}" - kubectl --context="${context}" -n "${namespace}" ${action} "${object}" 2>&1 - fi + echo "${temp_output}" + } > "${out_file}" + else + header "${msg}" + kubectl --context="${context}" -n "${namespace}" ${action} "${object}" 2>&1 + fi } # get_operator_managed_pods returns a list of names of the Pods that are managed From 8aebe18fbecbb03211b2fc57b2fcc57b179c9874 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Sierant?= Date: Tue, 26 Aug 2025 15:00:26 +0200 Subject: [PATCH 6/6] evg fix --- .evergreen.yml | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/.evergreen.yml b/.evergreen.yml index 527e61938..a754ddb9a 100644 --- a/.evergreen.yml +++ b/.evergreen.yml @@ -1764,16 +1764,6 @@ buildvariants: tasks: - name: release_all_agents_on_ecr - # Only called manually, It's used for testing the task release_agents_on_ecr in case the release.json - # has not changed, and you still want to push the images to ecr. - - name: manual_ecr_release_agent_currently_used - display_name: manual_ecr_release_agent_currently_used - tags: [ "release_all_agents_manually" ] - run_on: - - ubuntu2204-large - tasks: - - name: release_all_currently_used_agents_on_ecr - ### Build variants for manual patch only - name: backup_csv_images