)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"677d5627d5ee6cdcefc0b7b12e28b1c1fbdbb24e","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Currently devnest is implemented to interact with Jenkins server"},{"line_number":12,"context_line":"and allows to take node from jenkins and assign it to be run as"},{"line_number":13,"context_line":"zuul executor. At the same time hardware can be used reserved"},{"line_number":14,"context_line":"manually by users."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"It is available via PyPI or as github project:"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3fa7e38b_b078868f","line":13,"updated":"2019-10-18 14:43:05.000000000","message":"A zuul \"node\".","commit_id":"9de1cc1012f1a5d3a9a09d70aeb34c0a1d43ddfa"},{"author":{"_account_id":19619,"name":"Michal Pryc","email":"mpryc@redhat.com","username":"migi"},"change_message_id":"514a2284057d8bfee6dae6a8ea3c6d835515225a","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Currently devnest is implemented to interact with Jenkins server"},{"line_number":12,"context_line":"and allows to take node from jenkins and assign it to be run as"},{"line_number":13,"context_line":"zuul executor. At the same time hardware can be used reserved"},{"line_number":14,"context_line":"manually by users."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"It is available via PyPI or as github project:"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3fa7e38b_0faa8a70","line":13,"in_reply_to":"3fa7e38b_b078868f","updated":"2019-10-21 12:09:40.000000000","message":"Right, will fix that.","commit_id":"9de1cc1012f1a5d3a9a09d70aeb34c0a1d43ddfa"}],"nodepool/driver/devnest/provider.py":[{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"677d5627d5ee6cdcefc0b7b12e28b1c1fbdbb24e","unresolved":false,"context_lines":[{"line_number":136,"context_line":"        Args:"},{"line_number":137,"context_line":"            label (:obj:`dict`): Should contain the \u0027group\u0027 item"},{"line_number":138,"context_line":"            reservation_time (:obj:`int`): Time in hours defining for how long"},{"line_number":139,"context_line":"                                           system should be reserved"},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"        Returns:"},{"line_number":142,"context_line":"            (:obj:`dict`): json output from devnest or None"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_506d92ca","line":139,"updated":"2019-10-18 14:43:05.000000000","message":"Is there an option to reserve indefinitely?  I think that would be best since nodepool/zuul may hold on to the node for quite some time, and in the case of a hold, indefinitely.  Nodepool will be able to release the reservation in all cases, so we don\u0027t need to rely on the timeout.","commit_id":"9de1cc1012f1a5d3a9a09d70aeb34c0a1d43ddfa"},{"author":{"_account_id":19619,"name":"Michal Pryc","email":"mpryc@redhat.com","username":"migi"},"change_message_id":"514a2284057d8bfee6dae6a8ea3c6d835515225a","unresolved":false,"context_lines":[{"line_number":136,"context_line":"        Args:"},{"line_number":137,"context_line":"            label (:obj:`dict`): Should contain the \u0027group\u0027 item"},{"line_number":138,"context_line":"            reservation_time (:obj:`int`): Time in hours defining for how long"},{"line_number":139,"context_line":"                                           system should be reserved"},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"        Returns:"},{"line_number":142,"context_line":"            (:obj:`dict`): json output from devnest or None"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_ef912e48","line":139,"in_reply_to":"3fa7e38b_506d92ca","updated":"2019-10-21 12:09:40.000000000","message":"While there is no such option to reserve indefinitely, there could be an option to reserve for ridiculously long period.\n\nIn devnest there is service responsible for cleanup. The lifecycle outisde of nodepool is as follows:\n\n\n 1. Reservation of the node for X hours\n 2a. If the node was forcefully reserved (there were no free nodes when the request was made) the node is going into reservation pending state and then to \"reserved\" state.\n 2b. Node is in \"reserved\" state\n 3. Release of the node when the job finishes (either Jenkins or Zuul)\n 4. Node goes into \"reprovisioning pending\" state\n 5. Some external provisioner is reinstalling OS and configuring node to become Jenkins and Zuul capable\n 6. The node is brought to \"online\" state.\n\nIn some cases 4-5 is skipped but it\u0027s up to devnest reprovisioner to decide if node should be brought to online state right away or it should be fully reprovisioned.","commit_id":"9de1cc1012f1a5d3a9a09d70aeb34c0a1d43ddfa"}]}
