Wifi 7833 (#507)

* Added Perfecto details for data retreival

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added device option and a function to fetch device details from lab_info.json

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added all the Interop related details

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Changed all the things needed from pytest.ini to configuration

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Changed the security key for wpa2 5g ssid

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Removed Interop details from pytest.ini file

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added --device option in Additional arguments of Interop workflow

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added job number and name related to device specific

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* changed the report to device specific for job number and name

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Removed the job number and name argument

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Removed space

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Removed Job name and number from Perfecto Details

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Separate commands per line

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* Chg: switch to self hosted and add sleep step

* Add: AWS dependency

* Fix: awscli and deleted sleep step

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Dbg: add sleep to get config

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* Del: debug lines

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Added slight upload rate on udp download to work in NAT mode

Signed-off-by: shivam <shivam.thakur@candelatech.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* moving sanity to next

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Added tls in the name of SSID for tls test cases (#424)

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* [WIFI-6851] Add: postgresql as DB for OWLS tests (#423)

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* added regression and advance counts

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* added badges for advance and regression in readme file

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* added advance and regression text

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* added interop and lanforge side regression counts

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Added Interop Regression and its count in readme

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* updated the name for interop Regression badge name

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* [WIFI-7229] Integrate virtual AP in Docker Compose testing workflow (#426)

* Integrate virtual AP in Docker Compose testing workflow and switch to CLI testing

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>

* Fix syntax error

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>

* Fix another syntax error

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>

* Execute command over SSH and fix CLI permissions

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>

* Add shared AWS variables and try to escape secret

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>

* Auto-accept new SSH host keys

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>

* Fix SSH key permissions

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>

* Use curl and switch to raw repository files

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>

* Add serial to CLI calls

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>

* Get mac address of virtual AP dynamically

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>

* Fix step condition syntax

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>

* Add silent option to curl

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>

* Re-apply AP config after starting firstcontact service

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>

* Remove duplicate quotes

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>

* Use local AP config file and add choice to test all microservices

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>

* Wait before re-applying config modifications to avoid overwrite

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Wifi 6731 (#421)

* Created a local variable for upstream_port to prevent appending of vlan_id to previous upstream_port

* corrected vlan_id

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Wifi 6938 (#404)

* Country code with channel division: 2Ghz,20Mhz, US and channel 1

* change in testcase execution

* created country_code-US, with channel_width-20Mhz, channel_no-1 for 2G band

* missed git_configuration param

* checking from setup_params_general 'rf' to set radio config

* added country_code_channel_division funtion

* added radio config using radio_config

* corrected allure report

* changed function name

* check allure report

* Added comment

* allure report corrected

* Created testcase for channel 2 in 2G band

* checking allure report

* added channel mode VHT in AP configuration which is common for both wifi-5 and wifi-6 AP, without channel-mode always getting channel mode HE

* checking allure report

* corrected json_get url

* testcase for channel-2 in 20Mhz, US, 2G

* corrected channel overwritten on second testcase

* testcases for channels from 3 to 13 with US, 20Mhz, 2G

* US have 2G channels from 1 to 11

* added print statement to verify IP and channel no

* Checking again if client not assigned with IP

* Testcases: US, 40Mhz, 2G, channels 1-11

* Testcases: US, 40Mhz, 5G, channels (36,44,52,60,100,108,132,140)

* removed wrong testcases

* Testcases: IN, (20Mhz, 40Mhz), 2G, channels 1-11

* Testcases: IN, 40Mhz, 5G, channels (36,44,52,60,100,108,132,140)

* Testcases: CA, 20Mhz,40Mhz, 2G,5G, channels (1-11) (36,44,52,60,100,108,132,140)

* Testcases: CA, 40Mhz, 5G, channels (36,44,52,60,100,108,132,140)

* Testcases: CA, 5G, 80Mhz, channel (36, 52, 100, 132)

* Testcases: IN, 5G, 80Mhz, channel (36, 52, 100, 132)

* Testcases: US, 5G, 80Mhz, channel (36, 52, 100, 132)

* Testcases: CA, 20Mhz, 5G, channel (36,40,44,48,52,56,60, 64, 100, 104, 108, 112, 116,132, 136, 140, 144)

* Testcases: IN, 20Mhz, 5G, channel (36,40,44,48,52,56,60, 64, 100, 104, 108, 112, 116,132, 136, 140, 144)

* Testcases: US, 20Mhz, 5G, channel (36,40,44,48,52,56,60, 64, 100, 104, 108, 112, 116,132, 136, 140, 144)

* Added rf config improvements

Signed-off-by: shivam <shivam.thakur@candelatech.com>

* Testcases: JP, 20Mhz, 40Mhz (2G+5G), 80Mhz (5G)

* Testcases: JP, 20Mhz, 40Mhz (2G+5G), 80Mhz (5G)

* Called json_post to change country of lanforge-radio

* Edited print message

* corrected cli command

* Testcases:GB(united kingdom) 20Mhz, 40Mhz, 80Mhz

* added cleanup to clear station before creating next station

* corrected radio-bands

* Added US country code to change lanforge-radio country

* Added IN country code to change lanforge-radio country

* corrected radio-bands

* Added US country code to change lanforge-radio country

Co-authored-by: shivam <shivam.thakur@candelatech.com>
Co-authored-by: Shivam Thakur <70829776+shivamcandela@users.noreply.github.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Wifi 7234 (#428)

* Added scan_ssid method

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* modified code for testing scan_ssid method

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added scan_ssid method and called that method in Client_Connectivity, Client_Connect, EAP_Connect

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* added libs for creating tables

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* added tabulate module

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

Co-authored-by: Shivam Thakur <70829776+shivamcandela@users.noreply.github.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* fixed the error due to rf data being None

Signed-off-by: shivam <shivam.thakur@candelatech.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Fix advanced testbed config generation

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* added the badge text to RF Testing from Advance

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Fix composite action path

Signed-off-by: Johann Hoffmann <johann.hoffmann@mailbox.org>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Added Perfecto details for data retreival

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Added device option and a function to fetch device details from lab_info.json

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Added all the Interop related details

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Changed all the things needed from pytest.ini to configuration

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Changed the security key for wpa2 5g ssid

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Removed Interop details from pytest.ini file

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Added --device option in Additional arguments of Interop workflow

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Added job number and name related to device specific

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* changed the report to device specific for job number and name

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Removed the job number and name argument

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Removed space

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Removed Job name and number from Perfecto Details

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Separate commands per line

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Chg: switch to self hosted and add sleep step

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Add: AWS dependency

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Fix: awscli and deleted sleep step

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Dbg: add sleep to get config

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Del: debug lines

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>
Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

* Modified .quali/get_config

Signed-off-by: dutta-rohan <94938704+dutta-rohan@users.noreply.github.com>

Co-authored-by: haricharan-jaka <haricharan.jaka@candelatech.com>
Co-authored-by: Dmitry Dunaev <dmitry@opsfleet.com>
Co-authored-by: shivam <shivam.thakur@candelatech.com>
Co-authored-by: Shivam Thakur <70829776+shivamcandela@users.noreply.github.com>
Co-authored-by: ᴀᴍʀɪᴛ ʀᴀᴊ <87319476+amrit-candela@users.noreply.github.com>
Co-authored-by: Dmitry Dunaev <83591011+dunaev-opsfleet@users.noreply.github.com>
Co-authored-by: Johann Hoffmann <johann.hoffmann@mailbox.org>
Co-authored-by: karthika <78941121+karthikaeyetea@users.noreply.github.com>
Co-authored-by: jitendracandela <78074038+jitendracandela@users.noreply.github.com>
This commit is contained in:
dutta-rohan
2022-05-05 08:19:10 -07:00
committed by GitHub
parent 81fdf5d2dc
commit da9ebb29bd
8 changed files with 641 additions and 113 deletions

View File

@@ -32,6 +32,11 @@ jobs:
outputs:
devices: ${{ steps.vars.outputs.devices }}
marker_overwrite: ${{ steps.vars.outputs.marker_overwrite }}
openwifi_revision: ${{ steps.vars.outputs.openwifi}}
ap_models: ${{ steps.vars.outputs.ap_models}}
ap_version: ${{ steps.vars.outputs.ap_version}}
marker_expression: ${{ steps.vars.outputs.marker_expression }}
existing_controller: ${{ steps.vars.outputs.existing_controller }}
steps:
- name: set variables
@@ -42,6 +47,11 @@ jobs:
DEVICES="${{ github.event.inputs.devices || 'galaxy-s9,galaxy-s10,galaxy-s20,pixel-4,iphone-7,iphone-11,iphone-xr,iphone-12' }}"
DEVICES=$(echo $DEVICES | sed "s/,/\",\"/g" | sed 's/^/[\"/g' | sed 's/$/\"]/g')
echo "::set-output name=devices::${DEVICES}"
echo ::set-output name=openwifi::$(echo "${{ github.event.inputs.openwifi_revision || 'main' }}")
echo ::set-output name=ap_models::$(echo "${{ github.event.inputs.ap_models || 'edgecore_ecw5410,edgecore_eap101,tp-link_ec420-g1,edgecore_ecw5211,cig_wf188n,edgecore_eap102,cig_wf194c,hfcl_ion4' }}")
echo ::set-output name=ap_version::$(echo "${{ github.event.inputs.ap_version || 'next-latest' }}")
echo ::set-output name=marker_expression::$(echo "${{ github.event.inputs.marker_expression || 'uc_sanity' }}")
echo ::set-output name=existing_controller::$(echo "${{ github.event.inputs.existing_controller || 'qa01' }}")
build:
runs-on: ubuntu-latest
@@ -62,26 +72,80 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: |
pip install -r .quali/requirements.txt
# curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
# unzip awscliv2.zip
# sudo ./aws/install
- name: start reservation
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
run: |
python .quali/start_reservation.py --global-inputs '{"Phone ID(s)":"1","AP ID(s)":"1","Optional Existing SDK Namespace":"${{ needs.vars.outputs.existing_controller }}","Include a LANForge?":"Yes","securityToken":"eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJpYXQiOjE2MzI4Mzc2NDEsImp0aSI6IjAwZGRiYWY5LWQwYjMtNDRjNS1hYjVlLTkyNzFlNzc5ZGUzNiIsImlzcyI6Imh0dHBzOi8vYXV0aDIucGVyZmVjdG9tb2JpbGUuY29tL2F1dGgvcmVhbG1zL3RpcC1wZXJmZWN0b21vYmlsZS1jb20iLCJhdWQiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwic3ViIjoiODNkNjUxMWQtNTBmZS00ZWM5LThkNzAtYTA0ZjBkNTdiZDUyIiwidHlwIjoiT2ZmbGluZSIsImF6cCI6Im9mZmxpbmUtdG9rZW4tZ2VuZXJhdG9yIiwibm9uY2UiOiI2ZjE1YzYxNy01YTU5LTQyOWEtODc2Yi1jOTQxMTQ1ZDFkZTIiLCJzZXNzaW9uX3N0YXRlIjoiYmRjZTFmYTMtMjlkYi00MmFmLWI5YWMtYjZjZmJkMDEyOTFhIiwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.5R85_1R38ZFXv_wIjjCIsj8NJm1p66dCsLJI5DBEmks"}' --reservation-duration 480 "InterOp Lab - Specific Selection"
- name: set reservation outputs
if: always()
id: reservation
run: |
echo ::set-output name=identifier::"$(cat ./reservation_id.txt)"
echo ::set-output name=namespace::"$(cat ./reservation_id.txt | cut -d "-" -f 1)"
- name: get EKS access credentials
run: aws eks update-kubeconfig --name ${{ env.AWS_EKS_NAME }}
# TODO WIFI-7839 delete when issue is resolved on AWS CLI side
- name: install kubectl
run: |
curl -LO "https://dl.k8s.io/release/v1.23.6/bin/linux/amd64/kubectl"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
- name: prepare configuration
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
run: |
cat << EOF > lab_info.json
${{ secrets.LAB_CONFIGURATION_JSON }}
EOF
DYN_CONFIG="$(python .quali/get_configuration.py --json ${{ steps.reservation.outputs.identifier }})"
jq ".CONFIGURATION.interop=$DYN_CONFIG" lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json
jq --arg git_run "${{ github.run_number }}" '.PERFECTO_DETAILS."Galaxy S9".jobNumber=$git_run' lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json
if [ ${{ needs.vars.outputs.existing_controller }} != '' ]
then
jq '.CONFIGURATION.interop.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
uses: ./.github/actions/run-tests
with:
namespace: interop-${{ github.run_id }}-galaxy-s9
testbed: interop-01
testbed: interop
marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and android and not wpa3_personal' }}"
configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}"
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 model-android='Galaxy S9' -o 'jobName=Github-Interop-galaxy-s9' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge"
additional_args: "--device='Galaxy S9' --skip-lanforge"
allure_results_artifact_name: allure-results-galaxy-s9
- name: stop reservation
if: always()
run: python .quali/stop_reservation.py ${{ steps.reservation.outputs.identifier }}
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
# necessary because if conditionals in composite actions are currently not respected
- name: delete namespace
if: always()
@@ -95,6 +159,29 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: |
pip install -r .quali/requirements.txt
# curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
# unzip awscliv2.zip
# sudo ./aws/install
- name: start reservation
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
run: |
python .quali/start_reservation.py --global-inputs '{"Phone ID(s)":"6","AP ID(s)":"1","Optional Existing SDK Namespace":"${{ needs.vars.outputs.existing_controller }}","Include a LANForge?":"Yes","securityToken":"eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJpYXQiOjE2MzI4Mzc2NDEsImp0aSI6IjAwZGRiYWY5LWQwYjMtNDRjNS1hYjVlLTkyNzFlNzc5ZGUzNiIsImlzcyI6Imh0dHBzOi8vYXV0aDIucGVyZmVjdG9tb2JpbGUuY29tL2F1dGgvcmVhbG1zL3RpcC1wZXJmZWN0b21vYmlsZS1jb20iLCJhdWQiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwic3ViIjoiODNkNjUxMWQtNTBmZS00ZWM5LThkNzAtYTA0ZjBkNTdiZDUyIiwidHlwIjoiT2ZmbGluZSIsImF6cCI6Im9mZmxpbmUtdG9rZW4tZ2VuZXJhdG9yIiwibm9uY2UiOiI2ZjE1YzYxNy01YTU5LTQyOWEtODc2Yi1jOTQxMTQ1ZDFkZTIiLCJzZXNzaW9uX3N0YXRlIjoiYmRjZTFmYTMtMjlkYi00MmFmLWI5YWMtYjZjZmJkMDEyOTFhIiwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.5R85_1R38ZFXv_wIjjCIsj8NJm1p66dCsLJI5DBEmks"}' "InterOp Lab - Specific Selection"
- name: set reservation outputs
if: always()
id: reservation
run: |
echo ::set-output name=identifier::"$(cat ./reservation_id.txt)"
echo ::set-output name=namespace::"$(cat ./reservation_id.txt | cut -d "-" -f 1)"
- name: get EKS access credentials
run: aws eks update-kubeconfig --name ${{ env.AWS_EKS_NAME }}
@@ -104,17 +191,48 @@ jobs:
curl -LO "https://dl.k8s.io/release/v1.23.6/bin/linux/amd64/kubectl"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
- name: prepare configuration
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
run: |
cat << EOF > lab_info.json
${{ secrets.LAB_CONFIGURATION_JSON }}
EOF
DYN_CONFIG="$(python .quali/get_configuration.py --json ${{ steps.reservation.outputs.identifier }})"
jq ".CONFIGURATION.interop=$DYN_CONFIG" lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json
jq --arg git_run "${{ github.run_number }}" '.PERFECTO_DETAILS."iPhone-11".jobNumber=$git_run' lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json
if [ ${{ needs.vars.outputs.existing_controller }} != '' ]
then
jq '.CONFIGURATION.interop.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
uses: ./.github/actions/run-tests
with:
namespace: interop-${{ github.run_id }}-iphone-11
testbed: interop-01
testbed: interop
marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and ios' }}"
configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}"
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 model-iOS='iPhone-11' -o 'jobName=Github-Interop-iphone-11' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge"
additional_args: "--device='iPhone-11' --skip-lanforge"
allure_results_artifact_name: allure-results-iphone-11
- name: stop reservation
if: always()
run: python .quali/stop_reservation.py ${{ steps.reservation.outputs.identifier }}
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
# necessary because if conditionals in composite actions are currently not respected
- name: delete namespace
if: always()
@@ -129,26 +247,80 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: |
pip install -r .quali/requirements.txt
# curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
# unzip awscliv2.zip
# sudo ./aws/install
- name: start reservation
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
run: |
python .quali/start_reservation.py --global-inputs '{"Phone ID(s)":"2","AP ID(s)":"2","Optional Existing SDK Namespace":"${{ needs.vars.outputs.existing_controller }}","Include a LANForge?":"Yes","securityToken":"eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJpYXQiOjE2MzI4Mzc2NDEsImp0aSI6IjAwZGRiYWY5LWQwYjMtNDRjNS1hYjVlLTkyNzFlNzc5ZGUzNiIsImlzcyI6Imh0dHBzOi8vYXV0aDIucGVyZmVjdG9tb2JpbGUuY29tL2F1dGgvcmVhbG1zL3RpcC1wZXJmZWN0b21vYmlsZS1jb20iLCJhdWQiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwic3ViIjoiODNkNjUxMWQtNTBmZS00ZWM5LThkNzAtYTA0ZjBkNTdiZDUyIiwidHlwIjoiT2ZmbGluZSIsImF6cCI6Im9mZmxpbmUtdG9rZW4tZ2VuZXJhdG9yIiwibm9uY2UiOiI2ZjE1YzYxNy01YTU5LTQyOWEtODc2Yi1jOTQxMTQ1ZDFkZTIiLCJzZXNzaW9uX3N0YXRlIjoiYmRjZTFmYTMtMjlkYi00MmFmLWI5YWMtYjZjZmJkMDEyOTFhIiwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.5R85_1R38ZFXv_wIjjCIsj8NJm1p66dCsLJI5DBEmks"}' --reservation-duration 480 "InterOp Lab - Specific Selection"
- name: set reservation outputs
if: always()
id: reservation
run: |
echo ::set-output name=identifier::"$(cat ./reservation_id.txt)"
echo ::set-output name=namespace::"$(cat ./reservation_id.txt | cut -d "-" -f 1)"
- name: get EKS access credentials
run: aws eks update-kubeconfig --name ${{ env.AWS_EKS_NAME }}
# TODO WIFI-7839 delete when issue is resolved on AWS CLI side
- name: install kubectl
run: |
curl -LO "https://dl.k8s.io/release/v1.23.6/bin/linux/amd64/kubectl"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
- name: prepare configuration
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
run: |
cat << EOF > lab_info.json
${{ secrets.LAB_CONFIGURATION_JSON }}
EOF
DYN_CONFIG="$(python .quali/get_configuration.py --json ${{ steps.reservation.outputs.identifier }})"
jq ".CONFIGURATION.interop=$DYN_CONFIG" lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json
jq --arg git_run "${{ github.run_number }}" '.PERFECTO_DETAILS."Galaxy S10.*".jobNumber=$git_run' lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json
if [ ${{ needs.vars.outputs.existing_controller }} != '' ]
then
jq '.CONFIGURATION.interop.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
uses: ./.github/actions/run-tests
with:
namespace: interop-${{ github.run_id }}-galaxy-s10
testbed: interop-02
testbed: interop
marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and android' }}"
configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}"
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 model-android='Galaxy S10.*' -o 'jobName=Github-Interop-galaxy-s10' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge"
additional_args: "--device='Galaxy S10.*' --skip-lanforge"
allure_results_artifact_name: allure-results-galaxy-s10
- name: stop reservation
if: always()
run: python .quali/stop_reservation.py ${{ steps.reservation.outputs.identifier }}
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
# necessary because if conditionals in composite actions are currently not respected
- name: delete namespace
if: always()
@@ -162,26 +334,82 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: |
pip install -r .quali/requirements.txt
# curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
# unzip awscliv2.zip
# sudo ./aws/install
- name: start reservation
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
run: |
python .quali/start_reservation.py --global-inputs '{"Phone ID(s)":"5","AP ID(s)":"2","Optional Existing SDK Namespace":"${{ needs.vars.outputs.existing_controller }}","Include a LANForge?":"Yes","securityToken":"eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJpYXQiOjE2MzI4Mzc2NDEsImp0aSI6IjAwZGRiYWY5LWQwYjMtNDRjNS1hYjVlLTkyNzFlNzc5ZGUzNiIsImlzcyI6Imh0dHBzOi8vYXV0aDIucGVyZmVjdG9tb2JpbGUuY29tL2F1dGgvcmVhbG1zL3RpcC1wZXJmZWN0b21vYmlsZS1jb20iLCJhdWQiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwic3ViIjoiODNkNjUxMWQtNTBmZS00ZWM5LThkNzAtYTA0ZjBkNTdiZDUyIiwidHlwIjoiT2ZmbGluZSIsImF6cCI6Im9mZmxpbmUtdG9rZW4tZ2VuZXJhdG9yIiwibm9uY2UiOiI2ZjE1YzYxNy01YTU5LTQyOWEtODc2Yi1jOTQxMTQ1ZDFkZTIiLCJzZXNzaW9uX3N0YXRlIjoiYmRjZTFmYTMtMjlkYi00MmFmLWI5YWMtYjZjZmJkMDEyOTFhIiwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.5R85_1R38ZFXv_wIjjCIsj8NJm1p66dCsLJI5DBEmks"}' --reservation-duration 480 "InterOp Lab - Specific Selection"
- name: set reservation outputs
if: always()
id: reservation
run: |
echo ::set-output name=identifier::"$(cat ./reservation_id.txt)"
echo ::set-output name=namespace::"$(cat ./reservation_id.txt | cut -d "-" -f 1)"
- name: get EKS access credentials
run: aws eks update-kubeconfig --name ${{ env.AWS_EKS_NAME }}
# TODO WIFI-7839 delete when issue is resolved on AWS CLI side
- name: install kubectl
run: |
curl -LO "https://dl.k8s.io/release/v1.23.6/bin/linux/amd64/kubectl"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
- name: prepare configuration
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
run: |
cat << EOF > lab_info.json
${{ secrets.LAB_CONFIGURATION_JSON }}
EOF
DYN_CONFIG="$(python .quali/get_configuration.py --json ${{ steps.reservation.outputs.identifier }})"
jq ".CONFIGURATION.interop=$DYN_CONFIG" lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json
jq --arg git_run "${{ github.run_number }}" '.PERFECTO_DETAILS."iPhone-7".jobNumber=$git_run' lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json
if [ ${{ needs.vars.outputs.existing_controller }} != '' ]
then
jq '.CONFIGURATION.interop.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
uses: ./.github/actions/run-tests
with:
namespace: interop-${{ github.run_id }}-iphone-7
testbed: interop-02
testbed: interop
marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and ios' }}"
configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}"
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 model-iOS='iPhone-7' -o 'jobName=Github-Interop-iphone-7' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge"
additional_args: "--device='iPhone-7' --skip-lanforge"
allure_results_artifact_name: allure-results-iphone-7
- name: stop reservation
if: always()
run: python .quali/stop_reservation.py ${{ steps.reservation.outputs.identifier }}
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
# necessary because if conditionals in composite actions are currently not respected
- name: delete namespace
if: always()
@@ -196,26 +424,79 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: |
pip install -r .quali/requirements.txt
# curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
# unzip awscliv2.zip
# sudo ./aws/install
- name: start reservation
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
run: |
python .quali/start_reservation.py --global-inputs '{"Phone ID(s)":"3","AP ID(s)":"4","Optional Existing SDK Namespace":"${{ needs.vars.outputs.existing_controller }}","Include a LANForge?":"Yes","securityToken":"eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJpYXQiOjE2MzI4Mzc2NDEsImp0aSI6IjAwZGRiYWY5LWQwYjMtNDRjNS1hYjVlLTkyNzFlNzc5ZGUzNiIsImlzcyI6Imh0dHBzOi8vYXV0aDIucGVyZmVjdG9tb2JpbGUuY29tL2F1dGgvcmVhbG1zL3RpcC1wZXJmZWN0b21vYmlsZS1jb20iLCJhdWQiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwic3ViIjoiODNkNjUxMWQtNTBmZS00ZWM5LThkNzAtYTA0ZjBkNTdiZDUyIiwidHlwIjoiT2ZmbGluZSIsImF6cCI6Im9mZmxpbmUtdG9rZW4tZ2VuZXJhdG9yIiwibm9uY2UiOiI2ZjE1YzYxNy01YTU5LTQyOWEtODc2Yi1jOTQxMTQ1ZDFkZTIiLCJzZXNzaW9uX3N0YXRlIjoiYmRjZTFmYTMtMjlkYi00MmFmLWI5YWMtYjZjZmJkMDEyOTFhIiwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.5R85_1R38ZFXv_wIjjCIsj8NJm1p66dCsLJI5DBEmks"}' --reservation-duration 480 "InterOp Lab - Specific Selection"
- name: set reservation outputs
if: always()
id: reservation
run: |
echo ::set-output name=identifier::"$(cat ./reservation_id.txt)"
echo ::set-output name=namespace::"$(cat ./reservation_id.txt | cut -d "-" -f 1)"
- name: get EKS access credentials
run: aws eks update-kubeconfig --name ${{ env.AWS_EKS_NAME }}
# TODO WIFI-7839 delete when issue is resolved on AWS CLI side
- name: install kubectl
run: |
curl -LO "https://dl.k8s.io/release/v1.23.6/bin/linux/amd64/kubectl"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
- name: prepare configuration
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
run: |
cat << EOF > lab_info.json
${{ secrets.LAB_CONFIGURATION_JSON }}
EOF
DYN_CONFIG="$(python .quali/get_configuration.py --json ${{ steps.reservation.outputs.identifier }})"
jq ".CONFIGURATION.interop=$DYN_CONFIG" lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json
jq --arg git_run "${{ github.run_number }}" '.PERFECTO_DETAILS."Galaxy S20".jobNumber=$git_run' lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json
if [ ${{ needs.vars.outputs.existing_controller }} != '' ]
then
jq '.CONFIGURATION.interop.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
uses: ./.github/actions/run-tests
with:
namespace: interop-${{ github.run_id }}-galaxy-s20
testbed: interop-03
testbed: interop
marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and android' }}"
configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}"
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 model-android='Galaxy S20' -o 'jobName=Github-Interop-galaxy-s20' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge"
additional_args: "--device='Galaxy S20' --skip-lanforge"
allure_results_artifact_name: allure-results-galaxy-s20
- name: stop reservation
if: always()
run: python .quali/stop_reservation.py ${{ steps.reservation.outputs.identifier }}
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
# necessary because if conditionals in composite actions are currently not respected
- name: delete namespace
if: always()
@@ -229,6 +510,29 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: |
pip install -r .quali/requirements.txt
# curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
# unzip awscliv2.zip
# sudo ./aws/install
- name: start reservation
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
run: |
python .quali/start_reservation.py --global-inputs '{"Phone ID(s)":"8","AP ID(s)":"4","Optional Existing SDK Namespace":"${{ needs.vars.outputs.existing_controller }}","Include a LANForge?":"Yes","securityToken":"eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJpYXQiOjE2MzI4Mzc2NDEsImp0aSI6IjAwZGRiYWY5LWQwYjMtNDRjNS1hYjVlLTkyNzFlNzc5ZGUzNiIsImlzcyI6Imh0dHBzOi8vYXV0aDIucGVyZmVjdG9tb2JpbGUuY29tL2F1dGgvcmVhbG1zL3RpcC1wZXJmZWN0b21vYmlsZS1jb20iLCJhdWQiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwic3ViIjoiODNkNjUxMWQtNTBmZS00ZWM5LThkNzAtYTA0ZjBkNTdiZDUyIiwidHlwIjoiT2ZmbGluZSIsImF6cCI6Im9mZmxpbmUtdG9rZW4tZ2VuZXJhdG9yIiwibm9uY2UiOiI2ZjE1YzYxNy01YTU5LTQyOWEtODc2Yi1jOTQxMTQ1ZDFkZTIiLCJzZXNzaW9uX3N0YXRlIjoiYmRjZTFmYTMtMjlkYi00MmFmLWI5YWMtYjZjZmJkMDEyOTFhIiwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.5R85_1R38ZFXv_wIjjCIsj8NJm1p66dCsLJI5DBEmks"}' --reservation-duration 480 "InterOp Lab - Specific Selection"
- name: set reservation outputs
if: always()
id: reservation
run: |
echo ::set-output name=identifier::"$(cat ./reservation_id.txt)"
echo ::set-output name=namespace::"$(cat ./reservation_id.txt | cut -d "-" -f 1)"
- name: get EKS access credentials
run: aws eks update-kubeconfig --name ${{ env.AWS_EKS_NAME }}
@@ -238,17 +542,47 @@ jobs:
curl -LO "https://dl.k8s.io/release/v1.23.6/bin/linux/amd64/kubectl"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
- name: prepare configuration
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
run: |
cat << EOF > lab_info.json
${{ secrets.LAB_CONFIGURATION_JSON }}
EOF
DYN_CONFIG="$(python .quali/get_configuration.py --json ${{ steps.reservation.outputs.identifier }})"
jq ".CONFIGURATION.interop=$DYN_CONFIG" lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json
jq --arg git_run "${{ github.run_number }}" '.PERFECTO_DETAILS."iPhone-XR".jobNumber=$git_run' lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json
if [ ${{ needs.vars.outputs.existing_controller }} != '' ]
then
jq '.CONFIGURATION.interop.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
uses: ./.github/actions/run-tests
with:
namespace: interop-${{ github.run_id }}-iphone-xr
testbed: interop-03
testbed: interop
marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and ios' }}"
configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}"
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 model-iOS='iPhone-XR' -o 'jobName=Github-Interop-iphone-xr' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge"
additional_args: "--device='iPhone-XR' --skip-lanforge"
allure_results_artifact_name: allure-results-iphone-xr
- name: stop reservation
if: always()
run: python .quali/stop_reservation.py ${{ steps.reservation.outputs.identifier }}
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
# necessary because if conditionals in composite actions are currently not respected
- name: delete namespace
if: always()
@@ -263,6 +597,28 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: |
pip install -r .quali/requirements.txt
# curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
# unzip awscliv2.zip
# sudo ./aws/install
- name: start reservation
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
run: |
python .quali/start_reservation.py --global-inputs '{"Phone ID(s)":"4","AP ID(s)":"3","Optional Existing SDK Namespace":"${{ needs.vars.outputs.existing_controller }}","Include a LANForge?":"Yes","securityToken":"eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJpYXQiOjE2MzI4Mzc2NDEsImp0aSI6IjAwZGRiYWY5LWQwYjMtNDRjNS1hYjVlLTkyNzFlNzc5ZGUzNiIsImlzcyI6Imh0dHBzOi8vYXV0aDIucGVyZmVjdG9tb2JpbGUuY29tL2F1dGgvcmVhbG1zL3RpcC1wZXJmZWN0b21vYmlsZS1jb20iLCJhdWQiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwic3ViIjoiODNkNjUxMWQtNTBmZS00ZWM5LThkNzAtYTA0ZjBkNTdiZDUyIiwidHlwIjoiT2ZmbGluZSIsImF6cCI6Im9mZmxpbmUtdG9rZW4tZ2VuZXJhdG9yIiwibm9uY2UiOiI2ZjE1YzYxNy01YTU5LTQyOWEtODc2Yi1jOTQxMTQ1ZDFkZTIiLCJzZXNzaW9uX3N0YXRlIjoiYmRjZTFmYTMtMjlkYi00MmFmLWI5YWMtYjZjZmJkMDEyOTFhIiwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.5R85_1R38ZFXv_wIjjCIsj8NJm1p66dCsLJI5DBEmks"}' --reservation-duration 480 "InterOp Lab - Specific Selection"
- name: set reservation outputs
if: always()
id: reservation
run: |
echo ::set-output name=identifier::"$(cat ./reservation_id.txt)"
echo ::set-output name=namespace::"$(cat ./reservation_id.txt | cut -d "-" -f 1)"
- name: get EKS access credentials
run: aws eks update-kubeconfig --name ${{ env.AWS_EKS_NAME }}
@@ -272,17 +628,49 @@ jobs:
curl -LO "https://dl.k8s.io/release/v1.23.6/bin/linux/amd64/kubectl"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
- name: prepare configuration
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
run: |
cat << EOF > lab_info.json
${{ secrets.LAB_CONFIGURATION_JSON }}
EOF
DYN_CONFIG="$(python .quali/get_configuration.py --json ${{ steps.reservation.outputs.identifier }})"
jq ".CONFIGURATION.interop=$DYN_CONFIG" lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json
jq --arg git_run "${{ github.run_number }}" '.PERFECTO_DETAILS."Pixel 4".jobNumber=$git_run' lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json
if [ ${{ needs.vars.outputs.existing_controller }} != '' ]
then
jq '.CONFIGURATION.interop.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
uses: ./.github/actions/run-tests
with:
namespace: interop-${{ github.run_id }}-pixel-4
testbed: interop-04
testbed: interop
marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and android' }}"
configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}"
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 model-android='Pixel 4' -o 'jobName=Github-Interop-pixel-4' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge"
additional_args: "--device='Pixel 4' --skip-lanforge"
allure_results_artifact_name: allure-results-pixel-4
- name: stop reservation
if: always()
run: python .quali/stop_reservation.py ${{ steps.reservation.outputs.identifier }}
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
# necessary because if conditionals in composite actions are currently not respected
- name: delete namespace
if: always()
@@ -296,6 +684,28 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: |
pip install -r .quali/requirements.txt
# curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
# unzip awscliv2.zip
# sudo ./aws/install
- name: start reservation
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
run: |
python .quali/start_reservation.py --global-inputs '{"Phone ID(s)":"7","AP ID(s)":"3","Optional Existing SDK Namespace":"${{ needs.vars.outputs.existing_controller }}","Include a LANForge?":"Yes","securityToken":"eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJpYXQiOjE2MzI4Mzc2NDEsImp0aSI6IjAwZGRiYWY5LWQwYjMtNDRjNS1hYjVlLTkyNzFlNzc5ZGUzNiIsImlzcyI6Imh0dHBzOi8vYXV0aDIucGVyZmVjdG9tb2JpbGUuY29tL2F1dGgvcmVhbG1zL3RpcC1wZXJmZWN0b21vYmlsZS1jb20iLCJhdWQiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwic3ViIjoiODNkNjUxMWQtNTBmZS00ZWM5LThkNzAtYTA0ZjBkNTdiZDUyIiwidHlwIjoiT2ZmbGluZSIsImF6cCI6Im9mZmxpbmUtdG9rZW4tZ2VuZXJhdG9yIiwibm9uY2UiOiI2ZjE1YzYxNy01YTU5LTQyOWEtODc2Yi1jOTQxMTQ1ZDFkZTIiLCJzZXNzaW9uX3N0YXRlIjoiYmRjZTFmYTMtMjlkYi00MmFmLWI5YWMtYjZjZmJkMDEyOTFhIiwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.5R85_1R38ZFXv_wIjjCIsj8NJm1p66dCsLJI5DBEmks"}' --reservation-duration 480 "InterOp Lab - Specific Selection"
- name: set reservation outputs
if: always()
id: reservation
run: |
echo ::set-output name=identifier::"$(cat ./reservation_id.txt)"
echo ::set-output name=namespace::"$(cat ./reservation_id.txt | cut -d "-" -f 1)"
- name: get EKS access credentials
run: aws eks update-kubeconfig --name ${{ env.AWS_EKS_NAME }}
@@ -305,17 +715,47 @@ jobs:
curl -LO "https://dl.k8s.io/release/v1.23.6/bin/linux/amd64/kubectl"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
- name: prepare configuration
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
run: |
cat << EOF > lab_info.json
${{ secrets.LAB_CONFIGURATION_JSON }}
EOF
DYN_CONFIG="$(python .quali/get_configuration.py --json ${{ steps.reservation.outputs.identifier }})"
jq ".CONFIGURATION.interop=$DYN_CONFIG" lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json
jq --arg git_run "${{ github.run_number }}" '.PERFECTO_DETAILS."iPhone-12".jobNumber=$git_run' lab_info.json > lab_info.json.tmp && mv lab_info.json.tmp lab_info.json
if [ ${{ needs.vars.outputs.existing_controller }} != '' ]
then
jq '.CONFIGURATION.interop.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
uses: ./.github/actions/run-tests
with:
namespace: interop-${{ github.run_id }}-iphone-12
testbed: interop-04
testbed: interop
marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and ios' }}"
configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}"
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 model-iOS='iPhone-12' -o 'jobName=Github-Interop-iphone-12' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge"
additional_args: "--device='iPhone-12' --skip-lanforge"
allure_results_artifact_name: allure-results-iphone-12
- name: stop reservation
if: always()
run: python .quali/stop_reservation.py ${{ steps.reservation.outputs.identifier }}
env:
CLOUDSHELL_URL: quali-cloudshell.lab.wlan.tip.build
CLOUDSHELL_USER: ${{ secrets.CLOUDSHELL_USER }}
CLOUDSHELL_PASSWORD: ${{ secrets.CLOUDSHELL_PASSWORD }}
# necessary because if conditionals in composite actions are currently not respected
- name: delete namespace
if: always()

View File

@@ -57,7 +57,9 @@ def main():
key = 'username' if key == 'uname' else key
key = 'password' if key == 'passkey' else key
ap_config[key] = get_attribute_value(session, attribute)
if get_attribute_value(session, attribute) != "":
ap_config[key] = get_attribute_value(session, attribute)
#ap_config[key] = get_attribute_value(session, attribute)
config['access_point'].append(ap_config)
@@ -96,4 +98,4 @@ def main():
if __name__ == '__main__':
main()
main()

View File

@@ -37,6 +37,7 @@ with open('lab_info.json', 'r') as f:
CONFIGURATION = data["CONFIGURATION"]
PERFECTO_DETAILS = data["PERFECTO_DETAILS"]
RADIUS_SERVER_DATA = data["RADIUS_SERVER_DATA"]

View File

@@ -39,6 +39,7 @@ import pytest
from lanforge.lf_tests import RunTest
from cv_test_manager import cv_test
from configuration import CONFIGURATION
from configuration import PERFECTO_DETAILS
from configuration import open_flow
from configuration import RADIUS_SERVER_DATA
from configuration import RADIUS_ACCOUNTING_DATA
@@ -147,6 +148,12 @@ def pytest_addoption(parser):
default=False,
help="skip cloud controller and AP, run only lanforge tests on a ssid preconfigured"
)
parser.addoption(
"--device",
default="iPhone-11",
help="Device Model which is needed to test"
)
# Perfecto Parameters
parser.addini("perfectoURL", "Cloud URL")
@@ -196,6 +203,11 @@ def testbed(request):
var = request.config.getoption("--testbed")
yield var
@pytest.fixture(scope="session")
def device(request):
"""yields the device option selection"""
var = request.config.getoption("--device")
yield var
@pytest.fixture(scope="session")
def should_upload_firmware(request):
@@ -259,6 +271,14 @@ def get_configuration(testbed, request):
LOGGER.info("Selected the lab Info data: " + str((CONFIGURATION[testbed])))
yield CONFIGURATION[testbed]
@pytest.fixture(scope="session")
def get_device_configuration(device, request):
"""yields the selected device information from lab info file (configuration.py)"""
LOGGER.info("Selected the lab Info data: " + str((PERFECTO_DETAILS[device])))
print(PERFECTO_DETAILS[device])
yield PERFECTO_DETAILS[device]
@pytest.fixture(scope="session")
def get_apnos():

View File

@@ -41,6 +41,7 @@ if "tests" not in sys.path:
sys.path.append(f'../tests')
from configuration import CONFIGURATION
from configuration import PERFECTO_DETAILS
from urllib3 import exceptions
@@ -52,68 +53,68 @@ testCaseReportURL = []
@pytest.fixture(scope="function")
def get_PassPointConniOS_data(request):
def get_PassPointConniOS_data(request, get_device_configuration):
passPoint_data = {
"netAnalyzer-inter-Con-Xpath": "//*[@label='Network Connected']/parent::*/XCUIElementTypeButton",
"bundleId-iOS-Settings": request.config.getini("bundleId-iOS-Settings"),
"bundleId-iOS-Ping": request.config.getini("bundleId-iOS-Ping")
"bundleId-iOS-Settings": get_device_configuration["bundleId-iOS-Settings"],
"bundleId-iOS-Ping": get_device_configuration["bundleId-iOS-Ping"]
}
yield passPoint_data
@pytest.fixture(scope="function")
def get_APToMobileDevice_data(request):
def get_APToMobileDevice_data(request, get_device_configuration):
passPoint_data = {
"webURL": "https://www.google.com",
"lblSearch": "//*[@class='gLFyf']",
"elelSearch": "(//*[@class='sbic sb43'])[1]",
"BtnRunSpeedTest": "//*[text()='RUN SPEED TEST']",
"bundleId-iOS-Settings": request.config.getini("bundleId-iOS-Settings"),
"bundleId-iOS-Safari": request.config.getini("bundleId-iOS-Safari"),
"bundleId-iOS-Settings": get_device_configuration["bundleId-iOS-Settings"],
"bundleId-iOS-Safari": get_device_configuration["bundleId-iOS-Safari"],
"downloadMbps": "//*[@id='knowledge-verticals-internetspeedtest__download']/P[@class='spiqle']",
"UploadMbps": "//*[@id='knowledge-verticals-internetspeedtest__upload']/P[@class='spiqle']",
# Android
"platformName-android": request.config.getini("platformName-android"),
"appPackage-android": request.config.getini("appPackage-android")
"platformName-android": get_device_configuration["platformName-android"],
"appPackage-android": get_device_configuration["appPackage-android"]
}
yield passPoint_data
@pytest.fixture(scope="function")
def get_AccessPointConn_data(request):
def get_AccessPointConn_data(request, get_device_configuration):
passPoint_data = {
"bundleId-iOS-Settings": request.config.getini("bundleId-iOS-Settings"),
"bundleId-iOS-Ping": request.config.getini("bundleId-iOS-Ping")
"bundleId-iOS-Settings": get_device_configuration["bundleId-iOS-Settings"],
"bundleId-iOS-Ping": get_device_configuration["bundleId-iOS-Ping"]
}
yield passPoint_data
@pytest.fixture(scope="function")
def get_ToggleAirplaneMode_data(request):
def get_ToggleAirplaneMode_data(request, get_device_configuration):
passPoint_data = {
"webURL": "https://www.google.com",
"lblSearch": "//*[@class='gLFyf']",
"elelSearch": "(//*[@class='sbic sb43'])[1]",
"BtnRunSpeedTest": "//*[text()='RUN SPEED TEST']",
"bundleId-iOS-Settings": request.config.getini("bundleId-iOS-Settings"),
"bundleId-iOS-Safari": request.config.getini("bundleId-iOS-Safari"),
"bundleId-iOS-Settings": get_device_configuration["bundleId-iOS-Settings"],
"bundleId-iOS-Safari": get_device_configuration["bundleId-iOS-Safari"],
"downloadMbps": "//*[@id='knowledge-verticals-internetspeedtest__download']/P[@class='spiqle']",
"UploadMbps": "//*[@id='knowledge-verticals-internetspeedtest__upload']/P[@class='spiqle']",
# Android
"platformName-android": request.config.getini("platformName-android"),
"appPackage-android": request.config.getini("appPackage-android")
"platformName-android": get_device_configuration["platformName-android"],
"appPackage-android": get_device_configuration["appPackage-android"]
}
yield passPoint_data
@pytest.fixture(scope="function")
def get_ToggleWifiMode_data(request):
def get_ToggleWifiMode_data(request,get_device_configuration):
passPoint_data = {
# iOS
"bundleId-iOS-Settings": request.config.getini("bundleId-iOS-Settings"),
"bundleId-iOS-Settings": get_device_configuration["bundleId-iOS-Settings"],
# Android
"platformName-android": request.config.getini("platformName-android"),
"appPackage-android": request.config.getini("appPackage-android")
"platformName-android": get_device_configuration["platformName-android"],
"appPackage-android": get_device_configuration["appPackage-android"]
}
yield passPoint_data
@@ -394,7 +395,7 @@ def pytest_sessionfinish(session, exitstatus):
@pytest.fixture(scope="function")
def setup_perfectoMobile_android(request):
def setup_perfectoMobile_android(request, get_device_configuration):
from appium import webdriver
driver = None
reporting_client = None
@@ -403,11 +404,11 @@ def setup_perfectoMobile_android(request):
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
capabilities = {
'platformName': request.config.getini("platformName-android"),
'model': request.config.getini("model-android"),
'platformName': get_device_configuration["platformName-android"],
'model': get_device_configuration["model-android"],
'browserName': 'mobileOS',
# 'automationName' : 'Appium',
'securityToken': request.config.getini("securityToken"),
'securityToken': PERFECTO_DETAILS["securityToken"],
'useAppiumForWeb': 'false',
'useAppiumForHybrid': 'false',
# 'bundleId' : request.config.getini("appPackage-android"),
@@ -418,7 +419,7 @@ def setup_perfectoMobile_android(request):
pytest.exit("Exiting Pytest")
driver = webdriver.Remote(
'https://' + request.config.getini("perfectoURL") + '.perfectomobile.com/nexperience/perfectomobile/wd/hub',
'https://' + PERFECTO_DETAILS["perfectoURL"] + '.perfectomobile.com/nexperience/perfectomobile/wd/hub',
capabilities)
driver.implicitly_wait(2)
@@ -433,11 +434,11 @@ def setup_perfectoMobile_android(request):
print("\nUpgrade Python to 3.9 to avoid test_ string in your test case name, see below URL")
# print("https://www.andreagrandi.it/2020/10/11/python39-introduces-removeprefix-removesuffix/")
projectname = request.config.getini("projectName")
projectversion = request.config.getini("projectVersion")
jobname = request.config.getini("jobName")
jobnumber = request.config.getini("jobNumber")
tags = request.config.getini("reportTags")
projectname = PERFECTO_DETAILS["projectName"]
projectversion = PERFECTO_DETAILS["projectVersion"]
jobname = get_device_configuration["jobName"]
jobnumber = get_device_configuration["jobNumber"]
tags = PERFECTO_DETAILS["reportTags"]
testCaseName = TestCaseName
# print("\nSetting Perfecto ReportClient....")
@@ -506,7 +507,7 @@ def reportPerfecto(testCaseName, testCaseStatus, testErrorMsg, reportURL):
@pytest.fixture(scope="class")
def setup_perfectoMobileWeb(request):
def setup_perfectoMobileWeb(request, get_device_configuration):
from selenium import webdriver
rdriver = None
reporting_client = None
@@ -515,10 +516,10 @@ def setup_perfectoMobileWeb(request):
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
capabilities = {
'platformName': request.config.getini("platformName-iOS"),
'model': request.config.getini("model-iOS"),
'browserName': request.config.getini("browserType-iOS"),
'securityToken': request.config.getini("securityToken"),
'platformName': get_device_configuration["platformName-iOS"],
'model': get_device_configuration["model-iOS"],
'browserName': get_device_configuration["browserType-iOS"],
'securityToken': get_device_configuration["securityToken"],
}
if not is_device_Available_timeout(request, capabilities['model']):
@@ -526,16 +527,16 @@ def setup_perfectoMobileWeb(request):
pytest.exit("Exiting Pytest")
rdriver = webdriver.Remote(
'https://' + request.config.getini("perfectoURL") + '.perfectomobile.com/nexperience/perfectomobile/wd/hub',
'https://' + PERFECTO_DETAILS["perfectoURL"] + '.perfectomobile.com/nexperience/perfectomobile/wd/hub',
capabilities)
rdriver.implicitly_wait(2)
projectname = request.config.getini("projectName")
projectversion = request.config.getini("projectVersion")
jobname = request.config.getini("jobName")
jobnumber = request.config.getini("jobNumber")
tags = request.config.getini("reportTags")
testCaseName = request.config.getini("jobName")
projectname = PERFECTO_DETAILS["projectName"]
projectversion = PERFECTO_DETAILS["projectVersion"]
jobname = get_device_configuration["jobName"]
jobnumber = get_device_configuration["jobNumber"]
tags = PERFECTO_DETAILS["reportTags"]
testCaseName = get_device_configuration["jobName"]
print("Setting Perfecto ReportClient....")
perfecto_execution_context = PerfectoExecutionContext(rdriver, tags, Job(jobname, jobnumber),
@@ -568,7 +569,7 @@ def setup_perfectoMobileWeb(request):
@pytest.fixture(scope="function")
def setup_perfectoMobile_iOS(request):
def setup_perfectoMobile_iOS(request, get_device_configuration):
from appium import webdriver
driver = None
reporting_client = None
@@ -577,11 +578,11 @@ def setup_perfectoMobile_iOS(request):
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
capabilities = {
'platformName': request.config.getini("platformName-iOS"),
'model': request.config.getini("model-iOS"),
'platformName': get_device_configuration["platformName-iOS"],
'model': get_device_configuration["model-iOS"],
'browserName': 'safari',
# 'automationName' : 'Appium',
'securityToken': request.config.getini("securityToken"),
'securityToken': PERFECTO_DETAILS["securityToken"],
'useAppiumForWeb': 'false',
'autoAcceptAlerts': 'true',
# 'bundleId' : request.config.getini("bundleId-iOS"),
@@ -594,7 +595,7 @@ def setup_perfectoMobile_iOS(request):
pytest.exit("Exiting Pytest")
driver = webdriver.Remote(
'https://' + request.config.getini("perfectoURL") + '.perfectomobile.com/nexperience/perfectomobile/wd/hub',
'https://' + PERFECTO_DETAILS["perfectoURL"] + '.perfectomobile.com/nexperience/perfectomobile/wd/hub',
capabilities)
driver.implicitly_wait(2)
@@ -609,11 +610,11 @@ def setup_perfectoMobile_iOS(request):
print("\nUpgrade Python to 3.9 to avoid test_ string in your test case name, see below URL")
# print("https://www.andreagrandi.it/2020/10/11/python39-introduces-removeprefix-removesuffix/")
projectname = request.config.getini("projectName")
projectversion = request.config.getini("projectVersion")
jobname = request.config.getini("jobName")
jobnumber = request.config.getini("jobNumber")
tags = request.config.getini("reportTags")
projectname = PERFECTO_DETAILS["projectName"]
projectversion = PERFECTO_DETAILS["projectVersion"]
jobname = get_device_configuration["jobName"]
jobnumber = get_device_configuration["jobNumber"]
tags = PERFECTO_DETAILS["reportTags"]
testCaseName = TestCaseName
print("\nSetting Perfecto ReportClient....")
@@ -659,8 +660,8 @@ def setup_perfectoMobile_iOS(request):
yield driver, reporting_client
# Does a HTTP GET request to Perfecto cloud and gets response and information related to a headset
def response_device(request, model):
securityToken = request.config.getini("securityToken")
perfectoURL = request.config.getini("perfectoURL")
securityToken = PERFECTO_DETAILS["securityToken"]
perfectoURL = PERFECTO_DETAILS["perfectoURL"]
url = f"https://{perfectoURL}.perfectomobile.com/services/handsets?operation=list&securityToken={securityToken}&model={model}"
resp = requests.get(url=url)
return ET.fromstring(resp.content)

View File

@@ -35,7 +35,7 @@ setup_params_general = {
"wpa2_personal": [
{"ssid_name": "ssid_wpa2_2g_vlan", "appliedRadios": ["2G"], "security_key": "something", "vlan": 100},
{"ssid_name": "ssid_wpa2_5g_vlan", "appliedRadios": ["5G"],
"security_key": "something_vlan", "vlan": 100}]},
"security_key": "something", "vlan": 100}]},
"rf": {},
"radius": False
}

View File

@@ -759,6 +759,102 @@
}
},
"PERFECTO_DETAILS" : {
"securityToken":"eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJpYXQiOjE2MzI4Mzc2NDEsImp0aSI6IjAwZGRiYWY5LWQwYjMtNDRjNS1hYjVlLTkyNzFlNzc5ZGUzNiIsImlzcyI6Imh0dHBzOi8vYXV0aDIucGVyZmVjdG9tb2JpbGUuY29tL2F1dGgvcmVhbG1zL3RpcC1wZXJmZWN0b21vYmlsZS1jb20iLCJhdWQiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwic3ViIjoiODNkNjUxMWQtNTBmZS00ZWM5LThkNzAtYTA0ZjBkNTdiZDUyIiwidHlwIjoiT2ZmbGluZSIsImF6cCI6Im9mZmxpbmUtdG9rZW4tZ2VuZXJhdG9yIiwibm9uY2UiOiI2ZjE1YzYxNy01YTU5LTQyOWEtODc2Yi1jOTQxMTQ1ZDFkZTIiLCJzZXNzaW9uX3N0YXRlIjoiYmRjZTFmYTMtMjlkYi00MmFmLWI5YWMtYjZjZmJkMDEyOTFhIiwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.5R85_1R38ZFXv_wIjjCIsj8NJm1p66dCsLJI5DBEmks",
"projectName": "TIP-PyTest-Execution",
"projectVersion": "1.0",
"reportTags": "TestTag",
"perfectoURL":"tip",
"iPhone-11": {
"model-iOS": "iPhone-11",
"bundleId-iOS": "com.apple.Preferences",
"platformName-iOS": "iOS",
"bundleId-iOS-Settings": "com.apple.Preferences",
"bundleId-iOS-Ping": "com.deftapps.ping",
"browserType-iOS": "Safari",
"bundleId-iOS-Safari": "com.apple.mobilesafari",
"platformName-android": "Android",
"appPackage-android": "com.android.settings",
"jobName": "Interop-iphone-11",
"jobNumber": 38
},
"iPhone-12": {
"model-iOS": "iPhone-12",
"bundleId-iOS": "com.apple.Preferences",
"platformName-iOS": "iOS",
"bundleId-iOS-Settings": "com.apple.Preferences",
"bundleId-iOS-Ping": "com.deftapps.ping",
"browserType-iOS": "Safari",
"bundleId-iOS-Safari": "com.apple.mobilesafari",
"platformName-android": "Android",
"appPackage-android": "com.android.settings",
"jobName": "Interop-iphone-12",
"jobNumber": 38
},
"iPhone-7": {
"model-iOS": "iPhone-7",
"bundleId-iOS": "com.apple.Preferences",
"platformName-iOS": "iOS",
"bundleId-iOS-Settings": "com.apple.Preferences",
"bundleId-iOS-Ping": "com.deftapps.ping",
"browserType-iOS": "Safari",
"bundleId-iOS-Safari": "com.apple.mobilesafari",
"platformName-android": "Android",
"appPackage-android": "com.android.settings",
"jobName": "Interop-iphone-7",
"jobNumber": 38
},
"iPhone-XR": {
"model-iOS": "iPhone-XR",
"bundleId-iOS": "com.apple.Preferences",
"platformName-iOS": "iOS",
"bundleId-iOS-Settings": "com.apple.Preferences",
"bundleId-iOS-Ping": "com.deftapps.ping",
"browserType-iOS": "Safari",
"bundleId-iOS-Safari": "com.apple.mobilesafari",
"platformName-android": "Android",
"appPackage-android": "com.android.settings",
"jobName": "Interop-iphone-XR",
"jobNumber": 38
},
"Galaxy S20": {
"platformName-android": "Android",
"model-android": "Galaxy S20",
"appPackage-android": "com.android.settings",
"bundleId-iOS-Settings": "com.apple.Preferences",
"bundleId-iOS-Safari": "com.apple.mobilesafari",
"jobName": "Interop-Galaxy-S20",
"jobNumber": 38
},
"Galaxy S10.*": {
"platformName-android": "Android",
"model-android": "Galaxy S10.*",
"appPackage-android": "com.android.settings",
"bundleId-iOS-Settings": "com.apple.Preferences",
"bundleId-iOS-Safari": "com.apple.mobilesafari",
"jobName": "Interop-Galaxy-S10",
"jobNumber": 38
},
"Galaxy S9": {
"platformName-android": "Android",
"model-android": "Galaxy S9",
"appPackage-android": "com.android.settings",
"bundleId-iOS-Settings": "com.apple.Preferences",
"bundleId-iOS-Safari": "com.apple.mobilesafari",
"jobName": "Interop-Galaxy-S9",
"jobNumber": 38
},
"Pixel 4": {
"platformName-android": "Android",
"model-android": "Pixel 4",
"appPackage-android": "com.android.settings",
"bundleId-iOS-Settings": "com.apple.Preferences",
"bundleId-iOS-Safari": "com.apple.mobilesafari",
"jobName": "Interop-pixel-4",
"jobNumber": 38
}
},
"RADIUS_SERVER_DATA" : {
"ip": "10.10.1.221",
"port": 1812,

View File

@@ -36,38 +36,6 @@ tr_project_id=WLAN
tr_prefix=TIP_
milestone=29
#--- Perfecto parameters -----
perfectoURL=tip
securityToken=eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJpYXQiOjE2MzI4Mzc2NDEsImp0aSI6IjAwZGRiYWY5LWQwYjMtNDRjNS1hYjVlLTkyNzFlNzc5ZGUzNiIsImlzcyI6Imh0dHBzOi8vYXV0aDIucGVyZmVjdG9tb2JpbGUuY29tL2F1dGgvcmVhbG1zL3RpcC1wZXJmZWN0b21vYmlsZS1jb20iLCJhdWQiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwic3ViIjoiODNkNjUxMWQtNTBmZS00ZWM5LThkNzAtYTA0ZjBkNTdiZDUyIiwidHlwIjoiT2ZmbGluZSIsImF6cCI6Im9mZmxpbmUtdG9rZW4tZ2VuZXJhdG9yIiwibm9uY2UiOiI2ZjE1YzYxNy01YTU5LTQyOWEtODc2Yi1jOTQxMTQ1ZDFkZTIiLCJzZXNzaW9uX3N0YXRlIjoiYmRjZTFmYTMtMjlkYi00MmFmLWI5YWMtYjZjZmJkMDEyOTFhIiwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.5R85_1R38ZFXv_wIjjCIsj8NJm1p66dCsLJI5DBEmks
#PS Token
#securityToken=eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICIyODhhNDIyNS1jOTE1LTQwZDctOTc2YS04MDhiMWE3YTFmODYifQ.eyJpYXQiOjE2MjA4NTU1NTcsImp0aSI6IjNiMWJiNWNhLTkzOTgtNDViOC04YmZkLTAxNjdhNGZjNDY1NCIsImlzcyI6Imh0dHBzOi8vYXV0aC5wZXJmZWN0b21vYmlsZS5jb20vYXV0aC9yZWFsbXMvcHMtcGVyZmVjdG9tb2JpbGUtY29tIiwiYXVkIjoiaHR0cHM6Ly9hdXRoLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy9wcy1wZXJmZWN0b21vYmlsZS1jb20iLCJzdWIiOiIzOTNiMzFhNC00MmJlLTQ2YjEtODkwZS1iZGU3NjdlYTNiNDYiLCJ0eXAiOiJPZmZsaW5lIiwiYXpwIjoib2ZmbGluZS10b2tlbi1nZW5lcmF0b3IiLCJub25jZSI6IjI3MTY4ZjBmLTdlMmItNGI3YS1hZjNjLWFhMGE1NjhkZjE2ZCIsInNlc3Npb25fc3RhdGUiOiJlOWZjZTQ5Mi05NDA3LTQ1ZDItYjU4NS02ZDFiNTAzYzM4ZTUiLCJzY29wZSI6Im9wZW5pZCBvZmZsaW5lX2FjY2VzcyJ9.Z_rJHVkrmR26fZ366yLUSkt2oZX4a8KN7IRCd_QG3qo
#demo Cloud
#securityToken=eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI4YmI4YmZmZS1kMzBjLTQ2MjctYmMxMS0zNTYyMmY1ZDkyMGYifQ.eyJpYXQiOjE2MjA5MTMzMjAsImp0aSI6ImRkOWI3OTFiLTA5NzUtNGVhMC05NDczLWU2MjEzOThhN2U0NyIsImlzcyI6Imh0dHBzOi8vYXV0aC5wZXJmZWN0b21vYmlsZS5jb20vYXV0aC9yZWFsbXMvZGVtby1wZXJmZWN0b21vYmlsZS1jb20iLCJhdWQiOiJodHRwczovL2F1dGgucGVyZmVjdG9tb2JpbGUuY29tL2F1dGgvcmVhbG1zL2RlbW8tcGVyZmVjdG9tb2JpbGUtY29tIiwic3ViIjoiZjAyNGVkZGItODZkMy00OTA5LThhZjQtOGY1OTA1Yzc5ZjA4IiwidHlwIjoiT2ZmbGluZSIsImF6cCI6Im9mZmxpbmUtdG9rZW4tZ2VuZXJhdG9yIiwibm9uY2UiOiI5ZDdkMjI5Ny1lYzk1LTQ5NjUtYmRmMC1mZWJiYTk4NzI1MzUiLCJzZXNzaW9uX3N0YXRlIjoiMTI1NjFlMDQtMGUwMS00ZTYxLWE4NjMtMGQ2N2RhNzc1NjhiIiwic2NvcGUiOiJvcGVuaWQgb2ZmbGluZV9hY2Nlc3MifQ.voz1Fca_tOlPDMbIMsoPvTmZHBioeMUetA2sVsQ_SWw
# Perfecto CI Report
projectName=TIP-PyTest-Execution
projectVersion=1.0
jobName=Tip-RajTest-Android
jobNumber=2
reportTags=TestTag
# iOS Device Capabilities
#manufacturer-iOS=Apple
model-iOS=iPhone-11
bundleId-iOS=com.apple.Preferences
platformName-iOS=iOS
#default iOS settings app
bundleId-iOS-Settings=com.apple.Preferences
bundleId-iOS-Ping=com.deftapps.ping
#browserType-iOS=Safari
browserType-iOS=Safari
bundleId-iOS-Safari=com.apple.mobilesafari
# Android Device Capabilities
platformName-android=Android
model-android=Galaxy S20
appPackage-android=com.android.settings
filterwarnings=ignore::UserWarning