{"action":"created","issue":{"url":"https://api.github.com/repos/drush-ops/drush/issues/1518","labels_url":"https://api.github.com/repos/drush-ops/drush/issues/1518/labels{/name}","comments_url":"https://api.github.com/repos/drush-ops/drush/issues/1518/comments","events_url":"https://api.github.com/repos/drush-ops/drush/issues/1518/events","html_url":"https://github.com/drush-ops/drush/issues/1518","id":98249440,"number":1518,"title":"Option to set custom home / cache directory","user":{"login":"danepowell","id":1984514,"avatar_url":"https://avatars.githubusercontent.com/u/1984514?v=3","gravatar_id":"","url":"https://api.github.com/users/danepowell","html_url":"https://github.com/danepowell","followers_url":"https://api.github.com/users/danepowell/followers","following_url":"https://api.github.com/users/danepowell/following{/other_user}","gists_url":"https://api.github.com/users/danepowell/gists{/gist_id}","starred_url":"https://api.github.com/users/danepowell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danepowell/subscriptions","organizations_url":"https://api.github.com/users/danepowell/orgs","repos_url":"https://api.github.com/users/danepowell/repos","events_url":"https://api.github.com/users/danepowell/events{/privacy}","received_events_url":"https://api.github.com/users/danepowell/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-07-30T19:54:42Z","updated_at":"2015-07-30T20:03:41Z","closed_at":null,"body":"It would be nice to have a runtime option to set the home directory that Drush uses. This is currently hardcoded to `~/.drush`.\r\n\r\nDrush is increasingly being pulled in as a Composer dependency and run on CI systems such as Jenkins and TravisCI. In these cases, you want it to be as self-contained as possible, for instance in a `vendor` subdirectory. That way, you can cache the `vendor` directory between builds, and prevent different projects from interfering with each other's configurations. By using `~/.drush` globally, Drush is breaking this compartmentalization."},"comment":{"url":"https://api.github.com/repos/drush-ops/drush/issues/comments/126462929","html_url":"https://github.com/drush-ops/drush/issues/1518#issuecomment-126462929","issue_url":"https://api.github.com/repos/drush-ops/drush/issues/1518","id":126462929,"user":{"login":"weitzman","id":7740,"avatar_url":"https://avatars.githubusercontent.com/u/7740?v=3","gravatar_id":"","url":"https://api.github.com/users/weitzman","html_url":"https://github.com/weitzman","followers_url":"https://api.github.com/users/weitzman/followers","following_url":"https://api.github.com/users/weitzman/following{/other_user}","gists_url":"https://api.github.com/users/weitzman/gists{/gist_id}","starred_url":"https://api.github.com/users/weitzman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/weitzman/subscriptions","organizations_url":"https://api.github.com/users/weitzman/orgs","repos_url":"https://api.github.com/users/weitzman/repos","events_url":"https://api.github.com/users/weitzman/events{/privacy}","received_events_url":"https://api.github.com/users/weitzman/received_events","type":"User","site_admin":false},"created_at":"2015-07-30T20:03:41Z","updated_at":"2015-07-30T20:03:41Z","body":"It actually isn't hard coded. You can set the environment variable HOME=/wherever/you/want and Drush will honor that. So set that in your CI and you'll be good. Our Unish test suite actually does this in order to compartmentalize our own tests - see unish_init() and drush_server_home() functions."}}