{"action":"opened","number":1,"pull_request":{"url":"https://api.github.com/repos/stgraber/snapd/pulls/1","id":79381734,"html_url":"https://github.com/stgraber/snapd/pull/1","diff_url":"https://github.com/stgraber/snapd/pull/1.diff","patch_url":"https://github.com/stgraber/snapd/pull/1.patch","issue_url":"https://api.github.com/repos/stgraber/snapd/issues/1","number":1,"state":"open","locked":false,"title":"tests: add fuse interface spread test","user":{"login":"fgimenez","id":70376,"avatar_url":"https://avatars.githubusercontent.com/u/70376?v=3","gravatar_id":"","url":"https://api.github.com/users/fgimenez","html_url":"https://github.com/fgimenez","followers_url":"https://api.github.com/users/fgimenez/followers","following_url":"https://api.github.com/users/fgimenez/following{/other_user}","gists_url":"https://api.github.com/users/fgimenez/gists{/gist_id}","starred_url":"https://api.github.com/users/fgimenez/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fgimenez/subscriptions","organizations_url":"https://api.github.com/users/fgimenez/orgs","repos_url":"https://api.github.com/users/fgimenez/repos","events_url":"https://api.github.com/users/fgimenez/events{/privacy}","received_events_url":"https://api.github.com/users/fgimenez/received_events","type":"User","site_admin":false},"body":"Hi @stgraber :) this is the test I mentioned. It uses the same structure of the interface spread tests that we are using so far, you can take a look at https://github.com/snapcore/snapd/tree/master/tests/main, all the tasks prefixed with `interfaces-`.\r\n\r\nUsually we create the snaps with the snapbuild tool, built from source https://github.com/snapcore/snapd/tree/master/tests/lib/snapbuild, but for this test this shouldn't work, it is not able to add parts to a snap and in this case we require dependencies for being able to create a fuse filesystem. Maybe there's a better way of doing this than using python and pyhton-fuse, please let me know what do you think.\r\n\r\nThe test snap uses the hello.py example file that comes with python-fuse http://packages.ubuntu.com/xenial/amd64/python-fuse/filelist, it creates a fuse filesystem in the mount point given as parameter and a `hello` file in there with the `Hello World!` content. I've tried it locally, with the python-fuse package installed and it works fine.\r\n\r\nHowever, the snap with the plug connected is failing, executing fuse-consumer.create with a path writable for the snap (under /var/snap/fuse-consumer/current for instance) returns `Bad system call`, from dmesg I get:\r\n```\r\n[30231.486673] audit: type=1326 audit(1469806014.829:353): auid=4294967295 uid=1000 gid=1000 ses=4294967295 pid=28553 comm=\"python\" exe=\"/snap/fuse-consumer/x1/usr/bin/python2.7\" sig=31 arch=c000003e syscall=165 compat=0 ip=0x7f42b3ab0e2a code=0x0\r\n```\r\nsyscall 165 seems to be `mount` and the entr point `sys_mount`.\r\n\r\nPlease take a look at the `tests/main/interfaces-fuse/task.yaml` file in this changeset to see the exact steps to reproduce, let me know if something isn't clear.\r\n\r\nCheers!","created_at":"2016-07-29T15:51:02Z","updated_at":"2016-07-29T15:51:02Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/stgraber/snapd/pulls/1/commits","review_comments_url":"https://api.github.com/repos/stgraber/snapd/pulls/1/comments","review_comment_url":"https://api.github.com/repos/stgraber/snapd/pulls/comments{/number}","comments_url":"https://api.github.com/repos/stgraber/snapd/issues/1/comments","statuses_url":"https://api.github.com/repos/stgraber/snapd/statuses/9eaad3ea8ec078d8710f693762a568b107c188db","head":{"label":"fgimenez:spread-fuse-interface","ref":"spread-fuse-interface","sha":"9eaad3ea8ec078d8710f693762a568b107c188db","user":{"login":"fgimenez","id":70376,"avatar_url":"https://avatars.githubusercontent.com/u/70376?v=3","gravatar_id":"","url":"https://api.github.com/users/fgimenez","html_url":"https://github.com/fgimenez","followers_url":"https://api.github.com/users/fgimenez/followers","following_url":"https://api.github.com/users/fgimenez/following{/other_user}","gists_url":"https://api.github.com/users/fgimenez/gists{/gist_id}","starred_url":"https://api.github.com/users/fgimenez/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fgimenez/subscriptions","organizations_url":"https://api.github.com/users/fgimenez/orgs","repos_url":"https://api.github.com/users/fgimenez/repos","events_url":"https://api.github.com/users/fgimenez/events{/privacy}","received_events_url":"https://api.github.com/users/fgimenez/received_events","type":"User","site_admin":false},"repo":{"id":45098487,"name":"snappy","full_name":"fgimenez/snappy","owner":{"login":"fgimenez","id":70376,"avatar_url":"https://avatars.githubusercontent.com/u/70376?v=3","gravatar_id":"","url":"https://api.github.com/users/fgimenez","html_url":"https://github.com/fgimenez","followers_url":"https://api.github.com/users/fgimenez/followers","following_url":"https://api.github.com/users/fgimenez/following{/other_user}","gists_url":"https://api.github.com/users/fgimenez/gists{/gist_id}","starred_url":"https://api.github.com/users/fgimenez/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fgimenez/subscriptions","organizations_url":"https://api.github.com/users/fgimenez/orgs","repos_url":"https://api.github.com/users/fgimenez/repos","events_url":"https://api.github.com/users/fgimenez/events{/privacy}","received_events_url":"https://api.github.com/users/fgimenez/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/fgimenez/snappy","description":"Snappy is the software at the heart of Ubuntu Core.","fork":true,"url":"https://api.github.com/repos/fgimenez/snappy","forks_url":"https://api.github.com/repos/fgimenez/snappy/forks","keys_url":"https://api.github.com/repos/fgimenez/snappy/keys{/key_id}","collaborators_url":"https://api.github.com/repos/fgimenez/snappy/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/fgimenez/snappy/teams","hooks_url":"https://api.github.com/repos/fgimenez/snappy/hooks","issue_events_url":"https://api.github.com/repos/fgimenez/snappy/issues/events{/number}","events_url":"https://api.github.com/repos/fgimenez/snappy/events","assignees_url":"https://api.github.com/repos/fgimenez/snappy/assignees{/user}","branches_url":"https://api.github.com/repos/fgimenez/snappy/branches{/branch}","tags_url":"https://api.github.com/repos/fgimenez/snappy/tags","blobs_url":"https://api.github.com/repos/fgimenez/snappy/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/fgimenez/snappy/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/fgimenez/snappy/git/refs{/sha}","trees_url":"https://api.github.com/repos/fgimenez/snappy/git/trees{/sha}","statuses_url":"https://api.github.com/repos/fgimenez/snappy/statuses/{sha}","languages_url":"https://api.github.com/repos/fgimenez/snappy/languages","stargazers_url":"https://api.github.com/repos/fgimenez/snappy/stargazers","contributors_url":"https://api.github.com/repos/fgimenez/snappy/contributors","subscribers_url":"https://api.github.com/repos/fgimenez/snappy/subscribers","subscription_url":"https://api.github.com/repos/fgimenez/snappy/subscription","commits_url":"https://api.github.com/repos/fgimenez/snappy/commits{/sha}","git_commits_url":"https://api.github.com/repos/fgimenez/snappy/git/commits{/sha}","comments_url":"https://api.github.com/repos/fgimenez/snappy/comments{/number}","issue_comment_url":"https://api.github.com/repos/fgimenez/snappy/issues/comments{/number}","contents_url":"https://api.github.com/repos/fgimenez/snappy/contents/{+path}","compare_url":"https://api.github.com/repos/fgimenez/snappy/compare/{base}...{head}","merges_url":"https://api.github.com/repos/fgimenez/snappy/merges","archive_url":"https://api.github.com/repos/fgimenez/snappy/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/fgimenez/snappy/downloads","issues_url":"https://api.github.com/repos/fgimenez/snappy/issues{/number}","pulls_url":"https://api.github.com/repos/fgimenez/snappy/pulls{/number}","milestones_url":"https://api.github.com/repos/fgimenez/snappy/milestones{/number}","notifications_url":"https://api.github.com/repos/fgimenez/snappy/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/fgimenez/snappy/labels{/name}","releases_url":"https://api.github.com/repos/fgimenez/snappy/releases{/id}","deployments_url":"https://api.github.com/repos/fgimenez/snappy/deployments","created_at":"2015-10-28T08:23:58Z","updated_at":"2016-01-14T08:49:44Z","pushed_at":"2016-07-29T15:35:41Z","git_url":"git://github.com/fgimenez/snappy.git","ssh_url":"git@github.com:fgimenez/snappy.git","clone_url":"https://github.com/fgimenez/snappy.git","svn_url":"https://github.com/fgimenez/snappy","homepage":null,"size":32966,"stargazers_count":0,"watchers_count":0,"language":"Go","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"stgraber:master","ref":"master","sha":"f86fe2154c01a884d284f75d3d3779bf02078788","user":{"login":"stgraber","id":2230599,"avatar_url":"https://avatars.githubusercontent.com/u/2230599?v=3","gravatar_id":"","url":"https://api.github.com/users/stgraber","html_url":"https://github.com/stgraber","followers_url":"https://api.github.com/users/stgraber/followers","following_url":"https://api.github.com/users/stgraber/following{/other_user}","gists_url":"https://api.github.com/users/stgraber/gists{/gist_id}","starred_url":"https://api.github.com/users/stgraber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stgraber/subscriptions","organizations_url":"https://api.github.com/users/stgraber/orgs","repos_url":"https://api.github.com/users/stgraber/repos","events_url":"https://api.github.com/users/stgraber/events{/privacy}","received_events_url":"https://api.github.com/users/stgraber/received_events","type":"User","site_admin":false},"repo":{"id":61674000,"name":"snapd","full_name":"stgraber/snapd","owner":{"login":"stgraber","id":2230599,"avatar_url":"https://avatars.githubusercontent.com/u/2230599?v=3","gravatar_id":"","url":"https://api.github.com/users/stgraber","html_url":"https://github.com/stgraber","followers_url":"https://api.github.com/users/stgraber/followers","following_url":"https://api.github.com/users/stgraber/following{/other_user}","gists_url":"https://api.github.com/users/stgraber/gists{/gist_id}","starred_url":"https://api.github.com/users/stgraber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stgraber/subscriptions","organizations_url":"https://api.github.com/users/stgraber/orgs","repos_url":"https://api.github.com/users/stgraber/repos","events_url":"https://api.github.com/users/stgraber/events{/privacy}","received_events_url":"https://api.github.com/users/stgraber/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/stgraber/snapd","description":"Personal work copy of snapcore/snapd","fork":true,"url":"https://api.github.com/repos/stgraber/snapd","forks_url":"https://api.github.com/repos/stgraber/snapd/forks","keys_url":"https://api.github.com/repos/stgraber/snapd/keys{/key_id}","collaborators_url":"https://api.github.com/repos/stgraber/snapd/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/stgraber/snapd/teams","hooks_url":"https://api.github.com/repos/stgraber/snapd/hooks","issue_events_url":"https://api.github.com/repos/stgraber/snapd/issues/events{/number}","events_url":"https://api.github.com/repos/stgraber/snapd/events","assignees_url":"https://api.github.com/repos/stgraber/snapd/assignees{/user}","branches_url":"https://api.github.com/repos/stgraber/snapd/branches{/branch}","tags_url":"https://api.github.com/repos/stgraber/snapd/tags","blobs_url":"https://api.github.com/repos/stgraber/snapd/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/stgraber/snapd/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/stgraber/snapd/git/refs{/sha}","trees_url":"https://api.github.com/repos/stgraber/snapd/git/trees{/sha}","statuses_url":"https://api.github.com/repos/stgraber/snapd/statuses/{sha}","languages_url":"https://api.github.com/repos/stgraber/snapd/languages","stargazers_url":"https://api.github.com/repos/stgraber/snapd/stargazers","contributors_url":"https://api.github.com/repos/stgraber/snapd/contributors","subscribers_url":"https://api.github.com/repos/stgraber/snapd/subscribers","subscription_url":"https://api.github.com/repos/stgraber/snapd/subscription","commits_url":"https://api.github.com/repos/stgraber/snapd/commits{/sha}","git_commits_url":"https://api.github.com/repos/stgraber/snapd/git/commits{/sha}","comments_url":"https://api.github.com/repos/stgraber/snapd/comments{/number}","issue_comment_url":"https://api.github.com/repos/stgraber/snapd/issues/comments{/number}","contents_url":"https://api.github.com/repos/stgraber/snapd/contents/{+path}","compare_url":"https://api.github.com/repos/stgraber/snapd/compare/{base}...{head}","merges_url":"https://api.github.com/repos/stgraber/snapd/merges","archive_url":"https://api.github.com/repos/stgraber/snapd/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/stgraber/snapd/downloads","issues_url":"https://api.github.com/repos/stgraber/snapd/issues{/number}","pulls_url":"https://api.github.com/repos/stgraber/snapd/pulls{/number}","milestones_url":"https://api.github.com/repos/stgraber/snapd/milestones{/number}","notifications_url":"https://api.github.com/repos/stgraber/snapd/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/stgraber/snapd/labels{/name}","releases_url":"https://api.github.com/repos/stgraber/snapd/releases{/id}","deployments_url":"https://api.github.com/repos/stgraber/snapd/deployments","created_at":"2016-06-21T23:26:08Z","updated_at":"2016-06-21T23:26:42Z","pushed_at":"2016-07-29T15:51:02Z","git_url":"git://github.com/stgraber/snapd.git","ssh_url":"git@github.com:stgraber/snapd.git","clone_url":"https://github.com/stgraber/snapd.git","svn_url":"https://github.com/stgraber/snapd","homepage":"","size":32957,"stargazers_count":0,"watchers_count":0,"language":"Go","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/stgraber/snapd/pulls/1"},"html":{"href":"https://github.com/stgraber/snapd/pull/1"},"issue":{"href":"https://api.github.com/repos/stgraber/snapd/issues/1"},"comments":{"href":"https://api.github.com/repos/stgraber/snapd/issues/1/comments"},"review_comments":{"href":"https://api.github.com/repos/stgraber/snapd/pulls/1/comments"},"review_comment":{"href":"https://api.github.com/repos/stgraber/snapd/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/stgraber/snapd/pulls/1/commits"},"statuses":{"href":"https://api.github.com/repos/stgraber/snapd/statuses/9eaad3ea8ec078d8710f693762a568b107c188db"}},"merged":false,"mergeable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"commits":2,"additions":202,"deletions":0,"changed_files":5}}
{"actor":{"display_login":"fgimenez"}}