Hello community,
here is the log from the commit of package python-ovsdbapp for openSUSE:Factory
checked in at 2019-03-07 10:49:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-ovsdbapp (Old)
and /work/SRC/openSUSE:Factory/.python-ovsdbapp.new.28833 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-ovsdbapp"
Thu Mar 7 10:49:45 2019 rev:2 rq:682023 version:0.12.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-ovsdbapp/python-ovsdbapp.changes
2018-12-08 11:21:58.590747174 +0100
+++
/work/SRC/openSUSE:Factory/.python-ovsdbapp.new.28833/python-ovsdbapp.changes
2019-03-07 10:50:35.897850980 +0100
@@ -1,0 +2,8 @@
+Wed Mar 6 07:38:17 UTC 2019 - [email protected]
+
+- update to version 0.12.3
+ - Allow read-only Commands to bypass txns in execute()
+ - Convert base commands to ReadOnlyCommand
+ - Move ovsdbapp jobs to its tree
+
+-------------------------------------------------------------------
Old:
----
ovsdbapp-0.12.2.tar.gz
New:
----
ovsdbapp-0.12.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-ovsdbapp.spec ++++++
--- /var/tmp/diff_new_pack.9nhWk1/_old 2019-03-07 10:50:37.205850631 +0100
+++ /var/tmp/diff_new_pack.9nhWk1/_new 2019-03-07 10:50:37.209850631 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-ovsdbapp
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
%define with_tests 0
Name: python-ovsdbapp
-Version: 0.12.2
+Version: 0.12.3
Release: 0
Summary: A library for creating OVSDB applications
License: Apache-2.0
++++++ ovsdbapp-0.12.2.tar.gz -> ovsdbapp-0.12.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ovsdbapp-0.12.2/.zuul.yaml
new/ovsdbapp-0.12.3/.zuul.yaml
--- old/ovsdbapp-0.12.2/.zuul.yaml 2018-09-27 17:46:49.000000000 +0200
+++ new/ovsdbapp-0.12.3/.zuul.yaml 1970-01-01 01:00:00.000000000 +0100
@@ -1,18 +0,0 @@
-- project:
- templates:
- - openstack-python-jobs
- - openstack-python35-jobs
- - check-requirements
- check:
- jobs:
- - openstack-tox-lower-constraints
- - openstack-tox-functional
- - legacy-tempest-dsvm-networking-ovn-ovs-release-ovsdbapp-src:
- voting: false
- irrelevant-files:
- - ^(test-|)requirements.txt$
- - ^setup.cfg$
- gate:
- jobs:
- - openstack-tox-lower-constraints
- - openstack-tox-functional
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ovsdbapp-0.12.2/AUTHORS new/ovsdbapp-0.12.3/AUTHORS
--- old/ovsdbapp-0.12.2/AUTHORS 2018-09-27 17:48:20.000000000 +0200
+++ new/ovsdbapp-0.12.3/AUTHORS 2019-02-06 23:10:52.000000000 +0100
@@ -45,7 +45,6 @@
YAMAMOTO Takashi <[email protected]>
Yalei Wang <[email protected]>
Yi Zhao <[email protected]>
-Zuul <[email protected]>
chenxing <[email protected]>
gengchc2 <[email protected]>
hgangwx <[email protected]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ovsdbapp-0.12.2/ChangeLog
new/ovsdbapp-0.12.3/ChangeLog
--- old/ovsdbapp-0.12.2/ChangeLog 2018-09-27 17:48:20.000000000 +0200
+++ new/ovsdbapp-0.12.3/ChangeLog 2019-02-06 23:10:52.000000000 +0100
@@ -1,6 +1,13 @@
CHANGES
=======
+0.12.3
+------
+
+* Convert base commands to ReadOnlyCommand
+* Allow read-only Commands to bypass txns in execute()
+* Move ovsdbapp jobs to its tree
+
0.12.2
------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ovsdbapp-0.12.2/PKG-INFO new/ovsdbapp-0.12.3/PKG-INFO
--- old/ovsdbapp-0.12.2/PKG-INFO 2018-09-27 17:48:22.000000000 +0200
+++ new/ovsdbapp-0.12.3/PKG-INFO 2019-02-06 23:10:53.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: ovsdbapp
-Version: 0.12.2
+Version: 0.12.3
Summary: A library for creating OVSDB applications
Home-page: http://www.openstack.org/
Author: OpenStack
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ovsdbapp-0.12.2/RELEASENOTES.rst
new/ovsdbapp-0.12.3/RELEASENOTES.rst
--- old/ovsdbapp-0.12.2/RELEASENOTES.rst 2018-09-27 17:48:22.000000000
+0200
+++ new/ovsdbapp-0.12.3/RELEASENOTES.rst 1970-01-01 01:00:00.000000000
+0100
@@ -1,3 +0,0 @@
-========
-ovsdbapp
-========
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ovsdbapp-0.12.2/ovsdbapp/backend/ovs_idl/command.py
new/ovsdbapp-0.12.3/ovsdbapp/backend/ovs_idl/command.py
--- old/ovsdbapp-0.12.2/ovsdbapp/backend/ovs_idl/command.py 2018-09-27
17:46:34.000000000 +0200
+++ new/ovsdbapp-0.12.3/ovsdbapp/backend/ovs_idl/command.py 2019-02-06
23:09:55.000000000 +0100
@@ -25,12 +25,17 @@
class BaseCommand(api.Command):
+ READ_ONLY = False
+
def __init__(self, api):
self.api = api
self.result = None
def execute(self, check_error=False, log_errors=True):
try:
+ if self.READ_ONLY:
+ self.run_idl(None)
+ return self.result
with self.api.transaction(check_error, log_errors) as txn:
txn.add(self)
return self.result
@@ -60,6 +65,10 @@
if k not in ['api', 'result']))
+class ReadOnlyCommand(BaseCommand):
+ READ_ONLY = True
+
+
class AddCommand(BaseCommand):
table_name = [] # unhashable, won't be looked up
@@ -171,7 +180,7 @@
setattr(record, self.column, value)
-class DbGetCommand(BaseCommand):
+class DbGetCommand(ReadOnlyCommand):
def __init__(self, api, table, record, column):
super(DbGetCommand, self).__init__(api)
self.table = table
@@ -191,7 +200,7 @@
self.result = result
-class DbListCommand(BaseCommand):
+class DbListCommand(ReadOnlyCommand):
def __init__(self, api, table, records, columns, if_exists, row=False):
super(DbListCommand, self).__init__(api)
self.table = table
@@ -254,7 +263,7 @@
match=records_found[0])
-class DbFindCommand(BaseCommand):
+class DbFindCommand(ReadOnlyCommand):
def __init__(self, api, table, *conditions, **kwargs):
super(DbFindCommand, self).__init__(api)
self.table = self.api._tables[table]
@@ -274,7 +283,7 @@
]
-class BaseGetRowCommand(BaseCommand):
+class BaseGetRowCommand(ReadOnlyCommand):
def __init__(self, api, record):
super(BaseGetRowCommand, self).__init__(api)
self.record = record
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ovsdbapp-0.12.2/ovsdbapp/schema/open_vswitch/commands.py
new/ovsdbapp-0.12.3/ovsdbapp/schema/open_vswitch/commands.py
--- old/ovsdbapp-0.12.2/ovsdbapp/schema/open_vswitch/commands.py
2018-09-27 17:46:34.000000000 +0200
+++ new/ovsdbapp-0.12.3/ovsdbapp/schema/open_vswitch/commands.py
2019-02-06 23:09:55.000000000 +0100
@@ -41,7 +41,7 @@
self.result = row.uuid
-class GetManagerCommand(BaseCommand):
+class GetManagerCommand(command.ReadOnlyCommand):
def __init__(self, api):
super(GetManagerCommand, self).__init__(api)
@@ -143,7 +143,7 @@
br.delete()
-class BridgeExistsCommand(BaseCommand):
+class BridgeExistsCommand(command.ReadOnlyCommand):
def __init__(self, api, name):
super(BridgeExistsCommand, self).__init__(api)
self.name = name
@@ -153,7 +153,7 @@
'name', self.name, None))
-class ListBridgesCommand(BaseCommand):
+class ListBridgesCommand(command.ReadOnlyCommand):
def __init__(self, api):
super(ListBridgesCommand, self).__init__(api)
@@ -190,7 +190,7 @@
br.controller = []
-class GetControllerCommand(BaseCommand):
+class GetControllerCommand(command.ReadOnlyCommand):
def __init__(self, api, bridge):
super(GetControllerCommand, self).__init__(api)
self.bridge = bridge
@@ -291,7 +291,7 @@
port.delete()
-class ListPortsCommand(BaseCommand):
+class ListPortsCommand(command.ReadOnlyCommand):
def __init__(self, api, bridge):
super(ListPortsCommand, self).__init__(api)
self.bridge = bridge
@@ -301,7 +301,7 @@
self.result = [p.name for p in br.ports if p.name != self.bridge]
-class ListIfacesCommand(BaseCommand):
+class ListIfacesCommand(command.ReadOnlyCommand):
def __init__(self, api, bridge):
super(ListIfacesCommand, self).__init__(api)
self.bridge = bridge
@@ -312,7 +312,7 @@
for i in p.interfaces]
-class PortToBridgeCommand(BaseCommand):
+class PortToBridgeCommand(command.ReadOnlyCommand):
def __init__(self, api, name):
super(PortToBridgeCommand, self).__init__(api)
self.name = name
@@ -328,7 +328,7 @@
self.result = next(br.name for br in bridges if port in br.ports)
-class InterfaceToBridgeCommand(BaseCommand):
+class InterfaceToBridgeCommand(command.ReadOnlyCommand):
def __init__(self, api, name):
super(InterfaceToBridgeCommand, self).__init__(api)
self.name = name
@@ -344,7 +344,7 @@
self.result = next(br.name for br in bridges if pname in br.ports)
-class GetExternalIdCommand(BaseCommand):
+class GetExternalIdCommand(command.ReadOnlyCommand):
def __init__(self, api, table, name, field):
super(GetExternalIdCommand, self).__init__(api)
self.table = table
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ovsdbapp-0.12.2/ovsdbapp/schema/ovn_northbound/commands.py
new/ovsdbapp-0.12.3/ovsdbapp/schema/ovn_northbound/commands.py
--- old/ovsdbapp-0.12.2/ovsdbapp/schema/ovn_northbound/commands.py
2018-09-27 17:46:34.000000000 +0200
+++ new/ovsdbapp-0.12.3/ovsdbapp/schema/ovn_northbound/commands.py
2019-02-06 23:10:01.000000000 +0100
@@ -487,7 +487,7 @@
self.result = lsp.port_security
-class LspGetUpCommand(cmd.BaseCommand):
+class LspGetUpCommand(cmd.ReadOnlyCommand):
def __init__(self, api, port):
super(LspGetUpCommand, self).__init__(api)
self.port = port
@@ -509,7 +509,7 @@
lsp.enabled = self.is_enabled
-class LspGetEnabledCommand(cmd.BaseCommand):
+class LspGetEnabledCommand(cmd.ReadOnlyCommand):
def __init__(self, api, port):
super(LspGetEnabledCommand, self).__init__(api)
self.port = port
@@ -531,7 +531,7 @@
lsp.type = self.port_type
-class LspGetTypeCommand(cmd.BaseCommand):
+class LspGetTypeCommand(cmd.ReadOnlyCommand):
def __init__(self, api, port):
super(LspGetTypeCommand, self).__init__(api)
self.port = port
@@ -552,7 +552,7 @@
lsp.options = self.options
-class LspGetOptionsCommand(cmd.BaseCommand):
+class LspGetOptionsCommand(cmd.ReadOnlyCommand):
def __init__(self, api, port):
super(LspGetOptionsCommand, self).__init__(api)
self.port = port
@@ -573,7 +573,7 @@
lsp.dhcpv4_options = self.dhcpopt_uuid
-class LspGetDhcpV4OptionsCommand(cmd.BaseCommand):
+class LspGetDhcpV4OptionsCommand(cmd.ReadOnlyCommand):
def __init__(self, api, port):
super(LspGetDhcpV4OptionsCommand, self).__init__(api)
self.port = port
@@ -610,7 +610,7 @@
dhcpopt.delete()
-class DhcpOptionsListCommand(cmd.BaseCommand):
+class DhcpOptionsListCommand(cmd.ReadOnlyCommand):
def run_idl(self, txn):
self.result = [rowview.RowView(r) for
r in self.api.tables['DHCP_Options'].rows.values()]
@@ -631,7 +631,7 @@
dhcpopt.options = self.options
-class DhcpOptionsGetOptionsCommand(cmd.BaseCommand):
+class DhcpOptionsGetOptionsCommand(cmd.ReadOnlyCommand):
def __init__(self, api, dhcpopt_uuid):
super(DhcpOptionsGetOptionsCommand, self).__init__(api)
self.dhcpopt_uuid = dhcpopt_uuid
@@ -686,7 +686,7 @@
raise RuntimeError(msg)
-class LrListCommand(cmd.BaseCommand):
+class LrListCommand(cmd.ReadOnlyCommand):
def run_idl(self, txn):
self.result = [rowview.RowView(r) for
r in self.api.tables['Logical_Router'].rows.values()]
@@ -756,7 +756,7 @@
if_exists)
-class LrpListCommand(cmd.BaseCommand):
+class LrpListCommand(cmd.ReadOnlyCommand):
def __init__(self, api, router):
super(LrpListCommand, self).__init__(api)
self.router = router
@@ -777,7 +777,7 @@
lrp.enabled = self.is_enabled
-class LrpGetEnabledCommand(cmd.BaseCommand):
+class LrpGetEnabledCommand(cmd.ReadOnlyCommand):
def __init__(self, api, port):
super(LrpGetEnabledCommand, self).__init__(api)
self.port = port
@@ -858,7 +858,7 @@
raise RuntimeError(msg)
-class LrRouteListCommand(cmd.BaseCommand):
+class LrRouteListCommand(cmd.ReadOnlyCommand):
def __init__(self, api, router):
super(LrRouteListCommand, self).__init__(api)
self.router = router
@@ -967,7 +967,7 @@
match=self.match_ip)
-class LrNatListCommand(cmd.BaseCommand):
+class LrNatListCommand(cmd.ReadOnlyCommand):
def __init__(self, api, router):
super(LrNatListCommand, self).__init__(api)
self.router = router
@@ -1034,7 +1034,7 @@
raise
-class LbListCommand(cmd.BaseCommand):
+class LbListCommand(cmd.ReadOnlyCommand):
def run_idl(self, txn):
self.result = [rowview.RowView(r)
for r in self.api.tables['Load_Balancer'].rows.values()]
@@ -1079,7 +1079,7 @@
raise
-class LrLbListCommand(cmd.BaseCommand):
+class LrLbListCommand(cmd.ReadOnlyCommand):
def __init__(self, api, router):
super(LrLbListCommand, self).__init__(api)
self.router = router
@@ -1128,7 +1128,7 @@
raise
-class LsLbListCommand(cmd.BaseCommand):
+class LsLbListCommand(cmd.ReadOnlyCommand):
def __init__(self, api, switch):
super(LsLbListCommand, self).__init__(api)
self.switch = switch
@@ -1163,7 +1163,7 @@
table = 'DNS'
-class DnsListCommand(cmd.BaseCommand):
+class DnsListCommand(cmd.ReadOnlyCommand):
def run_idl(self, txn):
table = self.api.tables['DNS']
self.result = [rowview.RowView(r) for r in table.rows.values()]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ovsdbapp-0.12.2/ovsdbapp/schema/ovn_southbound/commands.py
new/ovsdbapp-0.12.3/ovsdbapp/schema/ovn_southbound/commands.py
--- old/ovsdbapp-0.12.2/ovsdbapp/schema/ovn_southbound/commands.py
2018-09-27 17:46:34.000000000 +0200
+++ new/ovsdbapp-0.12.3/ovsdbapp/schema/ovn_southbound/commands.py
2019-02-06 23:09:55.000000000 +0100
@@ -75,7 +75,7 @@
chassis.delete()
-class ChassisListCommand(cmd.BaseCommand):
+class ChassisListCommand(cmd.ReadOnlyCommand):
def run_idl(self, txn):
self.result = [rowview.RowView(r)
for r in self.api.tables['Chassis'].rows.values()]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ovsdbapp-0.12.2/ovsdbapp/tests/functional/schema/open_vswitch/test_common_db.py
new/ovsdbapp-0.12.3/ovsdbapp/tests/functional/schema/open_vswitch/test_common_db.py
---
old/ovsdbapp-0.12.2/ovsdbapp/tests/functional/schema/open_vswitch/test_common_db.py
2018-09-27 17:46:34.000000000 +0200
+++
new/ovsdbapp-0.12.3/ovsdbapp/tests/functional/schema/open_vswitch/test_common_db.py
2019-02-06 23:09:55.000000000 +0100
@@ -69,6 +69,10 @@
columns=('name', 'datapath_type')).execute(check_error=True)
self.assertTrue(all(b in res for b in self.bridges))
+ def test_db_list_nested(self):
+ with self.api.transaction(check_error=True):
+ self.test_db_list()
+
def test_db_list_record(self):
res = self.api.db_list(
'Bridge', [self.bridges[0]['name']],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ovsdbapp-0.12.2/ovsdbapp.egg-info/PKG-INFO
new/ovsdbapp-0.12.3/ovsdbapp.egg-info/PKG-INFO
--- old/ovsdbapp-0.12.2/ovsdbapp.egg-info/PKG-INFO 2018-09-27
17:48:20.000000000 +0200
+++ new/ovsdbapp-0.12.3/ovsdbapp.egg-info/PKG-INFO 2019-02-06
23:10:52.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: ovsdbapp
-Version: 0.12.2
+Version: 0.12.3
Summary: A library for creating OVSDB applications
Home-page: http://www.openstack.org/
Author: OpenStack
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ovsdbapp-0.12.2/ovsdbapp.egg-info/SOURCES.txt
new/ovsdbapp-0.12.3/ovsdbapp.egg-info/SOURCES.txt
--- old/ovsdbapp-0.12.2/ovsdbapp.egg-info/SOURCES.txt 2018-09-27
17:48:22.000000000 +0200
+++ new/ovsdbapp-0.12.3/ovsdbapp.egg-info/SOURCES.txt 2019-02-06
23:10:53.000000000 +0100
@@ -1,6 +1,5 @@
.pylintrc
.stestr.conf
-.zuul.yaml
AUTHORS
CONTRIBUTING.rst
ChangeLog
@@ -98,6 +97,9 @@
ovsdbapp/tests/unit/schema/__init__.py
ovsdbapp/tests/unit/schema/open_vswitch/__init__.py
ovsdbapp/tests/unit/schema/open_vswitch/test_impl_idl.py
+playbooks/legacy/tempest-post-common.yml
+playbooks/legacy/tempest-dsvm-networking-ovn-ovs-release-ovsdbapp-src/post.yaml
+playbooks/legacy/tempest-dsvm-networking-ovn-ovs-release-ovsdbapp-src/run.yaml
releasenotes/notes/.placeholder
releasenotes/notes/configure-ovsdb-manager-a29a148b241a125e.yaml
releasenotes/source/conf.py
@@ -111,4 +113,6 @@
tools/debug_venv
tools/debug_venv.py
tools/setup-ovs.sh
-tools/test-setup.sh
\ No newline at end of file
+tools/test-setup.sh
+zuul.d/legacy-ovsdbapp-jobs.yaml
+zuul.d/project.yaml
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ovsdbapp-0.12.2/ovsdbapp.egg-info/pbr.json
new/ovsdbapp-0.12.3/ovsdbapp.egg-info/pbr.json
--- old/ovsdbapp-0.12.2/ovsdbapp.egg-info/pbr.json 2018-09-27
17:48:21.000000000 +0200
+++ new/ovsdbapp-0.12.3/ovsdbapp.egg-info/pbr.json 2019-02-06
23:10:52.000000000 +0100
@@ -1 +1 @@
-{"git_version": "057eeb3", "is_release": true}
\ No newline at end of file
+{"git_version": "547777a", "is_release": true}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ovsdbapp-0.12.2/playbooks/legacy/tempest-dsvm-networking-ovn-ovs-release-ovsdbapp-src/post.yaml
new/ovsdbapp-0.12.3/playbooks/legacy/tempest-dsvm-networking-ovn-ovs-release-ovsdbapp-src/post.yaml
---
old/ovsdbapp-0.12.2/playbooks/legacy/tempest-dsvm-networking-ovn-ovs-release-ovsdbapp-src/post.yaml
1970-01-01 01:00:00.000000000 +0100
+++
new/ovsdbapp-0.12.3/playbooks/legacy/tempest-dsvm-networking-ovn-ovs-release-ovsdbapp-src/post.yaml
2019-02-06 23:10:01.000000000 +0100
@@ -0,0 +1,4 @@
+- hosts: primary
+ tasks:
+
+ - include: ../tempest-post-common.yml
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ovsdbapp-0.12.2/playbooks/legacy/tempest-dsvm-networking-ovn-ovs-release-ovsdbapp-src/run.yaml
new/ovsdbapp-0.12.3/playbooks/legacy/tempest-dsvm-networking-ovn-ovs-release-ovsdbapp-src/run.yaml
---
old/ovsdbapp-0.12.2/playbooks/legacy/tempest-dsvm-networking-ovn-ovs-release-ovsdbapp-src/run.yaml
1970-01-01 01:00:00.000000000 +0100
+++
new/ovsdbapp-0.12.3/playbooks/legacy/tempest-dsvm-networking-ovn-ovs-release-ovsdbapp-src/run.yaml
2019-02-06 23:10:01.000000000 +0100
@@ -0,0 +1,88 @@
+- hosts: all
+ name: Autoconverted job
legacy-tempest-dsvm-networking-ovn-ovs-release-ovsdbapp-src
+ from old job gate-tempest-dsvm-networking-ovn-ovs-release-ovsdbapp-src-nv
+ tasks:
+
+ - name: Ensure legacy workspace directory
+ file:
+ path: '{{ ansible_user_dir }}/workspace'
+ state: directory
+
+ - shell:
+ cmd: |
+ set -e
+ set -x
+ cat > clonemap.yaml << EOF
+ clonemap:
+ - name: openstack-infra/devstack-gate
+ dest: devstack-gate
+ EOF
+ /usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
+ git://git.openstack.org \
+ openstack-infra/devstack-gate
+ executable: /bin/bash
+ chdir: '{{ ansible_user_dir }}/workspace'
+ environment: '{{ zuul | zuul_legacy_vars }}'
+
+ - shell:
+ cmd: |
+ set -e
+ set -x
+ cat << 'EOF' >>"/tmp/dg-local.conf"
+ [[local|localrc]]
+ enable_plugin networking-ovn
git://git.openstack.org/openstack/networking-ovn
+ enable_plugin neutron-tempest-plugin
git://git.openstack.org/openstack/neutron-tempest-plugin
+ enable_plugin octavia git://git.openstack.org/openstack/octavia
+ enable_service ovn-octavia
+ enable_service o-api
+ enable_service o-hk
+ LIBS_FROM_GIT="ovsdbapp"
+ OVN_DBS_LOG_LEVEL="dbg"
+
+ EOF
+ executable: /bin/bash
+ chdir: '{{ ansible_user_dir }}/workspace'
+ environment: '{{ zuul | zuul_legacy_vars }}'
+
+ - shell:
+ cmd: |
+ set -e
+ set -x
+ export PYTHONUNBUFFERED=true
+ export DEVSTACK_GATE_NEUTRON=1
+ export DEVSTACK_GATE_TEMPEST=1
+ export DEVSTACK_GATE_TEMPEST_ALL_PLUGINS=1
+ export BRANCH_OVERRIDE=default
+ if [ "$BRANCH_OVERRIDE" != "default" ] ; then
+ export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
+ fi
+ # Because we are testing a non standard project, add
+ # our project repository. This makes zuul do the right
+ # reference magic for testing changes.
+ export PROJECTS="openstack/networking-ovn
openstack/neutron-tempest-plugin openstack/octavia $PROJECTS"
+ export PROJECTS="openstack/ovsdbapp $PROJECTS"
+
+ # Keep localrc to be able to set some vars in pre_test_hook
+ export KEEP_LOCALRC=1
+
+ function pre_test_hook {
+ if [ -f $BASE/new/networking-ovn/devstack/pre_test_hook.sh ] ;
then
+ . $BASE/new/networking-ovn/devstack/pre_test_hook.sh
+ fi
+ }
+ export -f pre_test_hook
+
+ function post_test_hook {
+ if [ -f $BASE/new/networking-ovn/devstack/post_test_hook.sh ] ;
then
+ . $BASE/new/networking-ovn/devstack/post_test_hook.sh
+ fi
+ }
+ export -f post_test_hook
+
+ export
DEVSTACK_GATE_SETTINGS="/opt/stack/new/networking-ovn/devstack/devstackgaterc
latest-release"
+
+ cp devstack-gate/devstack-vm-gate-wrap.sh
./safe-devstack-vm-gate-wrap.sh
+ ./safe-devstack-vm-gate-wrap.sh
+ executable: /bin/bash
+ chdir: '{{ ansible_user_dir }}/workspace'
+ environment: '{{ zuul | zuul_legacy_vars }}'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ovsdbapp-0.12.2/playbooks/legacy/tempest-post-common.yml
new/ovsdbapp-0.12.3/playbooks/legacy/tempest-post-common.yml
--- old/ovsdbapp-0.12.2/playbooks/legacy/tempest-post-common.yml
1970-01-01 01:00:00.000000000 +0100
+++ new/ovsdbapp-0.12.3/playbooks/legacy/tempest-post-common.yml
2019-02-06 23:10:01.000000000 +0100
@@ -0,0 +1,56 @@
+#
+# Copy OVN SB & NB database files: those files can be handy for debugging
issues as the
+# ovsdb files are stored as logs.
+#
+
+- name: Check whether OVNSB DB was created
+ stat:
+ path: /opt/stack/data/ovs/ovnsb_db.db
+ register: ovnsb_file
+
+- name: Create destination directory to collect OVN database logs
+ file: path={{ ansible_user_dir }}/workspace/logs/ovs_dbs state=directory
+ when: ovnsb_file.stat.exists
+
+- name: Collect OVN databases
+ copy:
+ remote_src: true
+ src: '/opt/stack/data/ovs/{{ item }}.db'
+ dest: '{{ ansible_user_dir }}/workspace/logs/ovs_dbs/{{ item }}.txt'
+ with_items:
+ - conf
+ - ovnnb_db
+ - ovnsb_db
+ when: ovnsb_file.stat.exists
+
+- name: Copy OVN database logs
+ copy:
+ remote_src: true
+ src: '/opt/stack/new/{{ item }}.log'
+ dest: '{{ ansible_user_dir }}/workspace/logs/ovs_dbs/{{ item }}.log.txt'
+ with_items:
+ - ovsdb-server-nb
+ - ovsdb-server-sb
+ when: ovnsb_file.stat.exists
+ become: true
+
+- name: Compress OVN databases in individual files
+ shell: gzip -9 {{ ansible_user_dir }}/workspace/logs/ovs_dbs/*
+ when: ovnsb_file.stat.exists
+
+#
+# Synchronize files from workspace in node to the zuul log_root which will be
stored
+#
+
+- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
+ synchronize:
+ src: '{{ ansible_user_dir }}/workspace/'
+ dest: '{{ zuul.executor.log_root }}'
+ mode: pull
+ copy_links: true
+ verify_host: true
+ rsync_opts:
+ - --include=/logs/**
+ - --include=*/
+ - --exclude=*
+ - --prune-empty-dirs
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ovsdbapp-0.12.2/releasenotes/notes/reno.cache
new/ovsdbapp-0.12.3/releasenotes/notes/reno.cache
--- old/ovsdbapp-0.12.2/releasenotes/notes/reno.cache 2018-09-27
17:48:22.000000000 +0200
+++ new/ovsdbapp-0.12.3/releasenotes/notes/reno.cache 1970-01-01
01:00:00.000000000 +0100
@@ -1,3 +0,0 @@
----
-file-contents: {}
-notes: []
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ovsdbapp-0.12.2/zuul.d/legacy-ovsdbapp-jobs.yaml
new/ovsdbapp-0.12.3/zuul.d/legacy-ovsdbapp-jobs.yaml
--- old/ovsdbapp-0.12.2/zuul.d/legacy-ovsdbapp-jobs.yaml 1970-01-01
01:00:00.000000000 +0100
+++ new/ovsdbapp-0.12.3/zuul.d/legacy-ovsdbapp-jobs.yaml 2019-02-06
23:10:01.000000000 +0100
@@ -0,0 +1,13 @@
+- job:
+ name: ovsdbapp-tempest-dsvm-networking-ovn-ovs-release
+ parent: legacy-networking-ovn-dsvm-base
+ run:
playbooks/legacy/tempest-dsvm-networking-ovn-ovs-release-ovsdbapp-src/run.yaml
+ post-run:
playbooks/legacy/tempest-dsvm-networking-ovn-ovs-release-ovsdbapp-src/post.yaml
+ timeout: 7800
+ required-projects:
+ - openstack-infra/devstack-gate
+ - openstack/networking-ovn
+ - openstack/neutron-tempest-plugin
+ - openstack/ovsdbapp
+ - openstack/octavia
+ - openstack/tempest
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ovsdbapp-0.12.2/zuul.d/project.yaml
new/ovsdbapp-0.12.3/zuul.d/project.yaml
--- old/ovsdbapp-0.12.2/zuul.d/project.yaml 1970-01-01 01:00:00.000000000
+0100
+++ new/ovsdbapp-0.12.3/zuul.d/project.yaml 2019-02-06 23:10:01.000000000
+0100
@@ -0,0 +1,15 @@
+- project:
+ templates:
+ - openstack-python-jobs
+ - openstack-python35-jobs
+ - check-requirements
+ check:
+ jobs:
+ - openstack-tox-lower-constraints
+ - openstack-tox-functional
+ - ovsdbapp-tempest-dsvm-networking-ovn-ovs-release
+ gate:
+ jobs:
+ - openstack-tox-lower-constraints
+ - openstack-tox-functional
+ - ovsdbapp-tempest-dsvm-networking-ovn-ovs-release