summaryrefslogtreecommitdiffstats
path: root/xci
AgeCommit message (Collapse)AuthorFilesLines
2018-05-18xci: kubespray: Use bootstrap role for k8s deploymentsMarkos Chandras3-1/+20
The bootstrap role configures NTP and networking on hosts so we should use it on k8s deployments as well. installer-type:kubespray deploy-scenario:k8-nosdn-nofeature Change-Id: I04bd1e1c2c325baabfb836bd8cca60c5f59344c7 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-18xci: Move the rest of functions to xci-lib.shMarkos Chandras2-53/+53
The xci-deploy.sh contains several functions used throughout in the XCI deployment so we should move thse to xci-lib.sh file. Change-Id: Iae6751619beea85b894900e5cd2f91a433410f66 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-18xci: file: xci-lib.sh: Avoid sourcing xci-lib.sh twiceMarkos Chandras1-0/+3
The file can be sourced from multiple places so we need to avoid sourcing it twice. Change-Id: I7d47f3d7e461d90d5456c95a1f7a791b4e3a2bde Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-18xci: Move sourcing of configuration files to the install-lib.shMarkos Chandras2-22/+23
The install-lib.sh assumes that certain configuration files have been loaded before it's sourced. However, this doesn't work well when other scripts are using install-lib.sh directly since they also need to load the same configuration files. As such, lets source all these configuration files from the install-lib.sh file directly. We also rename this file to 'xci-lib.sh' since it's not just about installation helpers anymore. Change-Id: I35e1e804db06b2bb512e4991e5fdf21a72ffaadb Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-18Merge "xci: kubespray: Switch kubespray to dynamic inventory"Markos Chandras9-123/+45
2018-05-18Merge "Pin generic scenarios to project internal tag 6.0.1"6.0.0Fatih Degirmenci1-6/+6
2018-05-17Merge "xci: Wipe repositories at the beginning of the deployment"Markos Chandras2-1/+2
2018-05-17Pin generic scenarios to project internal tag 6.0.1Fatih Degirmenci1-6/+6
deploy-scenario:os-odl-nofeature installer-type:osa Change-Id: I33e10589092ee1027fa2f27fc3c000a0031eaf38 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-05-17Merge "xci: bootstrap-host: Fetch netmask information from IDF"Markos Chandras8-35/+38
2018-05-17Merge "xci: get-opnfv-scenario-requirements: Fix stale scenario facts"Fatih Degirmenci1-6/+0
2018-05-17Merge "xci: Bump Kubespray SHAs and install ansible modules"Fatih Degirmenci2-3/+3
2018-05-17Merge "xci: xci-deploy.sh: Only check for xci_overrides files in scenarios ↵Fatih Degirmenci1-2/+2
cache"
2018-05-17xci: Wipe repositories at the beginning of the deploymentMarkos Chandras2-1/+2
We should not wipe the repositories in the localhost playbooks since it makes it somewhat hard to debug problems. We should do that at the beginning of the deployment to ensure that we start without any stale git data. Change-Id: I70b2ac77284a9ca304d6aa68dbf1654f59260dc4 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-17xci: xci-deploy.sh: Only check for xci_overrides files in scenarios cacheMarkos Chandras1-2/+2
xci/scenarios has been removed from releng-xci so there is not point in checking for xci_overrides files there. Change-Id: If6b9306968817b0ba8fb362b532ac8492d274676 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-17Merge "xci: xci-deploy.sh: Print scenario git SHA"Fatih Degirmenci1-15/+31
2018-05-16xci: get-opnfv-scenario-requirements: Fix stale scenario factsMarkos Chandras1-6/+0
We always need to update the local facts for the scenario we are deploying in order to avoid deployments with stale data. Change-Id: I36298d2ebc1b813e95a2f213cd13649a0b4e04bf Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-16xci: bootstrap-host: Fetch netmask information from IDFMarkos Chandras8-35/+38
The IDF file contains the netmask for every network so we should use that information instead of using hardcoded values. Change-Id: Ie798cb49563bdb72fdfb7b6e9e269692bf1f7bc9 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-16xci: kubespray: Switch kubespray to dynamic inventoryMarkos Chandras9-123/+45
The kubespray installer contains one inventory per flavor. We can get rid of these files and use the dynamic inventory similar to OSA. Moreover, we extend the dynamic inventory to read additional group variables per flavor if necessary. This way we can still pass additional information to inventory on per-flavor basis. This also fixes a typo in the 'IDF' file. We also need to bump Ansible for kubespray since the version we were using is having troubles with dynamic inventories. Change-Id: Ic58101555f81aec5fee3c193608440aa89bbe445 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-16Pin os-odl-sfc to project internal tag 6.0.1Fatih Degirmenci1-1/+1
deploy-scenario:os-odl-sfc installer-type:osa Change-Id: I583c8620f29b0735a52c64309d2113f56d38be1e Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-05-16xci: Bump Kubespray SHAs and install ansible moduleswutianwei2-3/+3
1. this change bumps Kubespray SHA to the HEAD of "master" as of 16.05.2018 2. install ansible-modules-hashivault, due to kubespray refactor vault role https://github.com/kubernetes-incubator/kubespray/commit/07cc98197187535619ac8e57ee4e04ae02631a5 installer-type:kubespray deploy-scenario:k8-nosdn-nofeature Change-Id: I2e3ade3b16eac1506e8556fe1820d84d64c09435 Signed-off-by: wutianwei <wutianwei1@huawei.com>
2018-05-16xci: xci-deploy.sh: Print scenario git SHAMarkos Chandras1-15/+31
It's useful to be able to tell which particular version of the scenario we are deploying so we print the git SHA along with the rest of the deployment information. Change-Id: If59651fe01449252a2cebcf24c5278ebeb1ac3ea Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-14Merge "xci: osa: Add initial dynamic inventory from PDF/IDF files"Markos Chandras15-149/+167
2018-05-14Merge "xci: idf: Add more information for installers and flavors"Markos Chandras1-11/+58
2018-05-11Merge "xci: scripts: start-new-vm.sh: Fix ID for openSUSE Tumbleweed"Fatih Degirmenci1-1/+1
2018-05-11xci: scripts: start-new-vm.sh: Fix ID for openSUSE TumbleweedMarkos Chandras1-1/+1
Recent openSUSE Tumbleweed releases are now using 'opensuse-tumbleweed' as distro ID so we need to take that into consideration in order to be able to use the script on such systems. ~$ source /etc/os-release && echo ${ID} opensuse-tumbleweed Change-Id: Ibdfb4292d53dc4d20376230a4131b212f9492e54 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-11xci: Connect releng-xci-scenarios repositoryMarkos Chandras26-2591/+12
The releng-xci scenarions have been moved to their own repository so we delete the copies from the releng-xci repository and also update the opnfv-scenario-requirements to point to the new repository. deploy-scenario:os-nosdn-nofeature installer-type:osa Change-Id: I1b7b3182a5e0c5b346c00b5734fd0cd3fdd5c98b Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-11Merge "fix k8 aio flavor undefined variable"Markos Chandras2-1/+2
2018-05-11fix k8 aio flavor undefined variablewutianwei2-1/+2
1. fix error that kube_require_packages is undefined 2. add "remote_user: root" in configure-kubenet.yml if don't add this, it will have issue to connect host. fatal: [opnfv]:UNREACHABLE! => {"changed": false, "msg": "Failed to connect to thehost via ssh: Permission denied (publickey,password).\r\n", "unreachable": true"} installer-type:kubespray deploy-scenario:k8-nosdn-nofeature Change-Id: Ia8d1980ad18375c0cff3a97b284b0f53d7539e23 Signed-off-by: wutianwei <wutianwei1@huawei.com>
2018-05-11Merge "New SHA for ODL"Markos Chandras1-1/+1
2018-05-10New SHA for ODLManuel Buil1-1/+1
We need a patch in the ODL role to be able to deploy a stable ODL. Before this patch, it is not possible to deploy with a stable version of ODL and we are always deploying with the tip of the branch. However, it is useful to deploy with a version which we know for sure that it is working. deploy-scenario:os-odl-sfc installer-type:osa Change-Id: I539a5afa41598f54c3eeb2f1096022c73aa942b9 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-05-10xci: installer: Do not use XCI_ANSIBLE_PARAMS on remote nodesMarkos Chandras2-6/+6
The XCI_ANSIBLE_PARAMS is used to pass extra Ansible parameters to XCI. However, these parameters may not make sense when Ansible is running on any of the remote nodes, so we should't use it there. If passing information to "remote" Ansible is required, then we need to come up with a new variable. deploy-scenario:os-nosdn-nofeature installer-type:osa Change-Id: Ib6343fbfe3af1514c2e7e8948c12e3b19b455fe3 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-09xci: osa: Add initial dynamic inventory from PDF/IDF filesMarkos Chandras15-149/+167
The PDF and IDF files contain all the information we need for the virtual XCI deployment, so we can use it to create a dynamic inventory and get rid of all the static ones which could easily get outdated as PDF and IDF files evolve over time. This inital version of the dynamic inventory contains a lot of unnecessary generated information but we do that in order to ease the migration from static files to the dynamic inventory. The dynamic inventory will be improved in the future as we consume more and more information from the PDF and IDF files. Change-Id: Id9f07a61c67a5cffcbc18079a341e5d395020a27 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-09xci: idf: Add more information for installers and flavorsMarkos Chandras1-11/+58
Each installer has its own Ansible groups so we need record such information separately. Moreover, we need to add 'flavor' information to the IDF so we know which hosts belong to what flavor. This also fixes the kubernetes installer type to be 'kubespray' instead of 'k8s' Finally, we extend the IDF to also set appropriate hostnames for the nodes. Change-Id: I52b20908ad927840e0b38fba96be8faf6da2b52d Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-08xci: osa: Bump SHA to fix resolv.conf file creation and git-clone issuesMarkos Chandras1-2/+2
Container images have recently changed and this breaks lxc_hosts during cache preparation as shown below: May 04 07:59:47 fatal: [controller00]: FAILED! => {"ansible_job_id": "362521755821.32697", "attempts": 1, "changed": true, "cmd": "chroot /var/lib/machines/ubuntu-xenial-amd64 /usr/local/bin/cache-prep-commands.sh > /var/log/lxc-cache-prep-commands.log 2>&1", "delta": "0:00:00.018827", "end": "2018-05-04 07:59:45.614668", "finished": 1, "msg": "non-zero return code", "rc": 1, "start": "2018-05-04 07:59:45.595841", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} As such, we need to bump the SHA from the Queens branch to include the fix in XCI. We also need to bump SHA for repo_build role in order to bring in some upstream fixes when cloning git repositories. Change-Id: I9f04313f7eb1606e5e71ab8ecee7148d1c5b75ad Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-30xci: Remove intermediate scenarios tasks fileMarkos Chandras3-45/+20
Now that the scenario role is recorded as a local fact, we can include the role directly directly so we don't need the the intermediate file anymore. deploy-scenario:os-nosdn-nofeature installer-type:osa Change-Id: Ia3c5658826f115538b2a103d987ee8f33d3048b9 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-30xci: Improve scenario bootstrapping processMarkos Chandras1-48/+73
It's best to check whether the scenario/distro/flavor combination is supported before spending time cloning all the scenarios. Moreover, we can record the scenario information as a local fact so we can use it during the deployment later on. Change-Id: I1971444c6c6302a844f44ea651ad3b83c4da435c Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-30xci: playbooks: Simplify scenario overrides mechanismMarkos Chandras1-50/+16
Now that releng-xci does not have any internal scenarios anymore, we can simplify the way we plug scenarios to XCI. We keep cloning scenarios in the cache directory but we also allow users to pass a special 'xci_scenarios_overrides' variable similar to the 'opnfv_scenario_requirements.yml' file to allow them to override specific keys of the dictionaries. This can be used by Jenkins to test incoming changes by altering the defaults values. For example, when we want to test a Gerrit change we can create a file called foobar.yml with the following contents xci_scenarios_overrides: - scenario: os-odl-sfc version: 9fa5400012e02408b416eb7bd26307e7d179abce refspec: refs/changes/79/55879/7 and load it using XCI_ANSIBLE_PARAMS="-e @foobar.yml" This will make XCI checkout the refspec that we want instead of the default version. Change-Id: Ida49910b4c79b843582ddd70c00063fe9bc90dd4 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-30xci: roles: bootstrap-host: Simplify configuration filesMarkos Chandras16-330/+202
We split the networking task on distro specific files to make it easier to read. Moreover, the debian network configuration has been improved by simply sharing a common file across all nodes and also use the 'source' facility in the main /etc/network/interfaces file to use one configuration file per interface. Change-Id: Ic822fe6dc197227e70c0ba7cee812629df287d82 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-27xci: Add XCI OSA variables fileMarkos Chandras2-0/+18
We can use an XCI specific YAML file to add OSA options which are common across flavors. Right now, it only overrides the default openSUSE mirror to use a more stable one. Change-Id: Iae7d542787ead33be1e64cdeda60761aa401cfde Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-25Merge "xci: install-lib: Install curl package"Fatih Degirmenci1-0/+4
2018-04-25Merge "Move configuration network templates"Markos Chandras11-5/+5
2018-04-25Merge "xci: xci-deploy: Fix sourcing of inbound scenarios overrides files"Manuel Buil1-1/+2
2018-04-24xci: install-lib: Install curl packageTaseer Ahmed1-0/+4
XCI_ANSIBLE_PIP_VERSION is determined dynamically using curl. This package is not present on every system, hence fails since it can not install a null version of Ansible Change-Id: I96a2237e6bdb28e09f0eebee4aae91742973d770 Signed-off-by: Taseer Ahmed <taseer94@gmail.com>
2018-04-23Merge "xci: install-lib: Make sure pip is upgraded first"Markos Chandras1-0/+1
2018-04-20xci: install-lib: Make sure pip is upgraded firstMarkos Chandras1-0/+1
We need to make sure that pip is the first thing we upgrade in the virtual environment because old pip releases do not support the '-c' option which we use to install the rest of the required components. Change-Id: I8b3ec080617324bfefbec2a6cdfa6ef58afb7c20 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-20Pin os-odl-bgpvpn to project internal tag 6.0.0Fatih Degirmenci1-1/+1
It is important to test and pin the versions tagged by the projects to ensure we have a single version of XCI with pinned versions of the scenarios for all the projects are recorded. Same exercise will be done for all the scenarios and then scenarios will be unpinned from the tags to let the development continue. deploy-scenario:os-odl-bgpvpn installer-type:osa Change-Id: I9350bc53fa87836ad36259b259edf506dd99790a Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-04-20xci: xci-deploy: Fix sourcing of inbound scenarios overrides filesMarkos Chandras1-1/+2
We first need to look for the 'xci_overrides' file in the scenarios directory instead of the the XCI_CACHE since for inbound scenarios the former contains in-flight changes. The cache only contains whatever is committed in git and it may not capture changes which are being made to the actual XCI tree. Change-Id: Icd64d14d508c89a78823cecf7cc46bd31e50a475 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-20Merge "xci: lib-install: Clear XCI_CACHE prior to downloading ↵Markos Chandras1-0/+3
openstack-ansible-tests"
2018-04-19Merge "xci: infra: bifrost: Use XCI virtual environment for bifrost"Markos Chandras1-2/+10
2018-04-19xci: lib-install: Clear XCI_CACHE prior to downloading openstack-ansible-testsTaseer Ahmed1-0/+3
If we don't clear the cache, the script errors out with the following: fatal: destination path '/root/releng-xci/.cache/repos/openstack-ansible-tests' already exists and is not an empty directory Change-Id: I22111ed655a4c6790f808155968deb2fd3828e41 Signed-off-by: Taseer Ahmed <taseer94@gmail.com>