summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2017-08-11prototypes: bifrost: Remove /opt/stack from previous deploymentsMarkos Chandras2-1/+4
/opt/stack is being created by bifrost so the destroy-env.sh script should be responsible for cleaning up all the remnants. That way we can use the destroy-env.sh script outside of Jenkins as well. Change-Id: I72d9737cf2446ff3ffc02f195337a6873eceb5c0 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11xci: Destroy/undefine only the VMs we createdFatih Degirmenci1-6/+2
Destroying/undefining all the VMs on host might cause issues for the users. This change tries to reduce the possibility of it by removing VMs listed by vbmc. Change-Id: I5134043309722632df68a0800c6403e6f39a8d16 Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11prototypes: bifrost: Fix Ironic drivers for VMsMarkos Chandras1-1/+1
Commit d8235c3c97f4("Set database pool_size in ironic.conf and inspector.conf templates") added a copy of the ironic.conf.j2 template file to workaround an upstream bug but it also changed the default ironic drivers leading to broken introspection. We use virtual BMC for controlling the VMs and this expects ipmi ironic drivers so we fix that. Change-Id: Ibb2cc58738ec1693e136bdce7335cd1b861ec613 Fixes: d8235c3c97f4("Set database pool_size in ironic.conf and inspector.conf templates") Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11xci: Make OSA playbook to use during installation configurableFatih Degirmenci1-0/+8
Change-Id: Ie6f079bb61905ca0458778b78fef799777b24efa Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11xci: Rename the deployment host to opnfvFatih Degirmenci8-13/+13
Reflect the changes to other impacted files as well. Change-Id: I106f4e47fe5c75d288f4878fe6ec9f8ff39c652e Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11xci: Add/update variables to tool, user, and flavorsFatih Degirmenci5-10/+18
Updates - RAM allocations for the flavors mini and noha increased to 12GB. - Distro variables introduced to tool as it will be used by the CI and the developers. - LOG_PATH and RUN_TEMPEST are now available in user variables. Change-Id: I4a73d7b79761d81f605cdb3fa9771ca40e9f9f02 Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11xci: Yet another try to find how best to structure stuffFatih Degirmenci30-10/+1
Summary of changes are - flavors directory has been removed and the flavor config files are moved into config and renamed to <flavor>-vars - common files are put under file - files specific to flavors are put under file/<flavor> directories - templates and var files are stored in template and var directories respectively - 3 playbooks are created Change-Id: I8a93e0947ccb02f93a6c8f00da27e0cc6b4dc21e Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11Set database pool_size in ironic.conf and inspector.conf templatesFatih Degirmenci2-0/+158
min_pool_size and max_pool_size are undefined in ironic.conf and inspector.conf templates, causing issues during ironic-dbsync and ironic-inspector-dbsync. https://build.opnfv.org/ci/job/opnfv-bifrost-verify-trusty-virtual-master/224/console This issue is there for stable/ocata as well. These should be got rid of once the patch on openstack/bifrost is merged. https://review.openstack.org/#/c/450681/ Change-Id: I678835e763022a7168e498047bb65d140895e019 Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11xci: Enable node provisioning and shuffle/rename stuffFatih Degirmenci23-71/+115
This change enables node provisioning using bifrost based on the chosen flavor. Other changes include - move flavor specific stuff (playbooks, inventory, vars) into their own folders so it is easier to copy them over. - rename flavors and get rid of xci from them. - introduce env-vars to keep variables that are not really user variables. Please note that this patch contains empty files and so on due to still trying to find best way to structurei things. Apart from this, there will probably be lots of duplications here and there which will be taken care of once things settle. Change-Id: I04a5d422e5b018439bafea5e68e65255ae38d22b Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11xci: Set up the basics for xci developer sandboxFatih Degirmenci19-0/+195
This change creates - initial version of the script to initiate the VM node creation and provisioning with bifrost and OpenStack installation with openstack-ansible - pinned-versions to hold the "known working" versions. releng will use master until the development is complete. - user-vars to hold user variables - configuration files to keep settings for different flavors - ansible files (playbooks, inventory files, variables) per flavor. These files are empty at the moment in order to save the chosen path makes sense. Once the way is agreed on, these will be similar to the files listed below with different content per flavor. https://gerrit.opnfv.org/gerrit/gitweb?p=releng.git;a=blob;f=prototypes/openstack-ansible/playbooks/inventory https://gerrit.opnfv.org/gerrit/gitweb?p=releng.git;a=blob;f=prototypes/openstack-ansible/playbooks/configure-xcimaster.yml https://gerrit.opnfv.org/gerrit/gitweb?p=releng.git;a=blob;f=prototypes/openstack-ansible/var/ubuntu.yml These new files will be the ones used when the actual deployment is done with openstack-ansible based on the flavor chosen by developer (or CI). Change-Id: Ia2f38416a161abd186cbcca61e105c6a68f78b54 Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11xci: Configure ansible verbosity based on job typeFatih Degirmenci1-6/+7
Daily jobs will use pinned versions of bifrost and openstack-ansible in order to make sure we use known good versions for them since focus of the daily jobs is OPNFV platform testing. Ansible log can easily become massive depending on the level it is set and it is not so relevant for daily jobs to have it like this due to less probability of dailies failing to provision/deploy. On the other hand, the jobs that verify/test bifrost and openstack-ansible will have max verbosity enabled to troubleshoot these components themselves. New set of jobs will be created running periodically against the HEAD of master for bifrost and openstack-ansible to catch working versions and help us promote them to use for daily platform jobs. Verbosity of these jobs will be enabled like how we are doing for bifrost-verify jobs. Change-Id: Ic9fd2ff418fdaa3ad7fbfc22d8ec2dc1174df65f Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11xci: Merge bifrost provisioning scripts and renameFatih Degirmenci2-174/+24
Jobs are adjusted as well. Change-Id: I0bc5bdda37277053d81d7da394e0156902da817a Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11xci: Adjust how bifrost inventory files are specifiedFatih Degirmenci2-7/+10
First step towards creating env-vars files based on the use of these scripts so the scripts can be merged into one. Change-Id: I4ee1d9af520aa684a5367a2645d709835bc4a5a1 Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11xci: Make it possible to select component versionsFatih Degirmenci3-9/+16
By replacing the branch with version, we now can specify sha1s per project; opnfv/releng, openstack-ansible, and bifrost. If nothing is specified manually (or via promotion), the defaults will be set to branches, master and stable/ocata. Change also includes further logging. Change-Id: Iae0f8cc60391caeb0f2735610050007014374a70 Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11xci: Fix grep, switch to opnfv playbook and log playbooks to consoleFatih Degirmenci1-18/+21
Change-Id: I4a576d45b71267f672e55c93e4f0c95410af019a Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11xci: Fix the script name and remove openstack servicesFatih Degirmenci1-2/+0
Change-Id: I774e12f15561de75920ca50bcb2fbaf917e004a9 Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11xci: Logging, naming, and job updatesFatih Degirmenci4-81/+133
- adjust build blockers in daily jobs. - explicity set SLAVE_LABEL for provision, deploy, and functest jobs so they run on correct nodes even if they are started manually. - rename files and update scripts accordingly. osa_deploy.sh -> osa-deploy.sh targethost_configuration.yml -> configure-targethosts.yml jumphost_configuration.yml -> configure-xcimaster.yml - add/fix console logging in osa-deploy.sh. - add license header to osa-deploy.sh. Change-Id: I57a37dccaa4bcda554ef79969e5d288b49937807 Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11xci: Updates to releng/osa to make it work on JenkinsFatih Degirmenci5-21/+61
- change OSA_BRANCH to OPENSTACK_BRANCH to be consistent everywhere. - create opnfv-setup-openstack.yml playbook, getting rid of some components and copy it to xcimaster to use during the deployment. - switch to opnfv-setup-openstack.yml from setup-openstack.yml. - create Jenkins job wrapper to execute osa deploy script. - disable ansible strict host key checking. - use sudo -E as needed in order to make env vars set by Jenkins job and wrapper available to other scripts and to ansible. - rename jumphost to xcimaster so people do not mix it with actual jumphost located in Pharos PODs. - other minor fixes. Change-Id: I5736fa700c2aa39c598d301bc74450d766b74411 Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11xci: Updates to releng/bifrost to make it work on JenkinsFatih Degirmenci4-9/+68
- get rid of BAREMETAL_DATA_FILE and use BIFROST_INVENTORY_SOURCE so it works both for master and ocata for osa-bifrost. - set BIFROST_INVENTORY_SOURCE file according to branch bifrost is executed from for osa-bifrost. - explicitly set what the SSH public key file is as ansible copies the wrong public key to nodes if bifrost is executed on Jenkins using sudo. - set branches if they are not set so the scripts can be used manually as well. - rename jumphost to xcimaster so people do not mix it with actual jumphost located in Pharos PODs. Change-Id: Iff7631fa99816ad75316b62c5ac20714f67cd86a Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11xci: Remove obsolete bifrost dib ELEMENTS_PATHFatih Degirmenci2-6/+0
Change-Id: I7baa0db9c8193e4041883d5997529df98919c7af Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11xci: Enable VM provisioning using bifrost for daily runsFatih Degirmenci4-11/+14
- create script to provision VMs (log upload is not enabled yet) - remove leftover inventory files (baremetal.csv, baremetal.json) - set BIFROST_INVENTORY_SOURCE as needed by stable/ocata - rename playbook used during bifrost and adjust scripts using it - remove puppet-infracloud stuff Change-Id: I1c4412d0725c00ab9a1b3497e358d33998b4e7e6 Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11prototypes: bifrost: destroy-env: Delete nodes from vbmcMarkos Chandras1-0/+4
Upstream commit 12376b958e76 ("Use virtualbmc for virtual BM nodes") moved the VM IPMI management from the ssh drivers to the vbmc one. As a result, we need to clear all the nodes from vbmc during cleanup. Change-Id: I2a4e7233874c4fad8df525c8f7b526df17a8211f Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11bifrost: Create bifrost script for openstack-ansiblewutianwei2-1/+143
This change creates a separate script to provision 6 VMs for HA to use for openstack-ansible. - create 1 jumphost, 3 controller, 2 compute - set the mumber of vCPU to 8 - use 16GB RAM per VM - use xenial and add additional packages required by openstack-ansible Change-Id: I858340c5bd13a1cd35cf4334ab2b8c362c5c5e7f Signed-off-by: wutianwei <wutianwei1@huawei.com> Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-08-11Read OSA_BRANCH from an env varYolanda Robla2-1/+2
Currently the OSA_BRANCH was sent in the deploy script, but not being picked by ansible. Enable this OSA_BRANCH in ansible, that will read from the populated env var in the deploy script. Change-Id: I77cffaee647a6f2a67baa49b1ddf022061398d86
2017-08-11prototypes: fix yamllint issuesJessica Wagantall4-114/+114
Linting openstack-ansible files Change-Id: Id9e3ffa7753f25cd57c4d706b26cbb76d0bd99c7 Signed-off-by: Jessica Wagantall <jwagantall@linuxfoundation.org>
2017-08-11prototypes: fix yamllint issuesJessica Wagantall3-4/+7
Linting puppet-infracloud files Change-Id: I37ccf9537a8d56e8209c6dbf17a62901d1cc441c Signed-off-by: Jessica Wagantall <jwagantall@linuxfoundation.org>
2017-08-11prototypes: bifrost: Fix ELEMENTS_PATH for latest diskimage-builder releaseMarkos Chandras2-2/+2
Upcoming diskimage-builder version (2.0.0) changed the location on where dib elements are installed from /usr/share/diskimage-builder to /usr/lib/$python/diskimage_builder/. However, base elements are included by default so fix the script to set ELEMENTS_PATH to the path of our out-of-tree elements. Change-Id: Ib5c4e1465a67a819c9d495b0e0a64addeb0294cb Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11prototypes: bifrost: Switch to JSON for inventoryMarkos Chandras1-2/+4
Upstream commit 3aaed64e88e3 ("Use JSON baremetal data in testing") switched from CSV to JSON for the inventory file in order to support the *_ipmitool drivers and virtualbmc. This commit mimics the upstream one. Depends-On: Ib5c4e1465a67a819c9d495b0e0a64addeb0294cb Change-Id: If66810db445cf997c5eb61090815abe186e002fa Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11Add scripts and playbook to deploy OSAwutianwei13-0/+756
The script and playbooks defined on this repo will deploy an OpenStack cloud based on OpenStack-Ansible. You just need to run the osa_deploy.sh. More information please refer to the README.md Change-Id: I731c366ab7197aefd7726150477ba1cc4d2932d3 Signed-off-by: wutianwei <wutianwei1@huawei.com>
2017-08-11prototypes: bifrost: Collect logs even if deployment failsMarkos Chandras1-2/+5
Move the collect-test-info.sh script to the 'exit' trap so we can collect whatever logs we can even if the bifrost deployment failed. Upstream change: https://review.openstack.org/433532 Change-Id: Icfbec01d894ff33e83730a40a09dc5540008dbaa Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11bifrost: Destroy all VMs from the slave nodesMarkos Chandras1-6/+6
New patchsets may introduce (or remove) testing VMs so make sure the script destroys all of them Change-Id: Ic96142823b9a8b044306327ce3454fbdc6fa5eb4 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11prototypes: bifrost: Cleanup old VM console logsMarkos Chandras1-1/+1
The VM logs may not be rotated by logrotate so they are accumulated over time. Make sure they are gone when we start a new job. Change-Id: Iecf7e53015740db98c17a42612da7f44f3c4a676 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11prototypes: bifrost: Drop the entire ironic databaseMarkos Chandras1-5/+2
There is no reason to only drop a few tables from it, so just drop the entire database. Change-Id: Iea9757fc5ccd85bc223d3c86d6a4c3ecf65fa130 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11bifrost: Use 'unsafe' disk cache for test VMsMarkos Chandras1-0/+1
The VMs which are created by bifrost are not meant to be used in production so improve the overall CI job performance by switching to the 'unsafe' disk cache mode. Make it also the default mode when using bifrost outside of the Jenkins job. Change-Id: If88f6c9395617a4aa860f8d00e22abfdd18d2922 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11jjb: infra: prototypes: bifrost: Ignore mysql and ironic failuresMarkos Chandras1-8/+10
On brand new hosts ironic may not be installed yet so attemping to restart ironic services will lead to failures. Similarly, mysql may also not be installed so do not try to wipe the tables. Change-Id: Ic77d9358aeecb11f5c076a47cfea18ee4f0dff9f Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11Removing SELINUX class from server manifestRicardo Noriega1-7/+0
Duplicated in controller.pp Change-Id: I4817e23cfc1ff3862fc4fe9bc69b8e90c28073cc Signed-off-by: Ricardo Noriega <rnoriega@redhat.com> Co-authored-by: Yolanda Robla <yroblamo@redhat.com>
2017-08-11Add dependency on ::opnfv::serverYolanda Robla Mota1-5/+8
Manifests give several failures on first run, if ::opnfv::server class is not applied first. Change-Id: Iaddc9f5b81f134c15d051417a93c1d687ad035c4 Signed-Off-By: Yolanda Robla <yroblamo@redhat.com>
2017-08-11prototypes: bifrost: Increase default provision timeout to 3600 secondsMarkos Chandras1-1/+1
Sometimes, the current '2400 seconds' timeout is not enough to all 3 VMs to become reachable especially when the qcow2 images are becoming bigger and bigger. This leads to spurious CI failures. Increase the timeout to 3600 seconds which should be enough for VMs boot properly Change-Id: I06942952667df28341e5ce43d30619fe2e30326b Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11bifrost: test-bifrost-deployment.sh: Use the new 'openssh-server' dib elementMarkos Chandras1-3/+3
This is a follow-up for b0a9b75e7481a24676c9488f17583c13b8b8026e ("Make use of the new 'openssh-server' dib element"). Remove the openssh-server package from the default packages and use the 'openssh-server' element instead. Change-Id: Ie14cdf93769ebefcae00f35d9e1ac149a31e7711 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11bifrost: Make use of the new 'openssh-server' dib elementMarkos Chandras2-1/+5
Make use of the new 'openssh-server' dib element to achieve a consistent behavior of ssh server across all distributions. Change-Id: Ib10066a244fe44530969702cd465cdd79454b8fe Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11bifrost: test-bifrost-deployment: Allow overriding VM hardware optionsMarkos Chandras1-3/+3
Make VM disk, cpu and memory settings configurable to allow less powerful hosts to host the bifrost VMs. Change-Id: If819451536dd518690f3808c55de940169b90346 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11Fix typo in mac addressYolanda Robla Mota1-1/+1
Change-Id: I3feb14a2c055563392bf70836b8e1ad46e3ae24e Signed-Off-By: Yolanda Robla <yroblamo@redhat.com>
2017-08-11Fix bug in setting udp portsYolanda Robla Mota1-1/+1
There was a typo that prevented to configure udp ports properly, causing dhcp boot to fail. Change-Id: Ib853a9b9a21da113bda12b5cc1f33b3819442139 Signed-Off-By: Yolanda Robla <yroblamo@redhat.com>
2017-08-11Add missing step on the baremetal documentationYolanda Robla Mota1-0/+1
Change-Id: Ib9ef5d342f1efe624464df249c950eb7807322e1 Signed-Off-By: Yolanda Robla <yroblamo@redhat.com>
2017-08-11Start using centos7 instead of centos-minimalYolanda Robla Mota1-1/+1
Current builds with centos-minimal are failing on 7, so start using centos7 element instead. Change-Id: I80d986fd7613e1807a119447a01c62e6f8a93ddf Signed-Off-By: Yolanda Robla <yroblamo@redhat.com>
2017-08-11Add step to customize create bridge templateYolanda Robla Mota1-5/+8
Change-Id: I0f4e7353773291e810f70059e4a015ac641bd2c8 Signed-Off-By: Yolanda Robla <yroblamo@redhat.com>
2017-08-11playbooks: Do not serialize ironic deploymentMarkos Chandras1-4/+4
[This is similar to upstream https://review.openstack.org/389079] This somewhat reverts 0a82e3d8d29f85229e1ed29d90de47346bc1d9b1 ("Serialize localhost actions during final host deployment"). The only point where we want to serialize the steps is when accessing common files on the host. In the bifrost-deploy-nodes-dynamic role, all tasks are accessing files based on the 'inventory_hostname' variable, which means there is no conflict there and tasks on these role can run in parallel. This allows bifrost to provision machines in parallel during pxe boot which speeds up the entire operation. Change-Id: I64b1f2832c333c89e33e8f9d19f03e4d653d74b4 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11prototypes: bifrost: Ignore dnsmasq service failuresMarkos Chandras1-1/+1
If this is the first time we run bifrost on a host or if we haven't run bifrost since the last reboot, restarting the dnsmasq service will fail because of conflicts with the dnsmasq process running by libvirt. This is later on 'fixed' by bifrost by killing the one from libvirt. Make sure that this spurious failure will not prevent the rest of the cleanup process to move on. Change-Id: Iebf37881570c27cb07cea3cecdb0fa8ac3fc511b Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-08-11Add documentation for deploying on baremetalYolanda Robla Mota1-0/+57
Change-Id: I9685b733ae2e3e732c78e78381778c944eace90c Signed-Off-By: Yolanda Robla <yroblamo@redhat.com>
2017-08-11Disable selinux for RHELYolanda Robla Mota1-0/+8
It is causing some unexpected permission errors if that is enabled. Change-Id: I96c3131a55a1b7c83a655738938645f537ab48f6 Signed-Off-By: Yolanda Robla <yroblamo@redhat.com>