{"action":"created","comment":{"url":"https://api.github.com/repos/ARM-software/workload-automation/pulls/comments/68975050","id":68975050,"diff_hunk":"@@ -522,3 +540,16 @@ def get_owner_path(resource):\n         return os.path.join(os.path.dirname(__base_filepath), 'common')\n     else:\n         return os.path.dirname(sys.modules[resource.owner.__module__].__file__)\n+\n+\n+def get_abi_specific_path(resource, base_dir, extension, enforce=False):\n+    # Note: Using device.get_abi() method instead of the property device.abi property\n+    # The property is not yet set or available at this point in the execution flow\n+    abi_dir = os.path.join(base_dir, extension, resource.owner.device.get_abi())","path":"wlauto/resource_getters/standard.py","position":67,"original_position":67,"commit_id":"843f8bbd92e1537fe7287dd2fe63d8933cbe513b","original_commit_id":"843f8bbd92e1537fe7287dd2fe63d8933cbe513b","user":{"login":"muendelezaji","id":1127221,"avatar_url":"https://avatars.githubusercontent.com/u/1127221?v=3","gravatar_id":"","url":"https://api.github.com/users/muendelezaji","html_url":"https://github.com/muendelezaji","followers_url":"https://api.github.com/users/muendelezaji/followers","following_url":"https://api.github.com/users/muendelezaji/following{/other_user}","gists_url":"https://api.github.com/users/muendelezaji/gists{/gist_id}","starred_url":"https://api.github.com/users/muendelezaji/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/muendelezaji/subscriptions","organizations_url":"https://api.github.com/users/muendelezaji/orgs","repos_url":"https://api.github.com/users/muendelezaji/repos","events_url":"https://api.github.com/users/muendelezaji/events{/privacy}","received_events_url":"https://api.github.com/users/muendelezaji/received_events","type":"User","site_admin":false},"body":"Changed. Would it also make sense to rename this method to `get_platform_specific_path`, and the `kwargs` argument as `check_platform` (or something similar)?\r\n","created_at":"2016-06-29T15:59:15Z","updated_at":"2016-06-29T15:59:15Z","html_url":"https://github.com/ARM-software/workload-automation/pull/190#discussion_r68975050","pull_request_url":"https://api.github.com/repos/ARM-software/workload-automation/pulls/190","_links":{"self":{"href":"https://api.github.com/repos/ARM-software/workload-automation/pulls/comments/68975050"},"html":{"href":"https://github.com/ARM-software/workload-automation/pull/190#discussion_r68975050"},"pull_request":{"href":"https://api.github.com/repos/ARM-software/workload-automation/pulls/190"}}},"pull_request":{"url":"https://api.github.com/repos/ARM-software/workload-automation/pulls/190","id":75651799,"html_url":"https://github.com/ARM-software/workload-automation/pull/190","diff_url":"https://github.com/ARM-software/workload-automation/pull/190.diff","patch_url":"https://github.com/ARM-software/workload-automation/pull/190.patch","issue_url":"https://api.github.com/repos/ARM-software/workload-automation/issues/190","number":190,"state":"open","locked":false,"title":"Apk version check","user":{"login":"muendelezaji","id":1127221,"avatar_url":"https://avatars.githubusercontent.com/u/1127221?v=3","gravatar_id":"","url":"https://api.github.com/users/muendelezaji","html_url":"https://github.com/muendelezaji","followers_url":"https://api.github.com/users/muendelezaji/followers","following_url":"https://api.github.com/users/muendelezaji/following{/other_user}","gists_url":"https://api.github.com/users/muendelezaji/gists{/gist_id}","starred_url":"https://api.github.com/users/muendelezaji/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/muendelezaji/subscriptions","organizations_url":"https://api.github.com/users/muendelezaji/orgs","repos_url":"https://api.github.com/users/muendelezaji/repos","events_url":"https://api.github.com/users/muendelezaji/events{/privacy}","received_events_url":"https://api.github.com/users/muendelezaji/received_events","type":"User","site_admin":false},"body":"Opening this for discussion, originally was [this PR](https://github.com/jimboatarm/workload-automation/pull/118)\r\n\r\n**Replace APK during install**\r\n - Use `-g` and `-r` flags with `adb install` if necessary. The `-g` flag is used to grant all runtime permissions at installation time on API 23 and above. The `-r` flag tells `adb` to replace existing APK if found (sometimes uninstall does not fully remove the package e.g. for built-in apps).\r\n\r\n**Check APK version and ABI**\r\n - When the `version` attribute is specified in the workload, the execution will now validate it against the provided APK's `versionName` property, and raise a `WorkloadError` if they do not match.\r\n\r\n - Added `check_apk_abi` parameter to `ApkWorkload` which is disabled by default. If enabled in the workload/agenda, the resource resolver will try to locate the APK in the ABI-specific folder (see note below) and raise an error if not found.\r\nBy default (i.e. when disabled), if APK is not found in this path the resolver falls back to the `root` path as per current behaviour.\r\n\r\n**Note:**\r\n- The ABI check follows the same principle as that for deploying binary files [described here]\r\n(https://github.com/jimboatarm/workload-automation/blob/master/doc/source/writing_extensions.rst#deploying-executables-to-a-device). Folder path is in the form `<root>/apk/<abi>/<apk_name>`. Where `root` is the base resource location e.g. `~/.workload_automation/dependencies/<extension_name>`.","created_at":"2016-06-29T13:52:50Z","updated_at":"2016-06-29T15:59:15Z","closed_at":null,"merged_at":null,"merge_commit_sha":"c09ac8d854fa4ebacd7e94776e0a4c823660aa63","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/ARM-software/workload-automation/pulls/190/commits","review_comments_url":"https://api.github.com/repos/ARM-software/workload-automation/pulls/190/comments","review_comment_url":"https://api.github.com/repos/ARM-software/workload-automation/pulls/comments{/number}","comments_url":"https://api.github.com/repos/ARM-software/workload-automation/issues/190/comments","statuses_url":"https://api.github.com/repos/ARM-software/workload-automation/statuses/843f8bbd92e1537fe7287dd2fe63d8933cbe513b","head":{"label":"jimboatarm:upstream-apk-check","ref":"upstream-apk-check","sha":"843f8bbd92e1537fe7287dd2fe63d8933cbe513b","user":{"login":"jimboatarm","id":18032086,"avatar_url":"https://avatars.githubusercontent.com/u/18032086?v=3","gravatar_id":"","url":"https://api.github.com/users/jimboatarm","html_url":"https://github.com/jimboatarm","followers_url":"https://api.github.com/users/jimboatarm/followers","following_url":"https://api.github.com/users/jimboatarm/following{/other_user}","gists_url":"https://api.github.com/users/jimboatarm/gists{/gist_id}","starred_url":"https://api.github.com/users/jimboatarm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jimboatarm/subscriptions","organizations_url":"https://api.github.com/users/jimboatarm/orgs","repos_url":"https://api.github.com/users/jimboatarm/repos","events_url":"https://api.github.com/users/jimboatarm/events{/privacy}","received_events_url":"https://api.github.com/users/jimboatarm/received_events","type":"User","site_admin":false},"repo":{"id":55431582,"name":"workload-automation","full_name":"jimboatarm/workload-automation","owner":{"login":"jimboatarm","id":18032086,"avatar_url":"https://avatars.githubusercontent.com/u/18032086?v=3","gravatar_id":"","url":"https://api.github.com/users/jimboatarm","html_url":"https://github.com/jimboatarm","followers_url":"https://api.github.com/users/jimboatarm/followers","following_url":"https://api.github.com/users/jimboatarm/following{/other_user}","gists_url":"https://api.github.com/users/jimboatarm/gists{/gist_id}","starred_url":"https://api.github.com/users/jimboatarm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jimboatarm/subscriptions","organizations_url":"https://api.github.com/users/jimboatarm/orgs","repos_url":"https://api.github.com/users/jimboatarm/repos","events_url":"https://api.github.com/users/jimboatarm/events{/privacy}","received_events_url":"https://api.github.com/users/jimboatarm/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jimboatarm/workload-automation","description":"A framework for automating workload execution and measurement collection on ARM devices.","fork":true,"url":"https://api.github.com/repos/jimboatarm/workload-automation","forks_url":"https://api.github.com/repos/jimboatarm/workload-automation/forks","keys_url":"https://api.github.com/repos/jimboatarm/workload-automation/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jimboatarm/workload-automation/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jimboatarm/workload-automation/teams","hooks_url":"https://api.github.com/repos/jimboatarm/workload-automation/hooks","issue_events_url":"https://api.github.com/repos/jimboatarm/workload-automation/issues/events{/number}","events_url":"https://api.github.com/repos/jimboatarm/workload-automation/events","assignees_url":"https://api.github.com/repos/jimboatarm/workload-automation/assignees{/user}","branches_url":"https://api.github.com/repos/jimboatarm/workload-automation/branches{/branch}","tags_url":"https://api.github.com/repos/jimboatarm/workload-automation/tags","blobs_url":"https://api.github.com/repos/jimboatarm/workload-automation/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jimboatarm/workload-automation/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jimboatarm/workload-automation/git/refs{/sha}","trees_url":"https://api.github.com/repos/jimboatarm/workload-automation/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jimboatarm/workload-automation/statuses/{sha}","languages_url":"https://api.github.com/repos/jimboatarm/workload-automation/languages","stargazers_url":"https://api.github.com/repos/jimboatarm/workload-automation/stargazers","contributors_url":"https://api.github.com/repos/jimboatarm/workload-automation/contributors","subscribers_url":"https://api.github.com/repos/jimboatarm/workload-automation/subscribers","subscription_url":"https://api.github.com/repos/jimboatarm/workload-automation/subscription","commits_url":"https://api.github.com/repos/jimboatarm/workload-automation/commits{/sha}","git_commits_url":"https://api.github.com/repos/jimboatarm/workload-automation/git/commits{/sha}","comments_url":"https://api.github.com/repos/jimboatarm/workload-automation/comments{/number}","issue_comment_url":"https://api.github.com/repos/jimboatarm/workload-automation/issues/comments{/number}","contents_url":"https://api.github.com/repos/jimboatarm/workload-automation/contents/{+path}","compare_url":"https://api.github.com/repos/jimboatarm/workload-automation/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jimboatarm/workload-automation/merges","archive_url":"https://api.github.com/repos/jimboatarm/workload-automation/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jimboatarm/workload-automation/downloads","issues_url":"https://api.github.com/repos/jimboatarm/workload-automation/issues{/number}","pulls_url":"https://api.github.com/repos/jimboatarm/workload-automation/pulls{/number}","milestones_url":"https://api.github.com/repos/jimboatarm/workload-automation/milestones{/number}","notifications_url":"https://api.github.com/repos/jimboatarm/workload-automation/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jimboatarm/workload-automation/labels{/name}","releases_url":"https://api.github.com/repos/jimboatarm/workload-automation/releases{/id}","deployments_url":"https://api.github.com/repos/jimboatarm/workload-automation/deployments","created_at":"2016-04-04T17:37:53Z","updated_at":"2016-06-23T12:38:13Z","pushed_at":"2016-06-29T13:05:56Z","git_url":"git://github.com/jimboatarm/workload-automation.git","ssh_url":"git@github.com:jimboatarm/workload-automation.git","clone_url":"https://github.com/jimboatarm/workload-automation.git","svn_url":"https://github.com/jimboatarm/workload-automation","homepage":null,"size":44977,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":20,"forks":1,"open_issues":20,"watchers":2,"default_branch":"master"}},"base":{"label":"ARM-software:master","ref":"master","sha":"071bf9fba7179f74924d0d69a038bffec51a0619","user":{"login":"ARM-software","id":5690313,"avatar_url":"https://avatars.githubusercontent.com/u/5690313?v=3","gravatar_id":"","url":"https://api.github.com/users/ARM-software","html_url":"https://github.com/ARM-software","followers_url":"https://api.github.com/users/ARM-software/followers","following_url":"https://api.github.com/users/ARM-software/following{/other_user}","gists_url":"https://api.github.com/users/ARM-software/gists{/gist_id}","starred_url":"https://api.github.com/users/ARM-software/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ARM-software/subscriptions","organizations_url":"https://api.github.com/users/ARM-software/orgs","repos_url":"https://api.github.com/users/ARM-software/repos","events_url":"https://api.github.com/users/ARM-software/events{/privacy}","received_events_url":"https://api.github.com/users/ARM-software/received_events","type":"Organization","site_admin":false},"repo":{"id":31957801,"name":"workload-automation","full_name":"ARM-software/workload-automation","owner":{"login":"ARM-software","id":5690313,"avatar_url":"https://avatars.githubusercontent.com/u/5690313?v=3","gravatar_id":"","url":"https://api.github.com/users/ARM-software","html_url":"https://github.com/ARM-software","followers_url":"https://api.github.com/users/ARM-software/followers","following_url":"https://api.github.com/users/ARM-software/following{/other_user}","gists_url":"https://api.github.com/users/ARM-software/gists{/gist_id}","starred_url":"https://api.github.com/users/ARM-software/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ARM-software/subscriptions","organizations_url":"https://api.github.com/users/ARM-software/orgs","repos_url":"https://api.github.com/users/ARM-software/repos","events_url":"https://api.github.com/users/ARM-software/events{/privacy}","received_events_url":"https://api.github.com/users/ARM-software/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/ARM-software/workload-automation","description":"A framework for automating workload execution and measurement collection on ARM devices.","fork":false,"url":"https://api.github.com/repos/ARM-software/workload-automation","forks_url":"https://api.github.com/repos/ARM-software/workload-automation/forks","keys_url":"https://api.github.com/repos/ARM-software/workload-automation/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ARM-software/workload-automation/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ARM-software/workload-automation/teams","hooks_url":"https://api.github.com/repos/ARM-software/workload-automation/hooks","issue_events_url":"https://api.github.com/repos/ARM-software/workload-automation/issues/events{/number}","events_url":"https://api.github.com/repos/ARM-software/workload-automation/events","assignees_url":"https://api.github.com/repos/ARM-software/workload-automation/assignees{/user}","branches_url":"https://api.github.com/repos/ARM-software/workload-automation/branches{/branch}","tags_url":"https://api.github.com/repos/ARM-software/workload-automation/tags","blobs_url":"https://api.github.com/repos/ARM-software/workload-automation/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ARM-software/workload-automation/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ARM-software/workload-automation/git/refs{/sha}","trees_url":"https://api.github.com/repos/ARM-software/workload-automation/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ARM-software/workload-automation/statuses/{sha}","languages_url":"https://api.github.com/repos/ARM-software/workload-automation/languages","stargazers_url":"https://api.github.com/repos/ARM-software/workload-automation/stargazers","contributors_url":"https://api.github.com/repos/ARM-software/workload-automation/contributors","subscribers_url":"https://api.github.com/repos/ARM-software/workload-automation/subscribers","subscription_url":"https://api.github.com/repos/ARM-software/workload-automation/subscription","commits_url":"https://api.github.com/repos/ARM-software/workload-automation/commits{/sha}","git_commits_url":"https://api.github.com/repos/ARM-software/workload-automation/git/commits{/sha}","comments_url":"https://api.github.com/repos/ARM-software/workload-automation/comments{/number}","issue_comment_url":"https://api.github.com/repos/ARM-software/workload-automation/issues/comments{/number}","contents_url":"https://api.github.com/repos/ARM-software/workload-automation/contents/{+path}","compare_url":"https://api.github.com/repos/ARM-software/workload-automation/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ARM-software/workload-automation/merges","archive_url":"https://api.github.com/repos/ARM-software/workload-automation/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ARM-software/workload-automation/downloads","issues_url":"https://api.github.com/repos/ARM-software/workload-automation/issues{/number}","pulls_url":"https://api.github.com/repos/ARM-software/workload-automation/pulls{/number}","milestones_url":"https://api.github.com/repos/ARM-software/workload-automation/milestones{/number}","notifications_url":"https://api.github.com/repos/ARM-software/workload-automation/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ARM-software/workload-automation/labels{/name}","releases_url":"https://api.github.com/repos/ARM-software/workload-automation/releases{/id}","deployments_url":"https://api.github.com/repos/ARM-software/workload-automation/deployments","created_at":"2015-03-10T13:05:03Z","updated_at":"2016-06-21T22:25:21Z","pushed_at":"2016-06-29T13:52:50Z","git_url":"git://github.com/ARM-software/workload-automation.git","ssh_url":"git@github.com:ARM-software/workload-automation.git","clone_url":"https://github.com/ARM-software/workload-automation.git","svn_url":"https://github.com/ARM-software/workload-automation","homepage":null,"size":43652,"stargazers_count":33,"watchers_count":33,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":29,"mirror_url":null,"open_issues_count":9,"forks":29,"open_issues":9,"watchers":33,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/ARM-software/workload-automation/pulls/190"},"html":{"href":"https://github.com/ARM-software/workload-automation/pull/190"},"issue":{"href":"https://api.github.com/repos/ARM-software/workload-automation/issues/190"},"comments":{"href":"https://api.github.com/repos/ARM-software/workload-automation/issues/190/comments"},"review_comments":{"href":"https://api.github.com/repos/ARM-software/workload-automation/pulls/190/comments"},"review_comment":{"href":"https://api.github.com/repos/ARM-software/workload-automation/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/ARM-software/workload-automation/pulls/190/commits"},"statuses":{"href":"https://api.github.com/repos/ARM-software/workload-automation/statuses/843f8bbd92e1537fe7287dd2fe63d8933cbe513b"}}}}
{"actor":{"display_login":"muendelezaji"}}