{"action":"created","issue":{"url":"https://api.github.com/repos/bbyars/mountebank/issues/16","labels_url":"https://api.github.com/repos/bbyars/mountebank/issues/16/labels{/name}","comments_url":"https://api.github.com/repos/bbyars/mountebank/issues/16/comments","events_url":"https://api.github.com/repos/bbyars/mountebank/issues/16/events","html_url":"https://github.com/bbyars/mountebank/issues/16","id":33248994,"number":16,"title":"Add ssh protocol","user":{"login":"bbyars","id":70335,"avatar_url":"https://avatars.githubusercontent.com/u/70335?v=3","gravatar_id":"","url":"https://api.github.com/users/bbyars","html_url":"https://github.com/bbyars","followers_url":"https://api.github.com/users/bbyars/followers","following_url":"https://api.github.com/users/bbyars/following{/other_user}","gists_url":"https://api.github.com/users/bbyars/gists{/gist_id}","starred_url":"https://api.github.com/users/bbyars/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bbyars/subscriptions","organizations_url":"https://api.github.com/users/bbyars/orgs","repos_url":"https://api.github.com/users/bbyars/repos","events_url":"https://api.github.com/users/bbyars/events{/privacy}","received_events_url":"https://api.github.com/users/bbyars/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/bbyars/mountebank/labels/api","name":"api","color":"c7def8"},{"url":"https://api.github.com/repos/bbyars/mountebank/labels/minor-version","name":"minor-version","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2014-05-10T21:03:39Z","updated_at":"2015-12-17T04:19:14Z","closed_at":null,"body":"Add ssh protocol, primarily for mock verification.  From Max Lincoln:\r\n\r\nSSH would be a very powerful protocol to use.  A lot of the new infra-as-code cloud tools basically:\r\n1. Use REST to call cloud providers to build servers/load balancers/etc\r\n2. (Optionally) Send data from the cloud provider to a management tool, like Hosted Chef, using REST again.\r\n3. Then SSH to the server(s) for configuration, running commands and/or using SSH-based file-transfer protocols.\r\n\r\n1 & 2 are easily stubbed, but 3 is not.\r\n\r\nWhat's awesome is that apparently [writing an rsync server in node](https://github.com/rvagg/node-libssh) is easy, and sftp seems a little more complicated, but scp and rsync just send simple commands to start a server, and gives clues about the file it's going to receive:\r\nSending command: scp -v -t asdf\r\nSending command: rsync --server -v . 22:asdf\r\n\r\nIn other words, SSH looks very recordable/mockable."},"comment":{"url":"https://api.github.com/repos/bbyars/mountebank/issues/comments/165333239","html_url":"https://github.com/bbyars/mountebank/issues/16#issuecomment-165333239","issue_url":"https://api.github.com/repos/bbyars/mountebank/issues/16","id":165333239,"user":{"login":"bbyars","id":70335,"avatar_url":"https://avatars.githubusercontent.com/u/70335?v=3","gravatar_id":"","url":"https://api.github.com/users/bbyars","html_url":"https://github.com/bbyars","followers_url":"https://api.github.com/users/bbyars/followers","following_url":"https://api.github.com/users/bbyars/following{/other_user}","gists_url":"https://api.github.com/users/bbyars/gists{/gist_id}","starred_url":"https://api.github.com/users/bbyars/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bbyars/subscriptions","organizations_url":"https://api.github.com/users/bbyars/orgs","repos_url":"https://api.github.com/users/bbyars/repos","events_url":"https://api.github.com/users/bbyars/events{/privacy}","received_events_url":"https://api.github.com/users/bbyars/received_events","type":"User","site_admin":false},"created_at":"2015-12-17T04:19:14Z","updated_at":"2015-12-17T04:19:14Z","body":"Yeah I suspect it could be config, but you're right that there's definitely\nsome tricky bits to work out.  I haven't looked into what it would take in\ndepth.\n\nOn Tue, Dec 15, 2015 at 11:57 PM, David Luu <notifications@github.com>\nwrote:\n\n> I'm not well versed in SSH and node, but would the security/cryptography\n> part be easy to handle/mock? Unlike HTTP, SSH deals with login credentials\n> and in other more secure cases, public/private keys. Or I guess that's just\n> config steps as part of the setup for the keys and stuff.\n>\n> —\n> Reply to this email directly or view it on GitHub\n> <https://github.com/bbyars/mountebank/issues/16#issuecomment-165005712>.\n>\n"}}