Commit Graph

157 Commits

Author SHA1 Message Date
elajkat 87859a3997 Update python classifier with py3.10 & py3.11 in setup.cfg
Change-Id: I6a1435c3d2660a6f008cee6f62f641abab0a7ec2
2024-01-11 13:23:44 +01:00
Bodo Petermann 256464aea6 VPNaaS support for OVN
Adds VPNaaS support for OVN.
Add a new stand-alone VPN agent to support OVN+VPN. Add OVN-specific
service and device drivers that support this new VPN agent. This will
have no impact on the existing VPN solution for ML2/OVS, the existing
L3 agent and its VPN extension will still work.

Add a new VPN agent scheduler that will schedule VPN services to VPN
agents on a per-router basis.

Add two new database tables: vpn_ext_gws (to store extra port IDs)
and routervpnagentbindings (to store VPN agent ID per router).

More details see spec (neutron-specs/specs/xena/vpnaas-ovn.rst).

This work is based on work of MingShuan Xian (xianms@cn.ibm.com),
see https://bugs.launchpad.net/networking-ovn/+bug/1586253

Depends-On: https://review.opendev.org/c/openstack/neutron/+/847005
Depends-On: https://review.opendev.org/c/openstack/neutron-tempest-plugin/+/847007

Closes-Bug: #1905391
Change-Id: I632f86762d63edbfe225727db11ea21bbb1ffc25
2023-11-16 21:08:50 +01:00
likui 01b1ccf536 setup.cfg: Replace dashes with underscores
Setuptools v54.1.0 introduces a warning that the use of
dash-separated options in 'setup.cfg' will not be supported
in a future version [1].
Get ahead of the issue by replacing the dashes with underscores.
Without this, we see 'UserWarning' messages
like the following on new enough
versions of setuptools:

  UserWarning: Usage of dash-separated 'description-file' will not be
  supported in future versions. Please use the underscore name
  'description_file' instead

[1] https://github.com/pypa/setuptools/commit/a2e9ae4cb

Change-Id: I84131fe10c7ca309e576b1769f2a3eccf4fdfe50
2022-05-17 18:42:14 +08:00
Ghanshyam Mann 4f1f0f7263 Update python testing as per zed cycle teting runtime
In Zed cycle, we have dropped the python 3.6/3.7[1] testing
and its support. Add release notes and update the python
classifier for the same.

[1] https://governance.openstack.org/tc/reference/runtimes/zed.html

Change-Id: I68fded0366a3be3ef5459391982e80c570562735
2022-05-11 22:19:10 -05:00
gugug 644a19d38e Remove translation sections from setup.cfg
These translation sections are not needed anymore, Babel can
generate translation files without them.

Change-Id: Idbd4f0b3565de74aa40a054ee6e98699422a0095
2020-05-27 23:56:59 +08:00
Andreas Jaeger a64f25f684 Cleanup py27 support
Make a few cleanups:
- Remove python 2.7 stanza from setup.py
- Remove obsolete sections from setup.cfg:
  * Wheel is not needed for python 3 only repo
  * Some other sections are obsolete
- Update classifiers
- Update requirements, no need for python_version anymore

Change-Id: I79cf58adf35726999a0791525dd28a7e70de4591
2020-04-05 10:13:09 +02:00
Bernard Cafarelli 7d851c6401
Drop python 2 support and testing
This is part of Ussuri goal tracked for Neutron stadium at:
https://etherpad.openstack.org/p/neutron-train-zuulv3-py27drop

Change-Id: Idcbecc3ee3e2140cdff45a58cd4628064f17181f
2019-12-17 15:04:40 +01:00
Miguel Lavalle 4077093c10 Complete move of neutron-vpnaas tempest tests to tempest plugin
As discussed in the neutron_ci meeting [1] the QA team would like to
move the tempest tests for the stadium projects from their repos to
repos specific to being tempest plugins. This is the second part of a two
stage move, by removing the tempest tests that were copied to the
neutron-tempest-plugin repo [2].

[1] http://eavesdrop.openstack.org/meetings/neutron_ci/2019/neutron_ci.2019-03-12-16.01.log.html#l-94
[2] https://etherpad.openstack.org/p/neutron_stadium_move_to_tempest_plugin_repo

Depends-On: https://review.opendev.org/#/c/649373
Change-Id: Iafc2cd1790175d58b3016624b8451c8bfceafa32
2019-12-11 10:10:51 -06:00
Corey Bryant 5f23fa809c Add Python 3 Train unit tests
This is a mechanically generated patch to ensure unit testing is in place
for all of the Tested Runtimes for Train.

See the Train python3-updates goal document for details:
https://governance.openstack.org/tc/goals/train/python3-updates.html

Change-Id: I1094b5f7c166b30e210c540c2e420d8e86894046
Story: #2005924
Task: #34225
2019-07-05 13:54:27 -04:00
Ghanshyam Mann 5b5b063519 Dropping the py35 testing
All the integration testing has been moved to
Bionic now[1] and py3.5 is not tested runtime for
Train or stable/stein[2].

As per below ML thread, we are good to drop the py35
testing now:
http://lists.openstack.org/pipermail/openstack-discuss/2019-April/005097.html

[1] http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004647.html
[2]
https://governance.openstack.org/tc/reference/runtimes/stein.html
https://governance.openstack.org/tc/reference/runtimes/train.html

Change-Id: If536a6a251145a3923dfa692b3477d23797bf132
2019-04-15 02:36:26 +00:00
Akihiro Motoki b0c4a6aefb Convert policy.json into policy-in-code
This commit defines the default policies in code. VPNaaS has
no policy.json so far, so all policy definitions are newly created.

Partially Implements: blueprint neutron-policy-in-code

Change-Id: Ic0bf99b69a792197399e38ace6d23ea18874892a
2019-01-07 16:38:16 +00:00
melissaml 5dda145f94 Change openstack-dev to openstack-discuss
Mailinglists have been updated. Openstack-discuss replaces openstack-dev.

Change-Id: I0ad0b5143d3b1e72868e6b7035b367d40f7a720a
2018-12-04 18:44:14 +08:00
Cao Xuan Hoang eadee693a9 Remove unmaintained drivers
After the announcement on mailing list [1] but there is no response.
This patch intends to remove the following drivers that are unmaintained:
- CiscoCsrIPsecDriver
- FedoraStrongSwanDriver
- VyattaIPsecDriver

[1] http://lists.openstack.org/pipermail/openstack-dev/2017-July/120264.html

Change-Id: I984a41b9a9b5c154c4be7f5bcef621fe8c5677ac
2018-04-20 15:00:19 +07:00
melissaml e8b62d967e Update home-page url
The url of home-page is out of date. We need update it.

Change-Id: I237bb6078e94b76708b55384149ea2f3b2be6864
2018-02-26 00:18:04 +08:00
Cao Xuan Hoang 99d2687b83 VPN as a Service (VPNaaS) Agent
This is the iteration of the VPNaaS Agent with some basic
functionality to enable integration of Plugin - Agent - Driver.

Co-Authored-By: Van Hung Pham <hungpv@vn.fujitsu.com>
Change-Id: I0b86c432e4b2210e5f2a73a7e3ba16d10467f0f2
Closes-Bug: 1692128
2017-10-23 09:24:28 +07:00
Van Hung Pham 0cd6ff32a9 Optimize the link address
Update link address to ensure safety and preciseness

Change-Id: I96b27a0d8a7a0d48b4301392ea9490ef5a6b82b1
2017-06-30 10:20:12 +00:00
Cao Xuan Hoang 772c4e18b7 Update a py35 environment to tox and classifier
Infra has been running python35 jobs, replaced the python34 jobs.
This is due to the change from Ubuntu Trusty to Xenial, where only
python3.5 is available.

So we update a py35 environment with the same definitions for
skipping not-yet-working checks as we have in place for py34 already.

Change-Id: I3e7fc720ca6bd9df80620d609e9a9603a644673a
2017-02-27 11:49:20 +07:00
Ihar Hrachyshka af6649bc82 Move service plugin aliases from neutron to neutron-vpnaas
The aliases should be maintained in the same repo that hosts the plugin
itself.

Change-Id: Ieb4e9fce9f5cf9b5a60f1207ec38a59adfe400a8
Depends-On: I2136a530a8351cc290418d9ae18af08b480707c5
2016-08-27 16:18:49 +00:00
chen-li 113c39a75d Fix API Tests
Currently, when we run api tests with command: "tox -e api",
tests are failing with errors.

This change first fixes errors, make api tests pass. Then refactor
the neutron-vpnaas api tests tree to fit the tempest plugin.

As a tempest plugin, the steps to run tests by hands are:

1. Setup a local working environment for running tempest
    tempest init ${your_tempest_dir}

2. Enter ${your_tempest_dir}
    cd ${your_tempest_dir}

3. Check neutron_vpnaas_tests exist in tempest plugins:
    tempest list-plugins
    +----------------------+------------------------------------------------------+
    |         Name         |                      EntryPoint                      |
    +----------------------+------------------------------------------------------+
    |    neutron_tests     |  neutron.tests.tempest.plugin:NeutronTempestPlugin   |
    | neutron_vpnaas_tests | neutron_vpnaas.tests.tempest.plugin:VPNTempestPlugin |
    +----------------------+------------------------------------------------------+

4. Run neutron_vpnaas tests:
    tempest run --regex "^neutron_vpnaas.tests.tempest.api\."

In the jenkins gate,  devstack-gate/devstack-vm-gate-wrap.sh will invoke tempest
with proper configurations, such as:
    DEVSTACK_GATE_TEMPEST=1
    DEVSTACK_GATE_TEMPEST_ALL_PLUGINS=1
    DEVSTACK_GATE_TEMPEST_REGEX="^neutron_vpnaas.tests.tempest.api\."
The actual raw command in gate running under the tempest code directory is:
    tox -eall-plugin -- "^neutron_vpnaas.tests.tempest.api\."

This is a part of activate the API job:
https://review.openstack.org/#/c/337011/

Change-Id: Icdc946bccb77b4c78d161a590de1aa15e0a57139
2016-07-28 20:23:28 -05:00
Ihar Hrachyshka 6088eee02e vyatta: added missing agent console script
Without this change, neutron-vyatta-agent executable is not generated.

Change-Id: I994d699a6d957e7f2498f4b515b9256644d8d0f0
Closes-Bug: #1552703
2016-03-03 14:35:43 +01:00
Akihiro Motoki 14389729ef Update translation setup
Follow new infra setup for translations, see spec
http://specs.openstack.org/openstack-infra/infra-specs/specs/translation_setup.html
for full details.

This basically renames
neutron-vpnaas/locale/neutron-vpnaas.pot to
neutron_vpnaas/locale/neutron_vpnaas.pot. For this we need to update
setup.cfg.

Update also domain name in _i18n.py.

The project has no translations currently, let's remove the outdated
pot file, the updated scripts work without them. So, we can just
delete the file and once there are translations, an updated pot file
together with translations can be imported automatically.

Change-Id: Ie2c93bebdfbade7c0e2dd7f1f0393639bd8970ed
2016-01-29 07:07:50 +09:00
Matthew Kassawara 8e4ee7a7a8 Convert warnings to errors
The tox docs environment converts Sphinx warnings to
errors using the '-W' option. However, the equivalent
gate job calls build_sphinx directly and lacks the
necessary option in setup.cfg to convert warnings
to errors. Adding this option to provide the same
checks in both places.

Change-Id: Id752831a5d09d819f342427833f68ccb0acdaaf1
2016-01-08 11:05:05 -07:00
Martin Hickey 3e63e570fa Remove Neutron VPNaaS static example configuration files
Oslo config generator was introduced in patch [1] to
automatically generate the sample Neutron VPNaaS configuration
files.

This patch removes the static example configuration files from
the repository as they are now redundant.

[1] https://review.openstack.org/#/c/253399/

Change-Id: Ibf5ed0f1e80d01dd2332a3638974479bca350ecf
Partially-Implements: blueprint autogen-neutron-conf-file
Partial-bug: #1199963
Depends-On: Icef8f7e8f0e8e78bfffa7a5af3f9f2300376b115
2015-12-13 08:48:00 +00:00
Martin Hickey 5c8941eeed Automatically generate neutron VPNaaS configuration files
This adds a new tox environment, genconfig, which generates sample
neutron VPNaaS configuration file using oslo-config-generator.

Updates to some configuration option help messages to reflect useful
details that were missing in the code but were present in config files.

DocImpact: Update the docs that VPNaaS no longer includes static example
configuration files. Instead, use tools/generate_config_file_samples.sh
to generate them and the files generated now end with .sample extension.

Partially-Implements: blueprint autogen-neutron-conf-file

Change-Id: I4a6094b8218dfd320d05bfb1e3bc121e8930c551
Partial-bug: #1199963
2015-12-11 11:03:33 +00:00
Jenkins c8cfc00a02 Merge "Remove version from setup.cfg" 2015-12-04 00:24:16 +00:00
Kyle Mestery 81f8f527c1 Remove version from setup.cfg
Per email from the release team [1], we are moving to using only
tags and removing verisons from setup.cfg.

Depends-On: I19e888fc403aa2d95b769ed1730721eba29e68ea
[1] http://lists.openstack.org/pipermail/openstack-dev/2015-November/080692.html

Change-Id: I02f0f5a18d7587c429d150ad7da2decbb609b045
Signed-off-by: Kyle Mestery <mestery@mestery.com>
2015-12-01 10:47:05 -06:00
Bo Chi 41cff2cea9 Fix wrong file name in setup.cfg
Change-Id: Ie57e447d1c11ba8e81e943266b8fda2f7bb5899d
2015-11-27 04:54:58 -05:00
Kyle Mestery 388df45415 Open Mitaka development
Bump preversion to mark the start of the Mitaka development branch.
The liberty release branch will be cut from the previous commit.

Change-Id: Ia57a1212c1f702ebf5a367ce9d3462eb1cecfc96
Signed-off-by: Kyle Mestery <mestery@mestery.com>
2015-09-23 17:58:56 +00:00
Henry Gessau 3a18ab4a4e Register alembic_migrations at install time
This allows neutron-db-manage to find the alembic migrations
automatically if this project is installed.

The config file alembic.ini is not needed in this project since it's
tables are in neutron's DB and so it depends on neutron's config.

Partial-Bug: #1470625

Change-Id: I90a4a10d10769e48571327b98cbc67b68260e909
2015-07-26 21:29:03 -04:00
Doug Hellmann 755a686b16 Update version for Liberty
Update the version for Liberty, switching from date-based versioning
to pre-versioning using SemVer. See
http://lists.openstack.org/pipermail/openstack-dev/2015-May/065211.html
and
http://lists.openstack.org/pipermail/openstack-dev/2015-June/067082.html
for details.

Change-Id: I6a35fa0dda798fad93b804d00a46af80f08d475c
2015-06-17 21:31:55 +00:00
Thierry Carrez 8a2704d14d Open Liberty development
Bump pre-version in setup.cfg to formally open Liberty development.
Kilo release branch will be cut from the previous commit.

Change-Id: Id4cf723c18c564e9007178fad97a2a8827266822
2015-04-07 15:56:11 +02:00
Jenkins dfad4a1969 Merge "Implementation of Brocade Vyatta VPNaaS Plugin" 2015-02-19 02:54:27 +00:00
Sridhar Ramaswamy e7a4b8f8ac Implementation of Brocade Vyatta VPNaaS Plugin
Introducing new service-driver and device-driver for Vyatta vRouter.
with portions of vRouter parsing code hosted in stackforge/networking-brocade
repo.

Change-Id: I6028283c86849196170ada8b5ebeb1efe4e38ea4
Implements: blueprint brocade-vyatta-vpnaas-plugin
2015-02-18 16:26:38 -08:00
Ihar Hrachyshka e6c88f5602 Explicitly monkey patch VPN agent
Don't rely on l3_agent entry point in neutron to do it for the agent.

There are plans [1] to move eventlet monkey patching into a separate
location other than neutron.agent.l3_agent. That means we won't be able
to rely on base l3_agent module to be monkey patched for us.

This patch mimics the tree structure used in neutron to keep eventlet
patched services in single place. Even though there is only one agent in
tree that needs monkey patching, it's better to keep things uniformly
with neutron, and allow to introduce more agents later without
explicitly adding another call to monkey_patch() for those.

[1]: I2bc16ca4422c01d64e9fac4910214dbb0d0326ff

Change-Id: I2d7081dbd4cb532332e3b66667bb8c71aa5a6658
2015-02-18 21:21:33 +00:00
Doug Wiegley df9dd76988 Move config and extensions to service repo
- Some shared exceptions will be left in Neutron, until further l3 refactoring

Depends on neutron change I16b5e5b2bb70717166da14faa975fa2ab9129049

Change-Id: I081b7482776b7294fcafcae6c8610ddd5271cc5e
Partially-Implements: blueprint services-split
2015-02-02 22:00:42 -06:00
Zhang Hua 0cf7671b0a vpn namespace wrapper
strongSwan doesn't support namespace natively, this wrapper
will use "mount --bind" to simulate the ns like this:

sudo neutron-rootwrap /etc/neutron/rootwrap.conf ip netns \
exec <namespace-id> neutron-netns-wrapper --mount_paths \
=/etc:/var/lib/neutron/vpnaas/<xxxx-id>/etc, \
/var/run:/var/lib/neutron/vpnaas/<xxxx-id>/var/run \
--cmd=ipsec,status

Both sudoers and rootwrap.conf will not exist in the
directory /etc after bind-mount, thus we can't use
utils.execute(cmd, conf.root_helper) in
neutron/agent/linux/utils.py. so implement a function
execte(cmd) in this wrapper as an alternative. then we can
use root_helper to invoke this wrapper to make sure all
commands are still running as root as below code shows.
Finally, also need to check in wrapper if cmd matches
CommandFilter based on the same reason.
ip_wrapper = ip_lib.IPWrapper(root_helper, namespace)
    ip_wrapper.netns.execute(
    [NS_WRAPPER,
    '--mount_paths=/etc:%s/etc,/var/run:%s/var/run' % (
    self.config_dir, self.config_dir),
    '--cmd=%s' % ','.join(cmd)],
    check_exit_code=check_exit_code)

We are using check of net namespace (since linux 3.0),
instead of mount namespace (since Linux 3.8), as older
kernels do not support mount namespace. In addition,
mount --bind has been available since Linux 2.4. so we
don't need to worry kilo's minumum kernel requirement.

This patch is based on patchset67 of nachi's initial
vpnaas implementation, many thanks to nachi.

submit this wrapper as a separate review from [1].

[1] https://review.openstack.org/#/c/144391/

Partially-implements: blueprint ipsec-strongswan-driver

Change-Id: Icc80b9102acb87170f2d1cda06c848fa71bb1634
2015-01-23 09:55:53 +08:00
Jakub Libosvar 30fe57e4a8 Backward compatibility for vpnaas
Vpnaas driver class is changed to one from this repo in case it attempts
to be loaded from neutron repo.

This change depends on I76af175c4387326a4e5ff95c2f15d8b866dedab3

Change-Id: I2986a9724396920071a3a22121e5b5a5a08ed059
Closes-Bug: 1401895
2015-01-06 13:47:08 +01:00
Ihar Hrachyshka 35843adeea Moved vpnaas.filters from main neutron repo
This file belongs to vpnaas service and hence should be maintained in
neutron-vpnaas repository.

Change-Id: Ide7dafafa3e43b3f27ec3d2dfdb3591ae7328f21
2015-01-05 12:18:45 +01:00
Doug Wiegley a2711fc05e After the services split, get neutron-vpnaas Jenkins jobs passing
- Temporarily skip all unit tests, until alembic chains are sorted.

Change-Id: I3ef0d5cda874b2f7a01ff0c8e967aefd05df0d87
2014-12-09 00:00:04 -07:00
Doug Wiegley 88d4fbf240 Split vpnaas services code into neutron-vpnaas
Change-Id: I6b17fbbb646b4a01f016f354c5d3eded32fac3d8
2014-12-08 13:37:08 -07:00
Jenkins 20d77a868a Merge "Remove Python 2.6 classifier" 2014-11-27 03:42:12 +00:00
Julien Danjou e98d7bcb5c Remove Python 2.6 classifier
Neutron does not support Python 2.6 anymore starting with Kilo and might
not work correctly with it, so remove the classifier.

Change-Id: Ib7cddecdbec2c5152fe526bada6587129cf63ffd
2014-11-25 16:59:34 +01:00
YAMAMOTO Takashi 8dd355151f Remove ryu plugin
Ryu plugin was marked deprecated in Juno.
This commit actually removes the code for Kilo.

We (Ryu team) recommend users to migrate to ofagent, on which
we aim to concentrate our development resources by this deprecation.

DocImpact
Partial-Bug: #1391714
Change-Id: I4916ce3c246730dc00516404471f8a1a008e27b6
2014-11-25 06:16:14 +00:00
Jenkins 19be48528d Merge "Add rootwrap filters for ofagent" 2014-11-21 00:13:44 +00:00
YAMAMOTO Takashi d943a2d6e2 Add rootwrap filters for ofagent
neutron-ofagent-agent currently relies on the fact the rootwrap
filters for neutron-openvswitch-agent covers what it needs.
as they are independent agents and their requirements are
getting more different, introduce a dedicated rootwrap filters
for ofagent.

Closes-Bug: #1392560
Change-Id: Iba205260a238431432caf8d9697268ceeef85eca
2014-11-14 02:20:59 +00:00
Cedric Brandily caf51ee43b Remove openvswitch core plugin entry point
The openvswitch core plugin has been removed but not its associated
"neutron.core_plugins" entry point. This change removes it from
setup.cfg.

Change-Id: I79f7c334cdeb0f4d0d68743734f69c0ec8523467
Related-Bug: #1323729
Closes-Bug: #1391326
2014-11-10 23:05:04 +01:00
Jenkins 2895bcdb5b Merge "Open Kilo development" 2014-10-02 17:19:42 +00:00
Jenkins f8b2f4104b Merge "remove linuxbridge plugin" 2014-10-02 03:26:22 +00:00
Mark McClain 6d4f2527d5 remove linuxbridge plugin
This changeset removes the linuxbridge plugin, but retains the agent for ML2.
The database models were not removed since operators will need to migrate the
data.

Additionally, the ml2 migration script was altered to support Juno.  For
testing, a user must either run the migration against the icehouse
scheme or run the update, manually change alembic_version to juno and
then run the migration script.  Once the juno migration is added, this
manually step will not be required.

Change-Id: I70689b4247947e6dc08e80fd9b31da9dc691d259
Partial-Bug: 1323729
2014-10-01 18:08:25 +00:00
Thierry Carrez 07bb0ef6cc Open Kilo development
Bump pre-version to 2015.1 to formally open master branch to Kilo
development.

Change-Id: Ia48ad29dc1b31b1fbcb14dfffad571659ec66700
2014-09-30 16:47:21 +02:00