Age | Commit message (Collapse) | Author | Files | Lines |
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
|
|
|
|
|
|
Change-Id: Idc7f783730380e643f06b11755ba3692ddd339ec
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
|
|
|
|
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>
|
|
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
|
|
|
|
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>
|
|
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>
|
|
|
|
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>
|
|
|
|
|
|
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>
|
|
|
|
|
|
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>
|
|
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>
|
|
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>
|
|
Some of the files needed by Functest are pretty big and it takes time
to download them all so this change ensures that the files are needed
by healthcheck is downloaded and the rest is not.
Further changes are needed to make the list even smaller for smoke test
but we need Functest guidance to identify which of them are needed for
what testing. It could be done by having suite specific download_images.sh
like download_images_healthcheck.sh, download_images_smoke.sh and so on.
deploy-scenario:os-nosdn-nofeature
installer-type:osa
Change-Id: Ib2c5867adfad8097d1a084c39ad08cc4df2e4549
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
|
|
Fixes the following ansible-lint warning
[WARNING]: While constructing a mapping from /home/devuser/releng-
xci/xci/installer/osa/playbooks/configure-opnfvhost.yml, line 113,
column 7,
found a duplicate dict key (args). Using last defined value only.
We also remove the changed_when value since we now use 'args' to get
proper status report.
Change-Id: I382e3183b66e590462fbcb8663d53cade0e5d92c
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
openSUSE is supported in kubespray so we add it to the
k8s-canal-nofeature scenario.
installer-type:kubespray
deploy-scenario:k8-canal-nofeature
Change-Id: I626e98beef220f724ae72329be42b959a03ce87b
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
openSUSE is supported in kubespray so we add it to the
k8s-calico-nofeature scenario.
installer-type:kubespray
deploy-scenario:k8-calico-nofeature
Change-Id: I1ffa972b7bb1f949645bb585d2a8688cf4580342
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
|
|
|
|
installer-type:kubespray
deploy-scenario:k8-flannel-nofeature
Change-Id: Ie47efe4759b2cf52421cd2edf5e7817442b0026f
Signed-off-by: Taseer Ahmed <taseer94@gmail.com>
|
|
The upstream PR to include openSUSE support has been merged so we need
to bump the SHA to make it available in XCI.
Change-Id: Ida5bd05ce8b0c883b6d7582a495ca934ecc4b1f1
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
|
|
|
|
installer-type:kubespray
deploy-scenario:k8-calico-nofeature
Change-Id: Ief8557149fd47faab43f8f4bedcf6466dac2275f
Signed-off-by: wutianwei <wutianwei1@huawei.com>
|
|
|
|
|
|
In the past, there were cases where the Git mirrors were
out of sync with Gerrit which caused the use of outdated
repos. This change switches all scenarios to Gerrit.
Apart from that, it also aligns the urls across all scenarios.
Change-Id: I5301630a71446df8668f16c81bf26d81bcea8031
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
|
|
add the k8-nosdn-noeature and k8-canal-nofeature roles under scenarios directory
run different roles to configure the k8s-cluster according to the deploy scenario
installer-type:kubespray
deploy-scenario:k8-canal-nofeature
Change-Id: Ia96b01f79fb058e045c5b7d9d9aecb7f15a21e63
Signed-off-by: wutianwei <wutianwei1@huawei.com>
|
|
So far we were building the repo url variable in the odl scenarios. Moving
that logic to ODL role probably makes more sense as it can be reused by all
scenarios.
This patch passes the odl_version to OSA. That variable will be processed by
the ODL role, which will finally generate the repo url variable
deploy-scenario:os-odl-nofeature
installer-type:osa
Change-Id: I0c9da069238348af6d00d8422ca478cb4be4cfad
Signed-off-by: Manuel Buil <mbuil@suse.com>
|
|
This change updates prepare-functest role for testing k8s scenarios
using functest healthcheck. The changes include
- update tasks to skip checking/creation of public gateway which
is needed for OpenStack based scenarios
- update run-functest.sh.j2 template and set the used docker image
name based on FUNCTEST_SUITE_NAME that is going to be used
- update run-functest.sh.j2 template and add commands needed to run
tests using functest-kubernetes-${FUNCTEST_SUITE_NAME} docker image
- update env.j2 to exclude setting the var EXTERNAL_NETWORK which is needed
for OpenStack based scenarios
Apart from updating the the prepare-functest role, a bug has also been fixed
by adding the fetching of xci.env for installer kubespray.
installer-type:kubespray
deploy-scenario:k8-nosdn-nofeature
Change-Id: Ia701db9748ea9509a2dc165341285fb189aa7266
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
|