)]}'
{"id":"openstack%2Ftripleo-docs~274217","triplet_id":"openstack%2Ftripleo-docs~master~I26795e5a35f351ca95796c567526095671abc428","project":"openstack/tripleo-docs","branch":"master","topic":"predictable","hashtags":[],"change_id":"I26795e5a35f351ca95796c567526095671abc428","subject":"Document using node capabilities to control placement","status":"MERGED","created":"2016-01-29 20:05:59.000000000","updated":"2016-03-29 23:15:18.000000000","submitted":"2016-03-29 23:15:18.000000000","submitter":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"total_comment_count":13,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"e196acfe788e801bd7cdc20141a0f8d92c899016","_number":274217,"virtual_id_number":274217,"owner":{"_account_id":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"all":[{"value":0,"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},{"value":0,"_account_id":20991,"name":"Vinod Kumar Yadav","email":"vinod.kumar.v.yadav@ericsson.com","username":"vinodkyadav"},{"value":0,"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},{"value":0,"_account_id":7144,"name":"James Slagle","email":"jslagle@redhat.com","username":"slagle"},{"value":0,"_account_id":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},{"value":0,"_account_id":18265,"name":"Rony Haddad","email":"rony.haddad@ericsson.com","username":"RonyH"},{"value":0,"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},{"value":0,"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},{"value":0,"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},{"value":0,"_account_id":3153,"name":"Emilien Macchi","email":"emilien@redhat.com","username":"emilienm"},{"value":0,"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},{"value":2,"date":"2016-03-29 23:15:18.000000000","post_submit":true,"_account_id":3,"name":"Jenkins","username":"jenkins"}],"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":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},"recommended":{"_account_id":20991,"name":"Vinod Kumar Yadav","email":"vinod.kumar.v.yadav@ericsson.com","username":"vinodkyadav"},"all":[{"value":1,"date":"2016-03-17 22:27:18.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},{"value":1,"date":"2016-03-22 19:02:02.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":20991,"name":"Vinod Kumar Yadav","email":"vinod.kumar.v.yadav@ericsson.com","username":"vinodkyadav"},{"value":0,"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},{"value":0,"_account_id":7144,"name":"James Slagle","email":"jslagle@redhat.com","username":"slagle"},{"value":2,"date":"2016-03-24 16:07:26.000000000","_account_id":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},{"value":1,"date":"2016-03-22 19:15:00.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":18265,"name":"Rony Haddad","email":"rony.haddad@ericsson.com","username":"RonyH"},{"value":0,"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},{"value":0,"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},{"value":0,"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},{"value":2,"date":"2016-03-29 22:50:47.000000000","_account_id":3153,"name":"Emilien Macchi","email":"emilien@redhat.com","username":"emilienm"},{"value":0,"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"}],"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":"","value":1,"default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":3153,"name":"Emilien Macchi","email":"emilien@redhat.com","username":"emilienm"},"all":[{"value":0,"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},{"value":0,"_account_id":20991,"name":"Vinod Kumar Yadav","email":"vinod.kumar.v.yadav@ericsson.com","username":"vinodkyadav"},{"value":0,"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},{"value":0,"_account_id":7144,"name":"James Slagle","email":"jslagle@redhat.com","username":"slagle"},{"value":0,"_account_id":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},{"value":0,"_account_id":18265,"name":"Rony Haddad","email":"rony.haddad@ericsson.com","username":"RonyH"},{"value":0,"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},{"value":0,"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},{"value":0,"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},{"value":1,"date":"2016-03-29 22:50:47.000000000","_account_id":3153,"name":"Emilien Macchi","email":"emilien@redhat.com","username":"emilienm"},{"value":0,"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"_account_id":3153,"name":"Emilien Macchi","email":"emilien@redhat.com","username":"emilienm"},{"_account_id":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},{"_account_id":7144,"name":"James Slagle","email":"jslagle@redhat.com","username":"slagle"},{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},{"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},{"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},{"_account_id":18265,"name":"Rony Haddad","email":"rony.haddad@ericsson.com","username":"RonyH"},{"_account_id":20991,"name":"Vinod Kumar Yadav","email":"vinod.kumar.v.yadav@ericsson.com","username":"vinodkyadav"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2016-02-21 14:56:25.000000000","updated_by":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"reviewer":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"state":"REVIEWER"},{"updated":"2016-02-22 06:42:10.000000000","updated_by":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"reviewer":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"state":"REVIEWER"},{"updated":"2016-03-09 18:43:04.000000000","updated_by":{"_account_id":7144,"name":"James Slagle","email":"jslagle@redhat.com","username":"slagle"},"reviewer":{"_account_id":7144,"name":"James Slagle","email":"jslagle@redhat.com","username":"slagle"},"state":"REVIEWER"},{"updated":"2016-03-09 21:08:49.000000000","updated_by":{"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},"reviewer":{"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},"state":"REVIEWER"},{"updated":"2016-03-11 18:06:39.000000000","updated_by":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"reviewer":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"state":"REVIEWER"},{"updated":"2016-03-15 04:43:59.000000000","updated_by":{"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},"reviewer":{"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},"state":"REVIEWER"},{"updated":"2016-03-17 22:27:18.000000000","updated_by":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"reviewer":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"state":"REVIEWER"},{"updated":"2016-03-22 19:02:02.000000000","updated_by":{"_account_id":20991,"name":"Vinod Kumar Yadav","email":"vinod.kumar.v.yadav@ericsson.com","username":"vinodkyadav"},"reviewer":{"_account_id":20991,"name":"Vinod Kumar Yadav","email":"vinod.kumar.v.yadav@ericsson.com","username":"vinodkyadav"},"state":"REVIEWER"},{"updated":"2016-03-22 19:15:00.000000000","updated_by":{"_account_id":18265,"name":"Rony Haddad","email":"rony.haddad@ericsson.com","username":"RonyH"},"reviewer":{"_account_id":18265,"name":"Rony Haddad","email":"rony.haddad@ericsson.com","username":"RonyH"},"state":"REVIEWER"},{"updated":"2016-03-29 22:50:47.000000000","updated_by":{"_account_id":3153,"name":"Emilien Macchi","email":"emilien@redhat.com","username":"emilienm"},"reviewer":{"_account_id":3153,"name":"Emilien Macchi","email":"emilien@redhat.com","username":"emilienm"},"state":"REVIEWER"},{"updated":"2016-03-29 23:15:18.000000000","updated_by":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"reviewer":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"state":"REVIEWER"}],"messages":[{"id":"a4706469aab1574173e5d2d7ef39b25411092b6a","author":{"_account_id":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},"date":"2016-01-29 20:05:59.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"6ff41d6d89455af3cdffb04da07d1b80c30553f0","author":{"_account_id":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},"date":"2016-01-29 20:06:33.000000000","message":"Patch Set 1: Workflow-1\n\nMarking WIP because I think I may have a syntax issue with the hint as testing failed locally","accounts_in_message":[],"_revision_number":1},{"id":"548d7f49c7650fed5f08e37b1ad9295acd4adf2b","author":{"_account_id":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},"date":"2016-01-29 20:07:07.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"5e880486610a7f49df933ad4c644c1d22df63eb4","author":{"_account_id":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},"date":"2016-01-29 20:07:34.000000000","message":"Patch Set 2: Workflow-1","accounts_in_message":[],"_revision_number":2},{"id":"b50302fc17c6f19d0866b909b1d534f80108fc80","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-01-29 20:12:37.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-tripleo-docs-docs http://docs-draft.openstack.org/17/274217/2/check/gate-tripleo-docs-docs/5f160f2//doc/build/html/ : SUCCESS in 56s","accounts_in_message":[],"_revision_number":2},{"id":"3934559bf3274cbba0eb4d56cc36d18667bec9d6","author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"date":"2016-02-21 14:56:25.000000000","message":"Patch Set 2: Code-Review-1\n\n(2 comments)","accounts_in_message":[],"_revision_number":2},{"id":"8a0f4399b625f8617d6478a910bb3d9fdf862db3","author":{"_account_id":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},"date":"2016-03-01 17:33:41.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"cde3b8dafd938f4379f228ba7df399808c7b6eb0","author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"date":"2016-03-01 19:47:03.000000000","message":"Patch Set 2: Code-Review-1\n\nOkay, I\u0027ve tried this out, but the scheduler hints are not being respected by the Nova scheduler.  I think the reason is the ComputeCapabilitiesFilter that is responsible for scheduling based on capabilities.\n\nBasically the filter discards everything except the flavor details when it\u0027s checking a host: https://github.com/openstack/nova/blob/master/nova/scheduler/filters/compute_capabilities_filter.py#L97  spec_obj.scheduler_hints is where the hint setting ends up, so any capabilities set on that are not available to the filter.\n\nThere is a way to force an instance to a specific compute host, but I don\u0027t think it would play nicely with the Heat index method here.  I think you\u0027d have to provide a full map of instance name to host.\n\nWill keep investigating.","accounts_in_message":[],"_revision_number":2},{"id":"5070bac5a6a9fa9a65c7ee2084be002f5fdfbe0b","author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"date":"2016-03-01 22:19:23.000000000","message":"Patch Set 2:\n\nResults of my further investigation:\n\nI fear we may actually need a custom filter in the undercloud scheduler to make this happen.  Fortunately, it\u0027s a pretty trivial filter:\n\n    def host_passes(self, host_state, spec_obj):\n        host_node \u003d host_state.stats.get(\u0027node\u0027)\n        instance_node \u003d spec_obj.scheduler_hints.get(\u0027capabilities:node\u0027)\n        # The instance didn\u0027t request a specific node\n        if not instance_node:\n            return True\n        return host_node \u003d\u003d instance_node[0]\n\nWith that filter added to my undercloud Nova I get the correct placement when I follow these instructions.  Would there be any objection to adding this filter to tripleo-common and configuring the undercloud to use it?","accounts_in_message":[],"_revision_number":2},{"id":"912030e18de2cdee71e8423698254e7241daab91","author":{"_account_id":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},"date":"2016-03-02 10:44:54.000000000","message":"Patch Set 2:\n\n\u003e Would there be any objection to adding this filter to tripleo-common and configuring the undercloud to use it?\n\nSounds OK, but can you explain further why the capabilities filter won\u0027t work when we specify per-node capabilities?\n\nI was sure I had this working OK previously, then recent testing was inconsistent (e.g didn\u0027t work) - it seems like a superset of the existing profile matching which also relies on compute capabilities, so it\u0027d be good to understand why a custom filter may be needed in this case.","accounts_in_message":[],"_revision_number":2},{"id":"21713280f4c4bbe433df05136d78e653583ce56d","author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"date":"2016-03-02 10:48:15.000000000","message":"Patch Set 2:\n\nHmm, then we could move profile matching to this new filter as well, probably","accounts_in_message":[],"_revision_number":2},{"id":"9bc4651364cf1d3d3d19fa85b105ed0c9cc2d76f","author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"date":"2016-03-02 15:59:05.000000000","message":"Patch Set 2:\n\nProfile matching uses capabilities set on the flavor and the Ironic node, which the ComputeCapabilitiesFilter respects.  It does not respect capabilities requests passed as part of the instance boot.  See https://github.com/openstack/nova/blob/master/nova/scheduler/filters/compute_capabilities_filter.py#L97 which strips everything except the flavor details out of the request before it processes capabilities.\n\nFrom what I read though, it\u0027s possible this worked in older versions of Nova and was knowingly broken at some point because Nova considers it inappropriate for a user to be able to request things like this.  That definitely happened with the force_hosts scheduler hint (which I also looked into using).  Their solution is to request an AZ, which doesn\u0027t really help us unless we\u0027re going to put every node into its own AZ.","accounts_in_message":[],"_revision_number":2},{"id":"41c53d97465ecc9415312322f8b7b1683e14fe18","author":{"_account_id":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},"date":"2016-03-03 16:28:21.000000000","message":"Patch Set 2:\n\nBen: Thanks for the analysis, sounds like a tripleo-common filter is our best bet then - seems a shame that we can\u0027t just use the ComputeCapabilities filter directly, but as you say it\u0027s a pretty simple filter to maintain.","accounts_in_message":[],"_revision_number":2},{"id":"b57420c01c39afd77cd3c8f0e51d105489022dcd","author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"date":"2016-03-03 18:45:50.000000000","message":"Patch Set 2:\n\nOkay, I\u0027ll get it proposed to tripleo-common and figure out the right way to inject it into the Nova configuration (my tests so far have been hacking it directly into the Nova source tree :-).  Shouldn\u0027t be a problem though.","accounts_in_message":[],"_revision_number":2},{"id":"a64e0da2dd339090edf8c652b7936db6111f07f9","author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"date":"2016-03-04 00:24:31.000000000","message":"Patch Set 2:\n\nhttps://review.openstack.org/#/c/288188 and its dependency should make this work on a stock undercloud.","accounts_in_message":[],"_revision_number":2},{"id":"0d2e6d220dcb59ba6447db5e0346f75c2e70cb30","author":{"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},"date":"2016-03-07 15:20:25.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"d232f326abe333fbd8236b44b751576d7c76270b","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-03-07 15:45:58.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-tripleo-docs-docs http://docs-draft.openstack.org/17/274217/3/check/gate-tripleo-docs-docs/a421f1d//doc/build/html/ : SUCCESS in 1m 35s","accounts_in_message":[],"_revision_number":3},{"id":"4bd873af8cec311babbc62a13accbc92b653101a","author":{"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},"date":"2016-03-08 05:31:00.000000000","message":"Patch Set 3: Code-Review-1\n\n(1 comment)","accounts_in_message":[],"_revision_number":3},{"id":"57ce3f7e4121fd206b74474fecd9eb5e854ddb17","author":{"_account_id":7144,"name":"James Slagle","email":"jslagle@redhat.com","username":"slagle"},"date":"2016-03-09 18:43:01.000000000","message":"Patch Set 4: Published edit on patch set 3","accounts_in_message":[],"_revision_number":4},{"id":"3938cd0fc2a75cc183ec46c4d8d27e152655827e","author":{"_account_id":7144,"name":"James Slagle","email":"jslagle@redhat.com","username":"slagle"},"date":"2016-03-09 18:43:04.000000000","message":"Patch Set 4: Code-Review+2","accounts_in_message":[],"_revision_number":4},{"id":"dbdc4a3e5254d7604d7e5f00ce6dbc7ef0b08dc7","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-03-09 18:46:40.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-tripleo-docs-docs http://docs-draft.openstack.org/17/274217/4/check/gate-tripleo-docs-docs/e222db1//doc/build/html/ : SUCCESS in 2m 49s","accounts_in_message":[],"_revision_number":4},{"id":"60f0911a0f05c50228674eddb7ba2e0c12bdf181","author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"date":"2016-03-09 19:26:33.000000000","message":"Patch Set 4: Code-Review-1\n\n(1 comment)\n\nThe predictable IP section won\u0027t work as written.  Details inline.","accounts_in_message":[],"_revision_number":4},{"id":"58c8b5bc0aae8aff081286bbce62ab0a96364372","author":{"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},"date":"2016-03-09 21:08:49.000000000","message":"Patch Set 4:\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"8b5f3085c631c40546f9d0562ae132b255c376bc","author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"date":"2016-03-09 21:17:01.000000000","message":"Patch Set 4:\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"40a9d1871666d7adc9b645607f3cc613478fda09","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-03-10 10:33:36.000000000","message":"Patch Set 4: Verified-1\n\nMerge Failed.\n\nThis change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset.","accounts_in_message":[],"_revision_number":4},{"id":"794cb7b79d82bb2c5ee55e425fa748652f301ac4","author":{"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},"date":"2016-03-10 17:55:28.000000000","message":"Patch Set 4: Code-Review-1\n\nplease rebase. conflict in doc/source/advanced_deployment/advanced_deployment.rst","accounts_in_message":[],"_revision_number":4},{"id":"4642d38325dde4dfd1199e1efdeecb7b1cc3e7b1","author":{"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},"date":"2016-03-11 15:33:53.000000000","message":"Uploaded patch set 5.","accounts_in_message":[],"_revision_number":5},{"id":"666c05b3918ed161412ec7095d332a3e2092ced9","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-03-11 15:37:19.000000000","message":"Patch Set 5: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-tripleo-docs-docs http://docs-draft.openstack.org/17/274217/5/check/gate-tripleo-docs-docs/77fc47a//doc/build/html/ : SUCCESS in 3m 02s","accounts_in_message":[],"_revision_number":5},{"id":"a11463b42a82bb73ba79373cc28be6473cc9e7ce","author":{"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},"date":"2016-03-11 16:59:19.000000000","message":"Patch Set 5: Code-Review-1\n\n(1 comment)","accounts_in_message":[],"_revision_number":5},{"id":"1fa814edde169475dc13bfc9e7f554869aad1e12","author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"date":"2016-03-11 18:06:39.000000000","message":"Patch Set 5: Code-Review-1\n\n(2 comments)","accounts_in_message":[],"_revision_number":5},{"id":"c9b05dc4f97d09e73f0bf21f2c820ba34f041529","author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"date":"2016-03-11 18:52:16.000000000","message":"Patch Set 5:\n\n(1 comment)","accounts_in_message":[],"_revision_number":5},{"id":"f93465375048c826f1cc29aa08804233d3758978","author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"date":"2016-03-14 21:51:00.000000000","message":"Uploaded patch set 6.","accounts_in_message":[],"_revision_number":6},{"id":"5926e256780127aff3a18e45e1dff90d7ece82c9","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-03-14 21:55:52.000000000","message":"Patch Set 6: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-tripleo-docs-docs http://docs-draft.openstack.org/17/274217/6/check/gate-tripleo-docs-docs/bf68d16//doc/build/html/ : SUCCESS in 1m 36s","accounts_in_message":[],"_revision_number":6},{"id":"4a7472c855c3617fe3795f5e81de4a285eb733ec","author":{"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},"date":"2016-03-15 04:43:59.000000000","message":"Patch Set 6: Code-Review+1","accounts_in_message":[],"_revision_number":6},{"id":"f43cf93cf77cf9688fd4036c0a0d5fb83920c064","author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"date":"2016-03-17 19:32:30.000000000","message":"Uploaded patch set 7.","accounts_in_message":[],"_revision_number":7},{"id":"003e5f0cd97e5ae3351c009ce0734ae7ff780abd","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-03-17 19:38:35.000000000","message":"Patch Set 7: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-tripleo-docs-docs http://docs-draft.openstack.org/17/274217/7/check/gate-tripleo-docs-docs/b2360b5//doc/build/html/ : SUCCESS in 1m 59s","accounts_in_message":[],"_revision_number":7},{"id":"e71e9dca64c8778cdc8352047ef7532d2a17bd4e","author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"date":"2016-03-17 22:27:18.000000000","message":"Patch Set 7: Code-Review+1\n\n(2 comments)\n\nthanks for wrapping this up, nice to see all the things joined together for the final goal :)","accounts_in_message":[],"_revision_number":7},{"id":"3dc5ee94003ce72da9b095484c75e4a6127692c6","author":{"_account_id":20991,"name":"Vinod Kumar Yadav","email":"vinod.kumar.v.yadav@ericsson.com","username":"vinodkyadav"},"date":"2016-03-22 19:02:02.000000000","message":"Patch Set 7: Code-Review+1","accounts_in_message":[],"_revision_number":7},{"id":"14962254b9be4a84f429b3d4fe8bf0529a15a1f5","author":{"_account_id":18265,"name":"Rony Haddad","email":"rony.haddad@ericsson.com","username":"RonyH"},"date":"2016-03-22 19:15:00.000000000","message":"Patch Set 7: Code-Review+1","accounts_in_message":[],"_revision_number":7},{"id":"f9abfad1430ea6d263fa7e4a700d8dc626aa4ed3","author":{"_account_id":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},"date":"2016-03-24 16:07:26.000000000","message":"Patch Set 7: Code-Review+2\n\nLooks good, thanks all for your help finishing this off :)","accounts_in_message":[],"_revision_number":7},{"id":"eb99d49a21bcd696fb24988eba9a828214aaa478","author":{"_account_id":3153,"name":"Emilien Macchi","email":"emilien@redhat.com","username":"emilienm"},"date":"2016-03-29 22:50:47.000000000","message":"Patch Set 7: Workflow+1 Code-Review+2","accounts_in_message":[],"_revision_number":7},{"id":"863a373251b22c009fca825373dae2561d7c1b2a","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-03-29 22:52:25.000000000","message":"Patch Set 7: -Verified\n\nStarting gate jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":7},{"id":"49b8c4a2ef50bb7ad44758aa80dbf65cbfaed1c5","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-03-29 23:04:49.000000000","message":"Patch Set 7:\n\nStarting gate jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":7},{"id":"3332933f600805d63c4cf4135230b8afaf963933","date":"2016-03-29 23:15:18.000000000","message":"Change has been successfully merged into the git repository by Jenkins","accounts_in_message":[],"_revision_number":7},{"id":"98b867847d8042c6adcaaed18b93bce419c25083","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-03-29 23:15:18.000000000","message":"Patch Set 7: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- gate-tripleo-docs-docs http://docs-draft.openstack.org/17/274217/7/gate/gate-tripleo-docs-docs/88ece7a//doc/build/html/ : SUCCESS in 3m 13s","accounts_in_message":[],"_revision_number":7}],"current_revision_number":7,"current_revision":"7983c3caa29d142cf48fcfdf52de090f39f0f9bd","revisions":{"0ca56656f4344b2a6b90ecad57114d80e88742e6":{"kind":"REWORK","_number":1,"created":"2016-01-29 20:05:59.000000000","uploader":{"_account_id":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},"ref":"refs/changes/17/274217/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/tripleo-docs","ref":"refs/changes/17/274217/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/1"}}},"commit":{"parents":[{"commit":"d5b8afe5cbae60a6b6f918f9c881332bb9847f90","subject":"Merge \"Replace doc for overcloud validate with manually running Tempest\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/d5b8afe5cbae60a6b6f918f9c881332bb9847f90"}]}],"author":{"name":"Steven Hardy","email":"shardy@redhat.com","date":"2016-01-29 18:03:36.000000000","tz":0},"committer":{"name":"Steven Hardy","email":"shardy@redhat.com","date":"2016-01-29 20:05:39.000000000","tz":0},"subject":"Document using node capabilities to control placement","message":"Document using node capabilities to control placement\n\nIn addition to the per-role profile matching and manual tagging,\nsome operators wish to enforce placement to specific nodes, known\nprior to deployment.  This is now possible via the *SchedulerHints\nparameters, so document how in more detail than the t-h-t commit\nmessage.\n\nChange-Id: I26795e5a35f351ca95796c567526095671abc428\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/0ca56656f4344b2a6b90ecad57114d80e88742e6"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/0ca56656f4344b2a6b90ecad57114d80e88742e6"}]},"branch":"refs/heads/master"},"91c401e0bd2b3335c080ed3419e163ad1a20351e":{"kind":"REWORK","_number":2,"created":"2016-01-29 20:07:07.000000000","uploader":{"_account_id":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},"ref":"refs/changes/17/274217/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/tripleo-docs","ref":"refs/changes/17/274217/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/2"}}},"commit":{"parents":[{"commit":"d5b8afe5cbae60a6b6f918f9c881332bb9847f90","subject":"Merge \"Replace doc for overcloud validate with manually running Tempest\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/d5b8afe5cbae60a6b6f918f9c881332bb9847f90"}]}],"author":{"name":"Steven Hardy","email":"shardy@redhat.com","date":"2016-01-29 18:03:36.000000000","tz":0},"committer":{"name":"Steven Hardy","email":"shardy@redhat.com","date":"2016-01-29 20:07:00.000000000","tz":0},"subject":"Document using node capabilities to control placement","message":"Document using node capabilities to control placement\n\nIn addition to the per-role profile matching and manual tagging,\nsome operators wish to enforce placement to specific nodes, known\nprior to deployment.  This is now possible via the *SchedulerHints\nparameters, so document how in more detail than the t-h-t commit\nmessage.\n\nChange-Id: I26795e5a35f351ca95796c567526095671abc428\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/91c401e0bd2b3335c080ed3419e163ad1a20351e"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/91c401e0bd2b3335c080ed3419e163ad1a20351e"}]},"branch":"refs/heads/master"},"66229cd1f26951d9a06a2878609b73f8f7f8c643":{"kind":"REWORK","_number":3,"created":"2016-03-07 15:20:25.000000000","uploader":{"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},"ref":"refs/changes/17/274217/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/tripleo-docs","ref":"refs/changes/17/274217/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/3"}}},"commit":{"parents":[{"commit":"1214dcbe82446001f707689fa68e56596302b23b","subject":"Merge \"Recommend using root device hints even in the basic deployment\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/1214dcbe82446001f707689fa68e56596302b23b"}]}],"author":{"name":"Steven Hardy","email":"shardy@redhat.com","date":"2016-01-29 18:03:36.000000000","tz":0},"committer":{"name":"Ryan Hallisey","email":"rhallise@redhat.com","date":"2016-03-07 15:19:59.000000000","tz":-300},"subject":"Document using node capabilities to control placement","message":"Document using node capabilities to control placement\n\nIn addition to the per-role profile matching and manual tagging,\nsome operators wish to enforce placement to specific nodes, known\nprior to deployment.  This is now possible via the *SchedulerHints\nparameters, so document how in more detail than the t-h-t commit\nmessage.\n\nCo-authored-by Ryan Hallisey \u003crhallise@redhat.com\u003e\nChange-Id: I26795e5a35f351ca95796c567526095671abc428\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/66229cd1f26951d9a06a2878609b73f8f7f8c643"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/66229cd1f26951d9a06a2878609b73f8f7f8c643"}]},"branch":"refs/heads/master"},"88c6ca8283ca132c5926672e2024de1578ff87d3":{"kind":"REWORK","_number":4,"created":"2016-03-09 18:43:01.000000000","uploader":{"_account_id":7144,"name":"James Slagle","email":"jslagle@redhat.com","username":"slagle"},"ref":"refs/changes/17/274217/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/tripleo-docs","ref":"refs/changes/17/274217/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/4"}}},"commit":{"parents":[{"commit":"1214dcbe82446001f707689fa68e56596302b23b","subject":"Merge \"Recommend using root device hints even in the basic deployment\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/1214dcbe82446001f707689fa68e56596302b23b"}]}],"author":{"name":"Steven Hardy","email":"shardy@redhat.com","date":"2016-01-29 18:03:36.000000000","tz":0},"committer":{"name":"James Slagle","email":"jslagle@redhat.com","date":"2016-03-09 18:42:57.000000000","tz":0},"subject":"Document using node capabilities to control placement","message":"Document using node capabilities to control placement\n\nIn addition to the per-role profile matching and manual tagging,\nsome operators wish to enforce placement to specific nodes, known\nprior to deployment.  This is now possible via the *SchedulerHints\nparameters, so document how in more detail than the t-h-t commit\nmessage.\n\nCo-authored-by Ryan Hallisey \u003crhallise@redhat.com\u003e\nChange-Id: I26795e5a35f351ca95796c567526095671abc428\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/88c6ca8283ca132c5926672e2024de1578ff87d3"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/88c6ca8283ca132c5926672e2024de1578ff87d3"}]},"branch":"refs/heads/master"},"8a058444d1f5926d7783e76e0e77a1a0e84f9309":{"kind":"REWORK","_number":5,"created":"2016-03-11 15:33:53.000000000","uploader":{"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},"ref":"refs/changes/17/274217/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/tripleo-docs","ref":"refs/changes/17/274217/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/5"}}},"commit":{"parents":[{"commit":"afb824fe9f80453b834644f36571e97e13669688","subject":"Merge \"Removed reference to SpinalStack to prevent confusion\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/afb824fe9f80453b834644f36571e97e13669688"}]}],"author":{"name":"Steven Hardy","email":"shardy@redhat.com","date":"2016-01-29 18:03:36.000000000","tz":0},"committer":{"name":"Ryan Hallisey","email":"rhallise@redhat.com","date":"2016-03-11 15:33:46.000000000","tz":-300},"subject":"Document using node capabilities to control placement","message":"Document using node capabilities to control placement\n\nIn addition to the per-role profile matching and manual tagging,\nsome operators wish to enforce placement to specific nodes, known\nprior to deployment.  This is now possible via the *SchedulerHints\nparameters, so document how in more detail than the t-h-t commit\nmessage.\n\nCo-authored-by Ryan Hallisey \u003crhallise@redhat.com\u003e\nChange-Id: I26795e5a35f351ca95796c567526095671abc428\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/8a058444d1f5926d7783e76e0e77a1a0e84f9309"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/8a058444d1f5926d7783e76e0e77a1a0e84f9309"}]},"branch":"refs/heads/master"},"ec9e94b45c441e03a8df340d79c2534fb8b20557":{"kind":"REWORK","_number":6,"created":"2016-03-14 21:51:00.000000000","uploader":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"ref":"refs/changes/17/274217/6","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/tripleo-docs","ref":"refs/changes/17/274217/6","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/6"}}},"commit":{"parents":[{"commit":"c8f3dacdf71beeec87671b3523a711ec585894ff","subject":"Don\u0027t repeat titles from the documents. Sphinx will add these.","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/c8f3dacdf71beeec87671b3523a711ec585894ff"}]}],"author":{"name":"Steven Hardy","email":"shardy@redhat.com","date":"2016-01-29 18:03:36.000000000","tz":0},"committer":{"name":"Ben Nemec","email":"bnemec@redhat.com","date":"2016-03-14 21:48:15.000000000","tz":0},"subject":"Document using node capabilities to control placement","message":"Document using node capabilities to control placement\n\nIn addition to the per-role profile matching and manual tagging,\nsome operators wish to enforce placement to specific nodes, known\nprior to deployment.  This is now possible via the *SchedulerHints\nparameters, so document how in more detail than the t-h-t commit\nmessage.\n\nCo-authored-by Ryan Hallisey \u003crhallise@redhat.com\u003e\nCo-Authored-By Ben Nemec \u003cbnemec@redhat.com\u003e\nChange-Id: I26795e5a35f351ca95796c567526095671abc428\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/ec9e94b45c441e03a8df340d79c2534fb8b20557"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/ec9e94b45c441e03a8df340d79c2534fb8b20557"}]},"branch":"refs/heads/master"},"7983c3caa29d142cf48fcfdf52de090f39f0f9bd":{"kind":"REWORK","_number":7,"created":"2016-03-17 19:32:30.000000000","uploader":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"ref":"refs/changes/17/274217/7","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/tripleo-docs","ref":"refs/changes/17/274217/7","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/7 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/7 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/7 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/tripleo-docs refs/changes/17/274217/7"}}},"commit":{"parents":[{"commit":"c8f3dacdf71beeec87671b3523a711ec585894ff","subject":"Don\u0027t repeat titles from the documents. Sphinx will add these.","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/c8f3dacdf71beeec87671b3523a711ec585894ff"}]}],"author":{"name":"Steven Hardy","email":"shardy@redhat.com","date":"2016-01-29 18:03:36.000000000","tz":0},"committer":{"name":"Ben Nemec","email":"bnemec@redhat.com","date":"2016-03-17 19:30:36.000000000","tz":0},"subject":"Document using node capabilities to control placement","message":"Document using node capabilities to control placement\n\nIn addition to the per-role profile matching and manual tagging,\nsome operators wish to enforce placement to specific nodes, known\nprior to deployment.  This is now possible via the *SchedulerHints\nparameters, so document how in more detail than the t-h-t commit\nmessage.\n\nCo-authored-by Ryan Hallisey \u003crhallise@redhat.com\u003e\nCo-Authored-By Ben Nemec \u003cbnemec@redhat.com\u003e\nChange-Id: I26795e5a35f351ca95796c567526095671abc428\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/7983c3caa29d142cf48fcfdf52de090f39f0f9bd"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tripleo-docs/commit/7983c3caa29d142cf48fcfdf52de090f39f0f9bd"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
