Jira (BOLT-286) Clean up Bolt::Result ExecutionResult interface
Title: Message Title Michelle Fredette updated an issue Puppet Task Runner / BOLT-286 Clean up Bolt::Result ExecutionResult interface Change By: Michelle Fredette Labels: docs_reviewed Add Comment This message was sent by Atlassian JIRA (v7.0.2#70111-sha1:88534db) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To post to this group, send email to puppet-bugs@googlegroups.com. Visit this group at https://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/d/optout.
Jira (BOLT-286) Clean up Bolt::Result ExecutionResult interface
Title: Message Title Alex Dreyer updated an issue Puppet Task Runner / BOLT-286 Clean up Bolt::Result ExecutionResult interface Change By: Alex Dreyer Release Notes Summary: *breaking change*The `run_command`, `run_script`, `run_task` and `upload_file` functions now return a `ResultSet` object which behaves like an `Array` of `Result` objects rather then a hash of `Variant[Data, Error]` objects. Plans and functions that interacted with `ExecutionResult` will have to be updated to interact with `ResultSet` instead.Examples:```$result.each |$name, $result| {}becomes $result.each |$result| { $name = $result.target.name}$result['node.example.com'] becomes$result.find('node.example.com')run_task(, $result.ok_nodes, )becomesrun_task(, $result.ok_set.targets ...)``` Add Comment This message was sent by Atlassian JIRA (v7.0.2#70111-sha1:88534db) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To post to this group, send email to puppet-bugs@googlegroups.com. Visit this group at https://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/d/optout.
Jira (BOLT-286) Clean up Bolt::Result ExecutionResult interface
Title: Message Title Alex Dreyer updated an issue Puppet Task Runner / BOLT-286 Clean up Bolt::Result ExecutionResult interface Change By: Alex Dreyer Issue Type: Task New Feature Add Comment This message was sent by Atlassian JIRA (v7.0.2#70111-sha1:88534db) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To post to this group, send email to puppet-bugs@googlegroups.com. Visit this group at https://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/d/optout.
Jira (BOLT-286) Clean up Bolt::Result ExecutionResult interface
Title: Message Title Michael Smith updated an issue Puppet Task Runner / BOLT-286 Clean up Bolt::Result ExecutionResult interface Change By: Michael Smith Sub-team: bolt Bolt Add Comment This message was sent by Atlassian JIRA (v7.0.2#70111-sha1:88534db) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To post to this group, send email to puppet-bugs@googlegroups.com. Visit this group at https://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/d/optout.
Jira (BOLT-286) Clean up Bolt::Result ExecutionResult interface
Title: Message Title Michael Smith assigned an issue to Nick Lewis Puppet Task Runner / BOLT-286 Clean up Bolt::Result ExecutionResult interface Change By: Michael Smith Assignee: Michael Smith Nick Lewis Add Comment This message was sent by Atlassian JIRA (v7.0.2#70111-sha1:88534db) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To post to this group, send email to puppet-bugs@googlegroups.com. Visit this group at https://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/d/optout.
Jira (BOLT-286) Clean up Bolt::Result ExecutionResult interface
Title: Message Title David Kramer assigned an issue to Michael Smith Puppet Task Runner / BOLT-286 Clean up Bolt::Result ExecutionResult interface Change By: David Kramer Assignee: Alex Dreyer Michael Smith Add Comment This message was sent by Atlassian JIRA (v7.0.2#70111-sha1:88534db) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To post to this group, send email to puppet-bugs@googlegroups.com. Visit this group at https://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/d/optout.
Jira (BOLT-286) Clean up Bolt::Result ExecutionResult interface
Title: Message Title Alex Dreyer assigned an issue to Alex Dreyer Puppet Task Runner / BOLT-286 Clean up Bolt::Result ExecutionResult interface Change By: Alex Dreyer Assignee: Alex Dreyer Add Comment This message was sent by Atlassian JIRA (v7.0.2#70111-sha1:88534db) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To post to this group, send email to puppet-bugs@googlegroups.com. Visit this group at https://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/d/optout.
Jira (BOLT-286) Clean up Bolt::Result ExecutionResult interface
Title: Message Title Alex Dreyer commented on BOLT-286 Re: Clean up Bolt::Result ExecutionResult interface BOLT-222 is changing the execution result as well... Add Comment This message was sent by Atlassian JIRA (v7.0.2#70111-sha1:88534db) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To post to this group, send email to puppet-bugs@googlegroups.com. Visit this group at https://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/d/optout.
Jira (BOLT-286) Clean up Bolt::Result ExecutionResult interface
Title: Message Title David Kramer updated an issue Puppet Task Runner / BOLT-286 Clean up Bolt::Result ExecutionResult interface Change By: David Kramer Sprint: Bolt Ready for Grooming Kanban Add Comment This message was sent by Atlassian JIRA (v7.0.2#70111-sha1:88534db) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To post to this group, send email to puppet-bugs@googlegroups.com. Visit this group at https://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/d/optout.
Jira (BOLT-286) Clean up Bolt::Result ExecutionResult interface
Title: Message Title David Kramer updated an issue Puppet Task Runner / BOLT-286 Clean up Bolt::Result ExecutionResult interface Change By: David Kramer Fix Version/s: BOLT 0.15.0 Add Comment This message was sent by Atlassian JIRA (v7.0.2#70111-sha1:88534db) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To post to this group, send email to puppet-bugs@googlegroups.com. Visit this group at https://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/d/optout.
Jira (BOLT-286) Clean up Bolt::Result ExecutionResult interface
Title: Message Title Alex Dreyer updated an issue Puppet Task Runner / BOLT-286 Clean up Bolt::Result ExecutionResult interface Change By: Alex Dreyer We have two "result" objects in bolt Bolt::Result which capture the result of running an action on a single node and Bolt::ExecutionResult which capture the result of an action on a series of node.Problems:1. The ExecutionResult expects a hash of the form {value: {}, error{}} this does not align with tasks or Bolt result.2. The ExecutionResult cannot be easily converted back into the data format for results elsewhere: an array of [{node: , status: , result: {_output: " ", key: "val", _error: { ..}} ...]3. The use of puppet Error objects complicates this mapping since the structure of the "result" is inverted to pull error keys to the top and push top level keys into "partial_result"(as well as small changes like msg/message)Refactor:- Create two new pcore datatypes Result and ResultSet from Bolt::Result and Bolt::ResultSet- The Result datatype should behave like a hash exposing the result hash.- The Result datatype should have a error method that returns the Error datatype or nil- Result.ok should return true if there is no _error- Puppet run_* functions should return a ResultSet- ResultSets should be indexable hashlike collections of Results similar to how ExecutionResults behave now.- Indexing a ResultSet should return a Result object- ResultSet.to_json should return the json output- Bolt::Result should include the target object - Executor logging and outputter should user Result.to_json and ResultSet.to_json Update task-modules:update canary functions/plans to use ResultSetupdate aggregate function/plans to use ResultSet Add Comment This message was sent by Atlassian JIRA (v7.0.2#70111-sha1:88534db)
Jira (BOLT-286) Clean up Bolt::Result ExecutionResult interface
Title: Message Title Alex Dreyer updated an issue Puppet Task Runner / BOLT-286 Clean up Bolt::Result ExecutionResult interface Change By: Alex Dreyer We have two "result" objects in bolt Bolt::Result which capture the result of running an action on a single node and Bolt::ExecutionResult which capture the result of an action on a series of node.Problems:1. The ExecutionResult expects a hash of the form {value: {}, error{}} this does not align with tasks or Bolt result.2. The ExecutionResult cannot be easily converted back into the data format for results elsewhere: an array of [{node: , status: , result: {_output: " ", key: "val", _error: { ..}} ...]3. The use of puppet Error objects complicates this mapping since the structure of the "result" is inverted to pull error keys to the top and push top level keys into "partial_result"(as well as small changes like msg/message) Minimal Solution: - The ExecutionResult should be created from an array of node level results in addition to a hash.- The ExecutionResult class should be able to able to generate such an array itself.Larger Standardization Refactor :- Create two new pcore datatypes Result and ResultSet - Results should be created with from Bolt::Result object. Puppet Error objects and Bolt::ResultSet- The Result datatype should be created from behave like a hash exposing the ' result hash.- The Result datatype should have a error ' method on a result that returns the Error datatype or nil- Result . ok should return true if there is no _error - Puppet run_* functions should return a ResultSet- ResultSets should be indexable hashlike collections of Results similar to how ExecutionResults behave now. The value returned - Indexing a ResultSet should be the full result hash with _error return a Result object- ResultSet . to_json should return the json output - Bolt::Result should include the target object Update task-modules:update canary functions/plans to use ResultSetupdate aggregate function/plans to use ResultSet Add Comment
Jira (BOLT-286) Clean up Bolt::Result ExecutionResult interface
Title: Message Title Alex Dreyer updated an issue Puppet Task Runner / BOLT-286 Clean up Bolt::Result ExecutionResult interface Change By: Alex Dreyer We have two "result" objects in bolt Bolt::Result which capture the result of running an action on a single node and Bolt::ExecutionResult which capture the result of an action on a series of node.Problems:1. The ExecutionResult expects a hash of the form {value: {}, error{}} this does not align with tasks or Bolt result.2. The ExecutionResult cannot be easily converted back into the data format for results elsewhere: an array of [{node: , status: , result: {_output: " ", key: "val", _error: { ..}} ...]3. The use of puppet Error objects complicates this mapping since the structure of the "result" is inverted to pull error keys to the top and push top level keys into "partial_result"(as well as small changes like msg/message)Minimal Solution:- The ExecutionResult should be created from an array of node level results in addition to a hash.- The ExecutionResult class should be able to able to generate such an array itself.Larger Standardization:- Create two new pcore datatypes Result and ResultSet- Results should be created with Bolt::Result object. Puppet Error objects should be created from the 'error' method on a result.- ResultSets should be indexable hashlike collections of Results similar to how ExecutionResults behave now. The value returned should be the full result hash with _error. - Bolt::Result should include the target object Add Comment This message was sent by Atlassian JIRA (v7.0.2#70111-sha1:88534db) -- You
Jira (BOLT-286) Clean up Bolt::Result ExecutionResult interface
Title: Message Title Alex Dreyer updated an issue Puppet Task Runner / BOLT-286 Clean up Bolt::Result ExecutionResult interface Change By: Alex Dreyer We have two "result" objects in bolt Bolt::Result which capture the result of running an action on a single node and Bolt::ExecutionResult which capture the result of an action on a series of node.Problems:1. The ExecutionResult expects a hash of the form {value: {}, error{}} this does not align with tasks or Bolt result.2. The ExecutionResult cannot be easily converted back into the data format for results elsewhere: an array of [{node: , status: , result: {_output: " ", key: "val", _error: { ..}} ...]3. The use of puppet Error objects complicates this mapping since the structure of the "result" is inverted to pull error keys to the top and push top level keys into "partial_result"(as well as small changes like msg/message) Minimal Solution:- The ExecutionResult should be created from an array of node level results in addition to a hash.- The ExecutionResult class should be able to able to generate such an array itself. Questions Larger Standardization : - Should we continue to use puppets Create two new pcore datatypes Result and ResultSet- Results should be created with Bolt::Result object. Puppet Error type in objects should be created from the 'error' method on a result.- ResultSets should be indexable hashlike collections of Results similar to how ExecutionResults ? behave now. Add Comment This message was sent by Atlassian JIRA (v7.0.2#70111-sha1:88534db) -- You received this message because you are
Jira (BOLT-286) Clean up Bolt::Result ExecutionResult interface
Title: Message Title Alex Dreyer created an issue Puppet Task Runner / BOLT-286 Clean up Bolt::Result ExecutionResult interface Issue Type: Task Assignee: Unassigned Created: 2018/01/02 3:56 PM Priority: Normal Reporter: Alex Dreyer We have two "result" objects in bolt Bolt::Result which capture the result of running an action on a single node and Bolt::ExecutionResult which capture the result of an action on a series of node. Problems: 1. The ExecutionResult expects a hash of the form {value: {}, error{}} this does not align with tasks or Bolt result. 2. The ExecutionResult cannot be easily converted back into the data format for results elsewhere: an array of [{node: , status: , result: {_output: " ", key: "val", _error: { ..}} ...] 3. The use of puppet Error objects complicates this mapping since the structure of the "result" is inverted to pull error keys to the top and push top level keys into "partial_result"(as well as small changes like msg/message) Solution: The ExecutionResult should be created from an array of node level results in addition to a hash. The ExecutionResult class should be able to able to generate such an array itself. Questions: Should we continue to use puppets Error type in ExecutionResults?