mirror of
				https://github.com/Telecominfraproject/wlan-testing.git
				synced 2025-10-31 02:48:11 +00:00 
			
		
		
		
	switch to JSON lab configuration (#405)
Signed-off-by: Max Brenner <xamrennerb@gmail.com>
This commit is contained in:
		
							
								
								
									
										8
									
								
								.github/actions/run-tests/action.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										8
									
								
								.github/actions/run-tests/action.yml
									
									
									
									
										vendored
									
									
								
							| @@ -46,17 +46,17 @@ runs: | ||||
|       id: job | ||||
|       run: echo "::set-output name=name::testing" | ||||
|  | ||||
|     - name: create configuration.py secret | ||||
|     - name: create configuration secret | ||||
|       shell: bash | ||||
|       run: | | ||||
|         if [ -n "${{ inputs.configuration_file }}" ]; then | ||||
|         kubectl create secret generic configuration --from-file=configuration=${{ inputs.configuration_file }} | ||||
|         else | ||||
|         cat << EOF > configuration.py | ||||
|         cat << EOF > lab_info.json | ||||
|         ${{ inputs.configuration || 'configuration missing' }} | ||||
|         EOF | ||||
|  | ||||
|         kubectl create secret generic configuration --from-file=configuration=./configuration.py | ||||
|         kubectl create secret generic configuration --from-file=configuration=./lab_info.json | ||||
|         fi | ||||
|  | ||||
|     - name: run tests | ||||
| @@ -103,7 +103,7 @@ runs: | ||||
|                     exit \$ret | ||||
|                 volumeMounts: | ||||
|                 - name: configuration | ||||
|                   mountPath: "/wlan-testing/tests/configuration.py" | ||||
|                   mountPath: "/wlan-testing/tests/lab_info.json" | ||||
|                   subPath: configuration | ||||
|                   readOnly: true | ||||
|               nodeSelector: | ||||
|   | ||||
							
								
								
									
										2
									
								
								.github/workflows/advanced.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/advanced.yml
									
									
									
									
										vendored
									
									
								
							| @@ -66,7 +66,7 @@ jobs: | ||||
|         namespace: ${{ steps.namespace.outputs.name }} | ||||
|         testbed: ${{ matrix.testbed }} | ||||
|         marker_expression: advance | ||||
|         configuration: "${{ secrets.LAB_CONFIGURATION }}" | ||||
|         configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}" | ||||
|         testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|         allure_results_artifact_name: allure-results-${{ matrix.testbed }} | ||||
|  | ||||
|   | ||||
							
								
								
									
										2
									
								
								.github/workflows/get_redirector_url.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/get_redirector_url.yml
									
									
									
									
										vendored
									
									
								
							| @@ -53,7 +53,7 @@ jobs: | ||||
|     - name: create configuration.py file | ||||
|       run: | | ||||
|         cat << EOF > configuration.py | ||||
|         ${{ secrets.LAB_CONFIGURATION }} | ||||
|         ${{ secrets.LAB_CONFIGURATION_JSON }} | ||||
|         EOF | ||||
|  | ||||
|     - name: Get redirector URL | ||||
|   | ||||
							
								
								
									
										16
									
								
								.github/workflows/interop.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										16
									
								
								.github/workflows/interop.yml
									
									
									
									
										vendored
									
									
								
							| @@ -71,7 +71,7 @@ jobs: | ||||
|           namespace: interop-${{ github.run_id }}-galaxy-s9 | ||||
|           testbed: interop-01 | ||||
|           marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and android and not wpa3_personal' }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}" | ||||
|           testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|           additional_args: "-o model-android='Galaxy S9' -o 'jobName=Github-Interop-galaxy-s9' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge" | ||||
|           allure_results_artifact_name: allure-results-galaxy-s9 | ||||
| @@ -98,7 +98,7 @@ jobs: | ||||
|           namespace: interop-${{ github.run_id }}-iphone-12 | ||||
|           testbed: interop-01 | ||||
|           marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and ios' }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}" | ||||
|           testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|           additional_args: "-o model-iOS='iPhone-12' -o 'jobName=Github-Interop-iphone-12' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge" | ||||
|           allure_results_artifact_name: allure-results-iphone-12 | ||||
| @@ -126,7 +126,7 @@ jobs: | ||||
|           namespace: interop-${{ github.run_id }}-galaxy-s10 | ||||
|           testbed: interop-02 | ||||
|           marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and android' }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}" | ||||
|           testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|           additional_args: "-o model-android='Galaxy S10.*' -o 'jobName=Github-Interop-galaxy-s10' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge" | ||||
|           allure_results_artifact_name: allure-results-galaxy-s10 | ||||
| @@ -153,7 +153,7 @@ jobs: | ||||
|           namespace: interop-${{ github.run_id }}-iphone-7 | ||||
|           testbed: interop-02 | ||||
|           marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and ios' }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}" | ||||
|           testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|           additional_args: "-o model-iOS='iPhone-7' -o 'jobName=Github-Interop-iphone-7' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge" | ||||
|           allure_results_artifact_name: allure-results-iphone-7 | ||||
| @@ -181,7 +181,7 @@ jobs: | ||||
|           namespace: interop-${{ github.run_id }}-galaxy-s20 | ||||
|           testbed: interop-03 | ||||
|           marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and android' }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}" | ||||
|           testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|           additional_args: "-o model-android='Galaxy S20' -o 'jobName=Github-Interop-galaxy-s20' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge" | ||||
|           allure_results_artifact_name: allure-results-galaxy-s20 | ||||
| @@ -208,7 +208,7 @@ jobs: | ||||
|           namespace: interop-${{ github.run_id }}-iphone-xr | ||||
|           testbed: interop-03 | ||||
|           marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and ios' }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}" | ||||
|           testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|           additional_args: "-o model-iOS='iPhone-XR' -o 'jobName=Github-Interop-iphone-xr' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge" | ||||
|           allure_results_artifact_name: allure-results-iphone-xr | ||||
| @@ -236,7 +236,7 @@ jobs: | ||||
|           namespace: interop-${{ github.run_id }}-pixel-4 | ||||
|           testbed: interop-04 | ||||
|           marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and android' }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}" | ||||
|           testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|           additional_args: "-o model-android='Pixel 4' -o 'jobName=Github-Interop-pixel-4' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge" | ||||
|           allure_results_artifact_name: allure-results-pixel-4 | ||||
| @@ -263,7 +263,7 @@ jobs: | ||||
|           namespace: interop-${{ github.run_id }}-iphone-11 | ||||
|           testbed: interop-04 | ||||
|           marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and ios' }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}" | ||||
|           testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|           additional_args: "-o model-iOS='iPhone-11' -o 'jobName=Github-Interop-iphone-11' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge" | ||||
|           allure_results_artifact_name: allure-results-iphone-11 | ||||
|   | ||||
							
								
								
									
										2
									
								
								.github/workflows/manual.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/manual.yml
									
									
									
									
										vendored
									
									
								
							| @@ -81,7 +81,7 @@ jobs: | ||||
|           namespace: "manual-${{ github.run_id }}-${{ github.event.inputs.testbed }}" | ||||
|           testbed: "${{ github.event.inputs.testbed }}" | ||||
|           marker_expression: "${{ github.event.inputs.marker_expression }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}" | ||||
|           testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|           additional_args: "-o firmware=${{ github.event.inputs.firmware }} ${{ github.event.inputs.additional_args }}" | ||||
|           allure_results_artifact_name: allure-results | ||||
|   | ||||
							
								
								
									
										12
									
								
								.github/workflows/ow_docker-compose.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										12
									
								
								.github/workflows/ow_docker-compose.yml
									
									
									
									
										vendored
									
									
								
							| @@ -358,13 +358,13 @@ jobs: | ||||
|         NAMESPACE="testing-${{ github.run_id }}" | ||||
|         echo "::set-output name=name::${NAMESPACE}" | ||||
|  | ||||
|     - name: create configuration.py secret | ||||
|     - name: create configuration secret | ||||
|       run: | | ||||
|         cat << EOF > configuration.py | ||||
|         ${{ secrets.LAB_CONFIGURATION }} | ||||
|         cat << EOF > lab_info.json | ||||
|         ${{ secrets.LAB_CONFIGURATION_JSON }} | ||||
|         EOF | ||||
|         sed -i -r "s/'url': ('|\").*('|\")/'url': 'https:\/\/${{ needs.deploy-controller.outputs.sec_url }}:16001'/" configuration.py | ||||
|         sed -i -r "s/'password': ('|\")openwifi('|\")/'password': '"${{ secrets.OWSEC_NEW_PASSWORD }}"'/" configuration.py | ||||
|         jq '.CONFIGURATION["${{ github.event.inputs.testbeds || 'basic-05' }}"].controller.url="https://${{ needs.deploy-controller.outputs.sec_url }}:16001"' lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json | ||||
|         jq '.CONFIGURATION["${{ github.event.inputs.testbeds || 'basic-05' }}"].controller.password="${{ secrets.OWSEC_NEW_PASSWORD }}"' lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json | ||||
|  | ||||
|     - name: run tests | ||||
|       uses: ./.github/actions/run-tests | ||||
| @@ -372,7 +372,7 @@ jobs: | ||||
|         namespace: ${{ steps.namespace.outputs.name }} | ||||
|         testbed: "${{ github.event.inputs.testbeds || 'basic-05' }}" | ||||
|         marker_expression: "${{ github.event.inputs.marker_expression || 'sdk_restapi' }}" | ||||
|         configuration_file: "./configuration.py" | ||||
|         configuration_file: "./lab_info.json" | ||||
|         testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|         allure_results_artifact_name: allure-results-docker-compose-${{ github.event.inputs.marker_expression || 'sdk_restapi' }} | ||||
|  | ||||
|   | ||||
							
								
								
									
										2
									
								
								.github/workflows/performance.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/performance.yml
									
									
									
									
										vendored
									
									
								
							| @@ -77,7 +77,7 @@ jobs: | ||||
|         namespace: ${{ steps.namespace.outputs.name }} | ||||
|         testbed: ${{ steps.testbed.outputs.name }} | ||||
|         marker_expression: "performance and ${{ matrix.marker }}" | ||||
|         configuration: "${{ secrets.LAB_CONFIGURATION }}" | ||||
|         configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}" | ||||
|         testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|         allure_results_artifact_name: allure-results-${{ matrix.marker }} | ||||
|  | ||||
|   | ||||
							
								
								
									
										140
									
								
								.github/workflows/quali-advanced.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										140
									
								
								.github/workflows/quali-advanced.yml
									
									
									
									
										vendored
									
									
								
							| @@ -133,148 +133,20 @@ jobs: | ||||
|  | ||||
|     - name: prepare configuration | ||||
|       run: | | ||||
|         cat << EOF > configuration.py | ||||
|         Customer = "" | ||||
|         server = "" | ||||
|         CONFIGURATION = { | ||||
|           "advanced": $(python .quali/get_configuration.py ${{ steps.reservation.outputs.identifier }}) | ||||
|         } | ||||
|         open_flow = {} | ||||
|         RADIUS_SERVER_DATA = { | ||||
|             "ip": "10.10.1.221", | ||||
|             "port": 1812, | ||||
|             "secret": "testing123", | ||||
|             "user": "user", | ||||
|             "password": "password", | ||||
|             "pk_password": "whatever" | ||||
|         } | ||||
|  | ||||
|         RADIUS_ACCOUNTING_DATA = { | ||||
|             "ip": "10.10.1.221", | ||||
|             "port": 1813, | ||||
|             "secret": "testing123", | ||||
|             "user": "user", | ||||
|             "password": "password", | ||||
|             "pk_password": "whatever" | ||||
|         } | ||||
|  | ||||
|         DYNAMIC_VLAN_RADIUS_SERVER_DATA = { | ||||
|           "ip": "3.20.165.131", | ||||
|           "port": 1812, | ||||
|           "secret": "testing123", | ||||
|           "user": "user", | ||||
|           "password": "password", | ||||
|           "pk_password": "whatever" | ||||
|         } | ||||
|  | ||||
|         DYNAMIC_VLAN_RADIUS_ACCOUNTING_DATA = { | ||||
|             "ip": "3.20.165.131", | ||||
|             "port": 1813, | ||||
|             "secret": "testing123", | ||||
|             "user": "user", | ||||
|             "password": "password", | ||||
|             "pk_password": "whatever" | ||||
|         } | ||||
|  | ||||
|         PASSPOINT_RADIUS_SERVER_DATA = { | ||||
|             "ip": "52.234.179.191", | ||||
|             "port": 11812, | ||||
|             "secret": "yeababy20!", | ||||
|             "user": "nolaradius", | ||||
|             "password": "nolastart", | ||||
|             "pk_password": "whatever" | ||||
|         } | ||||
|  | ||||
|         PASSPOINT_RADIUS_ACCOUNTING_SERVER_DATA = { | ||||
|             "ip": "52.234.179.191", | ||||
|             "port": 11813, | ||||
|             "secret": "yeababy20!" | ||||
|         } | ||||
|  | ||||
|         PASSPOINT_PROVIDER_INFO = { | ||||
|             "mcc": None, | ||||
|             "mnc": None, | ||||
|             "network": None, | ||||
|             "nai_realms": { | ||||
|                 "domain": "oss.ameriband.com", | ||||
|                 "encoding": 0, | ||||
|                 "eap_map": {"EAP-TTLS with username/password": ["Credential Type:username/password", | ||||
|                                                                 "Non-EAP Inner Authentication Type:MSCHAPV2"]} | ||||
|             }, | ||||
|             "osu_nai_standalone": "anonymous@ameriband.com", | ||||
|             "osu_nai_shared": "anonymous@ameriband.com", | ||||
|             "roaming_oi": [] | ||||
|         } | ||||
|         RATE_LIMITING_RADIUS_SERVER_DATA = { | ||||
|             "ip": "18.189.85.200", | ||||
|             "port": 1812, | ||||
|             "secret": "testing123", | ||||
|             "user": "user", | ||||
|             "password": "password", | ||||
|             "pk_password": "whatever" | ||||
|         } | ||||
|  | ||||
|         RATE_LIMITING_RADIUS_ACCOUNTING_DATA = { | ||||
|             "ip": "18.189.85.200", | ||||
|             "port": 1813, | ||||
|             "secret": "testing123", | ||||
|             "user": "user", | ||||
|             "password": "password", | ||||
|             "pk_password": "whatever" | ||||
|         } | ||||
|  | ||||
|         PASSPOINT_OPERATOR_INFO = { | ||||
|             "osen": "Disabled", | ||||
|             "domain_name_list": ["telecominfraproject.atlassian.net"], | ||||
|             "operator_names": [ | ||||
|                 {"locale": "eng", "name": "Default friendly passpoint_operator name"}, | ||||
|                 {"locale": "fra", "name": "Nom de l'opérateur convivial par défaut"} | ||||
|             ] | ||||
|         } | ||||
|  | ||||
|         PASSPOINT_VENUE_INFO = { | ||||
|             "venue_type": {"group": "Business", "type": "Police Station"}, | ||||
|             "venue_names": [ | ||||
|                 {"locale": "eng", "name": "Example passpoint_venue", "url": "http://www.example.com/info-eng"}, | ||||
|                 {"locale": "fra", "name": "Exemple de lieu", "url": "http://www.example.com/info-fra"} | ||||
|             ] | ||||
|         } | ||||
|  | ||||
|         PASSPOINT_PROFILE_INFO = { | ||||
|             "profile_download_url_ios": "https://onboard.almondlabs.net/ttls/AmeriBand-Profile.mobileconfig", | ||||
|             "profile_download_url_android": "https://onboard.almondlabs.net/ttls/androidconfig.cfg", | ||||
|             "profile_name_on_device": "AmeriBand", | ||||
|             "radius_configuration": { | ||||
|                 "user_defined_nas_id": "FB001AP001", | ||||
|                 "operator_id": "AmeribandTIP", | ||||
|                 "radius_acounting_service_interval": 60 | ||||
|             }, | ||||
|             "interworking_hs2dot0": "Enabled", | ||||
|             "hessid": None, | ||||
|             "access_network": { | ||||
|                 "Access Network Type": "Free Public Network", | ||||
|                 "Authentication Type": "Acceptance of Terms & Conditions", | ||||
|                 "Emergency Services Reachable": "Enabled", | ||||
|                 "Unauthenticated Emergency Service": "Disabled", | ||||
|             }, | ||||
|             "ip_connectivity": { | ||||
|                 "Internet Connectivity": "Enabled", | ||||
|                 "IP Address Type": "Public IPv4 Address Available", | ||||
|                 "Connection Capability": [{"status": "open", "protocol": "TCP", "port": 8888}], | ||||
|                 "ANQP Domain ID": 1234, | ||||
|                 "GAS Address 3 Behaviour": "P2P Spec Workaround From Request", | ||||
|                 "Disable DGAF": False | ||||
|             } | ||||
|         } | ||||
|         cat << EOF > lab_info.json | ||||
|         ${{ secrets.LAB_CONFIGURATION_JSON }} | ||||
|         EOF | ||||
|  | ||||
|         DYN_CONFIG="$(python .quali/get_configuration.py --json ${{ steps.reservation.outputs.identifier }})" | ||||
|         jq ".CONFIGURATION.basic=$DYN_CONFIG" lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json | ||||
|  | ||||
|     - name: run tests | ||||
|       uses: ./.github/actions/run-tests | ||||
|       with: | ||||
|         namespace: ${{ steps.namespace.outputs.name }} | ||||
|         testbed: advanced | ||||
|         marker_expression: "${{ needs.vars.outputs.marker_expression }}" | ||||
|         configuration_file: "./configuration.py" | ||||
|         configuration_file: "./lab_info.json" | ||||
|         testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|         additional_args: '-o firmware="${{ needs.vars.outputs.ap_version }}"' | ||||
|         allure_results_artifact_name: allure-results-${{ matrix.ap_model }} | ||||
|   | ||||
							
								
								
									
										107
									
								
								.github/workflows/quali-basic-manual.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										107
									
								
								.github/workflows/quali-basic-manual.yml
									
									
									
									
										vendored
									
									
								
							| @@ -124,115 +124,20 @@ jobs: | ||||
|         CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }} | ||||
|         CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }} | ||||
|       run: | | ||||
|         cat << EOF > configuration.py | ||||
|         Customer = "" | ||||
|         server = "" | ||||
|         CONFIGURATION = { | ||||
|           "basic": $(python .quali/get_configuration.py ${{ steps.reservation.outputs.identifier }}) | ||||
|         } | ||||
|          | ||||
|         open_flow = {} | ||||
|  | ||||
|         RADIUS_SERVER_DATA = { | ||||
|             "ip": "10.10.1.221", | ||||
|             "port": 1812, | ||||
|             "secret": "testing123", | ||||
|             "user": "user", | ||||
|             "password": "password", | ||||
|             "pk_password": "whatever" | ||||
|         } | ||||
|  | ||||
|         RADIUS_ACCOUNTING_DATA = { | ||||
|             "ip": "10.10.1.221", | ||||
|             "port": 1813, | ||||
|             "secret": "testing123", | ||||
|             "user": "user", | ||||
|             "password": "password", | ||||
|             "pk_password": "whatever" | ||||
|         } | ||||
|  | ||||
|         PASSPOINT_RADIUS_SERVER_DATA = { | ||||
|             "ip": "52.234.179.191", | ||||
|             "port": 11812, | ||||
|             "secret": "yeababy20!", | ||||
|             "user": "nolaradius", | ||||
|             "password": "nolastart", | ||||
|             "pk_password": "whatever" | ||||
|         } | ||||
|  | ||||
|         PASSPOINT_RADIUS_ACCOUNTING_SERVER_DATA = { | ||||
|             "ip": "52.234.179.191", | ||||
|             "port": 11813, | ||||
|             "secret": "yeababy20!" | ||||
|         } | ||||
|  | ||||
|         PASSPOINT_PROVIDER_INFO = { | ||||
|             "mcc": None, | ||||
|             "mnc": None, | ||||
|             "network": None, | ||||
|             "nai_realms": { | ||||
|                 "domain": "oss.ameriband.com", | ||||
|                 "encoding": 0, | ||||
|                 "eap_map": {"EAP-TTLS with username/password": ["Credential Type:username/password", | ||||
|                                                                 "Non-EAP Inner Authentication Type:MSCHAPV2"]} | ||||
|             }, | ||||
|             "osu_nai_standalone": "anonymous@ameriband.com", | ||||
|             "osu_nai_shared": "anonymous@ameriband.com", | ||||
|             "roaming_oi": [] | ||||
|         } | ||||
|  | ||||
|         PASSPOINT_OPERATOR_INFO = { | ||||
|             "osen": "Disabled", | ||||
|             "domain_name_list": ["telecominfraproject.atlassian.net"], | ||||
|             "operator_names": [ | ||||
|                 {"locale": "eng", "name": "Default friendly passpoint_operator name"}, | ||||
|                 {"locale": "fra", "name": "Nom de l'opérateur convivial par défaut"} | ||||
|             ] | ||||
|         } | ||||
|  | ||||
|         PASSPOINT_VENUE_INFO = { | ||||
|             "venue_type": {"group": "Business", "type": "Police Station"}, | ||||
|             "venue_names": [ | ||||
|                 {"locale": "eng", "name": "Example passpoint_venue", "url": "http://www.example.com/info-eng"}, | ||||
|                 {"locale": "fra", "name": "Exemple de lieu", "url": "http://www.example.com/info-fra"} | ||||
|             ] | ||||
|         } | ||||
|  | ||||
|         PASSPOINT_PROFILE_INFO = { | ||||
|             "profile_download_url_ios": "https://onboard.almondlabs.net/ttls/AmeriBand-Profile.mobileconfig", | ||||
|             "profile_download_url_android": "https://onboard.almondlabs.net/ttls/androidconfig.cfg", | ||||
|             "profile_name_on_device": "AmeriBand", | ||||
|             "radius_configuration": { | ||||
|                 "user_defined_nas_id": "FB001AP001", | ||||
|                 "operator_id": "AmeribandTIP", | ||||
|                 "radius_acounting_service_interval": 60 | ||||
|             }, | ||||
|             "interworking_hs2dot0": "Enabled", | ||||
|             "hessid": None, | ||||
|             "access_network": { | ||||
|                 "Access Network Type": "Free Public Network", | ||||
|                 "Authentication Type": "Acceptance of Terms & Conditions", | ||||
|                 "Emergency Services Reachable": "Enabled", | ||||
|                 "Unauthenticated Emergency Service": "Disabled", | ||||
|             }, | ||||
|             "ip_connectivity": { | ||||
|                 "Internet Connectivity": "Enabled", | ||||
|                 "IP Address Type": "Public IPv4 Address Available", | ||||
|                 "Connection Capability": [{"status": "open", "protocol": "TCP", "port": 8888}], | ||||
|                 "ANQP Domain ID": 1234, | ||||
|                 "GAS Address 3 Behaviour": "P2P Spec Workaround From Request", | ||||
|                 "Disable DGAF": False | ||||
|             } | ||||
|         } | ||||
|         cat << EOF > lab_info.json | ||||
|         ${{ secrets.LAB_CONFIGURATION_JSON }} | ||||
|         EOF | ||||
|  | ||||
|         DYN_CONFIG="$(python .quali/get_configuration.py --json ${{ steps.reservation.outputs.identifier }})" | ||||
|         jq ".CONFIGURATION.basic=$DYN_CONFIG" lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json | ||||
|  | ||||
|     - name: run tests | ||||
|       uses: ./.github/actions/run-tests | ||||
|       with: | ||||
|         namespace: ${{ steps.namespace.outputs.name }} | ||||
|         testbed: basic | ||||
|         marker_expression: ${{ github.event.inputs.marker_expression }} | ||||
|         configuration_file: "./configuration.py" | ||||
|         configuration_file: "./lab_info.json" | ||||
|         testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|         additional_args: '-o firmware="${{ github.event.inputs.firmware }}"' | ||||
|         allure_results_artifact_name: allure-results | ||||
|   | ||||
							
								
								
									
										144
									
								
								.github/workflows/quali.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										144
									
								
								.github/workflows/quali.yml
									
									
									
									
										vendored
									
									
								
							| @@ -138,147 +138,17 @@ jobs: | ||||
|  | ||||
|       - name: prepare configuration | ||||
|         run: | | ||||
|           cat << EOF > configuration.py | ||||
|           Customer = '' | ||||
|           server = '' | ||||
|           CONFIGURATION = { | ||||
|             'basic': $(python .quali/get_configuration.py ${{ steps.reservation.outputs.identifier }}) | ||||
|           } | ||||
|  | ||||
|           open_flow = {} | ||||
|  | ||||
|           RADIUS_SERVER_DATA = { | ||||
|               'ip': '10.10.1.221', | ||||
|               'port': 1812, | ||||
|               'secret': 'testing123', | ||||
|               'user': 'user', | ||||
|               'password': 'password', | ||||
|               'pk_password': 'whatever' | ||||
|           } | ||||
|  | ||||
|           RADIUS_ACCOUNTING_DATA = { | ||||
|               'ip': '10.10.1.221', | ||||
|               'port': 1813, | ||||
|               'secret': 'testing123', | ||||
|               'user': 'user', | ||||
|               'password': 'password', | ||||
|               'pk_password': 'whatever' | ||||
|           } | ||||
|  | ||||
|           DYNAMIC_VLAN_RADIUS_SERVER_DATA = { | ||||
|             'ip': '3.20.165.131', | ||||
|             'port': 1812, | ||||
|             'secret': 'testing123', | ||||
|             'user': 'user', | ||||
|             'password': 'password', | ||||
|             'pk_password': 'whatever' | ||||
|           } | ||||
|  | ||||
|           DYNAMIC_VLAN_RADIUS_ACCOUNTING_DATA = { | ||||
|               'ip': '3.20.165.131', | ||||
|               'port': 1813, | ||||
|               'secret': 'testing123', | ||||
|               'user': 'user', | ||||
|               'password': 'password', | ||||
|               'pk_password': 'whatever' | ||||
|           } | ||||
|  | ||||
|           PASSPOINT_RADIUS_SERVER_DATA = { | ||||
|               'ip': '52.234.179.191', | ||||
|               'port': 11812, | ||||
|               'secret': 'yeababy20!', | ||||
|               'user': 'nolaradius', | ||||
|               'password': 'nolastart', | ||||
|               'pk_password': 'whatever' | ||||
|           } | ||||
|  | ||||
|           PASSPOINT_RADIUS_ACCOUNTING_SERVER_DATA = { | ||||
|               'ip': '52.234.179.191', | ||||
|               'port': 11813, | ||||
|               'secret': 'yeababy20!' | ||||
|           } | ||||
|  | ||||
|           PASSPOINT_PROVIDER_INFO = { | ||||
|               'mcc': None, | ||||
|               'mnc': None, | ||||
|               'network': None, | ||||
|               'nai_realms': { | ||||
|                   'domain': 'oss.ameriband.com', | ||||
|                   'encoding': 0, | ||||
|                   'eap_map': {'EAP-TTLS with username/password': ['Credential Type:username/password', | ||||
|                                                                   'Non-EAP Inner Authentication Type:MSCHAPV2']} | ||||
|               }, | ||||
|               'osu_nai_standalone': 'anonymous@ameriband.com', | ||||
|               'osu_nai_shared': 'anonymous@ameriband.com', | ||||
|               'roaming_oi': [] | ||||
|           } | ||||
|           RATE_LIMITING_RADIUS_SERVER_DATA = { | ||||
|               'ip': '18.189.85.200', | ||||
|               'port': 1812, | ||||
|               'secret': 'testing123', | ||||
|               'user': 'user', | ||||
|               'password': 'password', | ||||
|               'pk_password': 'whatever' | ||||
|           } | ||||
|  | ||||
|           RATE_LIMITING_RADIUS_ACCOUNTING_DATA = { | ||||
|               'ip': '18.189.85.200', | ||||
|               'port': 1813, | ||||
|               'secret': 'testing123', | ||||
|               'user': 'user', | ||||
|               'password': 'password', | ||||
|               'pk_password': 'whatever' | ||||
|           } | ||||
|  | ||||
|           PASSPOINT_OPERATOR_INFO = { | ||||
|               'osen': 'Disabled', | ||||
|               'domain_name_list': ['telecominfraproject.atlassian.net'], | ||||
|               'operator_names': [ | ||||
|                   {'locale': 'eng', 'name': 'Default friendly passpoint_operator name'}, | ||||
|                   {'locale': 'fra', 'name': 'Nom de l\'opérateur convivial par défaut'} | ||||
|               ] | ||||
|           } | ||||
|  | ||||
|           PASSPOINT_VENUE_INFO = { | ||||
|               'venue_type': {'group': 'Business', 'type': 'Police Station'}, | ||||
|               'venue_names': [ | ||||
|                   {'locale': 'eng', 'name': 'Example passpoint_venue', 'url': 'http://www.example.com/info-eng'}, | ||||
|                   {'locale': 'fra', 'name': 'Exemple de lieu', 'url': 'http://www.example.com/info-fra'} | ||||
|               ] | ||||
|           } | ||||
|  | ||||
|           PASSPOINT_PROFILE_INFO = { | ||||
|               'profile_download_url_ios': 'https://onboard.almondlabs.net/ttls/AmeriBand-Profile.mobileconfig', | ||||
|               'profile_download_url_android': 'https://onboard.almondlabs.net/ttls/androidconfig.cfg', | ||||
|               'profile_name_on_device': 'AmeriBand', | ||||
|               'radius_configuration': { | ||||
|                   'user_defined_nas_id': 'FB001AP001', | ||||
|                   'operator_id': 'AmeribandTIP', | ||||
|                   'radius_acounting_service_interval': 60 | ||||
|               }, | ||||
|               'interworking_hs2dot0': 'Enabled', | ||||
|               'hessid': None, | ||||
|               'access_network': { | ||||
|                   'Access Network Type': 'Free Public Network', | ||||
|                   'Authentication Type': 'Acceptance of Terms & Conditions', | ||||
|                   'Emergency Services Reachable': 'Enabled', | ||||
|                   'Unauthenticated Emergency Service': 'Disabled', | ||||
|               }, | ||||
|               'ip_connectivity': { | ||||
|                   'Internet Connectivity': 'Enabled', | ||||
|                   'IP Address Type': 'Public IPv4 Address Available', | ||||
|                   'Connection Capability': [{'status': 'open', 'protocol': 'TCP', 'port': 8888}], | ||||
|                   'ANQP Domain ID': 1234, | ||||
|                   'GAS Address 3 Behaviour': 'P2P Spec Workaround From Request', | ||||
|                   'Disable DGAF': False | ||||
|               } | ||||
|           } | ||||
|           cat << EOF > lab_info.json | ||||
|           ${{ secrets.LAB_CONFIGURATION_JSON }} | ||||
|           EOF | ||||
|  | ||||
|           DYN_CONFIG="$(python .quali/get_configuration.py --json ${{ steps.reservation.outputs.identifier }})" | ||||
|           jq ".CONFIGURATION.basic=$DYN_CONFIG" lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json | ||||
|  | ||||
|           # overwrite configuration value from Quali | ||||
|           if [ ${{ needs.vars.outputs.existing_controller }} != '' ] | ||||
|           then | ||||
|             sed -i "s/https:\/\/sec-.*\.cicd\.lab\.wlan\.tip\.build/https:\/\/sec-${{ needs.vars.outputs.existing_controller }}.cicd.lab.wlan.tip.build/g" configuration.py | ||||
|             jq '.CONFIGURATION.basic.controller.url="https://sec-${{ needs.vars.outputs.existing_controller }}.cicd.lab.wlan.tip.build:16001"' lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json | ||||
|           fi | ||||
|  | ||||
|       - name: run tests | ||||
| @@ -287,7 +157,7 @@ jobs: | ||||
|           namespace: ${{ steps.namespace.outputs.name }} | ||||
|           testbed: basic | ||||
|           marker_expression: "${{ needs.vars.outputs.marker_expression }}" | ||||
|           configuration_file: "./configuration.py" | ||||
|           configuration_file: "./lab_info.json" | ||||
|           testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|           additional_args: '-o firmware="${{ needs.vars.outputs.ap_version }}"' | ||||
|           allure_results_artifact_name: allure-results-${{ matrix.ap_model }} | ||||
|   | ||||
							
								
								
									
										10
									
								
								.github/workflows/regression.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/workflows/regression.yml
									
									
									
									
										vendored
									
									
								
							| @@ -88,7 +88,7 @@ jobs: | ||||
|           namespace: regression-${{ github.run_id }}-${{ matrix.testbed }}-dfs | ||||
|           testbed: "${{ matrix.testbed }}" | ||||
|           marker_expression: "regression and dfs" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}" | ||||
|           testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|           allure_results_artifact_name: allure-results-${{ matrix.testbed }}-dfs | ||||
|  | ||||
| @@ -99,7 +99,7 @@ jobs: | ||||
|           namespace: regression-${{ github.run_id }}-${{ matrix.testbed }}-multipsk | ||||
|           testbed: "${{ matrix.testbed }}" | ||||
|           marker_expression: "regression and multipsk" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}" | ||||
|           testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|           allure_results_artifact_name: allure-results-${{ matrix.testbed }}-multipsk | ||||
|  | ||||
| @@ -110,7 +110,7 @@ jobs: | ||||
|           namespace: regression-${{ github.run_id }}-${{ matrix.testbed }}-rate_limiting | ||||
|           testbed: "${{ matrix.testbed }}" | ||||
|           marker_expression: "regression and rate_limiting" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}" | ||||
|           testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|           allure_results_artifact_name: allure-results-${{ matrix.testbed }}-rate_limiting | ||||
|  | ||||
| @@ -121,7 +121,7 @@ jobs: | ||||
|           namespace: regression-${{ github.run_id }}-${{ matrix.testbed }}-rate_limiting_with_radius | ||||
|           testbed: "${{ matrix.testbed }}" | ||||
|           marker_expression: "regression and rate_limiting_with_radius" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}" | ||||
|           testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|           allure_results_artifact_name: allure-results-${{ matrix.testbed }}-rate_limiting_with_radius | ||||
|  | ||||
| @@ -132,7 +132,7 @@ jobs: | ||||
|           namespace: regression-${{ github.run_id }}-${{ matrix.testbed }}-dynamic_vlan | ||||
|           testbed: "${{ matrix.testbed }}" | ||||
|           marker_expression: "regression and dynamic_vlan" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION }}" | ||||
|           configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}" | ||||
|           testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }} | ||||
|           allure_results_artifact_name: allure-results-${{ matrix.testbed }}-dynamic_vlan | ||||
|  | ||||
|   | ||||
| @@ -1,3 +1,4 @@ | ||||
| import argparse | ||||
| import json | ||||
| import sys | ||||
|  | ||||
| @@ -18,8 +19,13 @@ def get_attribute_value(cloudshell_session, attribute): | ||||
|  | ||||
|  | ||||
| def main(): | ||||
|     argparser = argparse.ArgumentParser() | ||||
|     argparser.add_argument('--json', default=False, help="render configuration as JSON instead of Python dict", action='store_true') | ||||
|     argparser.add_argument('reservation_id') | ||||
|     args = argparser.parse_args() | ||||
|  | ||||
|     session = get_session() | ||||
|     res_id = sys.argv[1] | ||||
|     res_id = args.reservation_id | ||||
|  | ||||
|     reservation_details = session.GetReservationDetails(res_id).ReservationDescription | ||||
|     resources_in_reservation = reservation_details.Resources | ||||
| @@ -83,7 +89,10 @@ def main(): | ||||
|         else: | ||||
|             continue | ||||
|  | ||||
|     print(repr(config)) | ||||
|     if args.json: | ||||
|         print(json.dumps(config)) | ||||
|     else: | ||||
|         print(repr(config)) | ||||
|  | ||||
|  | ||||
| if __name__ == '__main__': | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Max
					Max