State_path is defined in gluon/conf/config.py, its default value is $gluon_home/gluon.
In the [default] section of the /etc/proton/proton.conf file, its value overrided to
/opt/proton/ which can cause confusion. This patch changes it back to use default value
for state_path defined in gluon/conf/config.py.
Change-Id: I6af2d7e04e51b0476430975c10cc01fca24c9d9d
(cherry picked from commit 0bbfe4f360)
The append_model() function in the generator.py file has a confusing else
statement. There is no need for setting
model['file_version'] = yaml_dict['file_version'] as entering the else
statement implies they are equal.
Change-Id: I5278677ac5890350dfac6d58cc8b04ff91f33849
(cherry picked from commit a0bffe14c0)
In do_post, "status_code != 201" is checked for twice, one of them should be "status_code != 200"
Change-Id: Ia344225f1d5a013183d6af2c7876f4acab401546
Closes-Bug: #1719476
(cherry picked from commit 27f386ab68)
Updated documentation includes:
- doc/source/devref
* Update on Gluon Authentication and Authorization
* Version Management in Gluon API Specification and updated examples
* Updated examples for Proton Version Management
* Updated repo structure
- doc/source/installation
* Updated installation guide for etcd and gluon
- doc/source/usage.rst
* Updated user guide
- releasenotes/source
* Updated release notes
Change-Id: I836690ccb5c538031e624f5f547b5f2c594ca4ad
Signed-off-by: Bin Hu <bh526r@att.com>
(cherry picked from commit 0e99426b9e)
1) Update doc links according to OpenStack document migration
2) Use https instead of http for docs links
Change-Id: I3d01190d4010d77676173125196fb521b8cf45c7
(cherry picked from commit 4acc278260)
Change [keystone_authentication] to [keystone_authtoken] in proton.conf
doc/samples/proton.conf.sample is for documentation purpose, move to doc/samples
etc/proton/proton.conf is for installation to copy to /etc/proton, move to etc/proton
Change-Id: I68058c731accd5d883317f26adec2db310b74ba1
(cherry picked from commit f6201e9533)
When backend driver generates url, it need to add the version
number into the url.
Before: /proton/net-l3vpn/ports/<id>
After: /proton/net-v3vpn/v1.0/ports/<id>
Change-Id: I4ccccc0312ad8613d55abb0daadf8160f704ed17
(cherry picked from commit 8668c8d613)
When deleting net-l3vpn port, TypeError: delete_port() takes exactly 3 arguments (4 given).
delete_port() is called in File "/usr/lib/python2.7/site-packages/gluon/shim/api_models/net_l3vpn.py",
line 229, in handle_port_delete self.backend.delete_port(key, self.model, deleted_obj).
Change-Id: I1cb080104cfa1decdc3b8f45d102636d3d1e6af7
(cherry picked from commit 83ed959007)
Currently several warnings are being thrown when running
tox -e docs, this is an attempt to fix those warnings
Change-Id: I26f3e1d83f2bfc7c5d5cd2a9393b24c992ff1122
(cherry picked from commit 2fe5276a56)
There is "model = load_model_for_service(service)" in function ”build_api()“.
And ”model“ can be used more reasonably in the function.
Change-Id: I26ed5314d0c27e8ddf0c32a2f38b91648de5e577
(cherry picked from commit 32b6ba1803)
As a follow up to Icd44684b3d05ff6a07665348c08adff8245f2523
Use cors.set_defaults instead of app.set_latent.
Change-Id: I0dfe41ecb95182ce9a66d247f7120dadf3ae4b9f
protonclient requires user credentials to be set up as environment
variable when keystone is enable for authentication. Add an openrc
file to help setting up this variables.
Change-Id: Idea1112a61b030d869371642575147cf6aa46d18
For user authorizations, oslo_policy need to load the rules and policies defined in the policy.json file. When the oslo_policy
enforcer is initializing it will look for the path of this file in
cfg.CONF. Gluon needs to add this configuration option to its
configuration.
Change-Id: I248d5c00a7259bb62bacf20d3ea2975293500c5e
This patch only moves rule definitions from policy.json to code.
Policies definitions e.g. "create_ports" or "get_ports" will
still be defined in the policy.json file.
In the future, policy definitions will be auto generated from model's
yaml files[1]. Then policy definitions will be removed from the
policy.json file.
[1] https://github.com/openstack/gluon/blob/master/doc/source/devref/gluon-auth.rst#defining-authorization-rules
Change-Id: I266ea81d1df198e775a93902984d9865fc6201a0
This is the first commit that starts the process of moving hardcoded
constants into config files. There will be more commits in future
as we identify more hardcoded constants in our code.
Change-Id: I0605567c8fa34cb0e809525b4b9194ebd02751eb
This patch impletements the Proton Version Management specifications
located here: https://review.openstack.org/#/c/456772/
Change-Id: I7581b55dbaac170439ac9274454a5e2c553fa7ca
oslo.db removed the deprecated sqlite_db option in its set_defaults()
method in [0]. This patch set updates the code and fixes the gating error.
[0] cc64f70105
Change-Id: If31a15fe594243162315cd75f561d11e20fc3241
This is an initial version of a Gluon API model for the IETF SFC
model.
Note: This is is a simplified version targeting the Gluon demo at the
Boston OpenStack summit. It does not fully represent the IETF SFC model.
The model is supposed to be extended in future releases.
Change-Id: I243f10be4f39baa6bce767283070e2a4915ef93a
Signed-off-by: Georg Kunz <georg.kunz@ericsson.com>
1.As mentioned in [1], we should avoid using
six.iteritems to achieve iterators. We can
use dict.items instead, as it will return
iterators in PY3 as well. And dict.items/keys
will more readable.
2.In py2, the performance
about list should be negligible, see the link [2].
[1] https://wiki.openstack.org/wiki/Python3
[2] http://lists.openstack.org/pipermail/openstack-dev/2015-June/066391.html
Change-Id: Ida473d702a89e067c350c5cfde6c1982fb466577
This patchset extends the existing L3VPN model with additional
objects which allow to configure BGP peerings between SDN controllers
or data center gateways.
Change-Id: Id4d8e572f75e7246e9fa7006c792df31b13cea2f
Signed-off-by: Georg Kunz <georg.kunz@ericsson.com>
Service API Models are defined in gluon/models directory, where each
sub-directory is a model of NFV networking service. An exemplary structure
looks like:
gluon/models/net-l3vpn/api.yaml
A more generic example looks like:
gluon/models/<service>/<name>.yaml
Currently, in gluon/cmd/config.py, service model is net-l3vpn only by
default. When a new service model is added, we need to add the new
service model in "service_list" of proton.conf, and restart the service
by something like:
proton-server --config-file proton.conf
If some user forgets to add it to proton.conf, even if new service model
is defined appropriately, Proton Server only loads net-l3vpn by default.
This patch changes the default model to be all models under gluon/models
directory. This means that if a user adds a service model definition, he
does not have to change proton.conf. By simply restarting proton-server,
all models will be loaded by default. The user needs to change proton.conf
ONLY IF he has specific needs of supporting specific service(s).
So this patch improves usability of adding / removing new service models
on-demand.
The original work is credited to Thomas Hambleton.
Change-Id: If2e5b7225105ca0dbbda4bb85090ce3c86e0e7f8
Signed-off-by: Bin Hu <bh526r@att.com>