Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
158 commits
Select commit Hold shift + click to select a range
cd8bc9a
Bump requests from 2.32.4 to 2.32.5 (#105)
dependabot[bot] Aug 19, 2025
d76cf8e
Bump requests from 2.32.4 to 2.32.5 (#106)
dependabot[bot] Sep 3, 2025
e842c7b
Add SAP Configuration Checks to STAF
devanshjainms Sep 25, 2025
90130b3
Add configuration test type mappings to input-api.yaml
devanshjainms Sep 25, 2025
a964b05
Refactor collector and enums modules to relocate ApplicabilityRule de…
devanshjainms Sep 25, 2025
ab5b279
Add ApplicabilityRule dataclass to evaluate context-based checks
devanshjainms Sep 25, 2025
cca06c2
Add YAML parsing method to SapAutomationQA class
devanshjainms Sep 25, 2025
e507915
Refactor severity attribute in ConfigurationCheckModule to align with…
devanshjainms Sep 25, 2025
df81445
Fix YAML indentation for check ID in package.yml and import yaml modu…
devanshjainms Sep 25, 2025
df312f0
Add test_case_results and system_info parameters to HTMLReportRendere…
devanshjainms Sep 25, 2025
c48064d
Enhance ConfigurationCheckModule and HTMLReportRenderer with parallel…
devanshjainms Sep 25, 2025
20eb236
Enhance execute_checks_parallel method to include detailed execution …
devanshjainms Sep 25, 2025
94b8d3d
Increase max_workers to 20 for improved parallel execution in configu…
devanshjainms Sep 25, 2025
c4eee21
Refactor execute_checks_parallel method to improve code readability a…
devanshjainms Sep 25, 2025
4d88fdc
Implement command sanitization to prevent injection attacks and enhan…
devanshjainms Sep 29, 2025
70f7f03
Refactor command and Azure-based configuration checks to use blocks f…
devanshjainms Sep 29, 2025
c8a40cb
Refactor Azure command arguments for improved readability and consist…
devanshjainms Sep 29, 2025
258d3ce
Enhance Azure CLI commands with error handling and availability checks
devanshjainms Sep 29, 2025
f992ece
Remove unnecessary escape characters from curl command in virtual_mac…
devanshjainms Sep 29, 2025
5fec749
Refactor DANGEROUS_COMMANDS regex to improve command sanitization
devanshjainms Sep 29, 2025
641d853
Remove unnecessary dangerous command patterns from DANGEROUS_COMMANDS…
devanshjainms Sep 29, 2025
af5265f
Improve error handling in command execution and sanitization methods
devanshjainms Sep 29, 2025
de41975
Update error count references in configuration checks to use 'FAILED'…
devanshjainms Sep 29, 2025
afead41
Add debug messages and role-specific checks for configuration validat…
devanshjainms Sep 29, 2025
38c6b72
Fix file path for check file lookup and remove unnecessary comment in…
devanshjainms Sep 29, 2025
5f29d02
Refactor load balancer check command and update file lookup path in c…
devanshjainms Sep 29, 2025
58dbc57
Rename error status classes to 'failed' for consistency in report tem…
devanshjainms Sep 29, 2025
b150d8c
Enhance configuration checks report with improved styling, animations…
devanshjainms Sep 29, 2025
8a750be
Add interactive filtering for configuration check statuses in report
devanshjainms Sep 29, 2025
885faa2
Refactor enumeration definitions in load_balancers.yml and virtual_ma…
devanshjainms Sep 29, 2025
cd803e9
Fix string comparison operator in PPG check and improve IP count vali…
devanshjainms Sep 29, 2025
978eb8d
Improve Azure CLI command handling for availability set and proximity…
devanshjainms Sep 29, 2025
09b3360
Update validation logic in configuration checks for HANA to use 'vali…
devanshjainms Sep 30, 2025
213e3d4
Refactor HANA checks to update collector commands and change validato…
devanshjainms Sep 30, 2025
7360623
Enhance expected value handling in CheckResult to support range and l…
devanshjainms Sep 30, 2025
451ca6c
Refactor validation argument names in HANA checks and update HTML rep…
devanshjainms Sep 30, 2025
8503c76
Fix syntax error in expected output display in configuration checks r…
devanshjainms Sep 30, 2025
c61039a
Add default value for expected output in configuration checks report
devanshjainms Sep 30, 2025
816c049
Refactor configuration checks to update role names and enhance HTML r…
devanshjainms Sep 30, 2025
63d9ffc
Uncomment package and common SAP checks in configuration checks
devanshjainms Sep 30, 2025
fd94ffc
Refactor role condition in HANA checks from 'DBA' to 'DB'
devanshjainms Sep 30, 2025
577b918
Refactor role conditions in ASCS/SCS checks from 'SCSA' and 'ERSA' to…
devanshjainms Sep 30, 2025
ce61922
Refactor role conditions in database and application server checks fr…
devanshjainms Sep 30, 2025
4f6eb1a
Enhance expected value handling in checks by improving range and list…
devanshjainms Sep 30, 2025
512c615
Refactor role condition in HANA checks from 'DBA' to 'DB'
devanshjainms Sep 30, 2025
cf3e895
Update expected_output format in HANA checks and adjust report displa…
devanshjainms Sep 30, 2025
bf56464
Refactor ConfigurationCheckModule by removing unused collector and va…
devanshjainms Sep 30, 2025
a23ee58
Remove unused import of 'ast' from configuration_check_module.py
devanshjainms Sep 30, 2025
6ff8a60
Update expected output display in configuration checks report
devanshjainms Sep 30, 2025
f234a66
Add Azure resource collector and enhance configuration checks for HAN…
devanshjainms Oct 1, 2025
93e15ae
Refactor Azure data collection by replacing AzureDataCollector with A…
devanshjainms Oct 3, 2025
b250664
Update Azure disks data collection URL and fix JSON parsing for disk …
devanshjainms Oct 3, 2025
b9c35f8
Fix disk names extraction by removing unnecessary JSON parsing step
devanshjainms Oct 3, 2025
e7edad7
Enhance filesystem data collection in FileSystemCollector to return a…
devanshjainms Oct 3, 2025
e32a43b
Add traceback logging to error handling in SapAutomationQA
devanshjainms Oct 6, 2025
ae4fff0
Fix filesystem data collection error handling and improve context upd…
devanshjainms Oct 6, 2025
f52086a
Refactor disk data collection tasks into separate file and include in…
devanshjainms Oct 6, 2025
22cca9f
Implement disk property parsing in AzureDataParser and enhance error …
devanshjainms Oct 6, 2025
4ebf0e4
Add debug tasks for Azure disks and AFS storage data collection; upda…
devanshjainms Oct 6, 2025
0be3ee7
Add no_log attribute to sensitive tasks in main.yml for improved secu…
devanshjainms Oct 6, 2025
094ee2a
Add check_type context to system context preparation for HANA checks
devanshjainms Oct 6, 2025
33b05ec
Enhance logging in FileSystemCollector and update command in HANA che…
devanshjainms Oct 6, 2025
327f3df
Refactor LVM volume collection in FileSystemCollector to handle multi…
devanshjainms Oct 6, 2025
842f202
Fix FileSystemCollector to only iterate over AFS storage data for NFS…
devanshjainms Oct 6, 2025
9a910d6
Refactor FileSystemCollector to improve filesystem data parsing and e…
devanshjainms Oct 6, 2025
681877c
Add debug task to display prepared system context information
devanshjainms Oct 6, 2025
d592fcf
Refactor FileSystemCollector to enhance filesystem data collection an…
devanshjainms Oct 6, 2025
7516822
Fix FileSystemCollector to handle azure_disks_metadata as a list inst…
devanshjainms Oct 6, 2025
0ca8c83
Refactor AFS storage data collection to streamline shell command exec…
devanshjainms Oct 6, 2025
8ef81f2
Refactor FileSystemCollector to improve handling of AFS and ANF stora…
devanshjainms Oct 7, 2025
3ed52be
Enhance FileSystemCollector to improve handling of azure_disks_metada…
devanshjainms Oct 7, 2025
c218ab0
Enhance AzureDataParser and FileSystemCollector to improve metadata p…
devanshjainms Oct 7, 2025
f040468
Refactor AzureDataParser logging to provide context information inste…
devanshjainms Oct 7, 2025
9301a62
Update storage_type in HANA checks to use all available storage options
devanshjainms Oct 7, 2025
8fa112c
Enhance FileSystemCollector and related tasks to support LVM fullrepo…
devanshjainms Oct 7, 2025
b702b47
Refactor mount and df info handling to use default values for improve…
devanshjainms Oct 7, 2025
6e38aad
Enhance AzureDataParser to support flexible disk metadata formats and…
devanshjainms Oct 7, 2025
52d0eba
Enhance AzureDataParser and related tasks to improve disk metadata ag…
devanshjainms Oct 7, 2025
5a8f043
Refactor azure disk data collection to simplify query structure and i…
devanshjainms Oct 7, 2025
b84576d
Add become directive to LVM fullreport task for elevated permissions
devanshjainms Oct 7, 2025
d003af5
Fix LVM volume group disk count retrieval and improve logical volume …
devanshjainms Oct 7, 2025
f3468f0
Enhance FileSystemCollector to support device-to-LUN mapping and impr…
devanshjainms Oct 7, 2025
a6809b0
Refactor device-to-LUN mapping parsing to simplify dictionary creatio…
devanshjainms Oct 7, 2025
0a9dfb4
added logs
devanshjainms Oct 8, 2025
be2bca3
Enhance FileSystemCollector to log VG names and handle reports withou…
devanshjainms Oct 8, 2025
daa59c3
Enhance AzureDataParser and FileSystemCollector to improve logging an…
devanshjainms Oct 8, 2025
b4c1e88
Enhance HANA checks for stripe size and disk performance; update desc…
devanshjainms Oct 8, 2025
192a861
Update HANA and package checks to refine expected values and adjust s…
devanshjainms Oct 8, 2025
d94d34a
Refactor validation logic to prioritize 'expected' over 'expected_out…
devanshjainms Oct 8, 2025
f7e7bc9
Enhance AzureDataParser to conditionally collect data using CommandCo…
devanshjainms Oct 8, 2025
bac283f
Add property validation to ConfigurationCheckModule and update load b…
devanshjainms Oct 8, 2025
0857790
Increase maximum command length limit from 1000 to 3000 characters fo…
devanshjainms Oct 8, 2025
331fd12
Remove run_once directive from DB role checks and update load balance…
devanshjainms Oct 8, 2025
3a5c489
Update property validation in ConfigurationCheckModule and modify com…
devanshjainms Oct 8, 2025
30f186a
Refactor property validation in ConfigurationCheckModule to support l…
devanshjainms Oct 8, 2025
eb57f45
Update load balancer configuration to correct property name from "pro…
devanshjainms Oct 8, 2025
b4e2ffd
Add filesystem checks for DB hosts and update HANA checks with descri…
devanshjainms Oct 8, 2025
a99fd47
Update condition for including disks task to trigger on filesystem ch…
devanshjainms Oct 9, 2025
fa2f601
Increase command timeout from 30 to 100 seconds and update error mess…
devanshjainms Oct 9, 2025
44d9210
Add filesystem check result collection for HANA and update corosync c…
devanshjainms Oct 9, 2025
e1bce46
Update HANA checks to include disks task and rename checks for clarity
devanshjainms Oct 9, 2025
d1d66d0
Add FileSystemCollector for filesystem data collection and remove leg…
devanshjainms Oct 9, 2025
e081d1b
Add gather_all_filesystem_info method to correlate filesystem metadat…
devanshjainms Oct 9, 2025
96951e4
Add formatted_filesystem_info to execution result for enhanced metadata
devanshjainms Oct 9, 2025
3798c17
Refactor AzureDataParser to enhance filesystem variable parsing and a…
devanshjainms Oct 9, 2025
3eda033
Enhance report structure in HANA checks by adding table support and i…
devanshjainms Oct 9, 2025
57280b4
Refactor gather_all_filesystem_info method to return a list instead o…
devanshjainms Oct 9, 2025
a3382c5
Change gather_all_filesystem_info method to return a list instead of …
devanshjainms Oct 9, 2025
5821f91
Refactor render_table macro to improve HTML table rendering and enhan…
devanshjainms Oct 9, 2025
d983c5b
Refactor FileSystemCollector and ConfigurationCheckModule to enhance …
devanshjainms Oct 9, 2025
c34c4a8
Add HA configuration validation tasks and enhance report structure fo…
devanshjainms Oct 11, 2025
26f2362
Enhance HTML report to include High Availability configurations and u…
devanshjainms Oct 11, 2025
d972f4d
Fix HA configuration data access to retrieve parameters correctly in …
devanshjainms Oct 11, 2025
38fd7a3
Implement High Availability configuration checks for DB and SCS roles…
devanshjainms Oct 11, 2025
30153ff
Enhance HA SCS Configuration Module to include instance number variab…
devanshjainms Oct 11, 2025
1f9337b
Add HA configuration result collection for DB, SCS, and ERS roles in …
devanshjainms Oct 11, 2025
1958bf1
Enhance configuration checks to include module-based checks and impro…
devanshjainms Oct 11, 2025
3cd3376
Add debug tasks for HA results collection and structure validation
devanshjainms Oct 11, 2025
e65a84f
Enhance HA results debugging to include non-skipped checks and improv…
devanshjainms Oct 11, 2025
1dbd5b1
Change severity level for HA cluster configuration checks from critic…
devanshjainms Oct 11, 2025
a4b4035
Refactor HA checks to use 'high_availability_agent' for cluster type …
devanshjainms Oct 11, 2025
ff1a839
Remove debug tasks for DB HA results and HA results structure to stre…
devanshjainms Oct 11, 2025
808f3ae
Enhance configuration checks report by adding status styling and impr…
devanshjainms Oct 11, 2025
3f38b8e
Refactor configuration checks report to separate regular and table ch…
devanshjainms Oct 11, 2025
5705652
Refactor table check rendering in configuration checks report for imp…
devanshjainms Oct 11, 2025
3cd1781
Refactor configuration checks report to consolidate regular and table…
devanshjainms Oct 11, 2025
ec17a21
Add Azure Load Balancer checks and refactor HA configuration tasks
devanshjainms Oct 13, 2025
47109f5
Add playbook name for ConfigurationChecks and delegate Azure Load Bal…
devanshjainms Oct 13, 2025
d215c34
Enhance error handling in Azure Load Balancer module and update HA co…
devanshjainms Oct 13, 2025
f8e1764
Enhance validation for HA Load Balancer configuration result to ensur…
devanshjainms Oct 13, 2025
2d74ace
Add check entry to report and handle undefined parameters in HA Load …
devanshjainms Oct 13, 2025
4285a98
Update task name to specify collector type in check file parsing
devanshjainms Oct 13, 2025
19a0e54
Enhance debug task to include verbosity and clarify check file loadin…
devanshjainms Oct 13, 2025
872ae85
Enhance debug task to include verbosity for better output clarity
devanshjainms Oct 13, 2025
9433139
Add collector types for command and azure in high availability config…
devanshjainms Oct 13, 2025
962e67f
Remove Load Balancer checks and related result collection from config…
devanshjainms Oct 13, 2025
d46b462
Refactor task names to include check type for improved clarity in con…
devanshjainms Oct 13, 2025
cafb78c
Add ha_loadbalancer_config to system context for high availability ch…
devanshjainms Oct 13, 2025
ea501e6
Update Load Balancer configuration checks for clarity and add debug o…
devanshjainms Oct 13, 2025
a7b39a6
Refactor error message formatting and remove unnecessary 'become' dir…
devanshjainms Oct 13, 2025
ef2493d
Refactor configuration check tasks for improved clarity and organization
devanshjainms Oct 13, 2025
ca4b567
Refactor variable names to uppercase for consistency and clarity in c…
devanshjainms Oct 13, 2025
ba68cae
Enhance FileSystemCollector to support ANF storage data and improve N…
devanshjainms Oct 13, 2025
087dad6
Update requirements and configuration checks for improved storage typ…
devanshjainms Oct 13, 2025
159671f
Update SUSE OS type references to "SLES" for consistency across confi…
devanshjainms Oct 13, 2025
65dd809
Remove redundant comments and unnecessary verbosity in debug task for…
devanshjainms Oct 13, 2025
2e1588a
Update SUSE OS type reference to "SLES_SAP" for consistency across co…
devanshjainms Oct 13, 2025
2bff162
Fix command syntax in HANA checks and update high availability agent …
devanshjainms Oct 13, 2025
35f1582
Add verbosity to debug tasks for improved output clarity
devanshjainms Oct 13, 2025
457a03d
Enhance logging for data parsing in FileSystemCollector to improve tr…
devanshjainms Oct 13, 2025
a64dcdc
Add JSON formatting to ANF storage data collection for improved outpu…
devanshjainms Oct 13, 2025
b196555
Add ANF volume information gathering to FileSystemCollector
devanshjainms Oct 13, 2025
33b955c
Add ANF volumes parsing and context integration in AzureDataParser an…
devanshjainms Oct 13, 2025
618506b
Add check for ANF volumes configuration in SAP HANA
devanshjainms Oct 13, 2025
f430196
Add logging for mounted ANF IP addresses and metadata volume count in…
devanshjainms Oct 13, 2025
d1a38bc
Add ANF properties parsing in AzureDataParser and update storage type…
devanshjainms Oct 13, 2025
5cbca78
Refactor ANF logging in FileSystemCollector to consolidate messages a…
devanshjainms Oct 13, 2025
9da1825
Merge branch 'development-oct-2025' into config-check-working
devanshjainms Oct 13, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/HIGH_AVAILABILITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ TEST_TYPE: "SAPFunctionalTests"
# The type of SAP functional test to be executed. Supported values are:
# - DatabaseHighAvailability
# - CentralServicesHighAvailability
sap_functional_test_type: "DatabaseHighAvailability" # or "CentralServicesHighAvailability"
SAP_FUNCTIONAL_TEST_TYPE: "DatabaseHighAvailability" # or "CentralServicesHighAvailability"

# The name of the SAP system configuration for which you want to execute the test cases.
# It would be the name of the folder under 'WORKSPACE/SYSTEM/' where it could find hosts.yaml, sap-parameters.yaml files of the SAP system configuration
Expand Down
1 change: 1 addition & 0 deletions requirements.in
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ ansible-runner
azure-identity
azure-kusto-data
azure-kusto-ingest
azure-mgmt-compute
azure-mgmt-network
azure-storage-blob
azure-storage-queue
Expand Down
85 changes: 56 additions & 29 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,33 +4,34 @@
#
# pip-compile requirements.in
#
ansible-compat==25.8.1
ansible-compat==25.8.2
# via ansible-lint
ansible-core==2.17.14
# via
# -r requirements.in
# ansible-compat
# ansible-lint
ansible-lint==25.8.2
ansible-lint==25.9.2
# via -r requirements.in
ansible-runner==2.4.1
# via -r requirements.in
astroid==3.3.11
astroid==4.0.1
# via pylint
attrs==25.3.0
attrs==25.4.0
# via
# jsonschema
# referencing
azure-common==1.1.28
# via azure-mgmt-network
azure-core==1.35.0
azure-core==1.35.1
# via
# azure-identity
# azure-kusto-data
# azure-mgmt-core
# azure-storage-blob
# azure-storage-queue
azure-identity==1.24.0
# msrest
azure-identity==1.25.1
# via
# -r requirements.in
# azure-kusto-data
Expand All @@ -40,8 +41,12 @@ azure-kusto-data==5.0.5
# azure-kusto-ingest
azure-kusto-ingest==5.0.5
# via -r requirements.in
azure-mgmt-compute==37.0.1
# via -r requirements.in
azure-mgmt-core==1.6.0
# via azure-mgmt-network
# via
# azure-mgmt-compute
# azure-mgmt-network
azure-mgmt-network==29.0.0
# via -r requirements.in
azure-storage-blob==12.23.0
Expand All @@ -52,43 +57,50 @@ azure-storage-queue==12.12.0
# via
# -r requirements.in
# azure-kusto-ingest
black==25.1.0
black==25.9.0
# via
# -r requirements.in
# ansible-lint
bracex==2.6
# via wcmatch
certifi==2025.8.3
# via requests
certifi==2025.10.5
# via
# msrest
# requests
cffi==2.0.0
# via cryptography
# via
# ansible-lint
# cryptography
charset-normalizer==3.4.3
# via requests
click==8.2.1
click==8.3.0
# via
# -r requirements.in
# black
coverage[toml]==7.10.6
coverage[toml]==7.10.7
# via
# -r requirements.in
# pytest-cov
cryptography==45.0.7
cryptography==46.0.2
# via
# ansible-core
# ansible-lint
# azure-identity
# azure-storage-blob
# azure-storage-queue
# msal
# pyjwt
dill==0.4.0
# via pylint
distro==1.9.0
# via ansible-lint
exceptiongroup==1.3.0
# via pytest
filelock==3.19.1
filelock==3.20.0
# via ansible-lint
idna==3.10
idna==3.11
# via requests
ijson==3.4.0
ijson==3.4.0.post0
# via azure-kusto-data
importlib-metadata==8.7.0
# via ansible-lint
Expand All @@ -99,7 +111,8 @@ isodate==0.7.2
# azure-mgmt-network
# azure-storage-blob
# azure-storage-queue
isort==6.0.1
# msrest
isort==7.0.0
# via pylint
jinja2==3.1.6
# via
Expand All @@ -117,25 +130,29 @@ lockfile==0.12.2
# via python-daemon
markdown-it-py==4.0.0
# via rich
markupsafe==3.0.2
markupsafe==3.0.3
# via jinja2
mccabe==0.7.0
# via pylint
mdurl==0.1.2
# via markdown-it-py
msal==1.33.0
msal==1.34.0
# via
# azure-identity
# azure-kusto-data
# msal-extensions
msal-extensions==1.3.1
# via azure-identity
msrest==0.7.1
# via azure-mgmt-compute
mypy-extensions==1.1.0
# via black
numpy==2.2.6
# via
# -r requirements.in
# pandas
oauthlib==3.3.1
# via requests-oauthlib
packaging==25.0
# via
# ansible-compat
Expand All @@ -153,7 +170,7 @@ pathspec==0.12.1
# yamllint
pexpect==4.9.0
# via ansible-runner
platformdirs==4.4.0
platformdirs==4.5.0
# via
# black
# pylint
Expand All @@ -173,7 +190,7 @@ pyjwt[crypto]==2.10.1
# via
# msal
# pyjwt
pylint==3.3.8
pylint==4.0.0
# via -r requirements.in
pytest==8.4.2
# via
Expand All @@ -182,25 +199,27 @@ pytest==8.4.2
# pytest-mock
pytest-cov==7.0.0
# via -r requirements.in
pytest-mock==3.15.0
pytest-mock==3.15.1
# via -r requirements.in
python-daemon==3.1.2
# via ansible-runner
python-dateutil==2.9.0.post0
# via
# azure-kusto-data
# pandas
pytokens==0.1.10
# via black
pytz==2025.2
# via pandas
pyyaml==6.0.2
pyyaml==6.0.3
# via
# -r requirements.in
# ansible-compat
# ansible-core
# ansible-lint
# ansible-runner
# yamllint
referencing==0.36.2
referencing==0.37.0
# via
# ansible-lint
# jsonschema
Expand All @@ -211,18 +230,24 @@ requests==2.32.5
# azure-core
# azure-kusto-data
# msal
# msrest
# requests-oauthlib
requests-oauthlib==2.0.0
# via msrest
resolvelib==1.0.1
# via ansible-core
rich==14.1.0
rich==14.2.0
# via -r requirements.in
rpds-py==0.27.1
# via
# jsonschema
# referencing
ruamel-yaml==0.18.15
# via ansible-lint
ruamel-yaml-clib==0.2.12
# via ruamel-yaml
ruamel-yaml-clib==0.2.14
# via
# ansible-lint
# ruamel-yaml
six==1.17.0
# via
# azure-core
Expand All @@ -233,7 +258,7 @@ subprocess-tee==0.4.2
# ansible-lint
tenacity==9.1.2
# via azure-kusto-ingest
tomli==2.2.1
tomli==2.3.0
# via
# black
# coverage
Expand All @@ -246,10 +271,12 @@ typing-extensions==4.15.0
# astroid
# azure-core
# azure-identity
# azure-mgmt-compute
# azure-mgmt-network
# azure-storage-blob
# azure-storage-queue
# black
# cryptography
# exceptiongroup
# referencing
tzdata==2025.2
Expand Down
24 changes: 20 additions & 4 deletions scripts/sap_automation_qa.sh
Original file line number Diff line number Diff line change
Expand Up @@ -92,12 +92,18 @@ Options:
-h, --help Show this help message

Examples:
# High Availability Tests
$0 --test_groups=HA_DB_HANA --test_cases=[ha-config,primary-node-crash]
$0 --test_groups=HA_SCS
$0 --test_groups=HA_DB_HANA --test_cases=[ha-config,primary-node-crash] -vv
$0 --test_groups=HA_DB_HANA --test_cases=[ha-config,primary-node-crash] --extra-vars='{"key":"value"}'
$0 --test_groups=HA_DB_HANA --test_cases=[ha-config] --offline

# Configuration Checks (requires SAP_FUNCTIONAL_TEST_TYPE: ConfigurationChecks in vars.yaml)
$0 --extra-vars='{"configuration_test_type":"all"}'
$0 --extra-vars='{"configuration_test_type":"high_availability"}'
$0 --extra-vars='{"configuration_test_type":"Database"}' -vv

Available Test Cases for groups:
$0 --test_groups=HA_DB_HANA
ha-config => High Availability configuration
Expand Down Expand Up @@ -126,6 +132,13 @@ Available Test Cases for groups:
manual-restart => Manual Restart
ha-failover-to-node => HA Failover to Secondary Node

Configuration Checks (set SAP_FUNCTIONAL_TEST_TYPE: ConfigurationChecks in vars.yaml):
configuration_test_type options (use with --extra-vars):
all => Run all configuration checks
Database => Database (HANA) configuration checks only
CentralServiceInstances => ASCS/ERS configuration checks only
ApplicationInstances => Application server configuration checks only

Configuration is read from vars.yaml file.
EOF
}
Expand All @@ -141,7 +154,7 @@ VARS_FILE="${cmd_dir}/../vars.yaml"
# :return: None. Exits with a non-zero status if validation fails.
validate_params() {
local missing_params=()
local params=("TEST_TYPE" "SYSTEM_CONFIG_NAME" "sap_functional_test_type" "AUTHENTICATION_TYPE")
local params=("TEST_TYPE" "SYSTEM_CONFIG_NAME" "SAP_FUNCTIONAL_TEST_TYPE" "AUTHENTICATION_TYPE")

# Check if vars.yaml exists
if [ ! -f "$VARS_FILE" ]; then
Expand Down Expand Up @@ -181,7 +194,7 @@ extract_error_message() {
echo "$extracted_message"
}

# Determine the playbook name based on the sap_functional_test_type.
# Determine the playbook name based on the SAP_FUNCTIONAL_TEST_TYPE.
# :param test_type: The type of SAP functional test.
# :param offline_mode: Whether to use offline mode (optional).
# :return: The name of the playbook.
Expand All @@ -204,8 +217,11 @@ get_playbook_name() {
echo "playbook_00_ha_scs_functional_tests"
fi
;;
"ConfigurationChecks")
echo "playbook_00_configuration_checks"
;;
*)
log "ERROR" "Unknown sap_functional_test_type: $test_type"
log "ERROR" "Unknown SAP_FUNCTIONAL_TEST_TYPE: $test_type"
exit 1
;;
esac
Expand Down Expand Up @@ -511,7 +527,7 @@ main() {
log "INFO" "Found $cib_files CIB file(s) for offline analysis"
fi

playbook_name=$(get_playbook_name "$sap_functional_test_type" "$OFFLINE_MODE")
playbook_name=$(get_playbook_name "$SAP_FUNCTIONAL_TEST_TYPE" "$OFFLINE_MODE")
log "INFO" "Using playbook: $playbook_name."

run_ansible_playbook "$playbook_name" "$SYSTEM_HOSTS" "$SYSTEM_PARAMS" "$AUTHENTICATION_TYPE" "$SYSTEM_CONFIG_FOLDER"
Expand Down
Loading
Loading