{"action":"created","issue":{"url":"https://api.github.com/repos/lecaillon/Evolve/issues/18","repository_url":"https://api.github.com/repos/lecaillon/Evolve","labels_url":"https://api.github.com/repos/lecaillon/Evolve/issues/18/labels{/name}","comments_url":"https://api.github.com/repos/lecaillon/Evolve/issues/18/comments","events_url":"https://api.github.com/repos/lecaillon/Evolve/issues/18/events","html_url":"https://github.com/lecaillon/Evolve/issues/18","id":264719124,"number":18,"title":"Provide configuration via environment variables","user":{"login":"sartan","id":2007884,"avatar_url":"https://avatars1.githubusercontent.com/u/2007884?v=4","gravatar_id":"","url":"https://api.github.com/users/sartan","html_url":"https://github.com/sartan","followers_url":"https://api.github.com/users/sartan/followers","following_url":"https://api.github.com/users/sartan/following{/other_user}","gists_url":"https://api.github.com/users/sartan/gists{/gist_id}","starred_url":"https://api.github.com/users/sartan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sartan/subscriptions","organizations_url":"https://api.github.com/users/sartan/orgs","repos_url":"https://api.github.com/users/sartan/repos","events_url":"https://api.github.com/users/sartan/events{/privacy}","received_events_url":"https://api.github.com/users/sartan/received_events","type":"User","site_admin":false},"labels":[{"id":621163625,"url":"https://api.github.com/repos/lecaillon/Evolve/labels/feature","name":"feature","color":"0052cc","default":false}],"state":"open","locked":false,"assignee":{"login":"lecaillon","id":19413950,"avatar_url":"https://avatars0.githubusercontent.com/u/19413950?v=4","gravatar_id":"","url":"https://api.github.com/users/lecaillon","html_url":"https://github.com/lecaillon","followers_url":"https://api.github.com/users/lecaillon/followers","following_url":"https://api.github.com/users/lecaillon/following{/other_user}","gists_url":"https://api.github.com/users/lecaillon/gists{/gist_id}","starred_url":"https://api.github.com/users/lecaillon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lecaillon/subscriptions","organizations_url":"https://api.github.com/users/lecaillon/orgs","repos_url":"https://api.github.com/users/lecaillon/repos","events_url":"https://api.github.com/users/lecaillon/events{/privacy}","received_events_url":"https://api.github.com/users/lecaillon/received_events","type":"User","site_admin":false},"assignees":[{"login":"lecaillon","id":19413950,"avatar_url":"https://avatars0.githubusercontent.com/u/19413950?v=4","gravatar_id":"","url":"https://api.github.com/users/lecaillon","html_url":"https://github.com/lecaillon","followers_url":"https://api.github.com/users/lecaillon/followers","following_url":"https://api.github.com/users/lecaillon/following{/other_user}","gists_url":"https://api.github.com/users/lecaillon/gists{/gist_id}","starred_url":"https://api.github.com/users/lecaillon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lecaillon/subscriptions","organizations_url":"https://api.github.com/users/lecaillon/orgs","repos_url":"https://api.github.com/users/lecaillon/repos","events_url":"https://api.github.com/users/lecaillon/events{/privacy}","received_events_url":"https://api.github.com/users/lecaillon/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/lecaillon/Evolve/milestones/9","html_url":"https://github.com/lecaillon/Evolve/milestone/9","labels_url":"https://api.github.com/repos/lecaillon/Evolve/milestones/9/labels","id":2822974,"number":9,"title":"Evolve 1.6.0","description":"","creator":{"login":"lecaillon","id":19413950,"avatar_url":"https://avatars0.githubusercontent.com/u/19413950?v=4","gravatar_id":"","url":"https://api.github.com/users/lecaillon","html_url":"https://github.com/lecaillon","followers_url":"https://api.github.com/users/lecaillon/followers","following_url":"https://api.github.com/users/lecaillon/following{/other_user}","gists_url":"https://api.github.com/users/lecaillon/gists{/gist_id}","starred_url":"https://api.github.com/users/lecaillon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lecaillon/subscriptions","organizations_url":"https://api.github.com/users/lecaillon/orgs","repos_url":"https://api.github.com/users/lecaillon/repos","events_url":"https://api.github.com/users/lecaillon/events{/privacy}","received_events_url":"https://api.github.com/users/lecaillon/received_events","type":"User","site_admin":false},"open_issues":2,"closed_issues":0,"state":"open","created_at":"2017-10-08T17:58:35Z","updated_at":"2017-10-14T10:22:15Z","due_on":"2017-10-22T07:00:00Z","closed_at":null},"comments":0,"created_at":"2017-10-11T20:08:13Z","updated_at":"2017-10-15T08:17:19Z","closed_at":null,"author_association":"NONE","body":"Current configuration techniques (App.config / Web.config / evolve.json) have you hardcode connection string into a file that will likely be committed to source control. This is not desirable since the connection string contains credentials. It would be great to be able to provide certain configuration via environment variables, for example:\r\n\r\n```bash\r\nDB_USER=my-user DB_PASSWORD=password dotnet build\r\n```\r\n\r\nThis can be achieved programmatically using _in-app_ mode, but it would be nice to have this option for other modes.\r\n\r\nAlternatively, a [CLI](https://github.com/lecaillon/Evolve/issues/16) that accepts connection string parameters would also meet this need."},"comment":{"url":"https://api.github.com/repos/lecaillon/Evolve/issues/comments/336694378","html_url":"https://github.com/lecaillon/Evolve/issues/18#issuecomment-336694378","issue_url":"https://api.github.com/repos/lecaillon/Evolve/issues/18","id":336694378,"user":{"login":"lecaillon","id":19413950,"avatar_url":"https://avatars0.githubusercontent.com/u/19413950?v=4","gravatar_id":"","url":"https://api.github.com/users/lecaillon","html_url":"https://github.com/lecaillon","followers_url":"https://api.github.com/users/lecaillon/followers","following_url":"https://api.github.com/users/lecaillon/following{/other_user}","gists_url":"https://api.github.com/users/lecaillon/gists{/gist_id}","starred_url":"https://api.github.com/users/lecaillon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lecaillon/subscriptions","organizations_url":"https://api.github.com/users/lecaillon/orgs","repos_url":"https://api.github.com/users/lecaillon/repos","events_url":"https://api.github.com/users/lecaillon/events{/privacy}","received_events_url":"https://api.github.com/users/lecaillon/received_events","type":"User","site_admin":false},"created_at":"2017-10-15T08:17:19Z","updated_at":"2017-10-15T08:17:19Z","author_association":"OWNER","body":"@sartan Here are examples of Evolve configuration options with environment variables support:\r\n``` js\r\n{\r\n  \"Evolve.ConnectionString\": \"Server=${HOST};Port=5432;Database=myDataBase;User Id=${DB_USER};Password=${DB_PWD};\"\r\n}\r\n```\r\nor\r\n``` xml\r\n<add key=\"Evolve.ConnectionString\" value=\"Server=${HOST};Port=5432;Database=myDataBase;User Id=${DB_USER};Password=${DB_PWD};\" />\r\n```\r\n\r\n"}}
{"actor":{"display_login":"lecaillon"}}