)]}'
{"library/keystone":[{"author":{"_account_id":7307,"name":"Matt Thompson","email":"mattt@defunct.ca","username":"mattt416"},"change_message_id":"863c3aa6ef2a900bacb182e54994b8e57d5f57b0","unresolved":false,"context_lines":[{"line_number":1118,"context_line":"                    )"},{"line_number":1119,"context_line":"                elif similar_endpoint.url !\u003d url:"},{"line_number":1120,"context_line":"                    self.state_change \u003d True"},{"line_number":1121,"context_line":"                    endpoint \u003d self.keystone.endpoints.update("},{"line_number":1122,"context_line":"                        endpoint\u003dsimilar_endpoint,"},{"line_number":1123,"context_line":"                        url\u003durl"},{"line_number":1124,"context_line":"                    )"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"1a122d0e_7b328511","line":1121,"updated":"2016-04-26 15:36:53.000000000","message":"How do I know if the update fails?  For ``absent`` you check status_code, do we need to do something similar for all actions?","commit_id":"40b8fba4ffd76ff57d8764ee6e9eac7e0ef0096a"},{"author":{"_account_id":17068,"name":"Jean-Philippe Evrard","email":"openstack@a.spamming.party","username":"evrardjp"},"change_message_id":"bee36f165dd04d5c9ea981da56e2b70e482c28c2","unresolved":false,"context_lines":[{"line_number":1118,"context_line":"                    )"},{"line_number":1119,"context_line":"                elif similar_endpoint.url !\u003d url:"},{"line_number":1120,"context_line":"                    self.state_change \u003d True"},{"line_number":1121,"context_line":"                    endpoint \u003d self.keystone.endpoints.update("},{"line_number":1122,"context_line":"                        endpoint\u003dsimilar_endpoint,"},{"line_number":1123,"context_line":"                        url\u003durl"},{"line_number":1124,"context_line":"                    )"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"1a122d0e_497a6389","line":1121,"in_reply_to":"1a122d0e_7b328511","updated":"2016-04-26 16:20:19.000000000","message":"endpoint is the return, and is used afterwards. A failure here will fail for the facts, and we\u0027ll see that.\n\nHowever, a better rewrite could be done to generally improve the module\u0027s error handling.","commit_id":"40b8fba4ffd76ff57d8764ee6e9eac7e0ef0096a"},{"author":{"_account_id":7307,"name":"Matt Thompson","email":"mattt@defunct.ca","username":"mattt416"},"change_message_id":"863c3aa6ef2a900bacb182e54994b8e57d5f57b0","unresolved":false,"context_lines":[{"line_number":1129,"context_line":"                    if result[0].status_code !\u003d 204:"},{"line_number":1130,"context_line":"                         module.fail()"},{"line_number":1131,"context_line":""},{"line_number":1132,"context_line":"            endpoints[interface] \u003d endpoint"},{"line_number":1133,"context_line":""},{"line_number":1134,"context_line":"        if state !\u003d \u0027absent\u0027:"},{"line_number":1135,"context_line":"            facts\u003d{\u0027%sid\u0027 % interface: endpoint.id"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"1a122d0e_9eb2efe3","line":1132,"updated":"2016-04-26 15:36:53.000000000","message":"Could you only append this if state !\u003d \u0027absent\u0027, and then just return facts as it was done before?","commit_id":"40b8fba4ffd76ff57d8764ee6e9eac7e0ef0096a"},{"author":{"_account_id":17068,"name":"Jean-Philippe Evrard","email":"openstack@a.spamming.party","username":"evrardjp"},"change_message_id":"bee36f165dd04d5c9ea981da56e2b70e482c28c2","unresolved":false,"context_lines":[{"line_number":1129,"context_line":"                    if result[0].status_code !\u003d 204:"},{"line_number":1130,"context_line":"                         module.fail()"},{"line_number":1131,"context_line":""},{"line_number":1132,"context_line":"            endpoints[interface] \u003d endpoint"},{"line_number":1133,"context_line":""},{"line_number":1134,"context_line":"        if state !\u003d \u0027absent\u0027:"},{"line_number":1135,"context_line":"            facts\u003d{\u0027%sid\u0027 % interface: endpoint.id"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"1a122d0e_c96673ec","line":1132,"in_reply_to":"1a122d0e_9eb2efe3","updated":"2016-04-26 16:20:19.000000000","message":"Doable.","commit_id":"40b8fba4ffd76ff57d8764ee6e9eac7e0ef0096a"},{"author":{"_account_id":7307,"name":"Matt Thompson","email":"mattt@defunct.ca","username":"mattt416"},"change_message_id":"863c3aa6ef2a900bacb182e54994b8e57d5f57b0","unresolved":false,"context_lines":[{"line_number":1361,"context_line":"            state\u003ddict("},{"line_number":1362,"context_line":"                type\u003d\u0027str\u0027,"},{"line_number":1363,"context_line":"                required\u003dFalse,"},{"line_number":1364,"context_line":"                default\u003d\u0027present\u0027"},{"line_number":1365,"context_line":"            )"},{"line_number":1366,"context_line":"        ),"},{"line_number":1367,"context_line":"        supports_check_mode\u003dFalse,"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"1a122d0e_1b4431b5","line":1364,"updated":"2016-04-26 15:36:53.000000000","message":"Should ``choices`` be used here to prevent you from using an undefined state?","commit_id":"40b8fba4ffd76ff57d8764ee6e9eac7e0ef0096a"},{"author":{"_account_id":17068,"name":"Jean-Philippe Evrard","email":"openstack@a.spamming.party","username":"evrardjp"},"change_message_id":"bee36f165dd04d5c9ea981da56e2b70e482c28c2","unresolved":false,"context_lines":[{"line_number":1361,"context_line":"            state\u003ddict("},{"line_number":1362,"context_line":"                type\u003d\u0027str\u0027,"},{"line_number":1363,"context_line":"                required\u003dFalse,"},{"line_number":1364,"context_line":"                default\u003d\u0027present\u0027"},{"line_number":1365,"context_line":"            )"},{"line_number":1366,"context_line":"        ),"},{"line_number":1367,"context_line":"        supports_check_mode\u003dFalse,"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"1a122d0e_496423b8","line":1364,"in_reply_to":"1a122d0e_1b4431b5","updated":"2016-04-26 16:20:19.000000000","message":"Doable","commit_id":"40b8fba4ffd76ff57d8764ee6e9eac7e0ef0096a"},{"author":{"_account_id":14805,"name":"Jimmy McCrory","email":"jimmy.mccrory@gmail.com","username":"jimmy-mccrory"},"change_message_id":"c9ce589f0de17e78f714baa25117af6d6f13fa21","unresolved":false,"context_lines":[{"line_number":1087,"context_line":"                interface\u003dinterface"},{"line_number":1088,"context_line":"            )"},{"line_number":1089,"context_line":"            if state \u003d\u003d \u0027present\u0027:"},{"line_number":1090,"context_line":"                \u0027\u0027\u0027 Ensuring an endpoint for this url is present"},{"line_number":1091,"context_line":"                    whatever what was its previous state"},{"line_number":1092,"context_line":"                \u0027\u0027\u0027"},{"line_number":1093,"context_line":"                if endpoint is None:"},{"line_number":1094,"context_line":"                    self.state_change \u003d True"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"dab17558_b4cd6ab9","line":1091,"range":{"start_line":1090,"start_character":20,"end_line":1091,"end_character":56},"updated":"2016-05-13 20:11:12.000000000","message":"Creating an endpoint for this url if it does not exist","commit_id":"84eb827820e29c66fd24d7af013c823d7ba49bae"},{"author":{"_account_id":7217,"name":"Hugh Saunders","email":"hugh@wherenow.org","username":"hughsaunders"},"change_message_id":"a10c76657dfd8938ebbc1d58e7057cc1561d85d0","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#!/usr/bin/python"},{"line_number":2,"context_line":"# -*- coding: utf-8 -*-"},{"line_number":3,"context_line":"# (c) 2014, Kevin Carter \u003ckevin.carter@rackspace.com\u003e"},{"line_number":4,"context_line":"#"},{"line_number":5,"context_line":"# Copyright 2014, Rackspace US, Inc."}],"source_content_type":"application/octet-stream","patch_set":5,"id":"dab17558_64cf5029","line":2,"range":{"start_line":2,"start_character":1,"end_line":2,"end_character":23},"updated":"2016-05-18 07:36:08.000000000","message":"I don\u0027t think this is necessary","commit_id":"1e777cedc6782054adb8b551387870aeabecb62f"},{"author":{"_account_id":7217,"name":"Hugh Saunders","email":"hugh@wherenow.org","username":"hughsaunders"},"change_message_id":"a10c76657dfd8938ebbc1d58e7057cc1561d85d0","unresolved":false,"context_lines":[{"line_number":1005,"context_line":""},{"line_number":1006,"context_line":"        return self._facts(facts\u003d{\u0027id\u0027: service.id})"},{"line_number":1007,"context_line":""},{"line_number":1008,"context_line":"    def _get_endpoint_by_details(self, region, service_id, interface):"},{"line_number":1009,"context_line":"        \"\"\" Getting endpoints per complete definition"},{"line_number":1010,"context_line":""},{"line_number":1011,"context_line":"        Returns the endpoint details for an endpoint matching"}],"source_content_type":"application/octet-stream","patch_set":5,"id":"bab6814e_3a37fee4","line":1008,"updated":"2016-05-18 07:36:08.000000000","message":"_get_endpoint_by_service_id? region and interface are also required by _get_endpoint. So this isn\u0027t really any more complete. _get_endpoint could be renamed _get_endpoint_by_url.","commit_id":"1e777cedc6782054adb8b551387870aeabecb62f"},{"author":{"_account_id":7217,"name":"Hugh Saunders","email":"hugh@wherenow.org","username":"hughsaunders"},"change_message_id":"a10c76657dfd8938ebbc1d58e7057cc1561d85d0","unresolved":false,"context_lines":[{"line_number":1129,"context_line":"                    if result[0].status_code !\u003d 204:"},{"line_number":1130,"context_line":"                        module.fail()"},{"line_number":1131,"context_line":""},{"line_number":1132,"context_line":"        if state !\u003d \u0027absent\u0027:"},{"line_number":1133,"context_line":"            endpoints[interface] \u003d endpoint"},{"line_number":1134,"context_line":"            return self._facts({\u0027%sid\u0027 % interface: endpoint.id"},{"line_number":1135,"context_line":"                                for interface, endpoint in endpoints.items()})"}],"source_content_type":"application/octet-stream","patch_set":5,"id":"bab6814e_9ab9ca31","line":1132,"updated":"2016-05-18 07:36:08.000000000","message":"Facts could still be useful when removing an endpoint?","commit_id":"1e777cedc6782054adb8b551387870aeabecb62f"}]}
