From 911da6589cc22d5eead7627b3c287d836cdd3898 Mon Sep 17 00:00:00 2001 From: devanshjain Date: Fri, 16 May 2025 18:17:25 +0000 Subject: [PATCH 1/4] Update .gitignore, README, and HIGH_AVAILABILITY documentation; add parameters for SCS instance configuration --- .gitignore | 1 - README.md | 2 +- .../DEV-WEEU-SAP01-X00/sap-parameters.yaml | 2 + docs/HIGH_AVAILABILITY.md | 47 +++++++++++++++--- docs/images/execution_screenshot.png | Bin 0 -> 19555 bytes 5 files changed, 43 insertions(+), 9 deletions(-) create mode 100644 docs/images/execution_screenshot.png diff --git a/.gitignore b/.gitignore index 34fe382f..9a6be6f7 100644 --- a/.gitignore +++ b/.gitignore @@ -403,7 +403,6 @@ FodyWeavers.xsd .vscode # System configuration files -WORKSPACES/* .ppk VMWPASSWORD .coverage.* diff --git a/README.md b/README.md index a78a2060..fa22c7f0 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ The SAP Testing Automation Framework is an open-source orchestration tool designed to validate SAP deployments on Microsoft Azure. It enables you to assess system configurations against SAP on Azure best practices and guidelines. Additionally, the framework facilitates automation for various testing scenarios, including High Availability (HA) functional testing. -> **NOTE**: This repository is currently in private preview and is intended for testing and feedback purposes. As this is an early release, it is not yet production-ready, and breaking changes can be introduced at any time. +> **NOTE**: This repository is currently in public preview and is intended for testing and feedback purposes. As this is an early release, it is not yet production-ready, and breaking changes can be introduced at any time. ![SAP Testing Automation Framework](./docs/images/sap-testing-automation-framework.png) diff --git a/WORKSPACES/SYSTEM/DEV-WEEU-SAP01-X00/sap-parameters.yaml b/WORKSPACES/SYSTEM/DEV-WEEU-SAP01-X00/sap-parameters.yaml index d270c252..6cc4f965 100644 --- a/WORKSPACES/SYSTEM/DEV-WEEU-SAP01-X00/sap-parameters.yaml +++ b/WORKSPACES/SYSTEM/DEV-WEEU-SAP01-X00/sap-parameters.yaml @@ -9,6 +9,8 @@ sap_sid: X00 # if the SAP Central Services are deployed using high availability scs_high_availability: true scs_cluster_type: AFA +scs_instance_number: "00" +ers_instance_number: "01" ############################################################################# # Database tier # diff --git a/docs/HIGH_AVAILABILITY.md b/docs/HIGH_AVAILABILITY.md index 4e61665f..e07fe14f 100644 --- a/docs/HIGH_AVAILABILITY.md +++ b/docs/HIGH_AVAILABILITY.md @@ -262,6 +262,15 @@ NFS_provider: "ANF" # or "AFS" # If you're using system-assigned managed identity instead: # - Leave this blank or set to empty string "" user_assigned_identity_client_id: "000000-00000-00000-00000-000000" + +# If you've the SSHKEY or VMPASSWORD stored in the an Azure Key Vault as Secret: +# - Enter the Azure Key Vault Resource ID in key_vault_id parameter and the Secrete ID in secret_id paramter. +# - You can find the Resource ID of Key Vault in Azure Portal → Key Vaults → Your Key Vault → JSON view → Copy the Resource ID +# - You can find the Resource ID of Secret in Your Key Vault → Secrets → Select Secret → Current Version → Copy the Secrete Identifier +# If you're creating SSHKEY or VMPASSWORD file locally: +# - Remove the following two parameters +key_vault_id: /subscriptions//resourceGroups//providers/Microsoft.KeyVault/vaults/ +secret_id: https://.vault.azure.net/secrets// ``` 2.2.3. Credential Files @@ -272,7 +281,7 @@ The required credential files depend on the authentication method used to connec 1. Username and Password Authentication: If connecting using a username and password, create a password file by running the following command. It takes the username from hosts.yaml file. ```bash - echo "password" > WORKSPACE/SYSTEM//password + echo "password" > WORKSPACES/SYSTEM//password ``` ### 3. Test Execution @@ -283,13 +292,37 @@ To execute the script, run following command: ./scripts/sap_automation_qa.sh ``` -## Troubleshooting +### 4. Viewing Test Reports -Test results and logs can be found in: +After the test execution completes, a detailed report is generated. This report summarizes the PASS/FAIL status of each test case and includes detailed execution logs for every step of the automation run. -```bash -cd WORKSPACES/SYSTEM//quality_assurance/ -``` +**To locate and view your test report:** + +1. **Navigate to your SAP system’s workspace directory:** + + Replace `` with the name of your SAP system configuration (for example, `DEV-WEEU-SAP01-X00`): + + ```bash + cd WORKSPACES/SYSTEM//quality_assurance/ + ``` +2. **Find your report file:** + + The report file is named using the following format: + + ``` + HA_{SAP_TIER}_{DATABASE_TYPE}_{OS_DISTRO_NAME}_{INVOCATION_ID}.html + ``` + + - `SAP_TIER`: The SAP tier tested (e.g., DB, SCS) + - `DATABASE_TYPE`: The database type (e.g., HANA) + - `OS_DISTRO_NAME`: The operating system distribution (e.g., SLES15SP4) + - `INVOCATION_ID`: A unique identifier (Group invocation ID) for the test run which is logged at the end of test execution. Find example screenshot below: + + ![Test Execution Completion Screenshot](./images/execution_screenshot.png) + +3. **View the report** + + You can open the HTML report in any web browser to review the results and logs. ## Update the framework @@ -333,7 +366,7 @@ To ensure you have the latest features and fixes, it's important to keep your fo This process will update your fork with all the latest features, bug fixes, and improvements from the original SAP Testing Automation Framework repository. -> [!NOTE] +> **NOTE** > If you've made local changes to your fork, you might encounter merge conflicts during step 4. In that case, you'll need to resolve these conflicts before proceeding with the push in step 5. ## Additional Resources diff --git a/docs/images/execution_screenshot.png b/docs/images/execution_screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..d10c96696e1fd11ff8535ac809f69be0afd9a8f0 GIT binary patch literal 19555 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 literal 0 HcmV?d00001 From 60d5d1d730e9fac52ca6591df20bc19d30d5a15c Mon Sep 17 00:00:00 2001 From: devanshjain Date: Fri, 16 May 2025 18:17:37 +0000 Subject: [PATCH 2/4] Add workspace configuration files to .gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 9a6be6f7..34fe382f 100644 --- a/.gitignore +++ b/.gitignore @@ -403,6 +403,7 @@ FodyWeavers.xsd .vscode # System configuration files +WORKSPACES/* .ppk VMWPASSWORD .coverage.* From f1b73fb9e4a83ed182dd368b62d696f0844ecd24 Mon Sep 17 00:00:00 2001 From: devanshjain Date: Fri, 16 May 2025 18:21:18 +0000 Subject: [PATCH 3/4] Update HIGH_AVAILABILITY documentation to clarify test results reporting --- docs/HIGH_AVAILABILITY.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/HIGH_AVAILABILITY.md b/docs/HIGH_AVAILABILITY.md index e07fe14f..efcaa307 100644 --- a/docs/HIGH_AVAILABILITY.md +++ b/docs/HIGH_AVAILABILITY.md @@ -292,9 +292,9 @@ To execute the script, run following command: ./scripts/sap_automation_qa.sh ``` -### 4. Viewing Test Reports +### 4. Viewing Test Results -After the test execution completes, a detailed report is generated. This report summarizes the PASS/FAIL status of each test case and includes detailed execution logs for every step of the automation run. +After the test execution completes, a detailed HTML report is generated that summarizes the PASS/FAIL status of each test case and includes detailed execution logs for every step of the automation run. **To locate and view your test report:** From 000332c89dd0e48cf8d01bf5f736dcd7ec606667 Mon Sep 17 00:00:00 2001 From: devanshjain Date: Mon, 19 May 2025 18:33:32 +0000 Subject: [PATCH 4/4] Fix formatting and wording in HIGH_AVAILABILITY documentation for Azure Key Vault parameters --- docs/HIGH_AVAILABILITY.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/HIGH_AVAILABILITY.md b/docs/HIGH_AVAILABILITY.md index efcaa307..071036c4 100644 --- a/docs/HIGH_AVAILABILITY.md +++ b/docs/HIGH_AVAILABILITY.md @@ -263,10 +263,10 @@ NFS_provider: "ANF" # or "AFS" # - Leave this blank or set to empty string "" user_assigned_identity_client_id: "000000-00000-00000-00000-000000" -# If you've the SSHKEY or VMPASSWORD stored in the an Azure Key Vault as Secret: -# - Enter the Azure Key Vault Resource ID in key_vault_id parameter and the Secrete ID in secret_id paramter. -# - You can find the Resource ID of Key Vault in Azure Portal → Key Vaults → Your Key Vault → JSON view → Copy the Resource ID -# - You can find the Resource ID of Secret in Your Key Vault → Secrets → Select Secret → Current Version → Copy the Secrete Identifier +# If you have the SSH key or VM password stored in an Azure Key Vault as a secret: +# - Enter the Azure Key Vault Resource ID in the key_vault_id parameter and the Secret ID in the secret_id parameter. +# - You can find the Resource ID of the Key Vault in Azure Portal → Key Vaults → Your Key Vault → JSON view → Copy the Resource ID +# - You can find the Resource ID of the Secret in Your Key Vault → Secrets → Select Secret → Current Version → Copy the Secret Identifier # If you're creating SSHKEY or VMPASSWORD file locally: # - Remove the following two parameters key_vault_id: /subscriptions//resourceGroups//providers/Microsoft.KeyVault/vaults/