Markos Chandras [Fri, 10 Aug 2018 12:04:49 +0000 (15:04 +0300)]
xci: create-vm-nodes: Install virtualbmc in the XCI virtualenv
XCI prepares a virtualenv for us, so we should install virtualbmc
in it.
Change-Id: I320d1c7cad9c5c821269b55252cb7ab4f5136f40
Signed-off-by: Markos Chandras <mchandras@suse.de>
Markos Chandras [Fri, 10 Aug 2018 11:52:22 +0000 (14:52 +0300)]
xci: osa: Drop openSUSE mirror variables
we let downloads.opensuse.org redirect us to a good one since
the hardcoded one does not appear to work anymore. Ansible gets
upset if we feed it an empty variables file, so we set a couple
of variables there to make it happy.
Change-Id: I887522ebc71dd866d544e75beeff47af6111e059
Signed-off-by: Markos Chandras <mchandras@suse.de>
Markos Chandras [Fri, 10 Aug 2018 10:24:00 +0000 (13:24 +0300)]
xci-lib: Allow more openSUSE IDs
Leap 15 is using ID=opensuse-leap and Tumbleweed is using
ID=opensuse-tumbleweed so we should extend the regexp to match
these distributions as well. This allows XCI to support more
openSUSE variants as deployment hosts.
Change-Id: I8bf8e7b15fc00c45807ff92fbc14d7ec79ec4bcb
Signed-off-by: Markos Chandras <mchandras@suse.de>
Fatih Degirmenci [Fri, 15 Jun 2018 19:57:31 +0000 (21:57 +0200)]
docs: Remove info about the flavor aio
The flavor aio is disabled by change https://gerrit.opnfv.org/gerrit/#/c/58595/
so it is important to update the documentation accordingly.
The expectation is to put it back if/when aio is properly verified.
Change-Id: I12a60e819e20f053c38acee9e8276252d2cab267
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
Markos Chandras [Thu, 5 Jul 2018 07:51:11 +0000 (07:51 +0000)]
Merge "xci: osa: Disable haproxy ssl configuration"
Markos Chandras [Wed, 4 Jul 2018 06:33:23 +0000 (06:33 +0000)]
Merge "Disable the flavor aio and set default flavor to mini"
Markos Chandras [Tue, 3 Jul 2018 14:04:01 +0000 (15:04 +0100)]
xci: osa: Disable haproxy ssl configuration
The self-signed certificates are causing troubles so until we implement
a proper certificate chain in XCI we should disable the SSL endpoints.
Change-Id: Ife4ef78de1569121c435a806924a3f90917fd85b
Signed-off-by: Markos Chandras <mchandras@suse.de>
Fatih Degirmenci [Fri, 15 Jun 2018 19:40:47 +0000 (21:40 +0200)]
Disable the flavor aio and set default flavor to mini
The flavor all-in-one (aio) hasn't been maintained well and
the stability of it is in question. This change disables the
flavor aio and sets the default flavor to mini.
It is important for XCI to enable the aio back in order to help
users who want to try XCI but don't have big enough machine to
go for bigger flavors. However, we need to verify all flavors
for acceptable user experience so the flavor can only be enabled
back once this happens.
Change-Id: I053c8fec78876dea71439f1f1bd737a105254ad4
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
Manuel Buil [Fri, 4 May 2018 21:11:35 +0000 (23:11 +0200)]
Use PDF to set up the XCI VMs
This patch is doing the first work item of the spec:
https://github.com/opnfv/releng-xci/blob/master/docs/specs/infra_manager.rst
It creates the required VMs by XCI to afterwards deploy the VIM. It does that
by reading the pdf provided by the user.
- It is currently assumed that the OS for the VM will be installed in the first
disk of the node described by the pdf
- It is assumed that the opnfv VM characteristics are not described in the pdf
but in a similar document called opnfv_vm.yml
- All references to csv from bifrost-create-vm-nodes were removed
Change-Id: I46a85284e4ce7df21cbf66f66619b35f74251e68
Signed-off-by: Manuel Buil <mbuil@suse.com>
Co-Authored-by: Markos Chandras <mchandras@suse.de>
Markos Chandras [Mon, 25 Jun 2018 11:17:31 +0000 (12:17 +0100)]
xci: playbooks: manage-ssh-keys: Create regular user and SSH keys
We may need to perform non-root tasks on the nodes, so we should have a
regular user present as well.
Change-Id: I0b824f1875ce04fe67424fc96e754e06da53be8d
Signed-off-by: Markos Chandras <mchandras@suse.de>
Manuel Buil [Mon, 25 Jun 2018 10:28:41 +0000 (11:28 +0100)]
xci: var: opnfv_vm: Add descriptor file for OPNFV VM node
The OPNFV VM acts as a sandbox for installing and running bifrost so
it is pdf agnostic. As such, we use its own descriptor file to provision
this node.
Change-Id: Ice33dc744c04147f9c746285c583de56b8353cc3
Co-Authored-by: Markos Chandras <mchandras@suse.de>
Signed-off-by: Manuel Buil <mbuil@suse.com>
Markos Chandras [Mon, 25 Jun 2018 10:21:30 +0000 (11:21 +0100)]
xci: xci-lib.sh: Install shade and python-pyyaml on the deployment node
In preparation for using PDF/IDF to deploy nodes in XCI, we need to have
shade and python-pyyaml on the host since these are requirements for the
OpenStack Ansible modules (eg os_ironic) and the dynamic inventories.
Change-Id: Ie26af0dc58599af6e29a47d91707976dcf16ac6d
Signed-off-by: Markos Chandras <mchandras@suse.de>
Manuel Buil [Mon, 25 Jun 2018 09:57:02 +0000 (10:57 +0100)]
xci: roles: create-vm-nodes: Add role for creating XCI VM nodes
Add a new role based on the bifrost one to create nodes for the bifrost
virtual deployments. This role will install and configure libvirt on the
host, download a prebuilt OPNFV VM image and deploy the OPNFV VM using
that image. Moreover, it will create the rest of the nodes for the
virtual deployment which will be configured by bifrost later on.
Change-Id: I9fbd084261351d3b53ae373060f43df046191c5e
Co-Authored-by: Markos Chandras <mchandras@suse.de>
Signed-off-by: Manuel Buil <mbuil@suse.com>
Fatih Degirmenci [Mon, 25 Jun 2018 19:32:00 +0000 (21:32 +0200)]
Pin functest-healthcheck docker image to known sha
Functest changes have significant impact which blocks everything in XCI so this
change pins the image to a known sha to get the original set of healthcheck
testcases until the impacts are analysed and concerns are raised to Functest
and the wider OPNFV Community and addressed based on community consensus.
Pinned version of functest-healthcheck contains the test cases below.
- connection_check
- api_check
- snaps_health_check
deploy-scenario:os-nosdn-nofeature
installer-type:osa
Change-Id: Ic9222af8c27e58491b7b60a7504df9d792b5e753
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
Markos Chandras [Mon, 25 Jun 2018 12:34:44 +0000 (12:34 +0000)]
Merge "xci: vm: start-new-vm: Copy deployment image to clean VM"
Markos Chandras [Fri, 22 Jun 2018 08:10:18 +0000 (09:10 +0100)]
xci: vm: start-new-vm: Copy deployment image to clean VM
In order to save us some time and bandwidth we can copy the deployment
image to the clean VM in order to be used by bifrost to prepare the
virtual machines. Moreover, we also put our key there so we can ssh
as the root user.
Change-Id: Id21e19aaefde71862c21180129c664c1bf121c32
Signed-off-by: Markos Chandras <mchandras@suse.de>
Victor Morales [Fri, 27 Apr 2018 19:29:45 +0000 (12:29 -0700)]
spec: create k8-calico-onap scenario
Spec file for the addition of a new XCI scenario which deploys Open
Networking Automation Platform (ONAP) on top Kubernetes deployment
through ONAP Operations Manager (OOM) tool.
Change-Id: I01385fdeeb942154d9cce630552bd3e7713d3cdb
Signed-off-by: Victor Morales <victor.morales@intel.com>
Signed-off-by: Jack Morgan <jack.morgan@intel.com>
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
Markos Chandras [Fri, 15 Jun 2018 09:07:41 +0000 (09:07 +0000)]
Merge "xci: dynamic_inventory: Add new entry for deployment_host"
Daniel Farrell [Tue, 5 Jun 2018 13:54:33 +0000 (09:54 -0400)]
Add k8-odl-coe spec
This spec proposes adding an XCI senerio that uses OpenDaylight COE and
NetVirt with Kubernetes for pod networking.
Change-Id: I3418542cf22df0f4d04e167903f2bb59151fa0a6
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Markos Chandras [Tue, 12 Jun 2018 09:25:00 +0000 (10:25 +0100)]
xci: dynamic_inventory: Add new entry for deployment_host
The deployment host is normally the host which runs the various
playbooks so we add a new entry in the inventory for localhost.
Change-Id: I43baddf4fabd69579c1a02f55ece230a062c2d9b
Signed-off-by: Markos Chandras <mchandras@suse.de>
Markos Chandras [Thu, 7 Jun 2018 13:30:03 +0000 (13:30 +0000)]
Merge "roles: bootstrap-host: Ensure DNS info from IDF is respected"
Markos Chandras [Fri, 4 May 2018 19:20:46 +0000 (20:20 +0100)]
xci: osa: switch back from GitHub to OpenStack OSA repos
Switching to github.com for the gitclones did not make much of a
difference since we are still seeing randomg SSL failures during git
clones. So we can switch back to git://git.openstack.org hoping that
the git protocol will be more efficient than https. Moreover some
projects are moving away from github mirroring and this breaks our
tests.
Change-Id: I8188ec7cbfbf16eeb4634bd9a44b12a104ce1059
Signed-off-by: Markos Chandras <mchandras@suse.de>
Markos Chandras [Mon, 4 Jun 2018 19:59:38 +0000 (20:59 +0100)]
roles: bootstrap-host: Ensure DNS info from IDF is respected
We are configuring static IPs in the various nodes but we don't do
anything for DNS assuming that DNS is being configured by another
entity. However, the IDF file already contains DNS information for us
so we should use that instead. Moreover, we update the IDF file to use
the gateway as DNS instead of the Google one in order to make it more
usable on restricted networks.
Change-Id: Ieba58ec9558080a1296e204c4f99bae859e9daef
Signed-off-by: Markos Chandras <mchandras@suse.de>
Markos Chandras [Wed, 6 Jun 2018 11:24:54 +0000 (12:24 +0100)]
xci: OSA: Bump Queens SHAs to fix spice-html5 repo relocation
The spice-html5 repository moved from github to its own gitlab hosting
and that broke everything. As such, we update the OSA roles which
contain the correct URL for the new repository.
Change-Id: I3e2883c0436c9c93d2a8a338343ca3a75a1431e4
Signed-off-by: Markos Chandras <mchandras@suse.de>
Markos Chandras [Mon, 4 Jun 2018 10:31:46 +0000 (11:31 +0100)]
xci: xci-lib.sh: Use the OSA requirements file for pip components
OpenStack-Ansible maintains a requirements file which ensure that a
working combination of pip/setuptools/wheels/virtualenv can be mixed up
with distro packages so it's beneficial to take that into consideration
when building our environment.
Change-Id: Ic5398de3e464e1526f8d9fb6b6460907ac30084a
Signed-off-by: Markos Chandras <mchandras@suse.de>
Markos Chandras [Fri, 1 Jun 2018 09:51:53 +0000 (09:51 +0000)]
Merge "xci: kubespray: Use bootstrap role for k8s deployments"
Fatih Degirmenci [Wed, 23 May 2018 21:45:33 +0000 (14:45 -0700)]
Reorder scenarios in opnfv-scenario-requirements.yml
Put OpenStack scenarios and Kubernetes scenarios together.
installer-type:kubespray
deploy-scenario:k8-canal-nofeature
Change-Id: I6a47b0b3703e30ac9a2be53012687217a085ee88
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
Fatih Degirmenci [Wed, 23 May 2018 17:58:25 +0000 (17:58 +0000)]
Merge "Unpin all XCI scenarios for development"
Markos Chandras [Wed, 23 May 2018 08:39:23 +0000 (08:39 +0000)]
Merge changes from topic 'move-sourcing-files'
* changes:
xci: Move the rest of functions to xci-lib.sh
xci: file: xci-lib.sh: Avoid sourcing xci-lib.sh twice
xci: Move sourcing of configuration files to the install-lib.sh
Fatih Degirmenci [Fri, 18 May 2018 07:09:26 +0000 (09:09 +0200)]
Unpin all XCI scenarios for development
Change-Id: I73a7c58a27c9018d0b131dc3c8bb65da91488c35
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
wutianwei [Mon, 21 May 2018 02:04:24 +0000 (10:04 +0800)]
integrate k8-contiv-nofeature scenario in XCI
Change-Id: I5f18e1060cb45246a15584fdd69c6c6bd3427001
Signed-off-by: wutianwei <wutianwei1@huawei.com>
Markos Chandras [Fri, 20 Apr 2018 12:37:32 +0000 (13:37 +0100)]
xci: kubespray: Use bootstrap role for k8s deployments
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>
Markos Chandras [Fri, 18 May 2018 07:13:30 +0000 (08:13 +0100)]
xci: Move the rest of functions to xci-lib.sh
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>
Markos Chandras [Fri, 6 Apr 2018 19:33:11 +0000 (20:33 +0100)]
xci: file: xci-lib.sh: Avoid sourcing xci-lib.sh twice
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>
Markos Chandras [Fri, 6 Apr 2018 19:28:10 +0000 (20:28 +0100)]
xci: Move sourcing of configuration files to the install-lib.sh
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>
Markos Chandras [Fri, 18 May 2018 07:36:11 +0000 (07:36 +0000)]
Merge "xci: kubespray: Switch kubespray to dynamic inventory"
Fatih Degirmenci [Fri, 18 May 2018 07:12:42 +0000 (07:12 +0000)]
Merge "spec: PDF and IDF support"
Fatih Degirmenci [Fri, 18 May 2018 07:07:03 +0000 (07:07 +0000)]
Merge "Pin generic scenarios to project internal tag 6.0.1"
Markos Chandras [Thu, 17 May 2018 13:43:24 +0000 (13:43 +0000)]
Merge "xci: Wipe repositories at the beginning of the deployment"
Fatih Degirmenci [Wed, 16 May 2018 09:23:56 +0000 (11:23 +0200)]
Pin generic scenarios to project internal tag 6.0.1
deploy-scenario:os-odl-nofeature
installer-type:osa
Change-Id: I33e10589092ee1027fa2f27fc3c000a0031eaf38
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
Markos Chandras [Thu, 17 May 2018 11:08:00 +0000 (11:08 +0000)]
Merge "xci: bootstrap-host: Fetch netmask information from IDF"
Fatih Degirmenci [Thu, 17 May 2018 09:42:58 +0000 (09:42 +0000)]
Merge "xci: get-opnfv-scenario-requirements: Fix stale scenario facts"
Fatih Degirmenci [Thu, 17 May 2018 09:29:33 +0000 (09:29 +0000)]
Merge "xci: Bump Kubespray SHAs and install ansible modules"
Fatih Degirmenci [Thu, 17 May 2018 09:15:25 +0000 (09:15 +0000)]
Merge "xci: xci-deploy.sh: Only check for xci_overrides files in scenarios cache"
Markos Chandras [Thu, 17 May 2018 08:43:11 +0000 (09:43 +0100)]
xci: Wipe repositories at the beginning of the deployment
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>
Markos Chandras [Wed, 16 May 2018 13:06:16 +0000 (14:06 +0100)]
xci: xci-deploy.sh: Only check for xci_overrides files in scenarios cache
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>
Fatih Degirmenci [Thu, 17 May 2018 07:44:37 +0000 (07:44 +0000)]
Merge "xci: xci-deploy.sh: Print scenario git SHA"
Markos Chandras [Wed, 16 May 2018 18:31:43 +0000 (19:31 +0100)]
xci: get-opnfv-scenario-requirements: Fix stale scenario facts
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>
Markos Chandras [Wed, 16 May 2018 14:59:23 +0000 (15:59 +0100)]
xci: bootstrap-host: Fetch netmask information from IDF
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>
Markos Chandras [Tue, 15 May 2018 09:56:23 +0000 (10:56 +0100)]
xci: kubespray: Switch kubespray to dynamic inventory
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>
Fatih Degirmenci [Thu, 26 Apr 2018 17:44:34 +0000 (19:44 +0200)]
Pin os-odl-sfc to project internal tag 6.0.1
deploy-scenario:os-odl-sfc
installer-type:osa
Change-Id: I583c8620f29b0735a52c64309d2113f56d38be1e
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
wutianwei [Wed, 16 May 2018 13:33:37 +0000 (21:33 +0800)]
xci: Bump Kubespray SHAs and install ansible modules
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>
Markos Chandras [Wed, 16 May 2018 11:35:48 +0000 (12:35 +0100)]
xci: xci-deploy.sh: Print scenario git SHA
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>
Markos Chandras [Mon, 14 May 2018 09:56:48 +0000 (09:56 +0000)]
Merge "xci: osa: Add initial dynamic inventory from PDF/IDF files"
Markos Chandras [Mon, 14 May 2018 09:56:15 +0000 (09:56 +0000)]
Merge "xci: idf: Add more information for installers and flavors"
Fatih Degirmenci [Fri, 11 May 2018 19:28:22 +0000 (19:28 +0000)]
Merge "xci: scripts: start-new-vm.sh: Fix ID for openSUSE Tumbleweed"
Markos Chandras [Fri, 11 May 2018 15:05:39 +0000 (16:05 +0100)]
xci: scripts: start-new-vm.sh: Fix ID for openSUSE Tumbleweed
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>
Markos Chandras [Fri, 11 May 2018 10:00:55 +0000 (11:00 +0100)]
xci: Connect releng-xci-scenarios repository
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>
Markos Chandras [Fri, 11 May 2018 09:37:33 +0000 (09:37 +0000)]
Merge "fix k8 aio flavor undefined variable"
wutianwei [Thu, 10 May 2018 12:04:52 +0000 (20:04 +0800)]
fix k8 aio flavor undefined variable
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>
Markos Chandras [Fri, 11 May 2018 07:11:07 +0000 (07:11 +0000)]
Merge "New SHA for ODL"
Manuel Buil [Wed, 2 May 2018 07:04:48 +0000 (09:04 +0200)]
New SHA for ODL
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>
Markos Chandras [Thu, 10 May 2018 15:34:26 +0000 (16:34 +0100)]
xci: installer: Do not use XCI_ANSIBLE_PARAMS on remote nodes
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>
Markos Chandras [Tue, 1 May 2018 15:38:13 +0000 (16:38 +0100)]
xci: osa: Add initial dynamic inventory from PDF/IDF files
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>
Markos Chandras [Tue, 1 May 2018 15:06:27 +0000 (16:06 +0100)]
xci: idf: Add more information for installers and flavors
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>
Markos Chandras [Fri, 4 May 2018 09:33:51 +0000 (10:33 +0100)]
xci: osa: Bump SHA to fix resolv.conf file creation and git-clone issues
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>
Markos Chandras [Fri, 27 Apr 2018 19:25:30 +0000 (20:25 +0100)]
xci: Remove intermediate scenarios tasks file
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>
Markos Chandras [Fri, 27 Apr 2018 19:21:46 +0000 (20:21 +0100)]
xci: Improve scenario bootstrapping process
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>
Markos Chandras [Thu, 26 Apr 2018 08:38:54 +0000 (09:38 +0100)]
xci: playbooks: Simplify scenario overrides mechanism
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>
Markos Chandras [Wed, 25 Apr 2018 14:55:10 +0000 (15:55 +0100)]
xci: roles: bootstrap-host: Simplify configuration files
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>
Manuel Buil [Wed, 25 Apr 2018 14:50:45 +0000 (16:50 +0200)]
spec: PDF and IDF support
XCI baremetal is a big feature which will require a lot of patches and lines of
code. Before starting the contributions, a spec will allow us to discuss and
agree on the general aspects of its architecture and implementation. That will
hopefully facilitate and increase the velocity of its reviews.
This patch provides a spec with the general design ideas for the infra_manager
tool which will allow XCI to be deployed on baremetal. Its architecture is
based on the contributions from David. All the content of the spec is questionable
even the structure of the spec :)
Change-Id: Ie4b096482c8150a04d3d3b2df0e2ca8a280aad10
Signed-off-by: Manuel Buil <mbuil@suse.com>
Markos Chandras [Thu, 26 Apr 2018 12:49:47 +0000 (13:49 +0100)]
xci: Add XCI OSA variables file
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>
Fatih Degirmenci [Thu, 26 Apr 2018 05:06:05 +0000 (05:06 +0000)]
Merge "Resignation of committer David Blaisonneau"
Fatih Degirmenci [Wed, 25 Apr 2018 16:54:47 +0000 (16:54 +0000)]
Merge "xci: install-lib: Install curl package"
Markos Chandras [Wed, 25 Apr 2018 14:09:48 +0000 (14:09 +0000)]
Merge "Move configuration network templates"
Fatih Degirmenci [Wed, 25 Apr 2018 12:12:00 +0000 (14:12 +0200)]
Resignation of committer David Blaisonneau
Change-Id: Idc7f783730380e643f06b11755ba3692ddd339ec
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
Manuel Buil [Wed, 25 Apr 2018 10:59:17 +0000 (10:59 +0000)]
Merge "xci: xci-deploy: Fix sourcing of inbound scenarios overrides files"
Taseer Ahmed [Tue, 24 Apr 2018 16:28:05 +0000 (21:28 +0500)]
xci: install-lib: Install curl package
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>
Markos Chandras [Mon, 23 Apr 2018 14:48:56 +0000 (14:48 +0000)]
Merge "xci: install-lib: Make sure pip is upgraded first"
Markos Chandras [Tue, 17 Apr 2018 09:57:02 +0000 (10:57 +0100)]
xci: install-lib: Make sure pip is upgraded first
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>
Fatih Degirmenci [Fri, 20 Apr 2018 09:59:29 +0000 (11:59 +0200)]
Pin os-odl-bgpvpn to project internal tag 6.0.0
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>
Markos Chandras [Fri, 20 Apr 2018 09:34:42 +0000 (10:34 +0100)]
xci: xci-deploy: Fix sourcing of inbound scenarios overrides files
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>
Markos Chandras [Fri, 20 Apr 2018 06:49:58 +0000 (06:49 +0000)]
Merge "xci: lib-install: Clear XCI_CACHE prior to downloading openstack-ansible-tests"
Markos Chandras [Thu, 19 Apr 2018 15:44:10 +0000 (15:44 +0000)]
Merge "xci: infra: bifrost: Use XCI virtual environment for bifrost"
Fatih Degirmenci [Thu, 19 Apr 2018 07:18:24 +0000 (07:18 +0000)]
Merge "Start documenting CI Loops and Confidence Loops applied by XCI"
Taseer Ahmed [Tue, 17 Apr 2018 14:10:38 +0000 (19:10 +0500)]
xci: lib-install: Clear XCI_CACHE prior to downloading openstack-ansible-tests
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>
Fatih Degirmenci [Wed, 18 Apr 2018 19:08:31 +0000 (19:08 +0000)]
Merge "Export OPENSTACK_REQUIREMENTS_VERSION"
Manuel Buil [Wed, 18 Apr 2018 13:11:32 +0000 (13:11 +0000)]
Merge "Introduction of PDF/IDF"
Fatih Degirmenci [Wed, 18 Apr 2018 07:37:53 +0000 (09:37 +0200)]
Start documenting CI Loops and Confidence Loops applied by XCI
Please note that the document you are about to review contains information
about the existing CI Loops and promotion criterias applied by XCI in order
to record the current state of affairs.
Once this change gets merged, a new change will be proposed and that change
will be the one where the existing criterias will be updated and the new ones
will be introduced.
This document is created to start the conversation around determining
the promotion criterias (test scopes) for each of the current and upcoming
CI Loops XCI uses.
The expectation with this document is to update it collaboratively with
scenario owners, projects, XCI Team, Test Projects, and Release Management
to find the necessary level of testing as much as possible.
The information this document contains and the criterias set in it will be
superseded by the CD-Based Release model once it becomes available.
Change-Id: I7b4afd87a4f7694eb78c996e7870b8dc1e833fbf
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
Markos Chandras [Tue, 17 Apr 2018 13:50:55 +0000 (14:50 +0100)]
xci: infra: bifrost: Use XCI virtual environment for bifrost
We have already prepared a virtual environment for XCI so we may as
well use it for bifrost as well.
Change-Id: I084e5da7259a392c5d58e62e7985feb75bb45fb2
Signed-off-by: Markos Chandras <mchandras@suse.de>
Fatih Degirmenci [Tue, 17 Apr 2018 16:26:39 +0000 (16:26 +0000)]
Merge "xci: osa: Fix OpenStack-Ansible bootstrap"
Markos Chandras [Tue, 17 Apr 2018 13:35:50 +0000 (14:35 +0100)]
xci: osa: Fix OpenStack-Ansible bootstrap
Commit
269b5fc033b1ee8d14d9d4694f4f0d3765866c0a ("xci: installer: osa:
Fix status report when bootstrapping OSA") removed the 'chdir' parameter
by accident and this broke the OpenStack-Ansible bootstrapping. This
patch brings the missing parameter back.
Change-Id: I0ecfa0eb4c91a9f1dfa2d86a8a50bacdbd224533
Signed-off-by: Markos Chandras <mchandras@suse.de>
Markos Chandras [Tue, 17 Apr 2018 10:39:10 +0000 (10:39 +0000)]
Merge "xci: kubespray: Fix inventory when configuring keys on targethosts"
Markos Chandras [Tue, 17 Apr 2018 10:39:04 +0000 (10:39 +0000)]
Merge "xci: Add k8-nosdn-nofeature role"
Blaisonneau David [Thu, 15 Mar 2018 15:33:01 +0000 (16:33 +0100)]
Introduction of PDF/IDF
this is a proposition of self sufficient PDF/IDF to describe the POD
where XCI is running.
The PDF [Pod Description File] is describing the physical
level of the POD where XCI will run the installer. It lists servers and
their description (CPU/RAM/DISK/NICS)
The IDF [Installer Description File] is describing how the installers
will use the POD. 2 sections are today important in this IDF:
- idf.net_config is describing the network topology
- xci section is set to describe how common steps (network, nfs,
ceph,...) of XCI will use the pod.
Another section of IDF idf.[installer], curretnly empty, will
contain all pod specificities that are linked to an installer (osa,
kolla, k8s,...) and not shared with the others.
Those 2 files are describing the vitual pod as it is already
deployed by the XCI. Those default files can be replaced by the ones
describing the target pod (done manually or with the CI). It would then
be to the install process to take into account these files (to be done).
Change-Id: I3dcbd965f8c84b03d34eb0fd68599d7bec402dbd
Signed-off-by: Blaisonneau David <david.blaisonneau@orange.com>
Fatih Degirmenci [Tue, 17 Apr 2018 07:27:20 +0000 (07:27 +0000)]
Merge "Create directory to move xci scripts from releng/jjb/xci"
Markos Chandras [Mon, 16 Apr 2018 12:23:36 +0000 (12:23 +0000)]
Merge "xci: installer: osa: Fix status report when bootstrapping OSA"
Markos Chandras [Mon, 16 Apr 2018 09:33:47 +0000 (10:33 +0100)]
xci: kubespray: Fix inventory when configuring keys on targethosts
The SSH keys for the OPNFV host have been configured in the
configure-opnfvhost.yml playbook so we shouldn't do that in a playbook
that is only meant to configure the target hosts. As such, fix the group
to use 'k8s-cluster' instead.
Since the targethosts playbook does not apply to all hosts anymore, we
can simply drop the list of required packages and only install 'netaddr'
on the OPNFV host which is the host that needs it. Similarly, the dbus
package is only needed on the targethosts.
Change-Id: I293ad83a3a95797d9025f2cddd7849be7b3a49da
Signed-off-by: Markos Chandras <mchandras@suse.de>
wutianwei [Sun, 8 Apr 2018 07:46:03 +0000 (15:46 +0800)]
xci: Add k8-nosdn-nofeature role
Move default k8s-cluster.yml from kubespray/files/ to
role/k8-nosdn-nofeature/files/k8s-cluster.yml since it's scenario
specific. Moreover, we set 'cloud' as kube_network_plugin, which would
use kubnet as network plugin. The kubenet network plugin requires
routing between to be setup by the administrator so we need to add
static routes on every host since they are connected using a bridge
instead of a router.
installer-type:kubespray
deploy-scenario:k8-nosdn-nofeature
Change-Id: I6ab7288c966d7f17e9d61279056f7673be37bebe
Signed-off-by: wutianwei <wutianwei1@huawei.com>
Signed-off-by: Markos Chandras <mchandras@suse.de>
Fatih Degirmenci [Mon, 16 Apr 2018 08:06:40 +0000 (10:06 +0200)]
Create directory to move xci scripts from releng/jjb/xci
This change proposes creation of a folder named ci in releng-xci
in order to move the XCI scripts from Releng. The reason to name
the directory ci is that this directory has been in use by the
majority of OPNFV Projects and Releng either executes the scripts
directly or with the help of wrapper scripts that do not contain
project specific logic.
Scripts developed in releng/jjb/xci has too much XCI specific stuff
in them, making it difficult to keep the separation between
XCI framework and CI itself. Apart from that, having scripts
in Releng makes it troublesome to verify them properly.
Another importance of moving the scripts here is to ensure
these scripts can be used by other CI/automation tooling such
as Zuul in future. It is better to move the scripts now before
things get even more complicated to move.
Change-Id: Id22c2c2e09950b49a36a04a78208a3404de9c088
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>