{"action":"created","issue":{"url":"https://api.github.com/repos/geofffranks/spruce/issues/125","repository_url":"https://api.github.com/repos/geofffranks/spruce","labels_url":"https://api.github.com/repos/geofffranks/spruce/issues/125/labels{/name}","comments_url":"https://api.github.com/repos/geofffranks/spruce/issues/125/comments","events_url":"https://api.github.com/repos/geofffranks/spruce/issues/125/events","html_url":"https://github.com/geofffranks/spruce/issues/125","id":158184418,"number":125,"title":"Support for wildcards/regexps for grab","user":{"login":"mtekel","id":483891,"avatar_url":"https://avatars.githubusercontent.com/u/483891?v=3","gravatar_id":"","url":"https://api.github.com/users/mtekel","html_url":"https://github.com/mtekel","followers_url":"https://api.github.com/users/mtekel/followers","following_url":"https://api.github.com/users/mtekel/following{/other_user}","gists_url":"https://api.github.com/users/mtekel/gists{/gist_id}","starred_url":"https://api.github.com/users/mtekel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mtekel/subscriptions","organizations_url":"https://api.github.com/users/mtekel/orgs","repos_url":"https://api.github.com/users/mtekel/repos","events_url":"https://api.github.com/users/mtekel/events{/privacy}","received_events_url":"https://api.github.com/users/mtekel/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"jhunt","id":20047,"avatar_url":"https://avatars.githubusercontent.com/u/20047?v=3","gravatar_id":"","url":"https://api.github.com/users/jhunt","html_url":"https://github.com/jhunt","followers_url":"https://api.github.com/users/jhunt/followers","following_url":"https://api.github.com/users/jhunt/following{/other_user}","gists_url":"https://api.github.com/users/jhunt/gists{/gist_id}","starred_url":"https://api.github.com/users/jhunt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jhunt/subscriptions","organizations_url":"https://api.github.com/users/jhunt/orgs","repos_url":"https://api.github.com/users/jhunt/repos","events_url":"https://api.github.com/users/jhunt/events{/privacy}","received_events_url":"https://api.github.com/users/jhunt/received_events","type":"User","site_admin":false},"milestone":null,"comments":5,"created_at":"2016-06-02T16:30:06Z","updated_at":"2016-06-23T12:48:29Z","closed_at":null,"body":"To be able to grab multiple items that are the same, e.g. azs.*.name in http://play.spruce.cf/#1b850fa29430383c1175c681953123a4 instead of having to specify azs.0.name azs.1.name and azs.2.name..."},"comment":{"url":"https://api.github.com/repos/geofffranks/spruce/issues/comments/228039310","html_url":"https://github.com/geofffranks/spruce/issues/125#issuecomment-228039310","issue_url":"https://api.github.com/repos/geofffranks/spruce/issues/125","id":228039310,"user":{"login":"jhunt","id":20047,"avatar_url":"https://avatars.githubusercontent.com/u/20047?v=3","gravatar_id":"","url":"https://api.github.com/users/jhunt","html_url":"https://github.com/jhunt","followers_url":"https://api.github.com/users/jhunt/followers","following_url":"https://api.github.com/users/jhunt/following{/other_user}","gists_url":"https://api.github.com/users/jhunt/gists{/gist_id}","starred_url":"https://api.github.com/users/jhunt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jhunt/subscriptions","organizations_url":"https://api.github.com/users/jhunt/orgs","repos_url":"https://api.github.com/users/jhunt/repos","events_url":"https://api.github.com/users/jhunt/events{/privacy}","received_events_url":"https://api.github.com/users/jhunt/received_events","type":"User","site_admin":false},"created_at":"2016-06-23T12:48:29Z","updated_at":"2016-06-23T12:48:29Z","body":"On second though, that probably won't work because of the requisite dataflow dependencies introduced by globbed paths.  Consider:\r\n\r\n```\r\nmeta:\r\n  foo: yes\r\n  bar: no\r\n\r\nthings: (( grab meta ))\r\nstuff:  (( grab things.* ))\r\n```\r\n\r\nPre-evaluation, `things.*` is an invalid path, but if there is a dataflow dependency of `$.stuff` -> `$.things`, it would work since `$.things` would resolve the grab to (effectively):\r\n\r\n```\r\n# meta omitted\r\nthings:\r\n  foo: yes\r\n  bar: no\r\nstuff: (( grab things.* ))\r\n```\r\n\r\nwhich _does_ work.\r\n\r\nMaybe we should treat this more like `(( inject ... ))` and do full-tree evaluation prior to the calling operator?"}}
{"actor":{"display_login":"jhunt"}}