aboutsummaryrefslogtreecommitdiffstats
path: root/resources/libraries/bash/function/common.sh
AgeCommit message (Collapse)AuthorFilesLines
2021-01-04FIX: AWK NIC replace in case of x520pmikus1-1/+1
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I7d83ba048e0609d6b8623fab5c2960e48a37c023 (cherry picked from commit 3c3930b9f6f9a40d6b30f6e56e8c40279e34f650)
2020-12-18FIX: Backward compatibility include selectionpmikus1-2/+9
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: Ieff60a44d42d66acee8ba1680e7e285d6cd01bc9 (cherry picked from commit e62ade12b7c9918cda2d363387ed0f517aa9840d)
2020-12-17Switch include to testpmikus1-22/+36
+ Reduce time overhead when parsing --include vs --test + Input files will remain the same + 3n-hsw 150include ~24min, 150test ~5min + 2n-clx 489include ~61min, 489test ~9min Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: Ia453b1bc1d1862bfc378a7611064a67ee564e2f2
2020-12-03Avoid ci-management archiving files twiceVratko Polak1-27/+44
This is a follow-up to https://gerrit.fd.io/r/c/csit/+/20394 https://gerrit.fd.io/r/20119 has changed the way archival works, everything should now go to logs.fd.io (instead of appearing on run page in jenkins.fd.io). The glob pattern for archiving is quite eager, doing recursive search. That is good, as it can find also misplaced useful outputs. But it also means our usage of copy_archives function creates two copies of archived directtories, usually archives/ and archives/archive/. This change renames copy_archives to move_archives, with few workarounds to support multiple calls. I also renamed ARCHIVE_DIR value from $CSIT_DIR/archive to $CSIT_DIR/archives to make "move" operation look natural. Finally, download_builds function is being removed, as after recent improvements to VPP compilation speed nobody seems to be using it. Change-Id: I19a429e1dfdfaab7fcf32a9609963b1aebd33c6c Signed-off-by: Vratko Polak <vrpolak@cisco.com> (cherry picked from commit 523c6e6e24101206ff1318ca17c310dff8b3c9d2)
2020-12-01Tolerate base64 encoded Gerrit commentsVratko Polak1-2/+8
+ Move "|| true" to a place that really aviods errors. + Attemp to parse decoded string if trigger is not found in plain one. Change-Id: If3587229ec588f9ad41acb3050add1142032d2d8 Signed-off-by: Vratko Polak <vrpolak@cisco.com> (cherry picked from commit 4582f0f408616cdff8e606ac3abfe154f8f0514b) (cherry picked from commit f89bc7a87e0b6015e50de3557a1724c8aaafbf60)
2020-11-162n-zn2 Epyc backportpmikus1-8/+15
- Better to get it fully aligned then cherry-pick spaghetti. Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: If223ef3f0247413d53225eb57f8903a7675632e3
2020-10-14vpp_device: fix shim hostnameJuraj Linkeš1-5/+4
Replace the hacky grep of /etc/resolv.conf with default docker gateway IP. Change-Id: Iec3a4658826f2ba871acb14d511e9c79a1273290 Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2020-09-21FIX: Unknown trigger filespmikus1-5/+5
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I8d6108af943d729fecbcfe4867ea820a69b4eb1e
2020-08-06Limit user triggers: no ORVratko Polak1-0/+7
To avoid runs such as: https://jenkins.fd.io/job/vpp-csit-verify-perf-master-3n-hsw/340/ Change-Id: I1b30d5f440ddf8ff32b11265b2ac2176f4b9a665 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2020-06-30make graph node variant can be configured from gerrit triggerYulong Pei1-0/+13
for example, below will trigger VPP with default code path test in CSIT, "csit-2n-clx-perftest mrrAND64bANDnic_intel-xxv710ANDeth-l2bdbasemaclrnNOTdrv_avf" and below will trigger VPP with avx512 code path test in CSIT, "csit-2n-clx-perftest icl mrrAND64bANDnic_intel-xxv710ANDeth-l2bdbasemaclrnNOTdrv_avf" Change-Id: Id3abf932203ce00f34f8643c5bc4d5fc4d3e6efb Signed-off-by: Yulong Pei <yulong.pei@intel.com>
2020-06-11Update selection of report-iterative test setsTibor Frank1-1/+4
- Create the same directory structure for report-iterative as it is for report-coverage. - Move files from report-iterative directory to created sub-directories. - Rename the moved files to keep the convention defined in report-coverage. - Update the corresponding functionality in resources/libraries/bash/function/common.sh The patches: - https://gerrit.fd.io/r/c/csit/+/27486 - https://gerrit.fd.io/r/c/csit/+/27484 - https://gerrit.fd.io/r/c/csit/+/27485 must be updated. Change-Id: I1aaf22690e3df5abf56893bb1d2d380debc54ddd Signed-off-by: Tibor Frank <tifrank@cisco.com>
2020-05-26FIX: add dpdk mrr_weekly and report_iterative job specsJan Gelety1-4/+5
- split job specs to directories Change-Id: I9a71621216ab0bdf85d147ce03f473e7cbb0b266 Signed-off-by: Jan Gelety <jgelety@cisco.com>
2020-05-26Add csit-vpp/dpdk-perf-report-coverage job and job specificationsJan Gelety1-0/+8
- note: currently dpdk report-coverge test sets are equal to dpdk report-iterative test sets Change-Id: Ib9a718bfea4b24842742f49ee2eca022aa8a08e5 Signed-off-by: Jan Gelety <jgelety@cisco.com>
2020-05-18Add csit-vpp-perf-report-iterative jobJan Gelety1-0/+5
- job will be used to collect vpp performance iterative data for csit report Change-Id: I4cff5caa0a97d08b11f3eb9b72963deaf1b04c73 Signed-off-by: Jan Gelety <jgelety@cisco.com>
2020-05-13Infra: PIP installation freezepmikus1-3/+3
+ Waiting for Docker image to be updated. Then next step I will disable any update attempt. Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I92d4e27be0537a95473cd723a45e6185b26ce599
2020-05-13job-specs: new job test spec files including test count and durationsJan Gelety1-11/+15
Change-Id: I4ad87092bff1c072051ca1c7243d8dedb1c4576e Signed-off-by: Jan Gelety <jgelety@cisco.com> Signed-off-by: Maciek Konstantynowicz <mkonstan@cisco.com>
2020-02-04Ansible: Cleanup and speedupPeter Mikus1-5/+5
Signed-off-by: Peter Mikus <pmikus@cisco.com> Change-Id: Ia2ce482798204ad426f93f334c97e28eb51139fd
2020-01-22Generate tests in deterministic orderVratko Polak1-1/+2
Change-Id: I47e45f395976fd65a8da0e93bc33588cc213c79e Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2020-01-10Trending: new daily setJan Gelety1-2/+11
New daily sets are prepared based on information in https://gerrit.fd.io/r/c/csit/+/24073/1/docs/job_specs/perf_tests_job_specs.md and previous test set definitions in docs/job_specs/test_select_list_[2n|3n]_[clx|skx|hsw|tsh|dnv].md files. - mrr-daily-2n-clx: 510 TCs (incl. nfv_density), expected exec. time 8:50h - mrr-daily-2n-skx: 525 TCs (incl. nfv_density), expected exec. time 7:55h - mrr-daily-3n-skx: 393 TCs (incl. nfv_density), expected exec. time 11:00h - mrr-daily-3n-hsw: 177 TCs (incl. nfv_density), expected exec. time 7:10h - mrr-daily-3n-tsh: 204 TCs, expected exec. time 21:00h - mrr-daily-2n-dnv: 84 TCs, expected exec. time 2:25h - mrr-daily-3n-dnv: 144 TCs, expected exec. time 6:35h + add some missing test suites + add trex-sl-2n-ethip4udp-1000u15p.py T-Rex traffic profile + correction of TS and TC names and tags in directory tests/vpp/perf/nfv_density/chain_ipsec Change-Id: Icfc86e9af97ed8dd8ccd2a34355c99aad69a28c0 Signed-off-by: Jan Gelety <jgelety@cisco.com>
2019-12-16FIX PIP requirement packagesPeter Mikus1-1/+1
+ CSIT will only use packages installed from master PIP requirement.txt file + All CSIT subsequent code must use single function and PIP list for virtualenv - Report/PAL/doc/trending will follow in next patch Change-Id: Ia9150fb05a144182a5a163178d553370ede55cdd Signed-off-by: Peter Mikus <pmikus@cisco.com>
2019-12-13Reduce spam from device bootstrapVratko Polak1-0/+6
It uses "declare -f" to paste the complete common.sh file. Twice. The output from ssh remote side still remains visible, but avoiding the spam should ease scrolling to Robot console output. Change-Id: I746484ada7650a6dfa6794e76550757af5413a82 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-12-05FIX: Some leftovers + csit_sut image syncPeter Mikus1-4/+3
Signed-off-by: Peter Mikus <pmikus@cisco.com> Change-Id: I9b47f9a31c11f155ba5b4676ccf0fc4c413a3942
2019-11-29Python3: PIP requirementPeter Mikus1-5/+6
- Install via PIP3 - Use virtualenv Python3 interpret Signed-off-by: Peter Mikus <pmikus@cisco.com> Change-Id: Iad22b344b418a1d91774d23d5ea17bfd48d394b3
2019-11-18Improve test tag string parsingVratko Polak1-21/+12
Instead of just adding the missing -clx, the new way aims to be forward compatible. The new implementation is quite permissive, ignoring all "word" chars sticking to the trigger word and returning everything after that and space up to the endline. + Unified perftest and devicetest handling. + Consequently, triggers like "devicetest-1n-skx GBP" will work now. Change-Id: I3bda6105195180d35a589a75318f569e36f03461 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-11-11New weekly mrr triggerJan Gelety1-1/+2
Change-Id: Iff21ad109e5f0a8ed06bd561e75c8a708e84c036 Signed-off-by: Jan Gelety <jgelety@cisco.com>
2019-11-11Remove the leftovers of the old testbed cleanupVratko Polak1-13/+0
Change-Id: I464db6fb6c220f23f2fe69df2c793175975d7b72 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-11-08Prevent many TC triggered by bad tag expressionsVratko Polak1-2/+8
Typical example: Use multiple perftest lines in a comment. Atypical example: Use perftest as an expression (without any ANDs). Fix: Die if "perftest" is found in the tag expression (before prefixing). Change-Id: I0230541b30557ce7a4e9d57c8303cd432f86747d Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-11-07FIX: use correct NIC for mr-daily-master jobJan Gelety1-1/+1
Change-Id: I57bc8c7eda7ea959d92f7e35b7989d64b20743a0 Signed-off-by: Jan Gelety <jgelety@cisco.com>
2019-11-07Source ansible.sh for entry scripts using cleanupVratko Polak1-0/+2
Change-Id: Iee02577ee0c054feb61edee807182c6808f235b0 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-11-05Cleanup via AnsiblePeter Mikus1-2/+2
+ Remove dependency on topo_ scripts that depends on custom SSH() that depends on framework itself. This way the cleanup is independent of failure in our SSH libs. + Simple ansible command can do cleanup of a machine: ansible-playbook --inventory inventories/lf_inventory/hosts site.yaml \ --limit '10.32.8.18' --tags 'cleanup' + Add vpp_device reset and cleanup. + Remove historical scripts. - Still in testing beta phase. - Need to add SRIOV cleanup. Signed-off-by: Peter Mikus <pmikus@cisco.com> Change-Id: I68e23304c7ad01041f51263c328c6e8d9b555cb7
2019-10-29New daily triggersJan Gelety1-0/+6
New daily triggers defined based on requirements defined in https://gerrit.fd.io/r/c/csit/+/22341/34/resources/tools/presentation/doc/trending_test_groups.md Change-Id: I95bff10d9a2e29c712a33f7c043933244b712fd0 Signed-off-by: Jan Gelety <jgelety@cisco.com>
2019-09-12Topology: CascadelakePeter Mikus1-0/+11
Signed-off-by: Peter Mikus <pmikus@cisco.com> Change-Id: I1533f00dd4b40f9dda82b1e9b5b15a81bbb9f7fb
2019-08-19FIX: Topology reservationPeter Mikus1-35/+0
Last attempt [0] is doing more harm then good. If testbed is down but recovered quickly enough (reboot, temporary ssh connectivity issue, ...) it never gets back into pool making other testbeds overloaded and queued. This patch is suppose to partially revert previous behavior until proper patch will follow. [0] https://gerrit.fd.io/r/c/csit/+/21148 Signed-off-by: Peter Mikus <pmikus@cisco.com> Change-Id: I8203946d10d3e7dd51e97519d679246b5dae59e3
2019-08-15TOX: DOC verifyPeter Mikus1-0/+3
Signed-off-by: Peter Mikus <pmikus@cisco.com> Change-Id: Ifa4de8e60742f5c4cf4c2f377692313e23f9983b
2019-08-12FIX: Remove unwanted Jenkins dependencyPeter Mikus1-3/+0
Signed-off-by: Peter Mikus <pmikus@cisco.com> Change-Id: I7a43c3183dc276fa5e4806f31a52cf5844792d4d
2019-08-09Skip bad testbeds in reservationVratko Polak1-19/+42
Previously, ssh-inaccesible testbeds were handled the same way as reserved, never ending the wait loop. With this, if no testbed is accessible, the job fails early. Change-Id: I01bc79094fe0232a47d795e53e3daa52e8742bac Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-08-06VPPD: Dot1QPeter Mikus1-1/+15
Change-Id: I0d3c925ea4a6896a0df98db6ddaf4238e6291bf1 Signed-off-by: Peter Mikus <pmikus@cisco.com>
2019-07-31Add: Prerequisites checkerPeter Mikus1-0/+33
Change-Id: Ida54722ee5c73a0b3e0a8e22692795daf5bb09f3 Signed-off-by: Peter Mikus <pmikus@cisco.com>
2019-07-23Update documentation of select_arch_osVratko Polak1-6/+3
Change-Id: I619a18918b0710a59a3b36283aa79da06d640fae Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-07-233n-tsh timeout, testbed tags and ansible updatejuraj.linkes1-5/+3
* disable AVF tests which don't work with x520 * increase VPPApiClient timeout to 14s, as x520 show hardware is slower on Taishan * re-enable vhost and memif tests * remove tx2 mrr daily tag list; no tx2 is used for perf testing * remove taishan workaround * add scipy arm prerequisites and scipy workaround * rework inventories/lf_inventory/hosts; move cpu_microarchitecture to host files Change-Id: I5f10bd07b8146ac3b8be8c54fbb4d924a9373813 Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
2019-07-23Add support for aarch64 container imagesjuraj.linkes1-2/+14
Change-Id: I84f13d7139a6e5f7004426018c2d27425c5fa97e Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
2019-07-19Add support for default_nic in mrr tag listsjuraj.linkes1-2/+3
Change-Id: I1fdc6f3019af6d46b985164c573d44b0e440febd Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
2019-07-17Revert "Avoid ci-management archiving files twice"Peter Mikus1-0/+25
This reverts commit ccfe499e2a27f2caf234ecbb2ec948120810eab6. Change-Id: I076bdaf255f6fa5cc6b0f25926850d62f450fd94 Signed-off-by: Peter Mikus <pmikus@cisco.com>
2019-07-17Use PapiSocketProvider for most PAPI callsVratko Polak1-87/+96
Ticket: CSIT-1541 Ticket: VPP-1722 Ticket: CSIT-1546 + Increase timeout to hide x520 slownes of show hardware detail. - Install sshpass and update ssh client in virl bootstrap. + Added TODOs to remove when CSIT-1546 is fixed. + Enable default socksvr on any startup conf. + Improve OptionString init and repr. - The non-socket executor still kept for stats. + Remove everything unrelated to stats from non-socket executor. - Remove some debug-loooking calls to avoid failures. TODO: Introduce proper parsing to the affected keywords. + Reduce logging from PAPI code to level INFO. - Needs https://gerrit.fd.io/r/20660 to fully work. + Change default values for LocalExecution.run() + Return code check enabled by default. Code is more readable when rc!=0 is allowed explicitly, and the test code will now detect unexpected failures. + Logging disabled by default. Output XML is large already. Important logging can be enabled explicitly. + Restore alphabetical order in common.sh functions. Change-Id: I05882cb6b620ad14638f7404b5ad38c7a5de9e6c Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-07-12Avoid ci-management archiving files twiceVratko Polak1-25/+0
https://gerrit.fd.io/r/20119 has changed the way archival works, everything should now go to logs.fd.io (instead of appearing on run page in jenkins.fd.io). The glob pattern for archiving is quite eager, doing recursive search. That is good, as it can find also misplaced useful outputs. But it also means our usage of copy_archives function creates two copies of archived directories, usually archives/ and archives/archive/. This change simply removes copy_archives, relying on the new recursive search. A solution with changing ARCHIVE_DIR and moving if needed would be better, but looking at amout of jobs and various func bootstraps, it is not worth the effort. Change-Id: Iad2bc09455944307e59eecafa64d1db6dc8befe8 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-07-12Add per arch mrr daily test for denverton platformYulong Pei1-1/+4
Change-Id: Ica7d6bf0dbdfde3de70eabd131c79cadd8af3a16 Signed-off-by: Yulong Pei <yulong.pei@intel.com>
2019-07-11CSIT-1477: add 1n_tx2 VPP Devicejuraj.linkes1-4/+8
- add 1n_tx2 testbed - update VF reservation to meet 1n_tx2 testbed needs - update ansible with 1n_tx2 Change-Id: Ia075a913d4859f537fd0e6bff731ea88aff01dd9 Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
2019-07-10Bash functions style cleanupVratko Polak1-59/+80
+ Update rst documentation for bash style + Command substitution: + Clarify when to use backticks. + Recommend avoiding nested command substitution. + Do not recommend putting command substitution results into quotes. + Function definition content: + Move "set -exuo pipefail" after comment only blocks. + Other set flags allowed for functions with good reasons. + Apply the new recommendations. - Blank lines unified in code but no written recommendation in rst. + Add missing references to functions called, variables read or set. + Add TODOs to where lists would be long. + Minor improvements to function descriptions. + Make "if" expressions more python-like. + Add missing "|| die" (or "|| true") where spotted. + Downgrade DEFAULT_NIC to a local variable. + Add TODO to list reasons for blacklisted tags. Change-Id: I05dce030a8c2cb1b3a242d8b977e8fe150d8ee20 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-06-26Introduce EXPECTED_FAILINGPeter Mikus1-7/+1
Change-Id: I6c578e9126778c584ccb57a4a2c76d96dea8fb35 Signed-off-by: Peter Mikus <pmikus@cisco.com>
2019-06-24Store "tag" and "url" in files in reservation dirVratko Polak1-1/+8
String "Unknown" is used if test run tag or url is not supplied, so this change should be backward compatible. + Used "runtag", as both "test" and "tag" start with taken "-t". + Fixed some pylint violations. + Docstring explaining the steps taken and reasoning behind two files. + Other minor improvements. Change-Id: If704d02e51374087fe39ad0f69432477d1b310d3 Signed-off-by: Vratko Polak <vrpolak@cisco.com>