summaryrefslogtreecommitdiffstats
path: root/jjb/xci
AgeCommit message (Collapse)AuthorFilesLines
2018-04-11jjb: xci: xci-run-functest.sh: Reload XCI environment for functestMarkos Chandras1-2/+3
We should reload the XCI environment before running functest in order to ensure that playbooks have the correct information from the XCI deployment. Change-Id: Ieadeca61d3ea3e504e21aa96945ad067f20d1489 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-11xci: Enable Functest Healthcheck for Kubernetes scenariosFatih Degirmenci1-6/+0
This change enables Functest for kubernetes scenarios but any change that impacts kubernetes scenarios will fail and block the change from merging until the prepare-functest playbook and role are fixed in releng-xci. Change-Id: I046e3a0fb9a211cf9d629899017922288d466b0c Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-04-10jjb: xci: xci-set-scenario: Drop errexit optionMarkos Chandras1-1/+0
Commands may exit with non-zero exit code but this could be normal (for example grep does than when it doesn't match anything). As such, lets not fail on everything but rather capture such failures and handle them appropriately. Change-Id: Icc16d0ccd09fd6f262600ae514161bfdf0c593f1 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-06jjb: xci: Set XCI_PATH for bifrost jobsMarkos Chandras1-0/+3
The bifrost jobs are using some scripts from the releng-xci repository so we need to set the XCI_PATH variable appropriately. Change-Id: Ibfd139d2401029b2ea577c4797b68f29362356ec Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-06jjb: xci: Only set default scenario if no scenario is setMarkos Chandras1-7/+11
Previously, the code was already setting the default scenario if we had changes outside the xci/scenario directory. However, this is somewhat problematic since scenarios may touch other files which do not necessary affect other scenarios such as anything in xci/playbooks etc. As such, lets only set a default scenario if no scenario was set up to that point. However, since installers and scenarios need to match, we also need to consider installer changes because we fallback to the default scenario. Finally, since we are filtering results with 'uniq' we can simply drop the bash regexps prior to adding the scenario to the array. Change-Id: Ie961071b3e93d04a860bb6655513654208b1a9d4 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-06jjb: xci: Fix functest exit codeMarkos Chandras1-5/+3
There is not reason to grep the logs for failures because we can simply preserve the functest exit code and use that to determine whether the job passed or not. Change-Id: I9f027960fd3d9d452d417b95e9dac66bbb314a47 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-06jjb: xci: xci-set-scenario: Allow automatic detection of generic scenariosMarkos Chandras1-10/+10
The list of supported scenarios is hardcoded and this makes it difficult to test new scenarios. As such, lets determine the scenario and the installer based on the actual files that have been changed on every patchset. Change-Id: I4868a1da08d58cd6ff37347a0c0bc5c5e28b15bb Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-03-26xci: Set content-type of promotion properties file to text/htmlFatih Degirmenci1-1/+2
Change-Id: I609b796c629c68df214634ced5e9e6bda8ac2607 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-24xci: Run ansible within venvFatih Degirmenci1-1/+4
Change-Id: I20eb3c89c199b09ce839ae4ef6dfdcdd34dc58cf Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-23Merge "xci: Do not trigger merge jobs for INFO.yaml updates"Fatih Degirmenci1-0/+2
2018-03-22xci: Record promotion time in UTCFatih Degirmenci1-1/+1
Change-Id: Id6ea4f8124bdfe8c4233400d216d503fa101b0cb Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-23Merge "xci: Record additional promotion metadata for further use"Fatih Degirmenci1-0/+4
2018-03-22xci: Set additional variables in CI test scriptFatih Degirmenci1-0/+3
We need the variables CI_LOOP, BUILD_TAG, and NODE_NAME passed to the deployment to display during functest execution. Change-Id: Ib6709678d760d43927d3cd9f606d2c7e74e724d0 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-22xci: Do not trigger merge jobs for INFO.yaml updatesFatih Degirmenci1-0/+2
Change-Id: I16eed2ec0ca1fa659fc449799813c02b19b08174 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-22xci: Record additional promotion metadata for further useFatih Degirmenci1-0/+4
It would be good to point to the link of the job that promoted certain scenario and display promotion date/time so we know when was the last time the scenario has successfully been promoted. Change-Id: I8099cf48f0ba5000cbf7622aa084f863f123eb15 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-22jjb: xci: bifrost-verify: Update location for XCI bifrost scriptsMarkos Chandras1-1/+1
Change-Id: I55e5042fda4bf5662a90f0065fa427a50bc76bfa Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-03-21xci: Disable merge jobs on centos until centos is fixed properlyFatih Degirmenci1-3/+4
Change-Id: Ieab479d257fb1922136eb343d1dd25f2006c2ac2 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-21xci: Make centos jobs non-voting for promotionFatih Degirmenci1-4/+10
Change-Id: I981b115bc37f034db991667a29f0ce66b239cbdf Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-20xci: Set CI_LOOP, FUNCTEST_MODE, and FUNCTEST_SUITE_NAME in jobsFatih Degirmenci2-4/+61
These variables are needed for displaying details of functest run. Apart from that and more importantly, FUNCTEST_SUITE_NAME will be important for adjusting the criteria for verifying and promoting scenarios. Change-Id: I7a3c82c6babc4d5e057b26fda697e9fc969c8526 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-20Merge "xci: Enable post merge promotion for generic scenarios"Fatih Degirmenci1-0/+15
2018-03-19xci: Make centos job non-voting for promotionFatih Degirmenci1-2/+2
verify-centos jobs do not vote for patch verification since things on centos are still shaky. Make merge-centos jobs non-voting for promotion as well by not allowing them to fail the entire promotion job or by stopping the promotion. Change-Id: Idf7b3c7586d94454ff94cd0bccf42f02954c722c Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-19xci: Enable post merge promotion for generic scenariosFatih Degirmenci1-0/+15
Change-Id: Iacbd6515de08e77e3874354fc8e23a6cf8f7bf61 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-19Merge "xci: Enable deployment and testing for post merge jobs"Fatih Degirmenci1-6/+7
2018-03-19xci: Fix envInject and remove scenario distro support checkFatih Degirmenci2-9/+2
envInject doesn't play well with variable expansion so it is fixed. [1] Scenario support check is not necessary for promotion since the promotion job is common for all scenarios/distros and check is done as part of earlier distro jobs accordingly. [2] gsutil upload is also made quiet. Fixed version can be seen from [3]. [1] https://build.opnfv.org/ci/job/xci-merge-promote-virtual-master/2/console [2] https://build.opnfv.org/ci/job/xci-merge-promote-virtual-master/4/console [3] https://build.opnfv.org/ci/job/xci-merge-promote-virtual-master/5/console Change-Id: Ie36394cab631826209dda4cea6daa456aca3c276 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-19xci: Enable deployment and testing for post merge jobsFatih Degirmenci1-6/+7
Change-Id: I61fdcf11cc8008bde1c4e26e7b4fd6f16b6e5a78 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-19xci: Store the metadata for promoted scenarioFatih Degirmenci2-9/+34
Change-Id: I1048be7e7a41c56d25c7689678d3811f0a5eae44 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-19xci: Make post merge job common across all scenariosFatih Degirmenci1-29/+20
It is difficuly to have post-merge jobs per scenario since we set the scenario during job runtime and having jobs per scenario makes things unnecessarily complicated. Apart from that, there is no reason to have scenario specific merge jobs either since this is some kind of verify job and everything is same except the scenario name itself which we extract via set-scenario script. Daily and further jobs will be scenario specific since they will be run on timer and we will have ability to specify the scenario. Change-Id: I3bf6d5ce0fbc48b2d2b2b9695e198bad229ce08d Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-17xci: Adjust the recorded scenario metadata for promotionFatih Degirmenci1-15/+21
PROJECT_NAME is added into scenario metadata to use for promotion and xci dashboard. Also, the metadata collected is aligned across different type of patches including the skipped ones. Change-Id: I3751884b48f5d9306d0cae35c757b976484b26a3 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-17Merge "xci: Log functest output before failure"Fatih Degirmenci1-2/+5
2018-03-16jjb: xci: xci-run-functest: Fix functest executionMarkos Chandras1-1/+1
We need to enter the $HOME/releng-xci/xci directory instead of /root/relneg-xci/xci since we are ssh'ing as 'devuser'. Change-Id: Id05d5012d58443c7f415a58f9f3d1ae16fd25b55 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-03-16xci: Revert change moving prepare-functest to opnfv vmFatih Degirmenci1-1/+1
Change-Id: Ic9801a2f1282b695025a6dce70e662765ce4296b Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-16potential fix for running prepare-functest playbookPeriyasamy Palanisamy1-1/+1
Change-Id: Id1ac133782e6b90929ddc055efbc6997ff63adc2 Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
2018-03-15Merge "xci: Skip the deployment for upstream and prototype changes"Fatih Degirmenci1-0/+4
2018-03-15Merge "run prepare-functest on opnfv vm"Fatih Degirmenci1-1/+1
2018-03-15xci: Skip the deployment for upstream and prototype changesFatih Degirmenci1-0/+4
Changes coming to these do not impact the framework so there is no need to run full verification for these. Change-Id: Ia9f8f4772a94cb0761c49ff27933798265831fa4 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-15run prepare-functest on opnfv vmPeriyasamy Palanisamy1-1/+1
Change-Id: Ide49917687ed583497ca089969fd2c7e7e00e548 Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
2018-03-15xci: Do not run deployment for doc updatesFatih Degirmenci1-0/+2
Change-Id: Ic914bc5bf11e2246f214990353c804688d6e43d9 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-14xci: Create post merge jobs to promote scenariosFatih Degirmenci3-70/+226
This change lays down the basic job structure for post merge promotion jobs. The job structure will be - a top level multijob job that is scenario specific and can not run concurrently. This job runs distro deploy and test jobs for all the distros in the first phase concurrently, followed by a common promote job. - the deploy and test jobs are same as the xci-verify jobs except the trigger. They are triggered by top level multijob. - the promote job is run once all the deploy & test phase jobs successfully completed, uploading promotion metadata to artifacts.opnfv.org. The builders except set-scenario are left empty in order to try the basic job setup first. Followup changes will get real things in. Once the basics are in place, the first promotion will be done using functest healthcheck and then we will start working on gating scenarios for promotion using functest smoke and perhaps feature test cases. Change-Id: Ib91ffe0f3003b86841a62537c52fde176cafa70f Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-14xci: Log functest output before failureFatih Degirmenci1-2/+5
When functest fails, the job exits directly without us logging the functest output to console. [1] Grepping functest log for FAIL for determining the result helps us to cat the log before exiting with right exit code. [1] https://build.opnfv.org/ci/job/xci-verify-ubuntu-healthcheck-virtual-master/509/console Change-Id: I01e3dcc51321e935b1722b749e8caf7ec5ad755b Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-13Merge "xci: Allow specifying scenario and installer in commit message"Fatih Degirmenci1-20/+68
2018-03-13xci: Allow specifying scenario and installer in commit messageFatih Degirmenci1-20/+68
It is not always practical to try determining scenario and installer to run jobs programmatically. This change adds possibility to do that by parsing commit message and skipping the automatic scenario and installer extraction. Change-Id: I10c9620fe8bb69a2d69fceb31d08084265aa1d75 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-13jjb: xci: Ensure GERRIT_TOPIC is always setMarkos Chandras4-0/+12
Fixes the following problem [description-setter] Description set: Scenario: os-nosdn-nofeature | Node: intel-virtual14 [xci-verify-ubuntu-healthcheck-virtual-master] $ /bin/bash /tmp/jenkins7521920744845291696.sh /tmp/jenkins7521920744845291696.sh: line 21: GERRIT_TOPIC: unbound variable Build step 'Execute shell' marked build as failure Change-Id: Iddf82e6ae6c6c433d941c461953c11935bc45269 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-03-13jjb: xci: Allow CI to run when multiple components are affectedMarkos Chandras1-0/+7
Sometimes we make global changes that affect multiple components at once and splitting that is not possible because it needs to be shipped as an atomic change. As such, allow topics with 'force-verify' to run the CI using the default installer and scenario. Change-Id: Ie4753822111b20c4f479886a55fe569c9b91ccd0 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-03-12xci: Combine vars setting installer type in INSTALLER_TYPEFatih Degirmenci2-5/+5
Change-Id: I5312ac784b1621ce968bbdfb1532859dada0e790 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-12Merge "xci: Set installer type for the tested scenario"Fatih Degirmenci2-4/+1
2018-03-12xci: Set installer type for the tested scenarioFatih Degirmenci2-4/+1
Variables injected by envInject are set after the job variables which results in not setting the variable correctly. The Jenkins test script now uses the variable injected by envInject to set the INSTALLER_TYPE to XCI_INSTALLER. Change-Id: Id79281a2ee22d407ffb1bd7c4be1471f6f329803 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-12xci: Skip functest healtcheck if it is Kubernetes scenarioFatih Degirmenci1-0/+6
We need to work on functest healthcheck for Kubernetes scenarios. Until we get it working, healthcheck is disabled. Change-Id: If470dbe956c5859825f0829d1f8d022bdafcc242 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-12xci: Determine impacted generic scenarioFatih Degirmenci1-15/+39
Change-Id: Ifbe676cd347c2d3c68f04b5137f3ccaa83a95894 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-12xci: Set the installer and move scenario extraction into functionsFatih Degirmenci2-33/+65
The scenarios named os-* are deployed by osa and the ones named k8-* are deployed by kubespray. This change determines the installer to use by looking into the scenario name. The installers are currently hardcoded within xci-set-scenario.sh script and this needs to be fixed for other installers when they onboard to xci. Apart from setting the installer, extraction of generic and external scenarios are moved into corresponding functions. Change-Id: I19882bcd2a1260765e601ecbe517551c60401d74 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-03-12Merge "jjb: xci: Drop the VM cleanup step from the functest jobs"Markos Chandras2-4/+0