{"action":"created","issue":{"url":"https://api.github.com/repos/coreos/rkt/issues/2952","repository_url":"https://api.github.com/repos/coreos/rkt","labels_url":"https://api.github.com/repos/coreos/rkt/issues/2952/labels{/name}","comments_url":"https://api.github.com/repos/coreos/rkt/issues/2952/comments","events_url":"https://api.github.com/repos/coreos/rkt/issues/2952/events","html_url":"https://github.com/coreos/rkt/pull/2952","id":166563929,"number":2952,"title":"Introduce QEMU support","user":{"login":"jjlakis","id":12859079,"avatar_url":"https://avatars.githubusercontent.com/u/12859079?v=3","gravatar_id":"","url":"https://api.github.com/users/jjlakis","html_url":"https://github.com/jjlakis","followers_url":"https://api.github.com/users/jjlakis/followers","following_url":"https://api.github.com/users/jjlakis/following{/other_user}","gists_url":"https://api.github.com/users/jjlakis/gists{/gist_id}","starred_url":"https://api.github.com/users/jjlakis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jjlakis/subscriptions","organizations_url":"https://api.github.com/users/jjlakis/orgs","repos_url":"https://api.github.com/users/jjlakis/repos","events_url":"https://api.github.com/users/jjlakis/events{/privacy}","received_events_url":"https://api.github.com/users/jjlakis/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/coreos/rkt/labels/reviewed/lgtm","name":"reviewed/lgtm","color":"009800"},{"url":"https://api.github.com/repos/coreos/rkt/labels/technology/kvm","name":"technology/kvm","color":"d4c5f9"}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/coreos/rkt/milestones/49","html_url":"https://github.com/coreos/rkt/milestones/v1.15.0","labels_url":"https://api.github.com/repos/coreos/rkt/milestones/49/labels","id":1922997,"number":49,"title":"v1.15.0","description":"","creator":{"login":"lucab","id":98086,"avatar_url":"https://avatars.githubusercontent.com/u/98086?v=3","gravatar_id":"","url":"https://api.github.com/users/lucab","html_url":"https://github.com/lucab","followers_url":"https://api.github.com/users/lucab/followers","following_url":"https://api.github.com/users/lucab/following{/other_user}","gists_url":"https://api.github.com/users/lucab/gists{/gist_id}","starred_url":"https://api.github.com/users/lucab/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lucab/subscriptions","organizations_url":"https://api.github.com/users/lucab/orgs","repos_url":"https://api.github.com/users/lucab/repos","events_url":"https://api.github.com/users/lucab/events{/privacy}","received_events_url":"https://api.github.com/users/lucab/received_events","type":"User","site_admin":false},"open_issues":37,"closed_issues":13,"state":"open","created_at":"2016-08-04T07:34:43Z","updated_at":"2016-09-13T10:34:52Z","due_on":"2016-09-15T00:00:00Z","closed_at":null},"comments":52,"created_at":"2016-07-20T11:56:38Z","updated_at":"2016-09-13T10:57:01Z","closed_at":"2016-09-13T10:34:52Z","pull_request":{"url":"https://api.github.com/repos/coreos/rkt/pulls/2952","html_url":"https://github.com/coreos/rkt/pull/2952","diff_url":"https://github.com/coreos/rkt/pull/2952.diff","patch_url":"https://github.com/coreos/rkt/pull/2952.patch"},"body":"Extending current makefile mechanism to build more than one image for single flavor (with differences in rootfs) and adding QEMU as a hypervisor.\r\nPR contains:\r\n* Refactor of `stage1/stage1.mk`, more specific: \\_STAGE1_ACI_RULE\\_ to accept two parameters (flavor and list of images), instead of just one (flavor). List of images are parsed directly in stage1.mk, common and hv-specific files are done still in usr_from_flavor makefiles. \\_STAGE1_ACI_RULE\\_ is now responsible to copy files from common directory and build images (added new rule).\r\n* `stage1/usr_from_kvm/qemu.mk` - responsible for cloning sources, building qemu and including its binaries in `stage1-kvm.aci`.\r\n* `stage1/init/kvm/hypervisor/qemu_driver.go` - similar to lkvm_driver.go in the form created in #2684\r\n* Refactor of kvm init part. All functions for starting hypervisors are included, init is checking what binary is contained in aci image, and calls proper command line. Due to this, `none_driver.go` is removed.\r\n\r\nlkvm is still default hypervisor\r\n\r\nTo build rkt with qemu support, type:\r\n`./configure --with-stage1-kvm-hypervisors=qemu`\r\n\r\nTo built rkt with both qemu and lkvm support, type:\r\n`./configure --with-stage1-kvm-hypervisors=lkvm,qemu`\r\n\r\nAnd you will get two images: \r\n`stage1-kvm-lkvm.aci`\r\n`stage1-kvm-qemu.aci`\r\n\r\n(if only one hypervisor is specified, its name will remain as `stage1-kvm.aci`)\r\n\r\n- I followed up most of @krnowak comments for qemu.mk (Had a problem with simplification of copying files: https://github.com/coreos/rkt/pull/2952#discussion_r75856652)\r\n- Nothing is changed for other flavors, and nothing is changed for default configure-make path.\r\n- Only Rkt Stop test sometimes fails for QEMU on semaphore (tracking in https://github.com/coreos/rkt/issues/3091) \r\n- Fixed Ctrl+C problem\r\n\r\n### To be clarified / To do\r\n* Documentation needs to be changed. If no new flavor is needed, I would extend existing paper\r\n* Should we check dependencies for qemu or just notice user to take care of them?\r\n\r\ncc @coreos/rkt-kvm-maintainers "},"comment":{"url":"https://api.github.com/repos/coreos/rkt/issues/comments/246646301","html_url":"https://github.com/coreos/rkt/pull/2952#issuecomment-246646301","issue_url":"https://api.github.com/repos/coreos/rkt/issues/2952","id":246646301,"user":{"login":"jellonek","id":658436,"avatar_url":"https://avatars.githubusercontent.com/u/658436?v=3","gravatar_id":"","url":"https://api.github.com/users/jellonek","html_url":"https://github.com/jellonek","followers_url":"https://api.github.com/users/jellonek/followers","following_url":"https://api.github.com/users/jellonek/following{/other_user}","gists_url":"https://api.github.com/users/jellonek/gists{/gist_id}","starred_url":"https://api.github.com/users/jellonek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jellonek/subscriptions","organizations_url":"https://api.github.com/users/jellonek/orgs","repos_url":"https://api.github.com/users/jellonek/repos","events_url":"https://api.github.com/users/jellonek/events{/privacy}","received_events_url":"https://api.github.com/users/jellonek/received_events","type":"User","site_admin":false},"created_at":"2016-09-13T10:57:01Z","updated_at":"2016-09-13T10:57:01Z","body":"@lucab when i was still at Intel there was a plan to switch from plain qemu to this qemu-lite, but at the moment this project was unreleased, so this was a goal for future, so the question if if Intel guys have this still in backlog."}}
{"actor":{"display_login":"jellonek"}}