)]}'
{"doc/source/dev/plugin/cdmc-plugin.rst":[{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"f947de90d4f9ba0e3be6637c1564b04ad47e7ccd","unresolved":false,"context_lines":[{"line_number":22,"context_line":"Creating a new plugin"},{"line_number":23,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"In order to create a new goal, you have to:"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"- Extend the :py:class:`~.base.BaseClusterDataModelCollector` class."},{"line_number":28,"context_line":"- Implement its :py:meth:`~.BaseClusterDataModelCollector.execute` abstract"}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_7553f939","line":25,"range":{"start_line":25,"start_character":25,"end_line":25,"end_character":29},"updated":"2016-08-25 15:37:16.000000000","message":"s/goal/model","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"a65592b48868499f5415924db2042bffe1f53e99","unresolved":false,"context_lines":[{"line_number":22,"context_line":"Creating a new plugin"},{"line_number":23,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"In order to create a new goal, you have to:"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"- Extend the :py:class:`~.base.BaseClusterDataModelCollector` class."},{"line_number":28,"context_line":"- Implement its :py:meth:`~.BaseClusterDataModelCollector.execute` abstract"}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_c3479275","line":25,"range":{"start_line":25,"start_character":25,"end_line":25,"end_character":29},"in_reply_to":"1ac06dbe_7553f939","updated":"2016-08-25 16:19:15.000000000","message":"Done","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"f947de90d4f9ba0e3be6637c1564b04ad47e7ccd","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":"- Extend the :py:class:`~.base.BaseClusterDataModelCollector` class."},{"line_number":28,"context_line":"- Implement its :py:meth:`~.BaseClusterDataModelCollector.execute` abstract"},{"line_number":29,"context_line":"  method to return an entire cluster data model that this method should build."},{"line_number":30,"context_line":"- Implement its :py:meth:`~.Goal.notification_endpoints` abstract property to"},{"line_number":31,"context_line":"  return the list of all the :py:class:`~.base.NotificationEndpoint` instances"},{"line_number":32,"context_line":"  that will be responsible for handling incoming notifications in order to"}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_f059b736","line":29,"range":{"start_line":29,"start_character":19,"end_line":29,"end_character":21},"updated":"2016-08-25 15:37:16.000000000","message":"s/an/your","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"a65592b48868499f5415924db2042bffe1f53e99","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":"- Extend the :py:class:`~.base.BaseClusterDataModelCollector` class."},{"line_number":28,"context_line":"- Implement its :py:meth:`~.BaseClusterDataModelCollector.execute` abstract"},{"line_number":29,"context_line":"  method to return an entire cluster data model that this method should build."},{"line_number":30,"context_line":"- Implement its :py:meth:`~.Goal.notification_endpoints` abstract property to"},{"line_number":31,"context_line":"  return the list of all the :py:class:`~.base.NotificationEndpoint` instances"},{"line_number":32,"context_line":"  that will be responsible for handling incoming notifications in order to"}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_235f8642","line":29,"range":{"start_line":29,"start_character":19,"end_line":29,"end_character":21},"in_reply_to":"1ac06dbe_f059b736","updated":"2016-08-25 16:19:15.000000000","message":"Done","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"f947de90d4f9ba0e3be6637c1564b04ad47e7ccd","unresolved":false,"context_lines":[{"line_number":30,"context_line":"- Implement its :py:meth:`~.Goal.notification_endpoints` abstract property to"},{"line_number":31,"context_line":"  return the list of all the :py:class:`~.base.NotificationEndpoint` instances"},{"line_number":32,"context_line":"  that will be responsible for handling incoming notifications in order to"},{"line_number":33,"context_line":"  incrementally update their related cluster data model."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"First of all, you have to extend the :class:`~.BaseClusterDataModelCollector`"},{"line_number":36,"context_line":"base class which defines the :py:meth:`~.BaseClusterDataModelCollector.execute`"}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_50afebe2","line":33,"range":{"start_line":33,"start_character":23,"end_line":33,"end_character":36},"updated":"2016-08-25 15:37:16.000000000","message":"s/their related/your","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"a65592b48868499f5415924db2042bffe1f53e99","unresolved":false,"context_lines":[{"line_number":30,"context_line":"- Implement its :py:meth:`~.Goal.notification_endpoints` abstract property to"},{"line_number":31,"context_line":"  return the list of all the :py:class:`~.base.NotificationEndpoint` instances"},{"line_number":32,"context_line":"  that will be responsible for handling incoming notifications in order to"},{"line_number":33,"context_line":"  incrementally update their related cluster data model."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"First of all, you have to extend the :class:`~.BaseClusterDataModelCollector`"},{"line_number":36,"context_line":"base class which defines the :py:meth:`~.BaseClusterDataModelCollector.execute`"}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_83347afb","line":33,"range":{"start_line":33,"start_character":23,"end_line":33,"end_character":36},"in_reply_to":"1ac06dbe_50afebe2","updated":"2016-08-25 16:19:15.000000000","message":"Done","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"f947de90d4f9ba0e3be6637c1564b04ad47e7ccd","unresolved":false,"context_lines":[{"line_number":64,"context_line":"understanding on how to implement a more advanced cluster data model collector,"},{"line_number":65,"context_line":"have a look at the :py:class:`~.NovaClusterDataModelCollector` class."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Define configuration parameters"},{"line_number":68,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"At this point, you have a fully functional cluster data model collector."}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_2f2bed95","line":67,"range":{"start_line":67,"start_character":0,"end_line":67,"end_character":31},"updated":"2016-08-25 15:37:16.000000000","message":"after discussion, could you mode this section below \u0027Abstract Plugin Class\u0027 one ?","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"a65592b48868499f5415924db2042bffe1f53e99","unresolved":false,"context_lines":[{"line_number":64,"context_line":"understanding on how to implement a more advanced cluster data model collector,"},{"line_number":65,"context_line":"have a look at the :py:class:`~.NovaClusterDataModelCollector` class."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Define configuration parameters"},{"line_number":68,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"At this point, you have a fully functional cluster data model collector."}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_3e683987","line":67,"range":{"start_line":67,"start_character":0,"end_line":67,"end_character":31},"in_reply_to":"1ac06dbe_2f2bed95","updated":"2016-08-25 16:19:15.000000000","message":"Done, but that was for the \"Add new notification endpoints\" section","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"f947de90d4f9ba0e3be6637c1564b04ad47e7ccd","unresolved":false,"context_lines":[{"line_number":68,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"At this point, you have a fully functional cluster data model collector."},{"line_number":71,"context_line":"By default, cluster data model collectors define an ``period`` option (see"},{"line_number":72,"context_line":":py:meth:`~.BaseClusterDataModelCollector.get_config_opts`) that corresponds"},{"line_number":73,"context_line":"to the interval of time between each synchronization of the in-memory model."},{"line_number":74,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_b0d57f1c","line":71,"range":{"start_line":71,"start_character":49,"end_line":71,"end_character":52},"updated":"2016-08-25 15:37:16.000000000","message":"s/an/a","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"a65592b48868499f5415924db2042bffe1f53e99","unresolved":false,"context_lines":[{"line_number":68,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"At this point, you have a fully functional cluster data model collector."},{"line_number":71,"context_line":"By default, cluster data model collectors define an ``period`` option (see"},{"line_number":72,"context_line":":py:meth:`~.BaseClusterDataModelCollector.get_config_opts`) that corresponds"},{"line_number":73,"context_line":"to the interval of time between each synchronization of the in-memory model."},{"line_number":74,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_1efa9dbd","line":71,"range":{"start_line":71,"start_character":49,"end_line":71,"end_character":52},"in_reply_to":"1ac06dbe_b0d57f1c","updated":"2016-08-25 16:19:15.000000000","message":"Done","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"f947de90d4f9ba0e3be6637c1564b04ad47e7ccd","unresolved":false,"context_lines":[{"line_number":73,"context_line":"to the interval of time between each synchronization of the in-memory model."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"However, in more complex implementation, you may want to define some"},{"line_number":76,"context_line":"configuration options so one can tune the cluster data model collector to its"},{"line_number":77,"context_line":"needs. To do so, you can implement the :py:meth:`~.Loadable.get_config_opts`"},{"line_number":78,"context_line":"class method as followed:"},{"line_number":79,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_30ccef60","line":76,"range":{"start_line":76,"start_character":74,"end_line":76,"end_character":77},"updated":"2016-08-25 15:37:16.000000000","message":"s/its/your","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"a65592b48868499f5415924db2042bffe1f53e99","unresolved":false,"context_lines":[{"line_number":73,"context_line":"to the interval of time between each synchronization of the in-memory model."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"However, in more complex implementation, you may want to define some"},{"line_number":76,"context_line":"configuration options so one can tune the cluster data model collector to its"},{"line_number":77,"context_line":"needs. To do so, you can implement the :py:meth:`~.Loadable.get_config_opts`"},{"line_number":78,"context_line":"class method as followed:"},{"line_number":79,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_7e2f513e","line":76,"range":{"start_line":76,"start_character":74,"end_line":76,"end_character":77},"in_reply_to":"1ac06dbe_30ccef60","updated":"2016-08-25 16:19:15.000000000","message":"Done","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"f947de90d4f9ba0e3be6637c1564b04ad47e7ccd","unresolved":false,"context_lines":[{"line_number":105,"context_line":""},{"line_number":106,"context_line":"The configuration options defined within this class method will be included"},{"line_number":107,"context_line":"within the global ``watcher.conf`` configuration file under a section named by"},{"line_number":108,"context_line":"convention: ``{namespace}.{plugin_name}``. In our case, the ``watcher.conf``"},{"line_number":109,"context_line":"configuration would have to be modified as followed:"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":".. code-block:: ini"}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_12e8d6e1","line":108,"range":{"start_line":108,"start_character":26,"end_line":108,"end_character":39},"updated":"2016-08-25 15:37:16.000000000","message":"add that plugin_name is the name of your entry point defined in the  section :ref:`Register a new entry point \u003cregiter_new_entry_point\u003e`.","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"f947de90d4f9ba0e3be6637c1564b04ad47e7ccd","unresolved":false,"context_lines":[{"line_number":105,"context_line":""},{"line_number":106,"context_line":"The configuration options defined within this class method will be included"},{"line_number":107,"context_line":"within the global ``watcher.conf`` configuration file under a section named by"},{"line_number":108,"context_line":"convention: ``{namespace}.{plugin_name}``. In our case, the ``watcher.conf``"},{"line_number":109,"context_line":"configuration would have to be modified as followed:"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":".. code-block:: ini"}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_90584358","line":108,"range":{"start_line":108,"start_character":43,"end_line":108,"end_character":45},"updated":"2016-08-25 15:37:16.000000000","message":"maybe add:\n\nNamespace for the a cluster data is model is ``watcher_cluster_data_model_collectors``, so, in","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"a65592b48868499f5415924db2042bffe1f53e99","unresolved":false,"context_lines":[{"line_number":105,"context_line":""},{"line_number":106,"context_line":"The configuration options defined within this class method will be included"},{"line_number":107,"context_line":"within the global ``watcher.conf`` configuration file under a section named by"},{"line_number":108,"context_line":"convention: ``{namespace}.{plugin_name}``. In our case, the ``watcher.conf``"},{"line_number":109,"context_line":"configuration would have to be modified as followed:"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":".. code-block:: ini"}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_5ebff5fa","line":108,"range":{"start_line":108,"start_character":26,"end_line":108,"end_character":39},"in_reply_to":"1ac06dbe_12e8d6e1","updated":"2016-08-25 16:19:15.000000000","message":"Done","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"a65592b48868499f5415924db2042bffe1f53e99","unresolved":false,"context_lines":[{"line_number":105,"context_line":""},{"line_number":106,"context_line":"The configuration options defined within this class method will be included"},{"line_number":107,"context_line":"within the global ``watcher.conf`` configuration file under a section named by"},{"line_number":108,"context_line":"convention: ``{namespace}.{plugin_name}``. In our case, the ``watcher.conf``"},{"line_number":109,"context_line":"configuration would have to be modified as followed:"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":".. code-block:: ini"}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_7ee0f1cc","line":108,"range":{"start_line":108,"start_character":43,"end_line":108,"end_character":45},"in_reply_to":"1ac06dbe_90584358","updated":"2016-08-25 16:19:15.000000000","message":"Done","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"f947de90d4f9ba0e3be6637c1564b04ad47e7ccd","unresolved":false,"context_lines":[{"line_number":182,"context_line":""},{"line_number":183,"context_line":"Register a new entry point"},{"line_number":184,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"In order for the Watcher Applier to load your new cluster data model collector,"},{"line_number":187,"context_line":"the cluster data model collector must be registered as a named entry point"},{"line_number":188,"context_line":"under the ``decision_engine.model.collector`` entry point of your ``setup.py``"}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_359b3c74","line":185,"updated":"2016-08-25 15:37:16.000000000","message":"add: \n\n.. _regiter_new_entry_point:","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"a65592b48868499f5415924db2042bffe1f53e99","unresolved":false,"context_lines":[{"line_number":182,"context_line":""},{"line_number":183,"context_line":"Register a new entry point"},{"line_number":184,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"In order for the Watcher Applier to load your new cluster data model collector,"},{"line_number":187,"context_line":"the cluster data model collector must be registered as a named entry point"},{"line_number":188,"context_line":"under the ``decision_engine.model.collector`` entry point of your ``setup.py``"}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_3ed799ee","line":185,"in_reply_to":"1ac06dbe_359b3c74","updated":"2016-08-25 16:19:15.000000000","message":"Done","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"f947de90d4f9ba0e3be6637c1564b04ad47e7ccd","unresolved":false,"context_lines":[{"line_number":183,"context_line":"Register a new entry point"},{"line_number":184,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"In order for the Watcher Applier to load your new cluster data model collector,"},{"line_number":187,"context_line":"the cluster data model collector must be registered as a named entry point"},{"line_number":188,"context_line":"under the ``decision_engine.model.collector`` entry point of your ``setup.py``"},{"line_number":189,"context_line":"file. If you are using pbr_, this entry point should be placed in your"}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_15f9e080","line":186,"range":{"start_line":186,"start_character":25,"end_line":186,"end_character":32},"updated":"2016-08-25 15:37:16.000000000","message":"s/Applier/Decision Engine","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"a65592b48868499f5415924db2042bffe1f53e99","unresolved":false,"context_lines":[{"line_number":183,"context_line":"Register a new entry point"},{"line_number":184,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"In order for the Watcher Applier to load your new cluster data model collector,"},{"line_number":187,"context_line":"the cluster data model collector must be registered as a named entry point"},{"line_number":188,"context_line":"under the ``decision_engine.model.collector`` entry point of your ``setup.py``"},{"line_number":189,"context_line":"file. If you are using pbr_, this entry point should be placed in your"}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_3e1cb9c0","line":186,"range":{"start_line":186,"start_character":25,"end_line":186,"end_character":32},"in_reply_to":"1ac06dbe_15f9e080","updated":"2016-08-25 16:19:15.000000000","message":"Done","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"f947de90d4f9ba0e3be6637c1564b04ad47e7ccd","unresolved":false,"context_lines":[{"line_number":184,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"In order for the Watcher Applier to load your new cluster data model collector,"},{"line_number":187,"context_line":"the cluster data model collector must be registered as a named entry point"},{"line_number":188,"context_line":"under the ``decision_engine.model.collector`` entry point of your ``setup.py``"},{"line_number":189,"context_line":"file. If you are using pbr_, this entry point should be placed in your"},{"line_number":190,"context_line":"``setup.cfg`` file."}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_9512f0b2","line":187,"range":{"start_line":187,"start_character":0,"end_line":187,"end_character":32},"updated":"2016-08-25 15:37:16.000000000","message":"this last","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"a65592b48868499f5415924db2042bffe1f53e99","unresolved":false,"context_lines":[{"line_number":184,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"In order for the Watcher Applier to load your new cluster data model collector,"},{"line_number":187,"context_line":"the cluster data model collector must be registered as a named entry point"},{"line_number":188,"context_line":"under the ``decision_engine.model.collector`` entry point of your ``setup.py``"},{"line_number":189,"context_line":"file. If you are using pbr_, this entry point should be placed in your"},{"line_number":190,"context_line":"``setup.cfg`` file."}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_7ecab11b","line":187,"range":{"start_line":187,"start_character":0,"end_line":187,"end_character":32},"in_reply_to":"1ac06dbe_9512f0b2","updated":"2016-08-25 16:19:15.000000000","message":"Done","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"f947de90d4f9ba0e3be6637c1564b04ad47e7ccd","unresolved":false,"context_lines":[{"line_number":185,"context_line":""},{"line_number":186,"context_line":"In order for the Watcher Applier to load your new cluster data model collector,"},{"line_number":187,"context_line":"the cluster data model collector must be registered as a named entry point"},{"line_number":188,"context_line":"under the ``decision_engine.model.collector`` entry point of your ``setup.py``"},{"line_number":189,"context_line":"file. If you are using pbr_, this entry point should be placed in your"},{"line_number":190,"context_line":"``setup.cfg`` file."},{"line_number":191,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_b8f601f7","line":188,"range":{"start_line":188,"start_character":46,"end_line":188,"end_character":57},"updated":"2016-08-25 15:37:16.000000000","message":"entry point list","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"a65592b48868499f5415924db2042bffe1f53e99","unresolved":false,"context_lines":[{"line_number":185,"context_line":""},{"line_number":186,"context_line":"In order for the Watcher Applier to load your new cluster data model collector,"},{"line_number":187,"context_line":"the cluster data model collector must be registered as a named entry point"},{"line_number":188,"context_line":"under the ``decision_engine.model.collector`` entry point of your ``setup.py``"},{"line_number":189,"context_line":"file. If you are using pbr_, this entry point should be placed in your"},{"line_number":190,"context_line":"``setup.cfg`` file."},{"line_number":191,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"1ac06dbe_feab411c","line":188,"range":{"start_line":188,"start_character":46,"end_line":188,"end_character":57},"in_reply_to":"1ac06dbe_b8f601f7","updated":"2016-08-25 16:19:15.000000000","message":"renamed as namespace to be even more consistent","commit_id":"1e27c3af63d87ca48dd1cb2031fcb725cb748c02"},{"author":{"_account_id":11750,"name":"Antoine Cabot","email":"antoine.cabot@b-com.com","username":"antoinecabot"},"change_message_id":"4f665b248f8c8fb0df101c74ef9e03491a075916","unresolved":false,"context_lines":[{"line_number":204,"context_line":""},{"line_number":205,"context_line":"Note that if the event you are trying to listen to is published by a new"},{"line_number":206,"context_line":"service, you may have to also add a new topic Watcher will have to subscribe to"},{"line_number":207,"context_line":"in the ``notification_topics`` option of the ``[watcher_decision_engine]``"},{"line_number":208,"context_line":"section."},{"line_number":209,"context_line":""},{"line_number":210,"context_line":""},{"line_number":211,"context_line":"Using cluster data model collector plugins"}],"source_content_type":"text/x-rst","patch_set":9,"id":"fa7ab95a_611437f5","line":208,"range":{"start_line":207,"start_character":45,"end_line":208,"end_character":8},"updated":"2016-08-26 09:29:43.000000000","message":"shouldn\u0027t we specify where is this section ?","commit_id":"6bcc84e60d85330e29e09355d457538d5821a847"}]}
