{"action":"created","comment":{"url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/pulls/comments/223399692","pull_request_review_id":162513072,"id":223399692,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyMzM5OTY5Mg==","diff_hunk":"@@ -0,0 +1,236 @@\n+# VMware vrealize Automation Python SDK Community Samples\n+#\n+# Copyright 2018 VMware, Inc.  All rights reserved\t\t\t\t\n+\n+# The MIT license (the â€œLicenseâ€�) set forth below applies to all parts of the VMware vRealize Health Service Code Samples project.  You may not use this file except in compliance with the License.Â \n+\n+# MIT License\n+\n+# Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do\n+# so, subject to the following conditions:\n+\n+# The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n+\n+# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n+\n+################################################################################################\n+#\n+# Test Suite Implementation based on vRHB Service Extensibility SDK Guide\n+#\n+################################################################################################\n+\n+from testsuitebase.testsuitebase import *\n+\n+import requests\n+import ssl\n+import json\n+#instruction to suppress invalid cert warnings output\n+requests.packages.urllib3.disable_warnings()\n+\n+@test_parameter('vra', 'vRealize Automation', 'vraaddress', 'vRA Appliance Address', 'https://server', 'String', '')\n+@test_parameter('vra', 'vRealize Automation', 'vrausername', 'vRA System  Tenant Username', 'username@domain.com', 'String', 'administrator@vsphere.local')\n+@test_parameter('vra', 'vRealize Automation', 'vrapassword', 'vRA System Tenant Password', 'password', 'Password', '')\n+@test_parameter('vra', 'vRealize Automation', 'vratenant',   'vRA System Tenant Name',   'vsphere.local', 'String', '')\n+@test_parameter('vra', 'vRealize Automation', 'vratenantusername', 'vRA Non Default  Tenant Username', 'username@domain.com', 'String', 'tenantadmin@vsphere.local')\n+@test_parameter('vra', 'vRealize Automation', 'vratenantpassword', 'vRA Non Default Tenant Password', 'password', 'Password', '')\n+@test_parameter('vra', 'vRealize Automation', 'vranondeftenant', 'vRA Non Default Tenant Name', 'qe', 'String', '')\n+@test_parameter('vra', 'vRealize Automation', 'numservices', 'Expected # of vRA services', 20, 'Integer', 20)\n+@test_parameter('vra', 'vRealize Automation', 'numendpoints', 'Expected # of distinct vRA endpoints', 20, 'Integer', 20)\n+@test_parameter('vra', 'vRealize Automation', 'numrestypes', 'Expected # of distinct Reservation types in Tenant', 10, 'Integer', 10)\n+@test_suite('vRA Post Upgrade Health Tests Samples', 'A Collection of vRA Post Upgrade Validation Tests', 'vRealize Automation', 7, 5, 0)\n+class vRAUpgradeTestSuite(TestSuiteBase):\n+    \n+    #start login to vRA tenant function definitiion\n+    def login_vra_token(self, url, user, pwd, tenant):\n+\n+        payload1 = \"{\\\"username\\\":\\\"\"+str(user)+\"\\\",\\\"password\\\":\\\"\"+str(pwd)+\"\\\",\\\"tenant\\\":\\\"\"+str(tenant)+\"\\\"}\"\n+        headers = {'Accept': \"application/json\",'Content-Type': \"application/json\",'Cache-Control': \"no-cache\"}\n+\n+        try:\n+             response = requests.request(\"POST\", url, data=payload1, headers=headers, verify=False)\n+             responseJSON = response.json()\n+             if responseJSON != None:\n+                 if  responseJSON.get('id'):\n+                     token = responseJSON['id']\n+                     #print(\"DEBUG: extracted vRA login token:!\")\n+                 else:\n+                     #print (\"DEBUG: failed to authenticate to vRA system tenant, API URL: \"+url+ \" as user: \"+user+\"\\n\")\n+                     token = None \n+             else:\n+                 #print (\"DEBUG: no HTTP response received from vRA system tenant, API URL: \"+url)\n+                 token = None\n+\n+        except Exception as exc:\n+             #print(\"Error: vRA login to: \"+url+\" failed with error message:\" + str(exc))\n+             raise Exception(\"Failed to login to vRA system tenant  URL: \"+url+ \", tenant: \"+tenant+\" as user: \"+user+\"\\n\")\n+        return token\n+\n+    #end of login to vRA tenant function definition \n+\n+\n+    #start function definition of 'get_registered_services'\n+    def get_registered_services(self,url,user,pwd,tenant):\n+   \n+        querystring = {\"page\":\"1\",\"limit\":\"20\"}\n+        payload = \"providing the currently requested pagination and sorting parameters\"\n+        headers = {'Accept': \"application/json\",'Content-Type': \"application/json\",'Cache-Control': \"no-cache\"}\n+        # first obtain a valid token by calling login_vra_token\n+        theToken = self.login_vra_token(url+\"/identity/api/tokens\",user,pwd,tenant)\n+        \n+        if theToken != None:\n+            headers = {'Accept': \"application/json\",'Authorization': \"Bearer \" + theToken,'Cache-Control': \"no-cache\"}\n+            response = requests.request(\"GET\", url+\"/component-registry/services\", data=payload, headers=headers, params=querystring, verify=False)\n+            if response:\n+\n+               #print(\"DEBUG OK - Obtained vRA Registered Services response \\n\")\n+               servicesJSON = json.loads(response.content.decode('utf-8'))\n+               #print(\"DEBUG OK - parsed services into JSON format \\n\")\n+               return servicesJSON['content']\n+            else:\n+               #print(\"DEBUG, PROBLEM: failed to obtain vRA Registered Services!\")\n+               #return response\n+               raise Exception(\"Failed to obtain vRA registered Services for tenant: \" + tenant)\n+        else:\n+            #print(\"DEBUG, PROBLEM: vRA login failed - cannot retrieve services data!\")\n+            return None\n+\n+    #end of get_registered_services function definition\n+\n+    #start Test suite method 'check_registered_services' definition \n+    @test_name(\"Check number of vRA Registered services\")\n+    @test_description(\"Checks that core vRA Services are Registered Post Upgrade\")\n+    @test_access_level(AccessLevel.NORMAL.value)\n+    @test_severity(Severity.NORMAL.value)\n+    @test_remediation(\"https://www.vmware.com/products/vrealize-automation.html\")\n+    @test\n+    def check_registered_services(self,vraaddress,vrausername,vrapassword,vratenant,numservices):\n+\t                              \n+        #invoke class function get_registered_services with \n+        servicesJSON = self.get_registered_services(vraaddress,vrausername,vrapassword,vratenant)\n+\n+        if servicesJSON:\n+            \n+            #print(\"Asserting length of all registered vRA services >= \"+str(numservices)+\" - \" +str(len(servicesJSON)>=int(numservices)))\n+            assert len(servicesJSON) >= int(numservices), \"Number of registered vRA services: \"+ str(len(servicesJSON))+ \" is less than expected: \" + str(numservices)\n+            \n+        else:\n+            #if NULL - return false\n+            #print(\"No registered vRA services were retrieved - FAILED HEALTH TEST!\")\n+            assert False, \"vRA Registered Services were not retrieved - FAILING HEALTH TEST!\"\n+\n+        return True\n+    #end of Test suite method 'check_registered_services' definition\n+\t\n+    #Start function definition to obtain distinct endpoint types in vRA tenant\n+    def get_distinct_endpoint_types(self,url,user,pwd,tenant):\n+         \n+         #first, login to VRA specific tenant identified by 'tenant'\n+         theToken = self.login_vra_token(url + \"/identity/api/tokens\", user, pwd, tenant)\n+         \n+         if theToken != None:\n+             headers = {'Accept': \"application/json\", 'Authorization': \"Bearer \" + theToken,'Cache-Control': \"no-cache\"}\n+             querystring = {\"page\": \"1\", \"limit\": \"20\"}\n+             response = requests.request(\"GET\", url+\"/component-registry/endpoints/types\", headers=headers, params=querystring, verify=False)\n+             if response:\n+                 #print(\"DEBUG SO FAR OK - Obtained vRA Distinct Endpoint types response \\n\")\n+                 # servicesJSON = json.loads(response.content)\n+                 endpointsJSON = json.loads(response.content.decode('utf-8'))\n+                 #print(\"DEBUG OK - parsed Distinct Endpoint types into JSON format! \\n\")\n+                 return endpointsJSON['content']\n+             else:\n+                 #print(\"DEBUG, PROBLEM: failed to obtain Distinct Endpoint types!\")\n+                 #return response\n+                 raise Exception(\"Failed to obtain distinct vRA Endpoint types for tenant: \"+tenant)\n+\n+         else:\n+             #print(\"DEBUG, PROBLEM: vRA login failed - cannot retrieve distinct Endpoints data!\")\n+             return None\n+\n+    #end function definition to obtain distinct endpoint types in vRA tenant\n+\n+    #start Test suite method 'check_distinct_endpoints' definition\n+    @test_name(\"Check number of vRA Distinct Endpoints\")\n+    @test_description(\"Checks that expected number of Distinct vRA Endpoints is available\")\n+    @test_access_level(AccessLevel.NORMAL.value)\n+    @test_severity(Severity.NORMAL.value)\n+    @test_remediation(\"https://www.vmware.com/products/vrealize-automation.html\")\n+    @test\n+    def check_distinct_endpoints(self, vraaddress, vrausername, vrapassword, vratenant, numendpoints):\n+        \n+        endpointsJSON = self.get_distinct_endpoint_types(vraaddress, vrausername, vrapassword, vratenant)\n+\n+        if endpointsJSON:\n+            #print(\"Asserting length of all Distinct VRA endpoints >= \" + str(numendpoints) + \" - \" + str(len(endpointsJSON) >= int(numendpoints)))\n+            assert len(endpointsJSON) >= int(numendpoints), \"Number of Distinct vRA endpoints: \" + str(len(endpointsJSON)) + \" is less than expected: \" + str(numendpoints)","path":"vra-services-check/src/testsuite_module/vrahealthtestsuite.py","position":164,"original_position":164,"commit_id":"be4c98cc64b4e85a974d840683ce3ccb65151c63","original_commit_id":"be4c98cc64b4e85a974d840683ce3ccb65151c63","user":{"login":"jeffwcook","id":18197854,"node_id":"MDQ6VXNlcjE4MTk3ODU0","avatar_url":"https://avatars2.githubusercontent.com/u/18197854?v=4","gravatar_id":"","url":"https://api.github.com/users/jeffwcook","html_url":"https://github.com/jeffwcook","followers_url":"https://api.github.com/users/jeffwcook/followers","following_url":"https://api.github.com/users/jeffwcook/following{/other_user}","gists_url":"https://api.github.com/users/jeffwcook/gists{/gist_id}","starred_url":"https://api.github.com/users/jeffwcook/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jeffwcook/subscriptions","organizations_url":"https://api.github.com/users/jeffwcook/orgs","repos_url":"https://api.github.com/users/jeffwcook/repos","events_url":"https://api.github.com/users/jeffwcook/events{/privacy}","received_events_url":"https://api.github.com/users/jeffwcook/received_events","type":"User","site_admin":false},"body":"Is there a way to display which endpoint is actually missing?","created_at":"2018-10-08T15:10:57Z","updated_at":"2018-10-08T15:11:28Z","html_url":"https://github.com/vmwaresamples/vra-health-samples/pull/4#discussion_r223399692","pull_request_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/pulls/4","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/vmwaresamples/vra-health-samples/pulls/comments/223399692"},"html":{"href":"https://github.com/vmwaresamples/vra-health-samples/pull/4#discussion_r223399692"},"pull_request":{"href":"https://api.github.com/repos/vmwaresamples/vra-health-samples/pulls/4"}}},"pull_request":{"url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/pulls/4","id":220856683,"node_id":"MDExOlB1bGxSZXF1ZXN0MjIwODU2Njgz","html_url":"https://github.com/vmwaresamples/vra-health-samples/pull/4","diff_url":"https://github.com/vmwaresamples/vra-health-samples/pull/4.diff","patch_url":"https://github.com/vmwaresamples/vra-health-samples/pull/4.patch","issue_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/issues/4","number":4,"state":"open","locked":false,"title":"Please review new Health test SDK samples in the vra-services-check folder ","user":{"login":"dzilbermanvmw","id":42846514,"node_id":"MDQ6VXNlcjQyODQ2NTE0","avatar_url":"https://avatars3.githubusercontent.com/u/42846514?v=4","gravatar_id":"","url":"https://api.github.com/users/dzilbermanvmw","html_url":"https://github.com/dzilbermanvmw","followers_url":"https://api.github.com/users/dzilbermanvmw/followers","following_url":"https://api.github.com/users/dzilbermanvmw/following{/other_user}","gists_url":"https://api.github.com/users/dzilbermanvmw/gists{/gist_id}","starred_url":"https://api.github.com/users/dzilbermanvmw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dzilbermanvmw/subscriptions","organizations_url":"https://api.github.com/users/dzilbermanvmw/orgs","repos_url":"https://api.github.com/users/dzilbermanvmw/repos","events_url":"https://api.github.com/users/dzilbermanvmw/events{/privacy}","received_events_url":"https://api.github.com/users/dzilbermanvmw/received_events","type":"User","site_admin":false},"body":"I have forked into a clean repo, added my changes under 'vra-services-check' folder and verified they indeed contain the changes suggested by the maintainer. \r\nPlease review and let me know if any other changes needed. ","created_at":"2018-10-06T01:22:39Z","updated_at":"2018-10-08T15:11:28Z","closed_at":null,"merged_at":null,"merge_commit_sha":"72819f446ba111fd4daca34f19d5bcb4996d52f5","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":1064776338,"node_id":"MDU6TGFiZWwxMDY0Nzc2MzM4","url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/labels/dco-required","name":"dco-required","color":"fc2929","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/pulls/4/commits","review_comments_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/pulls/4/comments","review_comment_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/pulls/comments{/number}","comments_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/issues/4/comments","statuses_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/statuses/be4c98cc64b4e85a974d840683ce3ccb65151c63","head":{"label":"dzilbermanvmw:master","ref":"master","sha":"be4c98cc64b4e85a974d840683ce3ccb65151c63","user":{"login":"dzilbermanvmw","id":42846514,"node_id":"MDQ6VXNlcjQyODQ2NTE0","avatar_url":"https://avatars3.githubusercontent.com/u/42846514?v=4","gravatar_id":"","url":"https://api.github.com/users/dzilbermanvmw","html_url":"https://github.com/dzilbermanvmw","followers_url":"https://api.github.com/users/dzilbermanvmw/followers","following_url":"https://api.github.com/users/dzilbermanvmw/following{/other_user}","gists_url":"https://api.github.com/users/dzilbermanvmw/gists{/gist_id}","starred_url":"https://api.github.com/users/dzilbermanvmw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dzilbermanvmw/subscriptions","organizations_url":"https://api.github.com/users/dzilbermanvmw/orgs","repos_url":"https://api.github.com/users/dzilbermanvmw/repos","events_url":"https://api.github.com/users/dzilbermanvmw/events{/privacy}","received_events_url":"https://api.github.com/users/dzilbermanvmw/received_events","type":"User","site_admin":false},"repo":{"id":151792904,"node_id":"MDEwOlJlcG9zaXRvcnkxNTE3OTI5MDQ=","name":"vra-health-samples","full_name":"dzilbermanvmw/vra-health-samples","private":false,"owner":{"login":"dzilbermanvmw","id":42846514,"node_id":"MDQ6VXNlcjQyODQ2NTE0","avatar_url":"https://avatars3.githubusercontent.com/u/42846514?v=4","gravatar_id":"","url":"https://api.github.com/users/dzilbermanvmw","html_url":"https://github.com/dzilbermanvmw","followers_url":"https://api.github.com/users/dzilbermanvmw/followers","following_url":"https://api.github.com/users/dzilbermanvmw/following{/other_user}","gists_url":"https://api.github.com/users/dzilbermanvmw/gists{/gist_id}","starred_url":"https://api.github.com/users/dzilbermanvmw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dzilbermanvmw/subscriptions","organizations_url":"https://api.github.com/users/dzilbermanvmw/orgs","repos_url":"https://api.github.com/users/dzilbermanvmw/repos","events_url":"https://api.github.com/users/dzilbermanvmw/events{/privacy}","received_events_url":"https://api.github.com/users/dzilbermanvmw/received_events","type":"User","site_admin":false},"html_url":"https://github.com/dzilbermanvmw/vra-health-samples","description":"VMware vRealize health service code samples","fork":true,"url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples","forks_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/forks","keys_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/teams","hooks_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/hooks","issue_events_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/issues/events{/number}","events_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/events","assignees_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/assignees{/user}","branches_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/branches{/branch}","tags_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/tags","blobs_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/git/refs{/sha}","trees_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/statuses/{sha}","languages_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/languages","stargazers_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/stargazers","contributors_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/contributors","subscribers_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/subscribers","subscription_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/subscription","commits_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/commits{/sha}","git_commits_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/git/commits{/sha}","comments_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/comments{/number}","issue_comment_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/issues/comments{/number}","contents_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/contents/{+path}","compare_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/merges","archive_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/downloads","issues_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/issues{/number}","pulls_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/pulls{/number}","milestones_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/milestones{/number}","notifications_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/labels{/name}","releases_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/releases{/id}","deployments_url":"https://api.github.com/repos/dzilbermanvmw/vra-health-samples/deployments","created_at":"2018-10-06T00:59:12Z","updated_at":"2018-10-06T01:18:08Z","pushed_at":"2018-10-06T01:18:07Z","git_url":"git://github.com/dzilbermanvmw/vra-health-samples.git","ssh_url":"git@github.com:dzilbermanvmw/vra-health-samples.git","clone_url":"https://github.com/dzilbermanvmw/vra-health-samples.git","svn_url":"https://github.com/dzilbermanvmw/vra-health-samples","homepage":null,"size":85,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"other","name":"NOASSERTION","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"vmwaresamples:master","ref":"master","sha":"c170858337575e087e136444932b393ff6fd637f","user":{"login":"vmwaresamples","id":24528178,"node_id":"MDEyOk9yZ2FuaXphdGlvbjI0NTI4MTc4","avatar_url":"https://avatars3.githubusercontent.com/u/24528178?v=4","gravatar_id":"","url":"https://api.github.com/users/vmwaresamples","html_url":"https://github.com/vmwaresamples","followers_url":"https://api.github.com/users/vmwaresamples/followers","following_url":"https://api.github.com/users/vmwaresamples/following{/other_user}","gists_url":"https://api.github.com/users/vmwaresamples/gists{/gist_id}","starred_url":"https://api.github.com/users/vmwaresamples/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vmwaresamples/subscriptions","organizations_url":"https://api.github.com/users/vmwaresamples/orgs","repos_url":"https://api.github.com/users/vmwaresamples/repos","events_url":"https://api.github.com/users/vmwaresamples/events{/privacy}","received_events_url":"https://api.github.com/users/vmwaresamples/received_events","type":"Organization","site_admin":false},"repo":{"id":130116699,"node_id":"MDEwOlJlcG9zaXRvcnkxMzAxMTY2OTk=","name":"vra-health-samples","full_name":"vmwaresamples/vra-health-samples","private":false,"owner":{"login":"vmwaresamples","id":24528178,"node_id":"MDEyOk9yZ2FuaXphdGlvbjI0NTI4MTc4","avatar_url":"https://avatars3.githubusercontent.com/u/24528178?v=4","gravatar_id":"","url":"https://api.github.com/users/vmwaresamples","html_url":"https://github.com/vmwaresamples","followers_url":"https://api.github.com/users/vmwaresamples/followers","following_url":"https://api.github.com/users/vmwaresamples/following{/other_user}","gists_url":"https://api.github.com/users/vmwaresamples/gists{/gist_id}","starred_url":"https://api.github.com/users/vmwaresamples/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vmwaresamples/subscriptions","organizations_url":"https://api.github.com/users/vmwaresamples/orgs","repos_url":"https://api.github.com/users/vmwaresamples/repos","events_url":"https://api.github.com/users/vmwaresamples/events{/privacy}","received_events_url":"https://api.github.com/users/vmwaresamples/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/vmwaresamples/vra-health-samples","description":"VMware vRealize health service code samples","fork":false,"url":"https://api.github.com/repos/vmwaresamples/vra-health-samples","forks_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/forks","keys_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/keys{/key_id}","collaborators_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/teams","hooks_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/hooks","issue_events_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/issues/events{/number}","events_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/events","assignees_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/assignees{/user}","branches_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/branches{/branch}","tags_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/tags","blobs_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/git/refs{/sha}","trees_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/git/trees{/sha}","statuses_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/statuses/{sha}","languages_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/languages","stargazers_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/stargazers","contributors_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/contributors","subscribers_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/subscribers","subscription_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/subscription","commits_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/commits{/sha}","git_commits_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/git/commits{/sha}","comments_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/comments{/number}","issue_comment_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/issues/comments{/number}","contents_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/contents/{+path}","compare_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/compare/{base}...{head}","merges_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/merges","archive_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/downloads","issues_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/issues{/number}","pulls_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/pulls{/number}","milestones_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/milestones{/number}","notifications_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/labels{/name}","releases_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/releases{/id}","deployments_url":"https://api.github.com/repos/vmwaresamples/vra-health-samples/deployments","created_at":"2018-04-18T20:12:53Z","updated_at":"2018-10-02T15:25:41Z","pushed_at":"2018-10-06T01:22:40Z","git_url":"git://github.com/vmwaresamples/vra-health-samples.git","ssh_url":"git@github.com:vmwaresamples/vra-health-samples.git","clone_url":"https://github.com/vmwaresamples/vra-health-samples.git","svn_url":"https://github.com/vmwaresamples/vra-health-samples","homepage":null,"size":60,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":2,"mirror_url":null,"archived":false,"open_issues_count":1,"license":{"key":"other","name":"NOASSERTION","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":2,"open_issues":1,"watchers":1,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/vmwaresamples/vra-health-samples/pulls/4"},"html":{"href":"https://github.com/vmwaresamples/vra-health-samples/pull/4"},"issue":{"href":"https://api.github.com/repos/vmwaresamples/vra-health-samples/issues/4"},"comments":{"href":"https://api.github.com/repos/vmwaresamples/vra-health-samples/issues/4/comments"},"review_comments":{"href":"https://api.github.com/repos/vmwaresamples/vra-health-samples/pulls/4/comments"},"review_comment":{"href":"https://api.github.com/repos/vmwaresamples/vra-health-samples/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/vmwaresamples/vra-health-samples/pulls/4/commits"},"statuses":{"href":"https://api.github.com/repos/vmwaresamples/vra-health-samples/statuses/be4c98cc64b4e85a974d840683ce3ccb65151c63"}},"author_association":"NONE"}}
{"actor":{"display_login":"jeffwcook"}}