releng-xci.git
6 years agoRevert "display the correct deploy scenario for the functest run" 31/55231/2
Manuel Buil [Mon, 9 Apr 2018 13:13:15 +0000 (15:13 +0200)]
Revert "display the correct deploy scenario for the functest run"

This reverts commit 5dc7b76e38019c059cea159769cdb2c37af98ded.

OPENSTACK_OSA_VERSION was removed by this patch and that variable is
needed. By looking at the patch, it seems theat variable was removed
by mistake

Change-Id: I73dc7a7ec393231717f847ff303f9b2f99a00cc0

6 years ago[XCI] Fix ansible synchronize module parameter 83/55183/1
wutianwei [Sun, 8 Apr 2018 07:49:27 +0000 (15:49 +0800)]
[XCI] Fix ansible synchronize module parameter

synchronize module unsupported parameter "recurse",
it would be failed, when trying to synchronize the directory.
we need change it to "recursive", more information please refer to
http://docs.ansible.com/ansible/devel/modules/synchronize_module.html

Change-Id: If18ce8a3411ba9425dd573f090c5f4e0c41858e0
Signed-off-by: wutianwei <wutianwei1@huawei.com>
6 years agoxci: bifrost: Fix unbound variable error 53/55053/1
Markos Chandras [Fri, 6 Apr 2018 09:53:43 +0000 (10:53 +0100)]
xci: bifrost: Fix unbound variable error

If we are not in a virtual environment, then VIRTUAL_ENV is going
to be unset and we will fail with the following error:

./scripts/bifrost-provision.sh: line 105: VIRTUAL_ENV: unbound variable

As such, we need to provide a default value if that variable is unset.
We also fix a typo in the _sudo variable.

Change-Id: Ic018716c03ffba6e8e742e34720ea462b85341be
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoMerge "xci: kubespray: Fix failures to due task checks"
Markos Chandras [Fri, 6 Apr 2018 09:16:57 +0000 (09:16 +0000)]
Merge "xci: kubespray: Fix failures to due task checks"

6 years agoMerge "xci: osa: Fix task status when bootstrapping OpenStack-Ansible"
Markos Chandras [Fri, 6 Apr 2018 09:16:48 +0000 (09:16 +0000)]
Merge "xci: osa: Fix task status when bootstrapping OpenStack-Ansible"

6 years agoMerge "xci: bifrost: Use 'sudo' to install dependencies for bifrost jobs"
Markos Chandras [Fri, 6 Apr 2018 09:16:40 +0000 (09:16 +0000)]
Merge "xci: bifrost: Use 'sudo' to install dependencies for bifrost jobs"

6 years agoMerge changes from topic 'common-ssh-manage-tasks'
Markos Chandras [Fri, 6 Apr 2018 09:16:20 +0000 (09:16 +0000)]
Merge changes from topic 'common-ssh-manage-tasks'

* changes:
  xci: osa: Use Ansible modules to create ssl certificates
  xci: osa: Move tasks for managing SSH keys to a new file

6 years agoMerge "Correct mail address of Manuel Buil"
Fatih Degirmenci [Thu, 5 Apr 2018 08:49:04 +0000 (08:49 +0000)]
Merge "Correct mail address of Manuel Buil"

6 years agoxci: kubespray: Fix failures to due task checks 03/54903/2
Markos Chandras [Wed, 4 Apr 2018 10:38:52 +0000 (11:38 +0100)]
xci: kubespray: Fix failures to due task checks

(this commit fixes many things because they all need to be submitted
together to unblock the jobs)

Commit 9e1d3d6e62abf5d0da26a296bcd235f37a54d9c6 ("xci: playbooks: Fixes
various ansible-lint warnings") broke public key authentication from
localhost to the OPNFV host because the localhost pubkey was not
appended in the authorized_keys file. The reason for that was that the
task was skipped due to the 'creates' parameter. This is now fixed, by
dropping the check since we always need to append the localhost pubkey.

This is only a temporary solution until we modify kubespray to use the
common file for managing the SSH keys.

This also makes the final 'kubectl' move to /usr/local/bin non-fatal
since future kubespray releases put it there already.

The same commit also broke the k8s-cluster.yml overrides. This is
because the file was never copied across due to the task conditional
being wrong. As such, we fix the conditional to check for the correct
file.

Change-Id: I9cfb29eba50c7fea9df29581ebb015163b8a9754
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: osa: Fix task status when bootstrapping OpenStack-Ansible 99/54899/1
Markos Chandras [Wed, 4 Apr 2018 10:05:16 +0000 (11:05 +0100)]
xci: osa: Fix task status when bootstrapping OpenStack-Ansible

The bootstrap script from the OpenStack-Ansible repository creates
several things in /opt/ansible-runtime and /usr/local/bin so we can
check if the final 'openstack-ansible' symlink exists in order to
report a proper status for that task and even skip if everything
is prepared already.

Change-Id: I4ca3a733746f8d757aa1156b533e4b4de90188e6
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: bifrost: Use 'sudo' to install dependencies for bifrost jobs 97/54897/1
Markos Chandras [Tue, 3 Apr 2018 17:09:32 +0000 (18:09 +0100)]
xci: bifrost: Use 'sudo' to install dependencies for bifrost jobs

When bifrost jobs are being executed, the virtual environment hasn't
been prepared yet because that's something that bifrost does later on.
As such, we need to use sudo to install the required dependencies to
avoid the following issue:

Exception:
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
  File "/usr/lib/python2.7/site-packages/pip/commands/install.py", line 342, in run
    prefix=options.prefix_path,
  File "/usr/lib/python2.7/site-packages/pip/req/req_set.py", line 784, in install
    **kwargs
  File "/usr/lib/python2.7/site-packages/pip/req/req_install.py", line 851, in install
    self.move_wheel_files(self.source_dir, root=root, prefix=prefix)
  File "/usr/lib/python2.7/site-packages/pip/req/req_install.py", line 1064, in move_wheel_files
    isolated=self.isolated,
  File "/usr/lib/python2.7/site-packages/pip/wheel.py", line 345, in move_wheel_files
    clobber(source, lib_dir, True)
  File "/usr/lib/python2.7/site-packages/pip/wheel.py", line 316, in clobber
    ensure_dir(destdir)
  File "/usr/lib/python2.7/site-packages/pip/utils/__init__.py", line 83, in ensure_dir
    os.makedirs(path)
  File "/usr/lib64/python2.7/os.py", line 157, in makedirs
    mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/usr/lib/python2.7/site-packages/pbr'

Change-Id: I081884ec18d27af19a053bf5b734f6f3846c60f1
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: osa: Use Ansible modules to create ssl certificates 95/54895/1
Markos Chandras [Tue, 3 Apr 2018 11:47:54 +0000 (12:47 +0100)]
xci: osa: Use Ansible modules to create ssl certificates

Ansible already provides modules to create ssl certificates so we can
use these instead of running the openssl commands directly. Moreover, we
can drop all the tasks which create the ssl directories since there are
being created by the openssl package which also creates the appropriate
symlinks. Finally, there is no need to generate the certificate on
localhost if only the OPNFV host consumes it, so move these steps to
the appropriate playbook.

Change-Id: I0045945c502013be3d76440876e894a44a092690
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: osa: Move tasks for managing SSH keys to a new file 91/54791/1
Markos Chandras [Tue, 3 Apr 2018 10:14:11 +0000 (11:14 +0100)]
xci: osa: Move tasks for managing SSH keys to a new file

The tasks that manage the SSH keys are common across hosts and
also common across different installers. As such, lets move them
to a new file so we can share them more easily.

Change-Id: If235877394f224a47a2f2b8de748a2330eabcec1
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoMerge changes from topic 'misc-simplifications-osa'
Markos Chandras [Tue, 3 Apr 2018 09:33:17 +0000 (09:33 +0000)]
Merge changes from topic 'misc-simplifications-osa'

* changes:
  xci: bootstrap-host: Make active network interface consistent
  xci: osa: Simplify tasks for copying OSA configuration files
  xci: Use proper Ansible modules to manage SSH keys

6 years agoCorrect mail address of Manuel Buil 83/54783/2
Fatih Degirmenci [Tue, 3 Apr 2018 09:26:31 +0000 (11:26 +0200)]
Correct mail address of Manuel Buil

Change-Id: Id448a38567975185b399ab54a34b39edf148a0ac
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
6 years agoshabump: Bump SHAs to bring cinder, lxc_hosts, and pip fixes in 65/54565/6
Fatih Degirmenci [Wed, 28 Mar 2018 16:44:06 +0000 (09:44 -0700)]
shabump: Bump SHAs to bring cinder, lxc_hosts, and pip fixes in

This change brings the fix for
- cinder haproxy check for ha deployments
- pip related fixes
- fixes for lxc_hosts

Change-Id: I4af64041a4a76c10361456f73577e7c7040edf8a
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
6 years agoxci: bootstrap-host: Make active network interface consistent 81/54581/1
Markos Chandras [Wed, 28 Mar 2018 15:10:28 +0000 (16:10 +0100)]
xci: bootstrap-host: Make active network interface consistent

When we run XCI for the first time, Ansible picks the first active
interface as the default one. However, after we configure all the XCI
bridges etc, and we try to run this role again, Ansible may have changed
its mind about what interface is active and it could default to one of
the bridges. This forces the role to redo the network configuration but
this time the bridges are being attached to bridges so everything goes
terribly wrong after that. The way to solve this would be to add a local
fact about what interface should be considered as the 'real' default one
so subsequent calls to this role to not destroy the network.

This also drops the task which removed the network configuration files
on SUSE platforms since Ansible is smart enough to not touch them if
they are configured properly.

Change-Id: Ic0525e934b1934a40d69e6cf977615ab9b3dac6d
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: osa: Simplify tasks for copying OSA configuration files 79/54579/1
Markos Chandras [Wed, 28 Mar 2018 09:44:12 +0000 (10:44 +0100)]
xci: osa: Simplify tasks for copying OSA configuration files

We can use a loop to copy all these files instead of multiple tasks.
This simplifies the playbook quite a bit.

Change-Id: I5f0d387ac090d81fc577b5ebeaeb6131e75cffa1
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: Use proper Ansible modules to manage SSH keys 77/54577/1
Markos Chandras [Wed, 28 Mar 2018 09:24:47 +0000 (10:24 +0100)]
xci: Use proper Ansible modules to manage SSH keys

We can use the 'user', 'slurp' and 'authorized_key' modules
to manage the various SSH configurations across the hosts instead
of using command line tools.

Change-Id: I2dde4d584fc336e267868607d5a58f5ee2c1feed
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoMerge "xci: bifrost: Only use libvirt as DNS server if using proxy servers"
Markos Chandras [Wed, 28 Mar 2018 21:04:31 +0000 (21:04 +0000)]
Merge "xci: bifrost: Only use libvirt as DNS server if using proxy servers"

6 years agoMerge "xci: Check XCI playbooks using ansible-lint"
Markos Chandras [Wed, 28 Mar 2018 21:04:26 +0000 (21:04 +0000)]
Merge "xci: Check XCI playbooks using ansible-lint"

6 years agoMerge "xci: playbooks: Fixes various ansible-lint warnings"
Markos Chandras [Wed, 28 Mar 2018 21:04:22 +0000 (21:04 +0000)]
Merge "xci: playbooks: Fixes various ansible-lint warnings"

6 years agoMerge "xci: get-opnfv-scenario-requirements: Use checksum for rsync updates"
Markos Chandras [Wed, 28 Mar 2018 21:04:17 +0000 (21:04 +0000)]
Merge "xci: get-opnfv-scenario-requirements: Use checksum for rsync updates"

6 years agoxci: infra: bifrost: Make sure XCI variables are defined first 39/54539/1
Markos Chandras [Wed, 28 Mar 2018 08:36:55 +0000 (09:36 +0100)]
xci: infra: bifrost: Make sure XCI variables are defined first

It's best to define all the XCI variables before everything else
to ensure that all subsequent bifrost variables are properly
defined.

Change-Id: Id4a9e0c89e8dd32b852cfef6b9bb336c4b75f5a7
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: bifrost: Only use libvirt as DNS server if using proxy servers 85/54485/3
Markos Chandras [Mon, 26 Mar 2018 15:42:37 +0000 (16:42 +0100)]
xci: bifrost: Only use libvirt as DNS server if using proxy servers

Commit 0d332a80cf731e5927c81c9f6929a8b83d43cddd ("Add proxy support")
switched the default DNS server to the libvirt bridge. However, we only
need to override the default DNS if we are behind a proxy server.

Change-Id: I7d8fe8c10a1aba2db4a703a81e74ef76fa593d95
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoMerge "xci: infra: bifrost: Define more XCI variables for bifrost jobs"
Markos Chandras [Tue, 27 Mar 2018 14:59:54 +0000 (14:59 +0000)]
Merge "xci: infra: bifrost: Define more XCI variables for bifrost jobs"

6 years agoxci: get-opnfv-scenario-requirements: Use checksum for rsync updates 95/54495/1
Markos Chandras [Mon, 26 Mar 2018 20:27:15 +0000 (21:27 +0100)]
xci: get-opnfv-scenario-requirements: Use checksum for rsync updates

Rsync will update modification times on transferred files so Ansible
marks the task as 'changed' all the time even though the source and
destination files are the same. This is confusing for XCI developers
because they may think that there are local changes to the scenarios
which is not always the case. As such, compare the 'checksums' of the
actual files to determine if there are any changes that need to be
copied over. This requires us to turn off the 'archive' option and
use the individual options directly.

This fixes the following problem where in a typical XCI job, all
inbound scenarios appear to have changes which is not true.

Mar 26 15:10:24 TASK [Synchronize local changes to scenarios' master branch] *******************
Mar 26 15:10:24 ok: [localhost] => (item=os-odl-sfc)
Mar 26 15:10:25 changed: [localhost] => (item=os-nosdn-nofeature)
Mar 26 15:10:25 changed: [localhost] => (item=os-odl-nofeature)
Mar 26 15:10:25 changed: [localhost] => (item=k8-nosdn-nofeature)
Mar 26 15:10:26 ok: [localhost] => (item=os-odl-bgpvpn)

Change-Id: I14f446c341a675b286e971f0b5c0be14d04abb9d
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: Check XCI playbooks using ansible-lint 75/54475/4
Markos Chandras [Mon, 26 Mar 2018 10:34:33 +0000 (11:34 +0100)]
xci: Check XCI playbooks using ansible-lint

The ansible-lint tool can help with maintaining consistency across all
the XCI playbooks, so lets introduce it early in the process to capture
common mistakes before the actual XCI deployment is executed. This
however needs to run after all the scenarios repositories have been
cloned and configured.

Change-Id: I28104429e3ac0cdbc48a003b163f4fb8c3acd8a7
Link: https://github.com/willthames/ansible-lint
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: playbooks: Fixes various ansible-lint warnings 73/54473/4
Markos Chandras [Mon, 26 Mar 2018 09:23:13 +0000 (10:23 +0100)]
xci: playbooks: Fixes various ansible-lint warnings

In preparation for adding support for the 'ansible-lint' tool we fix
various problems in our playbooks to make the tool happy before we make
it mandatory.

Some of the problems that are fixed here are

- [ANSIBLE0011] All tasks should be named
- [ANSIBLE0012] Commands should not change things if nothing needs doing
- [ANSIBLE0013] Use shell only when shell functionality is required
- [ANSIBLE0010] Package installs should not use latest

installer-type:osa
deploy-scenario:os-nosdn-nofeature
Change-Id: I66c759d3932a414b81b2846393d2d98ce80c0b6d
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: get-opnfv-scenario-requirements: Fix local scenario sync 83/54483/1
Markos Chandras [Mon, 26 Mar 2018 14:26:43 +0000 (15:26 +0100)]
xci: get-opnfv-scenario-requirements: Fix local scenario sync

Commit 07747a53901e550280afb421b6fcbebc8994e93a ("xci: playbooks: Fix
synchronization of external scenarios") fixed copying of external
scenarios but broke internal ones because the regexp was wrong. The
variable was not evaluated properly so nothing was replaced for internal
scenarios. This also fixes a problem when the scenario and the role
names differ so we make sure that the role with the correct name is
created.

Change-Id: Idd7590d972841b5c03286b34757d7325b863c6bf
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: infra: bifrost: Define more XCI variables for bifrost jobs 67/54467/1
Markos Chandras [Mon, 26 Mar 2018 08:05:37 +0000 (09:05 +0100)]
xci: infra: bifrost: Define more XCI variables for bifrost jobs

This is similar to eeb906a553d6ddf70ffc5af1acadb33a13ff5990 ("xci:
infra: bifrost: Set XCI_DISTRO if it's not defined") so we need to
define more XCI variables if we are running the standalone bifrost
jobs.

Change-Id: I112cfbfdda677174bdb0d0afef73f035c74cb79e
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoMerge "xci: playbooks: Fix synchronization of external scenarios"
Fatih Degirmenci [Sat, 24 Mar 2018 20:39:59 +0000 (20:39 +0000)]
Merge "xci: playbooks: Fix synchronization of external scenarios"

6 years agoxci: playbooks: Fix synchronization of external scenarios 31/54431/2
Markos Chandras [Sat, 24 Mar 2018 19:28:02 +0000 (19:28 +0000)]
xci: playbooks: Fix synchronization of external scenarios

The code was supposed to copy everything from
{{ xci_path }}/{{ scenario.role }} to the XCI roles directory but
external scenarios have their 'role' attribute relative to their
repository whereas internal one have it relative to the {{ xci_path }}.
As such, changes to external scenarios were not copied successfully
to the playbooks directory and their changes where never tested.
This removes the 'xci/scenarios/$scenario' part of the inbound
roles attribute to make all them relative to the
xci/scenarios/$scenario directory.

Change-Id: Id28671b30c8ee4aa6bc186444c0e5a3a3ea3d89b
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoMerge "xci: install: Move all pip installations to virtualenv"
Fatih Degirmenci [Fri, 23 Mar 2018 21:27:43 +0000 (21:27 +0000)]
Merge "xci: install: Move all pip installations to virtualenv"

6 years agoMerge "xci: files: install-lib.sh: Hide rsync errors"
Fatih Degirmenci [Fri, 23 Mar 2018 21:27:35 +0000 (21:27 +0000)]
Merge "xci: files: install-lib.sh: Hide rsync errors"

6 years agoxci: install: Move all pip installations to virtualenv 99/54399/5
Markos Chandras [Fri, 23 Mar 2018 10:01:47 +0000 (10:01 +0000)]
xci: install: Move all pip installations to virtualenv

Now that all pip installations are managed in the same way we can
move them inside a global virtual environment to further isolate the
XCI artifacts from the rest of the system. Moreover, we further simplify
the initial package installation to install everything at once instead
of calling the package manager for every single package that we need.

Change-Id: I6a170d2439fae8b0653f3141e0e8bb8ead67657e
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: infra: bifrost: Set XCI_DISTRO if it's not defined 03/54403/1
Markos Chandras [Fri, 23 Mar 2018 14:52:00 +0000 (14:52 +0000)]
xci: infra: bifrost: Set XCI_DISTRO if it's not defined

The XCI_DISTRO variable is normally set from the XCI deployment script.
However, on bifrost jobs, we don't run this script as part of XCI so we
need to ensure that this variable is set properly.

Change-Id: I295b65176bab6ccbdd12aa50449d3c021a88b43d
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: files: install-lib.sh: Hide rsync errors 89/54389/1
Markos Chandras [Fri, 23 Mar 2018 08:38:47 +0000 (08:38 +0000)]
xci: files: install-lib.sh: Hide rsync errors

rsync may fail because the OPNFV VM doesn't exist if we failed quite
early in the process so hide any errors from the remote rsync operation
to avoid confusion.

Change-Id: I43dfb0a527165a186674178d12e6d00ffc61f580
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoMerge "xci: playbooks: Fix message on fail task for deployed scenario"
Fatih Degirmenci [Thu, 22 Mar 2018 20:23:36 +0000 (20:23 +0000)]
Merge "xci: playbooks: Fix message on fail task for deployed scenario"

6 years agoMerge "xci: files: xci-destroy-env.sh: Remove VMs from all flavors"
Fatih Degirmenci [Thu, 22 Mar 2018 20:23:19 +0000 (20:23 +0000)]
Merge "xci: files: xci-destroy-env.sh: Remove VMs from all flavors"

6 years agoMerge "xci: osa: Configure the ARA callback plugin on OPNFV host"
Fatih Degirmenci [Thu, 22 Mar 2018 20:23:02 +0000 (20:23 +0000)]
Merge "xci: osa: Configure the ARA callback plugin on OPNFV host"

6 years agoMerge "xci: Install the ARA callback plugin"
Fatih Degirmenci [Thu, 22 Mar 2018 20:22:58 +0000 (20:22 +0000)]
Merge "xci: Install the ARA callback plugin"

6 years agoMerge "xci: files: install-lib.sh: Install pip packages as user"
Fatih Degirmenci [Thu, 22 Mar 2018 20:22:53 +0000 (20:22 +0000)]
Merge "xci: files: install-lib.sh: Install pip packages as user"

6 years agoMerge "xci: files: Move Ansible installation to a library file"
Fatih Degirmenci [Thu, 22 Mar 2018 20:22:35 +0000 (20:22 +0000)]
Merge "xci: files: Move Ansible installation to a library file"

6 years agoMerge "xci: kubespray: Add experimental support for openSUSE"
Fatih Degirmenci [Thu, 22 Mar 2018 20:22:27 +0000 (20:22 +0000)]
Merge "xci: kubespray: Add experimental support for openSUSE"

6 years agoNomination of David Blaisonneau as XCI committer 91/53891/2
Fatih Degirmenci [Thu, 15 Mar 2018 15:25:32 +0000 (16:25 +0100)]
Nomination of David Blaisonneau as XCI committer

David Blaisonneau is the main driver of introducing native
support for Pharos PDF/IDF in XCI. He has been also working
on stabilizing XCI framework and enabling baremetal deployments.

His contributions include
- creation of PDFs for baremetal PODs
- starting the work on improving the stabilization of the framework
- starting the work on introducing support for PDF/IDF
- deployment on baremetal

Change-Id: If4e71c7456e5e8f642b3e82b8ef356747431ed96
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
6 years agoNomination of Periyasamy Palanisamy as XCI committer 89/53889/2
Fatih Degirmenci [Thu, 15 Mar 2018 12:52:24 +0000 (13:52 +0100)]
Nomination of Periyasamy Palanisamy as XCI committer

Periyasamy Palanisamy onboarded SDNVPN project to XCI,
contributed various scenarios and made contributions to upstream
projects.

His contributions include
- creating os-odl-nofeature scenario
- integrating ovs into os-nosdn-nofeature scenario
- creating os-odl-bgpvpn scenario
- improving the framework
- reviewing changes

His contributions can be seen from following link:
https://gerrit.opnfv.org/gerrit/#/q/owner:periyasamy.palanisamy%2540ericsson.com+project:releng-xci+status:merged

Apart from contributing to XCI, he directly worked in upstream for
integrating different features and improving things. Some of his
contributions can be seen from following links:
https://review.openstack.org/#/q/owner:%22Periyasamy+Palanisamy+%253Cperiyasamy.palanisamy%2540ericsson.com%253E%22+status:merged
https://git.opendaylight.org/gerrit/#/q/project:integration/packaging/ansible-opendaylight+owner:periyasamy.palanisamy%2540ericsson.com+status:merged

Change-Id: I1b86938b8519e758801339fb8029f8b2dd1f7918
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
6 years agoNomination of Manuel Buil as XCI committer 87/53887/2
Fatih Degirmenci [Thu, 15 Mar 2018 12:40:42 +0000 (13:40 +0100)]
Nomination of Manuel Buil as XCI committer

Manuel Buil has been crucial onboarding OPNFV SFC Project to XCI.
His contributions include
- creating os-odl-sfc scenario on XCI
- developing role to integrate Functest into XCI
- working on establishing XCI developer workflow by being first project
to evaluate the XCI framework and provide feedback
- reviewing changes

His contributions can be seen from following link:
https://gerrit.opnfv.org/gerrit/#/q/owner:mbuil%2540suse.com+project:releng-xci+status:merged

Apart from contributions to XCI, he contributed to several upstream components
in order to onboard SFC to XCI.
- Taking over the Ansible Tacker Role implementation and finalizing it
- Integrating Tacker into OpenStack Ansible
- Enhancing Ansible Neutron Role and introducing ODL support

His contributions to upstream projects can be seen from following link:
https://review.openstack.org/#/q/owner:mbuil%2540suse.com+status:merged
https://git.opendaylight.org/gerrit/#/q/project:integration/packaging/ansible-opendaylight+owner:mbuil%2540suse.com+status:merged

Change-Id: I40756bfe5e7c962e6d8d6d5c3d53ef1699ae6428
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
6 years agoMerge "Nomination of Tianwei Wu as XCI committer"
Fatih Degirmenci [Thu, 22 Mar 2018 19:32:06 +0000 (19:32 +0000)]
Merge "Nomination of Tianwei Wu as XCI committer"

6 years agoMerge "Connect ODL CI-CD to XCI"
Fatih Degirmenci [Thu, 22 Mar 2018 19:29:52 +0000 (19:29 +0000)]
Merge "Connect ODL CI-CD to XCI"

6 years agoMerge "xci: scripts: start-new-vm.sh: Improve do_copy()"
Fatih Degirmenci [Thu, 22 Mar 2018 19:27:53 +0000 (19:27 +0000)]
Merge "xci: scripts: start-new-vm.sh: Improve do_copy()"

6 years agoMerge "Move bootstrap-scenarios.yml to common playbooks directory"
Fatih Degirmenci [Thu, 22 Mar 2018 19:23:41 +0000 (19:23 +0000)]
Merge "Move bootstrap-scenarios.yml to common playbooks directory"

6 years agoMerge "Use package_state:present to avoid package installation issues"
Fatih Degirmenci [Thu, 22 Mar 2018 19:03:47 +0000 (19:03 +0000)]
Merge "Use package_state:present to avoid package installation issues"

6 years agoxci: osa: Configure the ARA callback plugin on OPNFV host 67/54267/8
Markos Chandras [Wed, 21 Mar 2018 09:07:09 +0000 (09:07 +0000)]
xci: osa: Configure the ARA callback plugin on OPNFV host

The OSA deployment is driven by the OPNFV host so we need to install
and configure the ARA plugin there as well.

Change-Id: Ib583f5771a8c2da7531f0a42612d7c0b34fb4898
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoMove bootstrap-scenarios.yml to common playbooks directory 93/54293/4
wutianwei [Thu, 22 Mar 2018 08:11:52 +0000 (16:11 +0800)]
Move bootstrap-scenarios.yml to common playbooks directory

Move bootstrap-scenarios.yml from installer/osa/playbooks/bootstrap-scenarios.yml
to playbooks/bootstrap-scenarios.yml as a common playbook.
So we can use this file to bootstarap k8s-* scenarios, instead of creating a new
file under installer/kubespray/playbooks/bootstrap-scenarios.yml

Change-Id: Ic31ee00e1a0863f48fb86298d7c00fa8420fa28a
Signed-off-by: wutianwei <wutianwei1@huawei.com>
6 years agoxci: playbooks: Fix message on fail task for deployed scenario 05/54305/1
Markos Chandras [Thu, 22 Mar 2018 10:08:03 +0000 (10:08 +0000)]
xci: playbooks: Fix message on fail task for deployed scenario

The fail message was a bit weird since it listed all the scenarion
information as below:

TASK [Fail if {'scm': u'git', 'src':
u'https://git.opnfv.org/releng-xci', 'scenario': u'os-nosdn-nofeature',
'installers': [{'flavors': [u'ha', u'mini', u'noha'], 'installer':
u'osa', 'distros': [u'opensuse', u'ubuntu', u'centos']}], 'version': u'master', 'role':
u'xci/scenarios/os-nosdn-nofeature/role/os-nosdn-nofeature'} is not
supported] ***
skipping: [localhost]

This looks awkward and we should only list the actual scenario name
instead.

Change-Id: I725793f91661f00606573906847336716fecd418
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: files: xci-destroy-env.sh: Remove VMs from all flavors 01/54301/2
Markos Chandras [Thu, 22 Mar 2018 09:49:33 +0000 (09:49 +0000)]
xci: files: xci-destroy-env.sh: Remove VMs from all flavors

If we switch from one flavor to another then some VMs may left behind
so we need to cleanup the VMs from all flavors.

Change-Id: I8b5d400b6d543b32b9cdaff73c3d173984357012
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: scripts: start-new-vm.sh: Improve do_copy() 23/54123/3
Victor Morales [Mon, 19 Mar 2018 09:31:23 +0000 (02:31 -0700)]
xci: scripts: start-new-vm.sh: Improve do_copy()

The copy function of start-new-vm.sh script only excludes the
image of the current OS which is some cases can contain other
images. This change excludes any image.

Change-Id: I50075cb56e7784d090582fe5d0c11c906773a174
Signed-off-by: Victor Morales <victor.morales@intel.com>
6 years agoxci: Install the ARA callback plugin 13/54113/6
Markos Chandras [Mon, 19 Mar 2018 14:15:00 +0000 (14:15 +0000)]
xci: Install the ARA callback plugin

The ARA Ansible plugin can be used to visualize the entire XCI run so
lets install it by default and generate a report at the end of the
execution.

Change-Id: I66c3230b371001c110e81755c5f0dad4b1756606
Link: https://github.com/openstack/ara
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: Bump SHAs for os_neutron and opendaylight ansible role 65/54265/1
Fatih Degirmenci [Wed, 21 Mar 2018 16:30:40 +0000 (17:30 +0100)]
xci: Bump SHAs for os_neutron and opendaylight ansible role

This change brings the SHAs needed for os-odl-bgpvpn scenario
and will be tested using os-odl-nofeature scenario.

installer-type:osa
deploy-scenario:os-odl-nofeature

Change-Id: I3ab8be557d78710f47c8a2e558078e13eb70553c
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
6 years agoConnect ODL CI-CD to XCI 73/53173/12
Manuel Buil [Tue, 6 Mar 2018 17:26:46 +0000 (18:26 +0100)]
Connect ODL CI-CD to XCI

Provide the possibility to select what version of ODL to use, master included.
Before executing xci-deploy.sh, the user can specify ODL's version by using the
XCI_ANSIBLE_PARAMS variable:

export XCI_ANSIBLE_PARAMS="-e ODL_VERSION=oxygen"

Change-Id: I5b3879b0c197059b3aecace48760e983c65a586b
Signed-off-by: Manuel Buil <mbuil@suse.com>
6 years agoxci: Bump OpenStack Ansible SHAs 55/53655/6
Fatih Degirmenci [Wed, 21 Mar 2018 16:26:27 +0000 (17:26 +0100)]
xci: Bump OpenStack Ansible SHAs

Change-Id: Iae3f642bea54feae4c033b61e8ea4cfe759848ec
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
6 years agoUse package_state:present to avoid package installation issues 63/54263/2
Fatih Degirmenci [Wed, 21 Mar 2018 15:47:55 +0000 (16:47 +0100)]
Use package_state:present to avoid package installation issues

Using package_state:present should give our jobs better chance
to finish on time and perhaps improve the overall deployment times
even.

Change-Id: Ifa4e01318fe364a91c32f5326024d34c364e25c8
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
6 years agoxci: files: install-lib.sh: Install pip packages as user 15/54215/2
Markos Chandras [Tue, 20 Mar 2018 17:34:35 +0000 (17:34 +0000)]
xci: files: install-lib.sh: Install pip packages as user

We can avoid "polluting" the system with all the pip packages we install
so we could just install them in the user's home directory.

Change-Id: I5b3369175535e8ab74c2591d1284c743391fd718
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: files: Move Ansible installation to a library file 99/54099/3
Markos Chandras [Mon, 19 Mar 2018 09:37:29 +0000 (09:37 +0000)]
xci: files: Move Ansible installation to a library file

Installing Ansible is just one of the functions we need during XCI
deployment, as such move it to a library file which can contain more
functions in the future.

Change-Id: I708a4e51b2b1d624d6827a8c99f3719b59227ec0
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: kubespray: Add experimental support for openSUSE 93/54193/5
Markos Chandras [Tue, 20 Mar 2018 11:28:08 +0000 (11:28 +0000)]
xci: kubespray: Add experimental support for openSUSE

Add experimental support for openSUSE until the upstream PR
is accepted

installer-type:kubespray
deploy-scenario:k8-nosdn-nofeature
Change-Id: Icd3698d882d249a18be77560ba0ba52159893816
Link: https://github.com/kubernetes-incubator/kubespray/pull/2380
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoClean up opnfv ansible vars and switch to lowercase 17/54217/8
Fatih Degirmenci [Tue, 20 Mar 2018 19:16:56 +0000 (20:16 +0100)]
Clean up opnfv ansible vars and switch to lowercase

This change removes the variables that are not used in any of the
playbooks/roles from opnfv ansible vars.

Apart from that, all caps ansible vars replaced with lowercase ones
and impacted playbooks/roles are updated.

installer-type:osa
deploy-scenario:os-nosdn-nofeature

Change-Id: I99ebdc155b3903176ac5940b64cef0c0f3aa0f0d
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
6 years agoAdd proxy support 83/45383/20
Victor Morales [Mon, 5 Feb 2018 18:45:46 +0000 (10:45 -0800)]
Add proxy support

In some cases the XCI development environment can be located behind a
corporate proxy resulting in a additional layer to consider to
configure. These changes pretend to include proxy support for all
linux distros in all the posible flavors.

Change-Id: Iab469268809ac471d09e244bb3ccd83de1a41b88
Signed-off-by: Victor Morales <victor.morales@intel.com>
6 years agoxci: Move cleanup script outside of bifrost 21/54121/4
Markos Chandras [Mon, 19 Mar 2018 16:22:47 +0000 (16:22 +0000)]
xci: Move cleanup script outside of bifrost

The cleanup script has grown quite a bit over time and it now does more
things than cleaning up old 'bifrost' artifacts to move it to the global
files directory so it can be used by all installers.

Change-Id: Ibf70ff255f14e798216cedc71fb7c5f5476b964a
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoMerge changes from topic 'allow-deployment-overrides'
Markos Chandras [Tue, 20 Mar 2018 17:28:50 +0000 (17:28 +0000)]
Merge changes from topic 'allow-deployment-overrides'

* changes:
  xci: infra: bifrost: Avoid installing Ansible twice
  Add initial support for multiple infra deployers

6 years agoxci: infra: bifrost: Avoid installing Ansible twice 19/54119/3
Markos Chandras [Mon, 19 Mar 2018 16:15:09 +0000 (16:15 +0000)]
xci: infra: bifrost: Avoid installing Ansible twice

We already install Ansible globally and we also install another version
of it in the bifrost venv. Even though the OSA Ansible may move faster
than the bifrost one, we normally pin both projects so we can move them
when they can work with the same Ansible version. As such, lets make the
deployment a little bit faster by simply not installing Ansible twice.

Change-Id: I121ef5979607b62e76300db1bc6d51fc27362d5b
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoMerge "display the correct deploy scenario for the functest run"
Markos Chandras [Tue, 20 Mar 2018 13:17:57 +0000 (13:17 +0000)]
Merge "display the correct deploy scenario for the functest run"

6 years agoMerge "Access the K8s dashboard and configure the CLI in opnfv host"
Fatih Degirmenci [Tue, 20 Mar 2018 10:20:35 +0000 (10:20 +0000)]
Merge "Access the K8s dashboard and configure the CLI in opnfv host"

6 years agoAdd initial support for multiple infra deployers 47/53947/4
Markos Chandras [Thu, 15 Mar 2018 16:51:37 +0000 (16:51 +0000)]
Add initial support for multiple infra deployers

bifrost is currently the only way to deploy the infrastructure but
in the future other solutions will be added so we need to do some
preparation for XCI integration.

Change-Id: I961dd42157c924d88747074ddba6a318f8b537ac
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agodisplay the correct deploy scenario for the functest run 57/53657/14
Periyasamy Palanisamy [Tue, 13 Mar 2018 10:00:12 +0000 (11:00 +0100)]
display the correct deploy scenario for the functest run

Change-Id: I0b8a6d9409d95033839bdc5b3fbe9d1cbbdf4b7c
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
6 years agoNomination of Tianwei Wu as XCI committer 85/53885/2
Fatih Degirmenci [Mon, 12 Mar 2018 15:01:54 +0000 (16:01 +0100)]
Nomination of Tianwei Wu as XCI committer

Tianwei Wu made many important contributions to XCI which includes but
not limited to
- bringing up first prototype for XCI using OpenStack Ansible
- assisting others with the usage of prototype
- bringing Kubespray to XCI
- developing Kubernetes scenario k8-nosdn-nofeature which can be deployed
on multiple Linux Distributions, Ubuntu 16.04 and CentOS 7
- updating documentation
- reviewing changes

His contributions can be seen from following link:
https://gerrit.opnfv.org/gerrit/#/q/owner:wutianwei1%2540huawei.com+(project:releng-xci+OR+project:releng)+status:merged

Please note that XCI started in OPNFV releng repo and some of his
contributions were made while XCI was still developed in releng repo.

Change-Id: I8d7b802a13a0ce1f7eb87ab5811437419572d823
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
6 years agoAccess the K8s dashboard and configure the CLI in opnfv host 03/52003/7
wutianwei [Fri, 9 Feb 2018 01:20:45 +0000 (09:20 +0800)]
Access the K8s dashboard and configure the CLI in opnfv host

1. Add the type: NodePort in dashboard service. the default is ClustIP,
   which cannot access from outside.
2. Print the url ,user, password for user to access dashboard.
3. configure the kubectl CLI in opnfv host.

Change-Id: I6cb6e6f7547412139ece0c40a85de67a9edce0ef
Signed-off-by: wutianwei <wutianwei1@huawei.com>
6 years agoPass the OSA version to functest container 01/54101/2
Manuel Buil [Mon, 19 Mar 2018 11:25:15 +0000 (12:25 +0100)]
Pass the OSA version to functest container

OPNFV scenarios are forced to support at least two versions of OSA.
If there are API changes between two supported versions of OpenStack,
the testing code must have two versions. However, without knowing what
OpenStack version is deployed, it is impossible to automate the
decision of which testing code to use

Change-Id: I3ca8c6f33c05826a5d69417da774b7218bbd59e2
Signed-off-by: Manuel Buil <mbuil@suse.com>
6 years agoMerge "kubespray: Do not grep log text to determine failure"
Markos Chandras [Mon, 19 Mar 2018 08:41:37 +0000 (08:41 +0000)]
Merge "kubespray: Do not grep log text to determine failure"

6 years agoMerge "xci: playbooks: Drop .gitignore file"
Markos Chandras [Mon, 19 Mar 2018 08:41:09 +0000 (08:41 +0000)]
Merge "xci: playbooks: Drop .gitignore file"

6 years agoMerge "xci: osa: Simplify OpenStack host playbooks"
Fatih Degirmenci [Sat, 17 Mar 2018 13:13:03 +0000 (13:13 +0000)]
Merge "xci: osa: Simplify OpenStack host playbooks"

6 years agoMerge "xci: osa: Drop haproxy workaround"
Fatih Degirmenci [Sat, 17 Mar 2018 10:33:40 +0000 (10:33 +0000)]
Merge "xci: osa: Drop haproxy workaround"

6 years agoxci: osa: Simplify OpenStack host playbooks 79/53979/4
Markos Chandras [Fri, 16 Mar 2018 11:45:14 +0000 (11:45 +0000)]
xci: osa: Simplify OpenStack host playbooks

The configure-targethost playbook is configuring all the OSA hosts so
we can simplify all that by introducing a new 'openstack' host group
with the controller and the compute nodes and configure all of them
in parallel.

Change-Id: I21f8709e7649b041575dab45fc4e070aa01e0a6f
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: osa: Drop haproxy workaround 81/53981/2
Markos Chandras [Fri, 16 Mar 2018 12:03:13 +0000 (12:03 +0000)]
xci: osa: Drop haproxy workaround

There is no reference on the actual upstream problem so lets assume
this is fixed and drop the workaround we had locally.

Change-Id: I3f71ea2e6fdc67e342f014e572f74760a78d3816
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: scripts: start-new-vm.sh: Make DEFAULT_XCI_TEST stricter 91/53991/2
Markos Chandras [Fri, 16 Mar 2018 12:52:37 +0000 (12:52 +0000)]
xci: scripts: start-new-vm.sh: Make DEFAULT_XCI_TEST stricter

The DEFAULT_XCI_TEST value wasn't checked and it could actually contain
anything leading to all sort of failures so we need to check it against
well known values.

Change-Id: Ib12c944adebfbcb3097b42af98d2bacefbd8374c
Signed-off-by: Markos Chandras <mchandras@suse.de>
6 years agoxci: scripts: start-new-vm.sh: Ensure we enter the correct root directory 89/53989/2
Markos Chandras [Fri, 16 Mar 2018 12:46:41 +0000 (12:46 +0000)]
xci: scripts: start-new-vm.sh: Ensure we enter the correct root directory

All clean VM operations should be performed within the root directory of
the releng-xci repo so make sure we are there.

Change-Id: I96f9d91439210faa1ac7f0e43db3992776293e9e
Signed-off-by: Markos Chandras <mchandras@suse.de>
7 years agoxci: Copy XCI environment to deployment hosts 75/53975/8
Markos Chandras [Fri, 16 Mar 2018 11:05:56 +0000 (11:05 +0000)]
xci: Copy XCI environment to deployment hosts

The XCI hosts may need some of the XCI env variables to perform
certain tasks so dump the XCI environment to /root/xci.env file and
make that available to every host on the deployment.

Change-Id: I286a01ca7da8ff206438c261798167f5e4daf7f2
Signed-off-by: Markos Chandras <mchandras@suse.de>
7 years agoMerge "docs: Add info about kubernetes support"
Fatih Degirmenci [Fri, 16 Mar 2018 08:32:25 +0000 (08:32 +0000)]
Merge "docs: Add info about kubernetes support"

7 years agoxci: playbooks: Drop .gitignore file 51/53951/1
Markos Chandras [Fri, 16 Mar 2018 07:53:26 +0000 (07:53 +0000)]
xci: playbooks: Drop .gitignore file

There is probably no good reason anymore to be so strict with file
inclusions in the roles directory so drop the .gitignore file.

Change-Id: I84569c8c82c4aeb5da6c6e39e02ff514566e5213
Signed-off-by: Markos Chandras <mchandras@suse.de>
7 years agoRemove qemu-kvm duplicate package 09/53909/1
Victor Morales [Fri, 16 Mar 2018 06:49:11 +0000 (02:49 -0400)]
Remove qemu-kvm duplicate package

The qemu-kvm package was duplicated for opensuse distro in the
start-new-vm.sh script. It doesn't affect its functionality but
reduce the list of additional packages to install.

Change-Id: Id5f24793295d7ccd9b19b64a07b24a1150a780aa
Signed-off-by: Victor Morales <victor.morales@intel.com>
7 years agodocs: Add info about kubernetes support 97/53497/2
wutianwei [Mon, 12 Mar 2018 08:37:22 +0000 (16:37 +0800)]
docs: Add info about kubernetes support

1. Introduce the installer used to deploy kubernetes
2. Introduce XCI how to deploy the kubernetes

Change-Id: I052b4547d763d19b8d6136a48d4804443921b021
Signed-off-by: wutianwei <wutianwei1@huawei.com>
7 years agoRemove opnfv vm from known_hosts 83/53883/1
Fatih Degirmenci [Thu, 15 Mar 2018 14:32:40 +0000 (15:32 +0100)]
Remove opnfv vm from known_hosts

Change-Id: If53b51fc26d642afa39c5e618afcd23fab395acc
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
7 years agoMerge "Do not grep log text to determine failure"
Fatih Degirmenci [Wed, 14 Mar 2018 18:58:39 +0000 (18:58 +0000)]
Merge "Do not grep log text to determine failure"

7 years agoMerge "xci: Merge configure-network and syncronize-time roles"
Markos Chandras [Wed, 14 Mar 2018 08:01:27 +0000 (08:01 +0000)]
Merge "xci: Merge configure-network and syncronize-time roles"

7 years agoMerge "xci: config: evn-vars: Dynamically determine the Ansible version"
Markos Chandras [Wed, 14 Mar 2018 07:57:05 +0000 (07:57 +0000)]
Merge "xci: config: evn-vars: Dynamically determine the Ansible version"

7 years agoMerge "xci: Fix group for the OPFNV host"
Markos Chandras [Wed, 14 Mar 2018 07:56:52 +0000 (07:56 +0000)]
Merge "xci: Fix group for the OPFNV host"

7 years agokubespray: Do not grep log text to determine failure 51/53751/2
Fatih Degirmenci [Wed, 14 Mar 2018 07:36:56 +0000 (08:36 +0100)]
kubespray: Do not grep log text to determine failure

Pipefail should be sufficient to determine the failure so this
change gets rid of grepping the logs for failure and unreachable
to leave the evaluation to bash itself.

Change-Id: I0fcd6016ddc19eb11b3eb2402347032a11c5a32a
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
7 years agoMerge "Set VM node names and log the installer version based on installer"
Fatih Degirmenci [Tue, 13 Mar 2018 23:30:47 +0000 (23:30 +0000)]
Merge "Set VM node names and log the installer version based on installer"

7 years agoMerge "xci: osa: Switch git repositories to github.com"
Markos Chandras [Tue, 13 Mar 2018 16:39:44 +0000 (16:39 +0000)]
Merge "xci: osa: Switch git repositories to github.com"

7 years agoxci: Merge configure-network and syncronize-time roles 65/53665/3
Markos Chandras [Tue, 13 Mar 2018 10:30:16 +0000 (10:30 +0000)]
xci: Merge configure-network and syncronize-time roles

Those roles were too small and only used as part of the host
bootstrapping process. As such, we merge them into a common
'bootstrap-host' role which can be used to prepare the hosts
after the initial deployment

Change-Id: Ifc84cf40b98ced91b31aae699dc28e9642380550
Signed-off-by: Markos Chandras <mchandras@suse.de>