{"action":"created","issue":{"url":"https://api.github.com/repos/tes/conflab/issues/4","labels_url":"https://api.github.com/repos/tes/conflab/issues/4/labels{/name}","comments_url":"https://api.github.com/repos/tes/conflab/issues/4/comments","events_url":"https://api.github.com/repos/tes/conflab/issues/4/events","html_url":"https://github.com/tes/conflab/issues/4","id":66611401,"number":4,"title":"Add a way for users to include additional config files","user":{"login":"BorePlusPlus","id":2392641,"avatar_url":"https://avatars.githubusercontent.com/u/2392641?v=3","gravatar_id":"","url":"https://api.github.com/users/BorePlusPlus","html_url":"https://github.com/BorePlusPlus","followers_url":"https://api.github.com/users/BorePlusPlus/followers","following_url":"https://api.github.com/users/BorePlusPlus/following{/other_user}","gists_url":"https://api.github.com/users/BorePlusPlus/gists{/gist_id}","starred_url":"https://api.github.com/users/BorePlusPlus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BorePlusPlus/subscriptions","organizations_url":"https://api.github.com/users/BorePlusPlus/orgs","repos_url":"https://api.github.com/users/BorePlusPlus/repos","events_url":"https://api.github.com/users/BorePlusPlus/events{/privacy}","received_events_url":"https://api.github.com/users/BorePlusPlus/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/tes/conflab/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-04-06T13:56:52Z","updated_at":"2015-04-13T17:18:44Z","closed_at":null,"body":"Sometimes users can have additional config files which are not held in the same directory as the rest of the files (often these are files containing restricted options).\r\n\r\nOne of the ways to include these could be to have a \"reserved field\" in the config files which would signify that file(s) it points to should be read and merged in config. This way users can decide at what point the additional file is merged (by referring to it in appropriate file). This is a bit like [reader macros in nomad](https://github.com/james-henderson/nomad#nomad-reader-macros).\r\n\r\nIf these files are indeed restricted files which contents you might not want to share with the whole world, having an option of not exporting their contents into etcd might also be required (maybe through a \"reserved field\" in these files).\r\n\r\nExample:\r\ndefault.json\r\n```json\r\n{\r\n  \"foo\": \"bar\",\r\n  \"additionalConfigFiles\": [\"/etc/stuff/passes.json\"]\r\n}\r\n``` \r\n/etc/stuff/passes.json\r\n```json\r\n{\r\n  \"exportToEtcd\": false,\r\n  \"secret\": \"goes here\"\r\n}\r\n```\r\nThis would read passes.json after default.json and merge the results into config, but not export them to etcd."},"comment":{"url":"https://api.github.com/repos/tes/conflab/issues/comments/92431783","html_url":"https://github.com/tes/conflab/issues/4#issuecomment-92431783","issue_url":"https://api.github.com/repos/tes/conflab/issues/4","id":92431783,"user":{"login":"BorePlusPlus","id":2392641,"avatar_url":"https://avatars.githubusercontent.com/u/2392641?v=3","gravatar_id":"","url":"https://api.github.com/users/BorePlusPlus","html_url":"https://github.com/BorePlusPlus","followers_url":"https://api.github.com/users/BorePlusPlus/followers","following_url":"https://api.github.com/users/BorePlusPlus/following{/other_user}","gists_url":"https://api.github.com/users/BorePlusPlus/gists{/gist_id}","starred_url":"https://api.github.com/users/BorePlusPlus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BorePlusPlus/subscriptions","organizations_url":"https://api.github.com/users/BorePlusPlus/orgs","repos_url":"https://api.github.com/users/BorePlusPlus/repos","events_url":"https://api.github.com/users/BorePlusPlus/events{/privacy}","received_events_url":"https://api.github.com/users/BorePlusPlus/received_events","type":"User","site_admin":false},"created_at":"2015-04-13T17:18:44Z","updated_at":"2015-04-13T17:18:44Z","body":"It would probably be a good idea if this feature could be turned on/off via opts"}}