)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"d8f85d03c451fe68b1a74f43869197f18d993db8","unresolved":false,"context_lines":[{"line_number":10,"context_line":"associated exceptions into neutron-lib."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Unit tests and release note are also included."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: Ibb78270c54d1775b0596a00ae652f6f0b7f7dff8"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3fa7e38b_471bc91a","line":13,"updated":"2019-12-12 15:29:51.000000000","message":"The following projects (lazy list now, I have to check in more) are referencing neutron.extensions.securitygroups, so must be changed before deleting the api def, exceptions and constants from neutron:\n* neutron\n* openstack/tricircle\n* x/quark\n* x/cloudcafe\n* x/networking-opencontrail\n* x/networking-plumgrid\n* x/networking-zte\n* x/omni\n* x/vmware-nsx\n* x/group-based-policy\n* x/networking-bigswitch","commit_id":"aa6dc7c5455e936d5c4a9e01f03f521a5149bfd7"}],"neutron_lib/api/definitions/securitygroup.py":[{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"d4a4854c951a5cb9efa511a7d7ac4632d6da6ea8","unresolved":false,"context_lines":[{"line_number":74,"context_line":"        raise exceptions.InvalidCIDR(input\u003dip_prefix)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"def _validate_name_not_default(data, max_len\u003ddb_const.NAME_FIELD_SIZE):"},{"line_number":78,"context_line":"    msg \u003d validators.validate_string(data, max_len)"},{"line_number":79,"context_line":"    if msg:"},{"line_number":80,"context_line":"        return msg"},{"line_number":81,"context_line":"    if data.lower() \u003d\u003d \"default\":"},{"line_number":82,"context_line":"        raise sg_exceptions.SecurityGroupDefaultAlreadyExists()"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"validators.add_validator(\u0027name_not_default\u0027, _validate_name_not_default)"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"sg_supported_protocols \u003d ([None] + list(const.IP_PROTOCOL_MAP.keys()))"},{"line_number":88,"context_line":"sg_supported_ethertypes \u003d [\u0027IPv4\u0027, \u0027IPv6\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_0f663856","line":85,"range":{"start_line":77,"start_character":0,"end_line":85,"end_character":72},"updated":"2019-12-13 15:13:53.000000000","message":"This is why tempest is failing, as this validator registered twice, see the traceback:\n...\n2019-12-12 15:50:00.983425 | controller |   File \"/opt/stack/neutron/neutron/opts.py\", line 60, in \u003cmodule\u003e\n2019-12-12 15:50:00.983438 | controller |     import neutron.extensions.securitygroup\n2019-12-12 15:50:00.983451 | controller |   File \"/opt/stack/neutron/neutron/extensions/securitygroup.py\", line 210, in \u003cmodule\u003e\n2019-12-12 15:50:00.983463 | controller |     validators.add_validator(\u0027name_not_default\u0027, _validate_name_not_default)\n2019-12-12 15:50:00.983476 | controller |   File \"/opt/stack/neutron-lib/neutron_lib/api/validators/__init__.py\", line 1261, in add_validator\n2019-12-12 15:50:00.983489 | controller |     raise KeyError(msg)\n2019-12-12 15:50:00.983501 | controller | KeyError: \u0027Validator type name_not_default is already defined\u0027\n\nOne option what I see is to move the validator defined in neutron.extensions.securitygroup to neutron_lib.validators as a first commit.","commit_id":"aa6dc7c5455e936d5c4a9e01f03f521a5149bfd7"}],"neutron_lib/tests/unit/api/definitions/test_security_group.py":[{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"d4a4854c951a5cb9efa511a7d7ac4632d6da6ea8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"3fa7e38b_cf44a0a1","updated":"2019-12-13 15:13:53.000000000","message":"rename to test_securitygroup.py","commit_id":"aa6dc7c5455e936d5c4a9e01f03f521a5149bfd7"}]}
