{"action":"created","issue":{"url":"https://api.github.com/repos/nodejs/node/issues/7557","repository_url":"https://api.github.com/repos/nodejs/node","labels_url":"https://api.github.com/repos/nodejs/node/issues/7557/labels{/name}","comments_url":"https://api.github.com/repos/nodejs/node/issues/7557/comments","events_url":"https://api.github.com/repos/nodejs/node/issues/7557/events","html_url":"https://github.com/nodejs/node/pull/7557","id":164029291,"number":7557,"title":"Adding setgroups option to process.spawn","user":{"login":"carlosduclos","id":12510941,"avatar_url":"https://avatars.githubusercontent.com/u/12510941?v=3","gravatar_id":"","url":"https://api.github.com/users/carlosduclos","html_url":"https://github.com/carlosduclos","followers_url":"https://api.github.com/users/carlosduclos/followers","following_url":"https://api.github.com/users/carlosduclos/following{/other_user}","gists_url":"https://api.github.com/users/carlosduclos/gists{/gist_id}","starred_url":"https://api.github.com/users/carlosduclos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/carlosduclos/subscriptions","organizations_url":"https://api.github.com/users/carlosduclos/orgs","repos_url":"https://api.github.com/users/carlosduclos/repos","events_url":"https://api.github.com/users/carlosduclos/events{/privacy}","received_events_url":"https://api.github.com/users/carlosduclos/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/nodejs/node/labels/c++","name":"c++","color":"e11d21"},{"url":"https://api.github.com/repos/nodejs/node/labels/child_process","name":"child_process","color":"f7c6c7"},{"url":"https://api.github.com/repos/nodejs/node/labels/libuv","name":"libuv","color":"bfd4f2"}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2016-07-06T08:57:18Z","updated_at":"2016-07-07T09:46:03Z","closed_at":"2016-07-06T14:08:41Z","pull_request":{"url":"https://api.github.com/repos/nodejs/node/pulls/7557","html_url":"https://github.com/nodejs/node/pull/7557","diff_url":"https://github.com/nodejs/node/pull/7557.diff","patch_url":"https://github.com/nodejs/node/pull/7557.patch"},"body":"<!--\r\nThank you for your pull request. Please review below requirements.\r\n\r\nBug fixes and new features should include tests and possibly benchmarks.\r\n\r\nContributors guide: https://github.com/nodejs/node/blob/master/CONTRIBUTING.md\r\n-->\r\n\r\n##### Checklist\r\n<!-- Remove items that do not apply. For completed items, change [ ] to [x]. -->\r\n\r\n- [x] `make -j4 test` (UNIX), or `vcbuild test nosign` (Windows) passes\r\n- [X] tests and/or benchmarks are included\r\n- [X] commit message follows commit guidelines\r\n\r\nNotice that tests require either run as root or CAP_SETUID, therefore they will fail if run as a normal user. Otherwise, tests pass.\r\n\r\n##### Affected core subsystem(s)\r\n<!-- Provide affected core subsystem(s) (like doc, cluster, crypto, etc). -->\r\nThis change affects process, not sure in which subsystem it lives.\r\n\r\n##### Description of change\r\n<!-- Provide a description of the change below this comment. -->\r\nAdding the possibility of setting extra user groups for a new process\r\n\r\nThis is a Unix-only feature.\r\n\r\nCurrently node offers the possibility of setting up both the uid and the\r\ngid of the new process. Sometimes one needs to set extra groups, so the\r\nnew process gets access to resources that are owned by groups other than\r\nthe group specified by gid.\r\n\r\nThis commit adds a new option to spawn (groups), which is an array of\r\ngroup ids to be set for the new process. Underneath, this calls setgroups\r\nusing the list of ids.\r\n\r\nThere are a couple of unit tests and one js test. However, running these\r\ntests requires either running as root or using the CAP_SETUID capability\r\n(Linux). Not sure how to handle the situation and I'll be happy to adapt\r\nthe tests to make them compatible with the build process.\r\n\r\nSigned-off-by: Carlos Manuel Duclos Vergara <carlos.duclos@tieto.com>"},"comment":{"url":"https://api.github.com/repos/nodejs/node/issues/comments/231032816","html_url":"https://github.com/nodejs/node/pull/7557#issuecomment-231032816","issue_url":"https://api.github.com/repos/nodejs/node/issues/7557","id":231032816,"user":{"login":"carlosduclos","id":12510941,"avatar_url":"https://avatars.githubusercontent.com/u/12510941?v=3","gravatar_id":"","url":"https://api.github.com/users/carlosduclos","html_url":"https://github.com/carlosduclos","followers_url":"https://api.github.com/users/carlosduclos/followers","following_url":"https://api.github.com/users/carlosduclos/following{/other_user}","gists_url":"https://api.github.com/users/carlosduclos/gists{/gist_id}","starred_url":"https://api.github.com/users/carlosduclos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/carlosduclos/subscriptions","organizations_url":"https://api.github.com/users/carlosduclos/orgs","repos_url":"https://api.github.com/users/carlosduclos/repos","events_url":"https://api.github.com/users/carlosduclos/events{/privacy}","received_events_url":"https://api.github.com/users/carlosduclos/received_events","type":"User","site_admin":false},"created_at":"2016-07-07T09:46:02Z","updated_at":"2016-07-07T09:46:02Z","body":"Got it. Opened pull request in libuv. Will send this again, once the PR gets merged in libuv.\r\nhttps://github.com/libuv/libuv/pull/938"}}
{"actor":{"display_login":"carlosduclos"}}