{"action":"created","issue":{"url":"https://api.github.com/repos/jazkarta/edx-platform-for-isc/issues/9","labels_url":"https://api.github.com/repos/jazkarta/edx-platform-for-isc/issues/9/labels{/name}","comments_url":"https://api.github.com/repos/jazkarta/edx-platform-for-isc/issues/9/comments","events_url":"https://api.github.com/repos/jazkarta/edx-platform-for-isc/issues/9/events","html_url":"https://github.com/jazkarta/edx-platform-for-isc/issues/9","id":86800296,"number":9,"title":"ISC Customizations: Create XBlock for launching containers","user":{"login":"cewing","id":417109,"avatar_url":"https://avatars.githubusercontent.com/u/417109?v=3","gravatar_id":"","url":"https://api.github.com/users/cewing","html_url":"https://github.com/cewing","followers_url":"https://api.github.com/users/cewing/followers","following_url":"https://api.github.com/users/cewing/following{/other_user}","gists_url":"https://api.github.com/users/cewing/gists{/gist_id}","starred_url":"https://api.github.com/users/cewing/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cewing/subscriptions","organizations_url":"https://api.github.com/users/cewing/orgs","repos_url":"https://api.github.com/users/cewing/repos","events_url":"https://api.github.com/users/cewing/events{/privacy}","received_events_url":"https://api.github.com/users/cewing/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-06-10T01:58:22Z","updated_at":"2015-06-10T02:49:11Z","closed_at":null,"body":"A one-off solution for creating a component that would allow a student to launch a container was created in these two commits:\r\n\r\n* https://github.com/jazkarta/edx-platform/commit/489f525ed2f420be8790e051365e1c7ef47e3fb0 (creates the html for the component)\r\n* https://github.com/jazkarta/edx-platform/commit/9f1c9c3785a0ad999e4fc2312e572bf08da9652f (patches the existing html xmodule to allow for passing in a student's email address to be used by the container launcher)\r\n\r\nCreate a new XBlock add-on that will encapsulate this functionality with the abilities requested in this comment from @natea:\r\n\r\n> we'd like to turn this into a configurable XBlock so that it can be used to launch any container.\r\n\r\n> The XBlock would allow the course author to specify other parameters such as the duration to run the container, what URL to send the student to, default username and password and other helpful information for the student.\r\n\r\nThis should be in a separate xblock repository that can be added to the system."},"comment":{"url":"https://api.github.com/repos/jazkarta/edx-platform-for-isc/issues/comments/110567065","html_url":"https://github.com/jazkarta/edx-platform-for-isc/issues/9#issuecomment-110567065","issue_url":"https://api.github.com/repos/jazkarta/edx-platform-for-isc/issues/9","id":110567065,"user":{"login":"natea","id":118984,"avatar_url":"https://avatars.githubusercontent.com/u/118984?v=3","gravatar_id":"","url":"https://api.github.com/users/natea","html_url":"https://github.com/natea","followers_url":"https://api.github.com/users/natea/followers","following_url":"https://api.github.com/users/natea/following{/other_user}","gists_url":"https://api.github.com/users/natea/gists{/gist_id}","starred_url":"https://api.github.com/users/natea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/natea/subscriptions","organizations_url":"https://api.github.com/users/natea/orgs","repos_url":"https://api.github.com/users/natea/repos","events_url":"https://api.github.com/users/natea/events{/privacy}","received_events_url":"https://api.github.com/users/natea/received_events","type":"User","site_admin":false},"created_at":"2015-06-10T02:49:11Z","updated_at":"2015-06-10T02:49:11Z","body":"@cewing We have a small snippet of javascript code (provided upon request) that will talk to our container launcher API and spin up new containers, and return a URL to the student.\r\n\r\nCurrently, the only parameters that are required are:\r\n            owner_email: \"%%USER_EMAIL%%\",\r\n            project: \"Healthshare\"\r\n\r\nThe \"Project\" parameter can be any project that has been pre-defined in our container launcher service, which has instructions for how to launch a particular Docker image. \r\n\r\nI can imagine that the course author might also want to specify things like:\r\n- URL suffix to return to the student, so that they go to the right place in Healthshare to complete the exercise\r\n- Default username/password\r\n\r\nBut these two parameters are nice-to-haves for now. The minimum needed is the project name. The owner_email is automatically extracted from request.user.\r\n"}}