)]}'
{"id":"openstack%2Fpython-openstackclient~615353","triplet_id":"openstack%2Fpython-openstackclient~master~I11fbcebf6b00f12a030b000c84dcf1d6b5e86250","project":"openstack/python-openstackclient","branch":"master","topic":"floating-ip-multi-port","hashtags":[],"change_id":"I11fbcebf6b00f12a030b000c84dcf1d6b5e86250","subject":"Handle multiple ports in AddFloatingIP","status":"MERGED","created":"2018-11-02 22:28:33.000000000","updated":"2018-11-08 18:03:13.000000000","submitted":"2018-11-08 01:45:22.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":3,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"615353-1541641522516-25bafa64","meta_rev_id":"27b98852cc3ad42ba34ca549d1238cc60e16eeff","_number":615353,"virtual_id_number":615353,"owner":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},{"value":0,"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},{"value":0,"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":2,"date":"2018-11-08 01:45:22.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"all":[{"value":2,"date":"2018-11-08 00:00:00.000000000","_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},{"value":0,"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},{"value":2,"date":"2018-11-06 22:12:04.000000000","_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"all":[{"value":1,"date":"2018-11-08 00:00:00.000000000","_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},{"value":0,"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},{"value":0,"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2018-11-06 22:12:04.000000000","updated_by":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"reviewer":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"state":"REVIEWER"},{"updated":"2018-11-08 00:00:00.000000000","updated_by":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"reviewer":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"state":"REVIEWER"},{"updated":"2018-11-08 01:45:22.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"}],"messages":[{"id":"4a5012f10a4ba20e450cf11057d46260d3a40c02","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2018-11-02 22:28:33.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"c6e066a18b1903df426bb9028f3afd171f3d0d49","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2018-11-02 22:28:51.000000000","message":"Patch Set 1: Workflow-1","accounts_in_message":[],"_revision_number":1},{"id":"55dbe9b7d7b8e7ba425e555aab02c6fccaa6f852","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2018-11-02 22:47:45.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"3ff2a54f5e685ffed8b8c738e2e9bb8f898b0b27","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2018-11-02 22:47:57.000000000","message":"Patch Set 2: Workflow-1","accounts_in_message":[],"_revision_number":2},{"id":"540e47efd151f7b9710c311b045024570626165b","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-11-03 00:38:02.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstackclient-check-plugins http://logs.openstack.org/53/615353/2/check/openstackclient-check-plugins/33df38d/ : SUCCESS in 8m 09s (non-voting)\n- osc-tox-py27-tips http://logs.openstack.org/53/615353/2/check/osc-tox-py27-tips/cd90690/ : SUCCESS in 7m 24s\n- osc-tox-py35-tips http://logs.openstack.org/53/615353/2/check/osc-tox-py35-tips/3a3bc5c/ : SUCCESS in 7m 12s\n- openstack-tox-cover http://logs.openstack.org/53/615353/2/check/openstack-tox-cover/682ab2d/cover/ : SUCCESS in 5m 20s\n- openstack-tox-lower-constraints http://logs.openstack.org/53/615353/2/check/openstack-tox-lower-constraints/43e7818/ : SUCCESS in 5m 24s\n- openstack-tox-pep8 http://logs.openstack.org/53/615353/2/check/openstack-tox-pep8/35a4a01/ : SUCCESS in 6m 25s\n- openstack-tox-py27 http://logs.openstack.org/53/615353/2/check/openstack-tox-py27/f69ce6a/ : SUCCESS in 8m 08s\n- openstack-tox-py35 http://logs.openstack.org/53/615353/2/check/openstack-tox-py35/50c8f92/ : SUCCESS in 8m 38s\n- openstack-tox-py36 http://logs.openstack.org/53/615353/2/check/openstack-tox-py36/9adbedd/ : SUCCESS in 4m 21s\n- openstack-tox-docs http://logs.openstack.org/53/615353/2/check/openstack-tox-docs/81837b4/html/ : SUCCESS in 7m 37s\n- tempest-full http://logs.openstack.org/53/615353/2/check/tempest-full/779e8b0/ : SUCCESS in 1h 48m 42s\n- tempest-full-py3 http://logs.openstack.org/53/615353/2/check/tempest-full-py3/13d7573/ : SUCCESS in 1h 29m 24s\n- osc-functional-devstack http://logs.openstack.org/53/615353/2/check/osc-functional-devstack/89476e6/ : SUCCESS in 45m 06s\n- osc-functional-devstack-tips http://logs.openstack.org/53/615353/2/check/osc-functional-devstack-tips/0eab82e/ : SUCCESS in 44m 18s","accounts_in_message":[],"_revision_number":2},{"id":"86c08ff8c9a15d24d7b4265066d633ff0c48094e","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2018-11-05 17:50:30.000000000","message":"Patch Set 2: Code-Review-1 -Workflow\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"69fbb28a4289d73f7308f26e2c361f0ea23d5547","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2018-11-05 22:05:04.000000000","message":"Patch Set 2:\n\n(1 comment)\n\nThanks Melanie, this looks good.  I left a suggestion about adding a log message for failed attempts.\n\nAlso, I was thinking about how to signal this to the user, maybe adding something to the ip_address help string like:\n\n  \u0027...to assign to the first available server port\u0027 \n\nI\u0027m trying to decide if that is confusing in the context of --fixed-ip-address...  /me shrugs, whatever makes sense.","accounts_in_message":[],"_revision_number":2},{"id":"5efcb7725deaaa939b2627e939ebb27ece5ec2ff","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2018-11-05 22:48:01.000000000","message":"Patch Set 2:\n\n(1 comment)\n\n\u003e (1 comment)\n \u003e \n \u003e Thanks Melanie, this looks good.  I left a suggestion about adding\n \u003e a log message for failed attempts.\n \u003e \n \u003e Also, I was thinking about how to signal this to the user, maybe\n \u003e adding something to the ip_address help string like:\n \u003e \n \u003e \u0027...to assign to the first available server port\u0027\n \u003e \n \u003e I\u0027m trying to decide if that is confusing in the context of\n \u003e --fixed-ip-address...  /me shrugs, whatever makes sense.\n\nThanks for the review, Dean. I\u0027ll try to add some info to the help.","accounts_in_message":[],"_revision_number":2},{"id":"f6faed3cb415c05354c9cd4912f89f680f0b3151","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2018-11-05 23:14:43.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"18296e7e655b900374f4bcc2d118f3c4d203c3a4","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-11-06 00:47:41.000000000","message":"Patch Set 3: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n\n- openstackclient-check-plugins http://logs.openstack.org/53/615353/3/check/openstackclient-check-plugins/c094084/ : SUCCESS in 6m 23s (non-voting)\n- osc-tox-py27-tips http://logs.openstack.org/53/615353/3/check/osc-tox-py27-tips/82cffd4/ : SUCCESS in 5m 49s\n- osc-tox-py35-tips http://logs.openstack.org/53/615353/3/check/osc-tox-py35-tips/3e191df/ : FAILURE in 5m 10s\n- openstack-tox-cover http://logs.openstack.org/53/615353/3/check/openstack-tox-cover/6dac93d/ : FAILURE in 5m 14s\n- openstack-tox-lower-constraints http://logs.openstack.org/53/615353/3/check/openstack-tox-lower-constraints/da00ab4/ : FAILURE in 5m 03s\n- openstack-tox-pep8 http://logs.openstack.org/53/615353/3/check/openstack-tox-pep8/dcb1804/ : SUCCESS in 5m 22s\n- openstack-tox-py27 http://logs.openstack.org/53/615353/3/check/openstack-tox-py27/1c6564e/ : SUCCESS in 4m 44s\n- openstack-tox-py35 http://logs.openstack.org/53/615353/3/check/openstack-tox-py35/4e69ff7/ : FAILURE in 4m 39s\n- openstack-tox-py36 http://logs.openstack.org/53/615353/3/check/openstack-tox-py36/71f54a4/ : FAILURE in 9m 31s\n- openstack-tox-docs http://logs.openstack.org/53/615353/3/check/openstack-tox-docs/a284d2e/html/ : SUCCESS in 6m 58s\n- tempest-full http://logs.openstack.org/53/615353/3/check/tempest-full/11f2075/ : SUCCESS in 1h 31m 12s\n- tempest-full-py3 http://logs.openstack.org/53/615353/3/check/tempest-full-py3/44a0233/ : SUCCESS in 1h 15m 00s\n- osc-functional-devstack http://logs.openstack.org/53/615353/3/check/osc-functional-devstack/fa327f3/ : SUCCESS in 42m 06s\n- osc-functional-devstack-tips http://logs.openstack.org/53/615353/3/check/osc-functional-devstack-tips/3b7c2a4/ : SUCCESS in 44m 45s","accounts_in_message":[],"_revision_number":3},{"id":"6125cae1d56256e9179651a111d044bacfa5b3b5","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2018-11-06 02:27:09.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"fdb729f02e1542d666e8ec7f29cbebb095f5c04a","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-11-06 04:08:48.000000000","message":"Patch Set 4: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n\n- openstackclient-check-plugins http://logs.openstack.org/53/615353/4/check/openstackclient-check-plugins/37d3513/ : SUCCESS in 5m 57s (non-voting)\n- osc-tox-py27-tips http://logs.openstack.org/53/615353/4/check/osc-tox-py27-tips/fb65b06/ : SUCCESS in 7m 27s\n- osc-tox-py35-tips http://logs.openstack.org/53/615353/4/check/osc-tox-py35-tips/4cdc092/ : SUCCESS in 6m 50s\n- openstack-tox-cover http://logs.openstack.org/53/615353/4/check/openstack-tox-cover/8e8c58c/cover/ : SUCCESS in 6m 00s\n- openstack-tox-lower-constraints http://logs.openstack.org/53/615353/4/check/openstack-tox-lower-constraints/679da58/ : SUCCESS in 5m 13s\n- openstack-tox-pep8 http://logs.openstack.org/53/615353/4/check/openstack-tox-pep8/60667ba/ : SUCCESS in 9m 13s\n- openstack-tox-py27 http://logs.openstack.org/53/615353/4/check/openstack-tox-py27/056db73/ : SUCCESS in 6m 19s\n- openstack-tox-py35 http://logs.openstack.org/53/615353/4/check/openstack-tox-py35/ab46017/ : SUCCESS in 5m 01s\n- openstack-tox-py36 http://logs.openstack.org/53/615353/4/check/openstack-tox-py36/4692657/ : SUCCESS in 4m 35s\n- openstack-tox-docs http://logs.openstack.org/53/615353/4/check/openstack-tox-docs/6d8959f/html/ : SUCCESS in 6m 23s\n- tempest-full http://logs.openstack.org/53/615353/4/check/tempest-full/a258e72/ : SUCCESS in 1h 40m 38s\n- tempest-full-py3 http://logs.openstack.org/53/615353/4/check/tempest-full-py3/7089c80/ : SUCCESS in 1h 16m 36s\n- osc-functional-devstack http://logs.openstack.org/53/615353/4/check/osc-functional-devstack/7ece282/ : FAILURE in 40m 14s\n- osc-functional-devstack-tips http://logs.openstack.org/53/615353/4/check/osc-functional-devstack-tips/a81161f/ : SUCCESS in 40m 46s","accounts_in_message":[],"_revision_number":4},{"id":"e406145cc5fd4b54e863b57f1b0f1db6df4e25db","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2018-11-06 17:22:33.000000000","message":"Patch Set 4:\n\nrecheck unrelated test_volume_set_and_unset","accounts_in_message":[],"_revision_number":4},{"id":"13e9fa3d690cf6eaddd66eeed4b48ffc39e1c7a6","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2018-11-06 17:27:43.000000000","message":"Uploaded patch set 5: Commit message was updated.","accounts_in_message":[],"_revision_number":5},{"id":"7c445ad36a87c05f0f17be613441c14adc1ac31f","author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"date":"2018-11-06 18:31:02.000000000","message":"Patch Set 5: Code-Review+1\n\nneeds a release note, but otherwise this LGTM","accounts_in_message":[],"_revision_number":5},{"id":"535632e1bea020ea14c11a3b237b2513d520b318","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2018-11-06 20:18:23.000000000","message":"Uploaded patch set 6.","accounts_in_message":[],"_revision_number":6},{"id":"81ba7e901b3000dc96c069372b9ee83e13045bd5","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-11-06 21:53:20.000000000","message":"Patch Set 6: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstackclient-check-plugins http://logs.openstack.org/53/615353/6/check/openstackclient-check-plugins/eb44d06/ : SUCCESS in 7m 17s (non-voting)\n- osc-tox-py27-tips http://logs.openstack.org/53/615353/6/check/osc-tox-py27-tips/c3c974f/ : SUCCESS in 5m 23s\n- osc-tox-py35-tips http://logs.openstack.org/53/615353/6/check/osc-tox-py35-tips/77c3408/ : SUCCESS in 6m 02s\n- openstack-tox-cover http://logs.openstack.org/53/615353/6/check/openstack-tox-cover/b9ae4bc/cover/ : SUCCESS in 5m 14s\n- openstack-tox-lower-constraints http://logs.openstack.org/53/615353/6/check/openstack-tox-lower-constraints/7d9b8a6/ : SUCCESS in 5m 23s\n- openstack-tox-pep8 http://logs.openstack.org/53/615353/6/check/openstack-tox-pep8/33d8f31/ : SUCCESS in 5m 16s\n- openstack-tox-py27 http://logs.openstack.org/53/615353/6/check/openstack-tox-py27/bf19865/ : SUCCESS in 5m 47s\n- openstack-tox-py35 http://logs.openstack.org/53/615353/6/check/openstack-tox-py35/c59ec3e/ : SUCCESS in 4m 22s\n- openstack-tox-py36 http://logs.openstack.org/53/615353/6/check/openstack-tox-py36/e983c32/ : SUCCESS in 4m 54s\n- openstack-tox-docs http://logs.openstack.org/53/615353/6/check/openstack-tox-docs/3f8783a/html/ : SUCCESS in 5m 21s\n- build-openstack-releasenotes http://logs.openstack.org/53/615353/6/check/build-openstack-releasenotes/38f5832/html/ : SUCCESS in 4m 59s\n- tempest-full http://logs.openstack.org/53/615353/6/check/tempest-full/52a6ddf/ : SUCCESS in 1h 33m 19s\n- tempest-full-py3 http://logs.openstack.org/53/615353/6/check/tempest-full-py3/e1dd748/ : SUCCESS in 1h 23m 05s\n- osc-functional-devstack http://logs.openstack.org/53/615353/6/check/osc-functional-devstack/a6656b1/ : SUCCESS in 51m 24s\n- osc-functional-devstack-tips http://logs.openstack.org/53/615353/6/check/osc-functional-devstack-tips/03bc1a6/ : SUCCESS in 56m 43s","accounts_in_message":[],"_revision_number":6},{"id":"cb593eb6317bdc3bb548d492d84a8b3b7ad6ceac","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2018-11-06 22:12:04.000000000","message":"Patch Set 6: Code-Review+2","accounts_in_message":[],"_revision_number":6},{"id":"7d405fb4f63e96ee06b1f809c79fcfa3859cf076","author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"date":"2018-11-08 00:00:00.000000000","message":"Patch Set 6: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":6},{"id":"ad6d33c5b81c43b9b50601293b52a656df94b49c","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-11-08 00:00:12.000000000","message":"Patch Set 6: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":6},{"id":"73b32bc3247b68b01da658f98d2dd46ed0feb164","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-11-08 01:45:22.000000000","message":"Patch Set 6: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- osc-tox-py27-tips http://logs.openstack.org/53/615353/6/gate/osc-tox-py27-tips/47c9e82/ : SUCCESS in 6m 32s\n- osc-tox-py35-tips http://logs.openstack.org/53/615353/6/gate/osc-tox-py35-tips/fb08621/ : SUCCESS in 6m 00s\n- openstack-tox-lower-constraints http://logs.openstack.org/53/615353/6/gate/openstack-tox-lower-constraints/3b5d36c/ : SUCCESS in 5m 42s\n- openstack-tox-pep8 http://logs.openstack.org/53/615353/6/gate/openstack-tox-pep8/4154346/ : SUCCESS in 5m 16s\n- openstack-tox-py27 http://logs.openstack.org/53/615353/6/gate/openstack-tox-py27/5b30d72/ : SUCCESS in 4m 58s\n- openstack-tox-py35 http://logs.openstack.org/53/615353/6/gate/openstack-tox-py35/7e99191/ : SUCCESS in 4m 46s\n- openstack-tox-py36 http://logs.openstack.org/53/615353/6/gate/openstack-tox-py36/4a83953/ : SUCCESS in 4m 54s\n- openstack-tox-docs http://logs.openstack.org/53/615353/6/gate/openstack-tox-docs/6136c49/html/ : SUCCESS in 4m 39s\n- build-openstack-releasenotes http://logs.openstack.org/53/615353/6/gate/build-openstack-releasenotes/a3b9259/html/ : SUCCESS in 5m 00s\n- tempest-full http://logs.openstack.org/53/615353/6/gate/tempest-full/23b5633/ : SUCCESS in 1h 36m 02s\n- tempest-full-py3 http://logs.openstack.org/53/615353/6/gate/tempest-full-py3/33fa055/ : SUCCESS in 1h 43m 29s\n- osc-functional-devstack http://logs.openstack.org/53/615353/6/gate/osc-functional-devstack/b886378/ : SUCCESS in 46m 19s","accounts_in_message":[],"_revision_number":6},{"id":"fde8ed20a6206256c65327527d4fdd70322575d0","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-11-08 01:45:22.000000000","message":"Change has been successfully merged by Zuul","accounts_in_message":[],"_revision_number":6},{"id":"5e7f68a3542267de9b71f0d244b32549dd591d89","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2018-11-08 18:03:13.000000000","message":"Patch Set 6: Cherry Picked\n\nThis patchset was cherry picked to branch stable/rocky as commit e09c358e7b35ac938595aad90c5c42dfe402a42a","accounts_in_message":[],"_revision_number":6}],"current_revision_number":6,"current_revision":"013c9a4f3a44cb0b81fc7affe9b933e701cb5dba","revisions":{"174d97b0235b4f61551b235e4e1021c1a3f5a876":{"kind":"REWORK","_number":1,"created":"2018-11-02 22:28:33.000000000","uploader":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"ref":"refs/changes/53/615353/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/53/615353/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/1"}}},"commit":{"parents":[{"commit":"1894a3cb17ce561a2109ced7e6969a49cf3a0064","subject":"Merge \"Add --key-name and --key-unset option for server rebuild API.\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/1894a3cb17ce561a2109ced7e6969a49cf3a0064"}]}],"author":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2018-11-02 22:27:55.000000000","tz":0},"committer":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2018-11-02 22:27:55.000000000","tz":0},"subject":"Handle multiple ports in AddFloatingIP","message":"Handle multiple ports in AddFloatingIP\n\nAddFloatingIP refers to an old nova proxy API to neutron that was\ndeprecated in nova. The neutron API for floating IP associate requires\na port to be specified. Currently, the code is selecting the first port\nif the server has multiple ports. But, an attempt to associate the\nfirst port with a floating IP can fail if the first port is not on a\nnetwork that is attached to an external gateway.\n\nIn order to make the command work better for users who have a server\nwith multiple ports, we can:\n\n  1. Select the port corresponding to the fixed_ip_address, if one was\n     specified\n\n  2. Try to associate the floating IP with each port until one of the\n     attempts succeeds, else re-raise the last exception.\n     (404 ExternalGatewayForFloatingIPNotFound from neutron)\n\nChange-Id: I11fbcebf6b00f12a030b000c84dcf1d6b5e86250\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/174d97b0235b4f61551b235e4e1021c1a3f5a876"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/174d97b0235b4f61551b235e4e1021c1a3f5a876"}]},"branch":"refs/heads/master"},"b9bd4d3e1bf7385488554b8bf4cb909ef5f61351":{"kind":"REWORK","_number":2,"created":"2018-11-02 22:47:45.000000000","uploader":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"ref":"refs/changes/53/615353/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/53/615353/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/2"}}},"commit":{"parents":[{"commit":"1894a3cb17ce561a2109ced7e6969a49cf3a0064","subject":"Merge \"Add --key-name and --key-unset option for server rebuild API.\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/1894a3cb17ce561a2109ced7e6969a49cf3a0064"}]}],"author":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2018-11-02 22:27:55.000000000","tz":0},"committer":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2018-11-02 22:45:07.000000000","tz":0},"subject":"Handle multiple ports in AddFloatingIP","message":"Handle multiple ports in AddFloatingIP\n\nAddFloatingIP refers to an old nova proxy API to neutron that was\ndeprecated in nova. The neutron API for floating IP associate requires\na port to be specified. Currently, the code is selecting the first port\nif the server has multiple ports. But, an attempt to associate the\nfirst port with a floating IP can fail if the first port is not on a\nnetwork that is attached to an external gateway.\n\nIn order to make the command work better for users who have a server\nwith multiple ports, we can:\n\n  1. Select the port corresponding to the fixed_ip_address, if one was\n     specified\n\n  2. Try to associate the floating IP with each port until one of the\n     attempts succeeds, else re-raise the last exception.\n     (404 ExternalGatewayForFloatingIPNotFound from neutron)\n\nChange-Id: I11fbcebf6b00f12a030b000c84dcf1d6b5e86250\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/b9bd4d3e1bf7385488554b8bf4cb909ef5f61351"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/b9bd4d3e1bf7385488554b8bf4cb909ef5f61351"}]},"branch":"refs/heads/master"},"1d46fd0cc2bbf2c90a402cfd736cd50dcd7b401b":{"kind":"REWORK","_number":3,"created":"2018-11-05 23:14:43.000000000","uploader":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"ref":"refs/changes/53/615353/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/53/615353/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/3"}}},"commit":{"parents":[{"commit":"1894a3cb17ce561a2109ced7e6969a49cf3a0064","subject":"Merge \"Add --key-name and --key-unset option for server rebuild API.\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/1894a3cb17ce561a2109ced7e6969a49cf3a0064"}]}],"author":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2018-11-02 22:27:55.000000000","tz":0},"committer":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2018-11-05 23:14:32.000000000","tz":0},"subject":"Handle multiple ports in AddFloatingIP","message":"Handle multiple ports in AddFloatingIP\n\nAddFloatingIP refers to an old nova proxy API to neutron that was\ndeprecated in nova. The neutron API for floating IP associate requires\na port to be specified. Currently, the code is selecting the first port\nif the server has multiple ports. But, an attempt to associate the\nfirst port with a floating IP can fail if the first port is not on a\nnetwork that is attached to an external gateway.\n\nIn order to make the command work better for users who have a server\nwith multiple ports, we can:\n\n  1. Select the port corresponding to the fixed_ip_address, if one was\n     specified\n\n  2. Try to associate the floating IP with each port until one of the\n     attempts succeeds, else re-raise the last exception.\n     (404 ExternalGatewayForFloatingIPNotFound from neutron)\n\nThis also fixes incorrect FakeFloatingIP attributes that were being set\nin the TestServerAddFloatingIPNetwork unit tests, which were causing\nthe tests to use None as parsed args for ip-address and\n--fixed-ip-address and thus bypassing code in the\n\u0027if parsed_args.fixed_ip_address:\u0027 block.\n\nStory: 2004263\n\nChange-Id: I11fbcebf6b00f12a030b000c84dcf1d6b5e86250\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/1d46fd0cc2bbf2c90a402cfd736cd50dcd7b401b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/1d46fd0cc2bbf2c90a402cfd736cd50dcd7b401b"}]},"branch":"refs/heads/master"},"16fa3731aec5852a943a385b70b3199dee9a0920":{"kind":"REWORK","_number":4,"created":"2018-11-06 02:27:09.000000000","uploader":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"ref":"refs/changes/53/615353/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/53/615353/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/4"}}},"commit":{"parents":[{"commit":"1894a3cb17ce561a2109ced7e6969a49cf3a0064","subject":"Merge \"Add --key-name and --key-unset option for server rebuild API.\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/1894a3cb17ce561a2109ced7e6969a49cf3a0064"}]}],"author":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2018-11-02 22:27:55.000000000","tz":0},"committer":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2018-11-06 02:27:02.000000000","tz":0},"subject":"Handle multiple ports in AddFloatingIP","message":"Handle multiple ports in AddFloatingIP\n\nAddFloatingIP refers to an old nova proxy API to neutron that was\ndeprecated in nova. The neutron API for floating IP associate requires\na port to be specified. Currently, the code is selecting the first port\nif the server has multiple ports. But, an attempt to associate the\nfirst port with a floating IP can fail if the first port is not on a\nnetwork that is attached to an external gateway.\n\nIn order to make the command work better for users who have a server\nwith multiple ports, we can:\n\n  1. Select the port corresponding to the fixed_ip_address, if one was\n     specified\n\n  2. Try to associate the floating IP with each port until one of the\n     attempts succeeds, else re-raise the last exception.\n     (404 ExternalGatewayForFloatingIPNotFound from neutron)\n\nThis also fixes incorrect FakeFloatingIP attributes that were being set\nin the TestServerAddFloatingIPNetwork unit tests, which were causing\nthe tests to use None as parsed args for ip-address and\n--fixed-ip-address and thus bypassing code in the\n\u0027if parsed_args.fixed_ip_address:\u0027 block.\n\nStory: 2004263\n\nChange-Id: I11fbcebf6b00f12a030b000c84dcf1d6b5e86250\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/16fa3731aec5852a943a385b70b3199dee9a0920"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/16fa3731aec5852a943a385b70b3199dee9a0920"}]},"branch":"refs/heads/master"},"d95687e0e855c30c10425dd783cb14584a7395cb":{"kind":"NO_CODE_CHANGE","_number":5,"created":"2018-11-06 17:27:43.000000000","uploader":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"ref":"refs/changes/53/615353/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/53/615353/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/5"}}},"commit":{"parents":[{"commit":"1894a3cb17ce561a2109ced7e6969a49cf3a0064","subject":"Merge \"Add --key-name and --key-unset option for server rebuild API.\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/1894a3cb17ce561a2109ced7e6969a49cf3a0064"}]}],"author":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2018-11-02 22:27:55.000000000","tz":0},"committer":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2018-11-06 17:27:22.000000000","tz":0},"subject":"Handle multiple ports in AddFloatingIP","message":"Handle multiple ports in AddFloatingIP\n\nAddFloatingIP refers to an old nova proxy API to neutron that was\ndeprecated in nova. The neutron API for floating IP associate requires\na port to be specified. Currently, the code is selecting the first port\nif the server has multiple ports. But, an attempt to associate the\nfirst port with a floating IP can fail if the first port is not on a\nnetwork that is attached to an external gateway.\n\nIn order to make the command work better for users who have a server\nwith multiple ports, we can:\n\n  1. Select the port corresponding to the fixed_ip_address, if one was\n     specified\n\n  2. Try to associate the floating IP with each port until one of the\n     attempts succeeds, else re-raise the last exception.\n     (404 ExternalGatewayForFloatingIPNotFound from neutron)\n\nThis also fixes incorrect FakeFloatingIP attributes that were being set\nin the TestServerAddFloatingIPNetwork unit tests, which were causing\nthe tests to use None as parsed args for ip-address and\n--fixed-ip-address and thus bypassing code in the\n\u0027if parsed_args.fixed_ip_address:\u0027 block.\n\nTask: 27800\nStory: 2004263\n\nChange-Id: I11fbcebf6b00f12a030b000c84dcf1d6b5e86250\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/d95687e0e855c30c10425dd783cb14584a7395cb"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/d95687e0e855c30c10425dd783cb14584a7395cb"}]},"branch":"refs/heads/master"},"013c9a4f3a44cb0b81fc7affe9b933e701cb5dba":{"kind":"REWORK","_number":6,"created":"2018-11-06 20:18:23.000000000","uploader":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"ref":"refs/changes/53/615353/6","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/53/615353/6","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/53/615353/6"}}},"commit":{"parents":[{"commit":"1894a3cb17ce561a2109ced7e6969a49cf3a0064","subject":"Merge \"Add --key-name and --key-unset option for server rebuild API.\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/1894a3cb17ce561a2109ced7e6969a49cf3a0064"}]}],"author":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2018-11-02 22:27:55.000000000","tz":0},"committer":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2018-11-06 20:18:13.000000000","tz":0},"subject":"Handle multiple ports in AddFloatingIP","message":"Handle multiple ports in AddFloatingIP\n\nAddFloatingIP refers to an old nova proxy API to neutron that was\ndeprecated in nova. The neutron API for floating IP associate requires\na port to be specified. Currently, the code is selecting the first port\nif the server has multiple ports. But, an attempt to associate the\nfirst port with a floating IP can fail if the first port is not on a\nnetwork that is attached to an external gateway.\n\nIn order to make the command work better for users who have a server\nwith multiple ports, we can:\n\n  1. Select the port corresponding to the fixed_ip_address, if one was\n     specified\n\n  2. Try to associate the floating IP with each port until one of the\n     attempts succeeds, else re-raise the last exception.\n     (404 ExternalGatewayForFloatingIPNotFound from neutron)\n\nThis also fixes incorrect FakeFloatingIP attributes that were being set\nin the TestServerAddFloatingIPNetwork unit tests, which were causing\nthe tests to use None as parsed args for ip-address and\n--fixed-ip-address and thus bypassing code in the\n\u0027if parsed_args.fixed_ip_address:\u0027 block.\n\nTask: 27800\nStory: 2004263\n\nChange-Id: I11fbcebf6b00f12a030b000c84dcf1d6b5e86250\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/013c9a4f3a44cb0b81fc7affe9b933e701cb5dba"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/013c9a4f3a44cb0b81fc7affe9b933e701cb5dba"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
