payload: {"action":"created","comment":{"url":"https://api.github.com/repos/opensds/opensds/pulls/comments/360836421","pull_request_review_id":335772657,"id":360836421,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDM2MDgzNjQyMQ==","diff_hunk":"@@ -0,0 +1,275 @@\n+// Copyright 2019 The OpenSDS Authors.\n+//\n+// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n+// not use this file except in compliance with the License. You may obtain\n+// a copy of the License at\n+//\n+//     http://www.apache.org/licenses/LICENSE-2.0\n+//\n+// Unless required by applicable law or agreed to in writing, software\n+// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n+// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n+// License for the specific language governing permissions and limitations\n+// under the License.\n+\n+package ibm\n+\n+import (\n+\t\"strconv\"\n+\t\"strings\"\n+\n+\tlog \"github.com/golang/glog\"\n+\t. \"github.com/opensds/opensds/contrib/drivers/utils/config\"\n+\t\"github.com/opensds/opensds/pkg/model\"\n+\tpb \"github.com/opensds/opensds/pkg/model/proto\"\n+\t\"github.com/opensds/opensds/pkg/utils/config\"\n+\tuuid \"github.com/satori/go.uuid\"\n+)\n+\n+const (\n+\tdefaultTgtConfDir = \"/etc/tgt/conf.d\"\n+\tdefaultTgtBindIp  = \"127.0.0.1\"\n+\tusername          = \"root\"\n+\tpassword          = \"ibm\"\n+\tport              = \"2022\"\n+\tdefaultConfPath   = \"/etc/opensds/driver/ibm.yaml\"\n+\tvolumePrefix      = \"volume-\"\n+\tsnapshotPrefix    = \"_snapshot-\"\n+\tblocksize         = 4096\n+\tsizeShiftBit      = 30\n+\topensdsnvmepool   = \"opensds-nvmegroup\"\n+\tnvmeofAccess      = \"nvmeof\"\n+\tiscsiAccess       = \"iscsi\"\n+\tstorageType       = \"block\"\n+)\n+\n+const (\n+\tKLvIdFormat = \"NAA\"\n+\tFileSetPath = \"FilesetPath\"\n+\tSnapshotName = \"SnapshotName\"\n+)\n+\n+type IBMConfig struct {\n+\tTgtBindIp      string                    `yaml:\"tgtBindIp\"`\n+\tUserName       string                    `yaml:\"username\"`\n+\tPassword       string                    `yaml:\"password\"`\n+\tPort           string                    `yaml:\"port\"`\n+\tTgtConfDir     string                    `yaml:\"tgtConfDir\"`\n+\tEnableChapAuth bool                      `yaml:\"enableChapAuth\"`\n+\tPool           map[string]PoolProperties `yaml:\"pool,flow\"`\n+}\n+\n+type Driver struct {\n+\tconf *IBMConfig\n+\tcli  *Cli\n+}\n+\n+func (d *Driver) Setup() error {\n+\t// Read ibm config file\n+\td.conf = &IBMConfig{\n+\t\t TgtBindIp: defaultTgtBindIp,\n+\t\t TgtConfDir: defaultTgtConfDir,\n+\t\t UserName: username,\n+                 Port: port,\n+                 Password: password,\n+\t}\n+\tp := config.CONF.OsdsDock.Backends.IBM.ConfigPath\n+\tif \"\" == p {\n+\t\tp = defaultConfPath\n+\t}\n+\tif _, err := Parse(d.conf, p); err != nil {\n+\t\treturn err\n+\t}\n+\terr:= login()\n+\tif err != nil {\n+\t\treturn err\n+\t}\n+\n+\treturn nil\n+}\n+\n+func (*Driver) Unset() error { return nil }\n+\n+// first get the status of spectrumstate. If it is not active just return\n+func (d *Driver) CreateVolume(opt *pb.CreateVolumeOpts) (vol *model.VolumeSpec, err error) {\n+\t\t err = d.cli.GetSpectrumScaleStatus()\n+\t\t if err != nil{\n+\t\t\t log.Error(\"the GPFS cluster is not active\")\n+\t\t\t return &model.VolumeSpec{}, err\n+\t\t }\n+\t\t // if spectrumscale service is active, create volume(fileset)\n+\t\t log.Info(\"IBM driver receive create volume request, vr =\", opt)\n+\t\t var volName = volumePrefix + opt.GetId()\n+\t\t var volSize = opt.GetSize()\n+\t\t size := strconv.FormatInt(int64(volSize), 10)\n+\t\t if err = d.cli.CreateVolume(volName, size); err != nil {\n+\t \t\treturn &model.VolumeSpec{}, err\n+\t \t}\n+\n+                var mountPoint string\n+\t\tmountPoint, err = d.cli.GetSpectrumScaleMountPoint()\n+\n+\t\tif err != nil{\n+\t\t\tlog.Error(\"not able to find spectrumscale mount point\")\n+\t\t\treturn &model.VolumeSpec{}, err\n+\t\t}\n+\n+\t\treturn &model.VolumeSpec{\n+\t\t\tBaseModel: &model.BaseModel{\n+\t\t\t\tId: opt.GetId(),\n+\t\t\t},\n+\t\t\tName:        opt.GetName(),\n+\t\t\tSize:        opt.GetSize(),\n+\t\t\tDescription: opt.GetDescription(),\n+\t\t\tIdentifier:  &model.Identifier{DurableName:opt.GetId(),\n+\t\t\t\tDurableNameFormat: KLvIdFormat,\n+\t\t\t},\n+\t\t\tMetadata: map[string]string{\n+\t\t\t\tFileSetPath: mountPoint + \"/\" + volName,\n+\t\t\t},\n+\t\t}, nil\n+}\n+\n+// discover the pool from spectrumscale\n+func (d *Driver) ListPools() ([]*model.StoragePoolSpec, error) {\n+\tvar mountPoint string\n+\tmountPoint, stderr := d.cli.GetSpectrumScaleMountPoint()","path":"contrib/drivers/ibm/ibm.go","position":136,"original_position":136,"commit_id":"053937f73820af26a3c5f38875ccc6ebb20188d3","original_commit_id":"053937f73820af26a3c5f38875ccc6ebb20188d3","user":{"login":"kumarashit","id":48085413,"node_id":"MDQ6VXNlcjQ4MDg1NDEz","avatar_url":"https://avatars0.githubusercontent.com/u/48085413?v=4","gravatar_id":"","url":"https://api.github.com/users/kumarashit","html_url":"https://github.com/kumarashit","followers_url":"https://api.github.com/users/kumarashit/followers","following_url":"https://api.github.com/users/kumarashit/following{/other_user}","gists_url":"https://api.github.com/users/kumarashit/gists{/gist_id}","starred_url":"https://api.github.com/users/kumarashit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kumarashit/subscriptions","organizations_url":"https://api.github.com/users/kumarashit/orgs","repos_url":"https://api.github.com/users/kumarashit/repos","events_url":"https://api.github.com/users/kumarashit/events{/privacy}","received_events_url":"https://api.github.com/users/kumarashit/received_events","type":"User","site_admin":false},"body":"Put a comment why list pools required getting mount point","created_at":"2019-12-23T10:15:05Z","updated_at":"2019-12-23T10:23:34Z","html_url":"https://github.com/opensds/opensds/pull/1140#discussion_r360836421","pull_request_url":"https://api.github.com/repos/opensds/opensds/pulls/1140","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/opensds/opensds/pulls/comments/360836421"},"html":{"href":"https://github.com/opensds/opensds/pull/1140#discussion_r360836421"},"pull_request":{"href":"https://api.github.com/repos/opensds/opensds/pulls/1140"}}},"pull_request":{"url":"https://api.github.com/repos/opensds/opensds/pulls/1140","id":355157768,"node_id":"MDExOlB1bGxSZXF1ZXN0MzU1MTU3NzY4","html_url":"https://github.com/opensds/opensds/pull/1140","diff_url":"https://github.com/opensds/opensds/pull/1140.diff","patch_url":"https://github.com/opensds/opensds/pull/1140.patch","issue_url":"https://api.github.com/repos/opensds/opensds/issues/1140","number":1140,"state":"open","locked":false,"title":"[SBD]: IBM SpectrumScale driver support to opensds","user":{"login":"PravinRanjan10","id":41313813,"node_id":"MDQ6VXNlcjQxMzEzODEz","avatar_url":"https://avatars2.githubusercontent.com/u/41313813?v=4","gravatar_id":"","url":"https://api.github.com/users/PravinRanjan10","html_url":"https://github.com/PravinRanjan10","followers_url":"https://api.github.com/users/PravinRanjan10/followers","following_url":"https://api.github.com/users/PravinRanjan10/following{/other_user}","gists_url":"https://api.github.com/users/PravinRanjan10/gists{/gist_id}","starred_url":"https://api.github.com/users/PravinRanjan10/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PravinRanjan10/subscriptions","organizations_url":"https://api.github.com/users/PravinRanjan10/orgs","repos_url":"https://api.github.com/users/PravinRanjan10/repos","events_url":"https://api.github.com/users/PravinRanjan10/events{/privacy}","received_events_url":"https://api.github.com/users/PravinRanjan10/received_events","type":"User","site_admin":false},"body":"<!-- Thanks for sending a pull request! -->\r\n\r\n**What this PR does / why we need it**:\r\nThis is the addition of IBM Spectrumcale south bound drivers to opensds.\r\nThe functionality it does support are:\r\n1. Create Volume\r\n2. Extend Volume\r\n3. Delete Volume\r\n4. Create Snapshot\r\n5. Delete Snapshot  \r\n\r\n**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #\r\n\r\n**Special notes for your reviewer**:\r\n\r\n**Release note**:\r\n<!--  Steps to write your release note:\r\n1. Use the release-note-* labels to set the release note state (if you have access)\r\n2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`.\r\n-->\r\n```release-note\r\n```\r\n1. Volume Create\r\n![volumeCreate1](https://user-images.githubusercontent.com/41313813/71178974-3998ad00-2295-11ea-9068-117572046d25.png)\r\n\r\n2. SnapSHot Create\r\n![SnapSHotCreate1](https://user-images.githubusercontent.com/41313813/71179015-4fa66d80-2295-11ea-99ad-a35ae1eb0ca3.png)\r\n\r\n3. Volume And Snapshot Delete\r\n![volumeAndSnaapshotDelete](https://user-images.githubusercontent.com/41313813/71179037-5c2ac600-2295-11ea-88e6-c6ce2ae1cb85.png)\r\n \r\n","created_at":"2019-12-19T13:55:53Z","updated_at":"2019-12-23T10:23:33Z","closed_at":null,"merged_at":null,"merge_commit_sha":"1222f3589cc02ee24b0fd0387f288a6e37e2acbf","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/opensds/opensds/pulls/1140/commits","review_comments_url":"https://api.github.com/repos/opensds/opensds/pulls/1140/comments","review_comment_url":"https://api.github.com/repos/opensds/opensds/pulls/comments{/number}","comments_url":"https://api.github.com/repos/opensds/opensds/issues/1140/comments","statuses_url":"https://api.github.com/repos/opensds/opensds/statuses/053937f73820af26a3c5f38875ccc6ebb20188d3","head":{"label":"PravinRanjan10:development","ref":"development","sha":"053937f73820af26a3c5f38875ccc6ebb20188d3","user":{"login":"PravinRanjan10","id":41313813,"node_id":"MDQ6VXNlcjQxMzEzODEz","avatar_url":"https://avatars2.githubusercontent.com/u/41313813?v=4","gravatar_id":"","url":"https://api.github.com/users/PravinRanjan10","html_url":"https://github.com/PravinRanjan10","followers_url":"https://api.github.com/users/PravinRanjan10/followers","following_url":"https://api.github.com/users/PravinRanjan10/following{/other_user}","gists_url":"https://api.github.com/users/PravinRanjan10/gists{/gist_id}","starred_url":"https://api.github.com/users/PravinRanjan10/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PravinRanjan10/subscriptions","organizations_url":"https://api.github.com/users/PravinRanjan10/orgs","repos_url":"https://api.github.com/users/PravinRanjan10/repos","events_url":"https://api.github.com/users/PravinRanjan10/events{/privacy}","received_events_url":"https://api.github.com/users/PravinRanjan10/received_events","type":"User","site_admin":false},"repo":{"id":183413027,"node_id":"MDEwOlJlcG9zaXRvcnkxODM0MTMwMjc=","name":"opensds","full_name":"PravinRanjan10/opensds","private":false,"owner":{"login":"PravinRanjan10","id":41313813,"node_id":"MDQ6VXNlcjQxMzEzODEz","avatar_url":"https://avatars2.githubusercontent.com/u/41313813?v=4","gravatar_id":"","url":"https://api.github.com/users/PravinRanjan10","html_url":"https://github.com/PravinRanjan10","followers_url":"https://api.github.com/users/PravinRanjan10/followers","following_url":"https://api.github.com/users/PravinRanjan10/following{/other_user}","gists_url":"https://api.github.com/users/PravinRanjan10/gists{/gist_id}","starred_url":"https://api.github.com/users/PravinRanjan10/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PravinRanjan10/subscriptions","organizations_url":"https://api.github.com/users/PravinRanjan10/orgs","repos_url":"https://api.github.com/users/PravinRanjan10/repos","events_url":"https://api.github.com/users/PravinRanjan10/events{/privacy}","received_events_url":"https://api.github.com/users/PravinRanjan10/received_events","type":"User","site_admin":false},"html_url":"https://github.com/PravinRanjan10/opensds","description":"Hotpot: OpenSDS Controller Project","fork":true,"url":"https://api.github.com/repos/PravinRanjan10/opensds","forks_url":"https://api.github.com/repos/PravinRanjan10/opensds/forks","keys_url":"https://api.github.com/repos/PravinRanjan10/opensds/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PravinRanjan10/opensds/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PravinRanjan10/opensds/teams","hooks_url":"https://api.github.com/repos/PravinRanjan10/opensds/hooks","issue_events_url":"https://api.github.com/repos/PravinRanjan10/opensds/issues/events{/number}","events_url":"https://api.github.com/repos/PravinRanjan10/opensds/events","assignees_url":"https://api.github.com/repos/PravinRanjan10/opensds/assignees{/user}","branches_url":"https://api.github.com/repos/PravinRanjan10/opensds/branches{/branch}","tags_url":"https://api.github.com/repos/PravinRanjan10/opensds/tags","blobs_url":"https://api.github.com/repos/PravinRanjan10/opensds/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PravinRanjan10/opensds/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PravinRanjan10/opensds/git/refs{/sha}","trees_url":"https://api.github.com/repos/PravinRanjan10/opensds/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PravinRanjan10/opensds/statuses/{sha}","languages_url":"https://api.github.com/repos/PravinRanjan10/opensds/languages","stargazers_url":"https://api.github.com/repos/PravinRanjan10/opensds/stargazers","contributors_url":"https://api.github.com/repos/PravinRanjan10/opensds/contributors","subscribers_url":"https://api.github.com/repos/PravinRanjan10/opensds/subscribers","subscription_url":"https://api.github.com/repos/PravinRanjan10/opensds/subscription","commits_url":"https://api.github.com/repos/PravinRanjan10/opensds/commits{/sha}","git_commits_url":"https://api.github.com/repos/PravinRanjan10/opensds/git/commits{/sha}","comments_url":"https://api.github.com/repos/PravinRanjan10/opensds/comments{/number}","issue_comment_url":"https://api.github.com/repos/PravinRanjan10/opensds/issues/comments{/number}","contents_url":"https://api.github.com/repos/PravinRanjan10/opensds/contents/{+path}","compare_url":"https://api.github.com/repos/PravinRanjan10/opensds/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PravinRanjan10/opensds/merges","archive_url":"https://api.github.com/repos/PravinRanjan10/opensds/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PravinRanjan10/opensds/downloads","issues_url":"https://api.github.com/repos/PravinRanjan10/opensds/issues{/number}","pulls_url":"https://api.github.com/repos/PravinRanjan10/opensds/pulls{/number}","milestones_url":"https://api.github.com/repos/PravinRanjan10/opensds/milestones{/number}","notifications_url":"https://api.github.com/repos/PravinRanjan10/opensds/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PravinRanjan10/opensds/labels{/name}","releases_url":"https://api.github.com/repos/PravinRanjan10/opensds/releases{/id}","deployments_url":"https://api.github.com/repos/PravinRanjan10/opensds/deployments","created_at":"2019-04-25T10:35:34Z","updated_at":"2019-11-22T10:21:30Z","pushed_at":"2019-12-21T04:40:02Z","git_url":"git://github.com/PravinRanjan10/opensds.git","ssh_url":"git@github.com:PravinRanjan10/opensds.git","clone_url":"https://github.com/PravinRanjan10/opensds.git","svn_url":"https://github.com/PravinRanjan10/opensds","homepage":"https://www.opensds.io/","size":96155,"stargazers_count":0,"watchers_count":0,"language":"Go","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":0,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"opensds:development","ref":"development","sha":"884647c42fd8cc7ae87f33a41b7a33c24e4ee717","user":{"login":"opensds","id":23061836,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIzMDYxODM2","avatar_url":"https://avatars3.githubusercontent.com/u/23061836?v=4","gravatar_id":"","url":"https://api.github.com/users/opensds","html_url":"https://github.com/opensds","followers_url":"https://api.github.com/users/opensds/followers","following_url":"https://api.github.com/users/opensds/following{/other_user}","gists_url":"https://api.github.com/users/opensds/gists{/gist_id}","starred_url":"https://api.github.com/users/opensds/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/opensds/subscriptions","organizations_url":"https://api.github.com/users/opensds/orgs","repos_url":"https://api.github.com/users/opensds/repos","events_url":"https://api.github.com/users/opensds/events{/privacy}","received_events_url":"https://api.github.com/users/opensds/received_events","type":"Organization","site_admin":false},"repo":{"id":77096333,"node_id":"MDEwOlJlcG9zaXRvcnk3NzA5NjMzMw==","name":"opensds","full_name":"opensds/opensds","private":false,"owner":{"login":"opensds","id":23061836,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIzMDYxODM2","avatar_url":"https://avatars3.githubusercontent.com/u/23061836?v=4","gravatar_id":"","url":"https://api.github.com/users/opensds","html_url":"https://github.com/opensds","followers_url":"https://api.github.com/users/opensds/followers","following_url":"https://api.github.com/users/opensds/following{/other_user}","gists_url":"https://api.github.com/users/opensds/gists{/gist_id}","starred_url":"https://api.github.com/users/opensds/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/opensds/subscriptions","organizations_url":"https://api.github.com/users/opensds/orgs","repos_url":"https://api.github.com/users/opensds/repos","events_url":"https://api.github.com/users/opensds/events{/privacy}","received_events_url":"https://api.github.com/users/opensds/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/opensds/opensds","description":"Hotpot: OpenSDS Controller Project","fork":false,"url":"https://api.github.com/repos/opensds/opensds","forks_url":"https://api.github.com/repos/opensds/opensds/forks","keys_url":"https://api.github.com/repos/opensds/opensds/keys{/key_id}","collaborators_url":"https://api.github.com/repos/opensds/opensds/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/opensds/opensds/teams","hooks_url":"https://api.github.com/repos/opensds/opensds/hooks","issue_events_url":"https://api.github.com/repos/opensds/opensds/issues/events{/number}","events_url":"https://api.github.com/repos/opensds/opensds/events","assignees_url":"https://api.github.com/repos/opensds/opensds/assignees{/user}","branches_url":"https://api.github.com/repos/opensds/opensds/branches{/branch}","tags_url":"https://api.github.com/repos/opensds/opensds/tags","blobs_url":"https://api.github.com/repos/opensds/opensds/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/opensds/opensds/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/opensds/opensds/git/refs{/sha}","trees_url":"https://api.github.com/repos/opensds/opensds/git/trees{/sha}","statuses_url":"https://api.github.com/repos/opensds/opensds/statuses/{sha}","languages_url":"https://api.github.com/repos/opensds/opensds/languages","stargazers_url":"https://api.github.com/repos/opensds/opensds/stargazers","contributors_url":"https://api.github.com/repos/opensds/opensds/contributors","subscribers_url":"https://api.github.com/repos/opensds/opensds/subscribers","subscription_url":"https://api.github.com/repos/opensds/opensds/subscription","commits_url":"https://api.github.com/repos/opensds/opensds/commits{/sha}","git_commits_url":"https://api.github.com/repos/opensds/opensds/git/commits{/sha}","comments_url":"https://api.github.com/repos/opensds/opensds/comments{/number}","issue_comment_url":"https://api.github.com/repos/opensds/opensds/issues/comments{/number}","contents_url":"https://api.github.com/repos/opensds/opensds/contents/{+path}","compare_url":"https://api.github.com/repos/opensds/opensds/compare/{base}...{head}","merges_url":"https://api.github.com/repos/opensds/opensds/merges","archive_url":"https://api.github.com/repos/opensds/opensds/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/opensds/opensds/downloads","issues_url":"https://api.github.com/repos/opensds/opensds/issues{/number}","pulls_url":"https://api.github.com/repos/opensds/opensds/pulls{/number}","milestones_url":"https://api.github.com/repos/opensds/opensds/milestones{/number}","notifications_url":"https://api.github.com/repos/opensds/opensds/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/opensds/opensds/labels{/name}","releases_url":"https://api.github.com/repos/opensds/opensds/releases{/id}","deployments_url":"https://api.github.com/repos/opensds/opensds/deployments","created_at":"2016-12-22T00:27:54Z","updated_at":"2019-12-18T14:30:10Z","pushed_at":"2019-12-23T08:49:53Z","git_url":"git://github.com/opensds/opensds.git","ssh_url":"git@github.com:opensds/opensds.git","clone_url":"https://github.com/opensds/opensds.git","svn_url":"https://github.com/opensds/opensds","homepage":"https://www.opensds.io/","size":96134,"stargazers_count":415,"watchers_count":415,"language":"Go","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":256,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":132,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":256,"open_issues":132,"watchers":415,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/opensds/opensds/pulls/1140"},"html":{"href":"https://github.com/opensds/opensds/pull/1140"},"issue":{"href":"https://api.github.com/repos/opensds/opensds/issues/1140"},"comments":{"href":"https://api.github.com/repos/opensds/opensds/issues/1140/comments"},"review_comments":{"href":"https://api.github.com/repos/opensds/opensds/pulls/1140/comments"},"review_comment":{"href":"https://api.github.com/repos/opensds/opensds/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/opensds/opensds/pulls/1140/commits"},"statuses":{"href":"https://api.github.com/repos/opensds/opensds/statuses/053937f73820af26a3c5f38875ccc6ebb20188d3"}},"author_association":"CONTRIBUTOR"}}
other: {"actor":{"display_login":"kumarashit"}}