neutron/tools/migrate_names.txt
Flavio Fernandes 303937f3ae [OVN] scripts for networking-ovn code migration
In an effort to help on migrating changes from neutron to networking-ovn,
these 3 scripts are being introduced under tools.

Also adding documentation about these under OVN folder.

1) files_in_patch.py
Use this to show files that are changed in a patch file.

   $ # Make a patch to use as example
   $ git show > /tmp/commit.patch

   $ ./tools/files_in_patch.py /tmp/commit.patch | grep .py
   tools/download_gerrit_change.py
   tools/files_in_patch.py
   tools/migrate_names.py

2) download_gerrit_change.py
Given a gerrit change id, it will fetch the latest patchset of the change
from review.opendev.org as a patch file.

   $ ./tools/download_gerrit_change.py --help
   Usage: download_gerrit_change.py [OPTIONS] GERRIT_CHANGE

   Options:
     -o, --output_patch TEXT  Output patch file  [default: stdout]
     -g, --gerrit_url TEXT    The url to Gerrit server  [default:
                              https://review.opendev.org/]
     -t, --timeout INTEGER    Timeout, in seconds  [default: 10]
     --help                   Show this message and exit.

   $ ./tools/download_gerrit_change.py 698863 -o /tmp/change.patch
   $ ./tools/files_in_patch.py /tmp/change.patch
   networking_ovn/ml2/mech_driver.py
   networking_ovn/ml2/trunk_driver.py
   networking_ovn/tests/unit/ml2/test_mech_driver.py
   networking_ovn/tests/unit/ml2/test_trunk_driver.py

3) migrate_names.py
Use this tool to modify the name of the files in a patchfile so it can
be converted to/from the legacy networking-ovn and neutron repositories.

   $ ./tools/migrate_names.py --help
   Usage: migrate_names.py [OPTIONS]

   Options:
     -i, --input_patch TEXT    input_patch patch file or gerrit change
     -o, --output_patch TEXT   Output patch file. Default: stdout
     -m, --mapfile PATH        Data file that specifies mapping to be applied to
                               input  [default: /home/user/openstack/neutron.git
                               /tools/migrate_names.txt]
     --reverse / --no-reverse  Map filenames from networking-ovn to Neutron repo
     --help                    Show this message and exit.
   $ ./tools/migrate_names.py -i 701646 > /tmp/ovn_change.patch
   $ ./tools/migrate_names.py -o /tmp/reverse.patch -i /tmp/ovn_change.patch --reverse
   $ diff /tmp/reverse.patch /tmp/ovn_change.patch | grep .py
   < --- a/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py
   < +++ b/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py
   > --- a/networking_ovn/ml2/mech_driver.py
   > +++ b/networking_ovn/ml2/mech_driver.py
   <... snip ...>

   $ ./tools/files_in_patch.py /tmp/ovn_change.patch
   networking_ovn/ml2/mech_driver.py
   networking_ovn/ml2/trunk_driver.py
   networking_ovn/tests/unit/ml2/test_mech_driver.py
   networking_ovn/tests/unit/ml2/test_trunk_driver.py

Change-Id: I17904c996e1357f7292d25aab4d448edb052f44c
Related-Blueprint: neutron-ovn-merge
2020-01-26 20:19:43 +00:00

47 lines
2.9 KiB
Plaintext

# This file provides a list of tuples that represent how the files
# in Networking-OVN repo are mapped to/from Neutron repo, as part of the blue
# print documented in:
#
# https://review.opendev.org/#/c/658414/ (specs/ussuri/ml2ovs-ovn-convergence.rst)
#
# Also see:
# https://ethercalc.openstack.org/networking-ovn-migration
# https://review.opendev.org/#/q/topic:bp/neutron-ovn-merge+-is:abandoned
#
# Empty lines and anything after # are ignored.
# The 2 columns in this tile are added as a tuple in a list of
# files and directories to be mapped. More specific lines must be listed
# above less specific lines as the mapping stops on the first match.
#
# Networking-OVN Neutron
devstack/lib/ovn devstack/lib/ovn_agent
networking_ovn/ovsdb/impl_idl_ovn.py neutron/ovsdb/impl_idl_ovn.py
networking_ovn/ovsdb neutron/ovsdb/ovn
networking_ovn/ovn_db_sync.py neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_db_sync.py
networking_ovn/agent/metadata neutron/agent/ovn/metadata
networking_ovn/cmd neutron/cmd
networking_ovn/common/config.py neutron/conf/ovn.py
networking_ovn/common/acl.py neutron/plugins/ml2/drivers/ovn/common/acl.py
networking_ovn/common/constants.py neutron/common/ovn/constants.py
networking_ovn/common/exceptions.py neutron/common/ovn/exceptions.py
networking_ovn/common/hash_ring_manager.py neutron/common/ovn/hash_ring_manager.py
networking_ovn/common/maintanance.py neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/maintenance.py
networking_ovn/common/ovn_client.py neutron/plugins/ml2/drivers/ovn/common/client.py
networking_ovn/common/utils.py neutron/common/ovn/utils.py
networking_ovn/conf/agent/metadata neutron/conf/agent/ovn/metadata.py
networking_ovn/db neutron/db
networking_ovn/ml2/mech_driver.py neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py
networking_ovn/ml2/qos_driver.py neutron/services/qos/drivers/ovn/driver.py
networking_ovn/ml2/trunk_driver.py neutron/services/trunk/drivers/ovn/trunk_driver.py
networking_ovn/l3/l3_ovn.py neutron/services/ovn_l3/l3_ovn.py
networking_ovn/l3/l3_ovn_scheduler.py neutron/scheduler/ovn_l3_scheduler.py
networking_ovn/tests/unit/ml2/test_mech_driver.py neutron/tests/unit/plugins/ml2/drivers/ovn/mech_driver/test_mech_driver.py
networking_ovn/tests/unit/ml2/test_qos_driver.py neutron/tests/unit/services/qos/drivers/ovn/test_driver.py
networking_ovn/tests/unit/ml2/test_trunk_driver.py neutron/tests/unit/services/trunk/drivers/ovn/test_trunk_driver.py
networking_ovn/tests neutron/tests
networking_ovn/common/extensions.py neutron/extensions/ovn.py
networking_ovn/tests/unit/fakes.py neutron/tests/unit/fake_resources.py
migration tools/migration_to_ovn