{"action":"created","comment":{"url":"https://api.github.com/repos/minio/minio/pulls/comments/202220962","pull_request_review_id":136879211,"id":202220962,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwMjIyMDk2Mg==","diff_hunk":"@@ -43,6 +43,17 @@ type AMQPArgs struct {\n \tAutoDeleted  bool     `json:\"autoDeleted\"`\n }\n \n+// Validate AMQP arguments\n+func (a *AMQPArgs) Validate() error {\n+\tif !a.Enable {\n+\t\treturn nil\n+\t}\n+\tif _, err := amqp.ParseURI(a.URL.String()); err != nil {","path":"pkg/event/target/amqp.go","position":9,"original_position":9,"commit_id":"2584444df316808796e55d74a2d4141440892a4e","original_commit_id":"f495a7485ddc5c705ef2ad6edf3c540fbe6bdaf3","user":{"login":"kannappanr","id":30541348,"node_id":"MDQ6VXNlcjMwNTQxMzQ4","avatar_url":"https://avatars0.githubusercontent.com/u/30541348?v=4","gravatar_id":"","url":"https://api.github.com/users/kannappanr","html_url":"https://github.com/kannappanr","followers_url":"https://api.github.com/users/kannappanr/followers","following_url":"https://api.github.com/users/kannappanr/following{/other_user}","gists_url":"https://api.github.com/users/kannappanr/gists{/gist_id}","starred_url":"https://api.github.com/users/kannappanr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kannappanr/subscriptions","organizations_url":"https://api.github.com/users/kannappanr/orgs","repos_url":"https://api.github.com/users/kannappanr/repos","events_url":"https://api.github.com/users/kannappanr/events{/privacy}","received_events_url":"https://api.github.com/users/kannappanr/received_events","type":"User","site_admin":false},"body":"I think it is good to have these validations for better error response. We can additionally attempt a connection to individual target as soon as the restart of the server.","created_at":"2018-07-13T01:08:28Z","updated_at":"2018-07-13T01:08:28Z","html_url":"https://github.com/minio/minio/pull/6090#discussion_r202220962","pull_request_url":"https://api.github.com/repos/minio/minio/pulls/6090","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/minio/minio/pulls/comments/202220962"},"html":{"href":"https://github.com/minio/minio/pull/6090#discussion_r202220962"},"pull_request":{"href":"https://api.github.com/repos/minio/minio/pulls/6090"}},"in_reply_to_id":198380650},"pull_request":{"url":"https://api.github.com/repos/minio/minio/pulls/6090","id":197586532,"node_id":"MDExOlB1bGxSZXF1ZXN0MTk3NTg2NTMy","html_url":"https://github.com/minio/minio/pull/6090","diff_url":"https://github.com/minio/minio/pull/6090.diff","patch_url":"https://github.com/minio/minio/pull/6090.patch","issue_url":"https://api.github.com/repos/minio/minio/issues/6090","number":6090,"state":"open","locked":false,"title":"Better validation of all config file fields","user":{"login":"vadmeste","id":283197,"node_id":"MDQ6VXNlcjI4MzE5Nw==","avatar_url":"https://avatars1.githubusercontent.com/u/283197?v=4","gravatar_id":"","url":"https://api.github.com/users/vadmeste","html_url":"https://github.com/vadmeste","followers_url":"https://api.github.com/users/vadmeste/followers","following_url":"https://api.github.com/users/vadmeste/following{/other_user}","gists_url":"https://api.github.com/users/vadmeste/gists{/gist_id}","starred_url":"https://api.github.com/users/vadmeste/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vadmeste/subscriptions","organizations_url":"https://api.github.com/users/vadmeste/orgs","repos_url":"https://api.github.com/users/vadmeste/repos","events_url":"https://api.github.com/users/vadmeste/events{/privacy}","received_events_url":"https://api.github.com/users/vadmeste/received_events","type":"User","site_admin":false},"body":"<!--- Provide a general summary of your changes in the Title above -->\r\n\r\n## Description\r\nAdd Validate() to serverConfig to call it at server\r\nstartup and in Admin SetConfig handler to minimize\r\nerrors scenario after server restart.\r\n\r\n## Motivation and Context\r\nEnhance config validation in Admin API SetConfig\r\n\r\n## How Has This Been Tested?\r\nManually\r\n\r\n## Types of changes\r\n<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->\r\n- [x] Bug fix (non-breaking change which fixes an issue)\r\n- [ ] New feature (non-breaking change which adds functionality)\r\n- [ ] Breaking change (fix or feature that would cause existing functionality to change)\r\n\r\n## Checklist:\r\n<!--- Go over all the following points, and put an `x` in all the boxes that apply. -->\r\n<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->\r\n- [x] My code follows the code style of this project.\r\n- [ ] My change requires a change to the documentation.\r\n- [ ] I have updated the documentation accordingly.\r\n- [ ] I have added unit tests to cover my changes.\r\n- [ ] I have added/updated functional tests in [mint](https://github.com/minio/mint). (If yes, add `mint` PR # here: )\r\n- [x] All new and existing tests passed.","created_at":"2018-06-27T00:27:32Z","updated_at":"2018-07-13T01:08:28Z","closed_at":null,"merged_at":null,"merge_commit_sha":"a5d4de1f4b8417836eb2878e83845b976ee5e76a","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/minio/minio/pulls/6090/commits","review_comments_url":"https://api.github.com/repos/minio/minio/pulls/6090/comments","review_comment_url":"https://api.github.com/repos/minio/minio/pulls/comments{/number}","comments_url":"https://api.github.com/repos/minio/minio/issues/6090/comments","statuses_url":"https://api.github.com/repos/minio/minio/statuses/2584444df316808796e55d74a2d4141440892a4e","head":{"label":"vadmeste:validate-config","ref":"validate-config","sha":"2584444df316808796e55d74a2d4141440892a4e","user":{"login":"vadmeste","id":283197,"node_id":"MDQ6VXNlcjI4MzE5Nw==","avatar_url":"https://avatars1.githubusercontent.com/u/283197?v=4","gravatar_id":"","url":"https://api.github.com/users/vadmeste","html_url":"https://github.com/vadmeste","followers_url":"https://api.github.com/users/vadmeste/followers","following_url":"https://api.github.com/users/vadmeste/following{/other_user}","gists_url":"https://api.github.com/users/vadmeste/gists{/gist_id}","starred_url":"https://api.github.com/users/vadmeste/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vadmeste/subscriptions","organizations_url":"https://api.github.com/users/vadmeste/orgs","repos_url":"https://api.github.com/users/vadmeste/repos","events_url":"https://api.github.com/users/vadmeste/events{/privacy}","received_events_url":"https://api.github.com/users/vadmeste/received_events","type":"User","site_admin":false},"repo":{"id":30432336,"node_id":"MDEwOlJlcG9zaXRvcnkzMDQzMjMzNg==","name":"minio","full_name":"vadmeste/minio","owner":{"login":"vadmeste","id":283197,"node_id":"MDQ6VXNlcjI4MzE5Nw==","avatar_url":"https://avatars1.githubusercontent.com/u/283197?v=4","gravatar_id":"","url":"https://api.github.com/users/vadmeste","html_url":"https://github.com/vadmeste","followers_url":"https://api.github.com/users/vadmeste/followers","following_url":"https://api.github.com/users/vadmeste/following{/other_user}","gists_url":"https://api.github.com/users/vadmeste/gists{/gist_id}","starred_url":"https://api.github.com/users/vadmeste/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vadmeste/subscriptions","organizations_url":"https://api.github.com/users/vadmeste/orgs","repos_url":"https://api.github.com/users/vadmeste/repos","events_url":"https://api.github.com/users/vadmeste/events{/privacy}","received_events_url":"https://api.github.com/users/vadmeste/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/vadmeste/minio","description":"Minio is an open source object storage inspired by Amazon S3 and Facebook Haystack ","fork":true,"url":"https://api.github.com/repos/vadmeste/minio","forks_url":"https://api.github.com/repos/vadmeste/minio/forks","keys_url":"https://api.github.com/repos/vadmeste/minio/keys{/key_id}","collaborators_url":"https://api.github.com/repos/vadmeste/minio/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/vadmeste/minio/teams","hooks_url":"https://api.github.com/repos/vadmeste/minio/hooks","issue_events_url":"https://api.github.com/repos/vadmeste/minio/issues/events{/number}","events_url":"https://api.github.com/repos/vadmeste/minio/events","assignees_url":"https://api.github.com/repos/vadmeste/minio/assignees{/user}","branches_url":"https://api.github.com/repos/vadmeste/minio/branches{/branch}","tags_url":"https://api.github.com/repos/vadmeste/minio/tags","blobs_url":"https://api.github.com/repos/vadmeste/minio/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/vadmeste/minio/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/vadmeste/minio/git/refs{/sha}","trees_url":"https://api.github.com/repos/vadmeste/minio/git/trees{/sha}","statuses_url":"https://api.github.com/repos/vadmeste/minio/statuses/{sha}","languages_url":"https://api.github.com/repos/vadmeste/minio/languages","stargazers_url":"https://api.github.com/repos/vadmeste/minio/stargazers","contributors_url":"https://api.github.com/repos/vadmeste/minio/contributors","subscribers_url":"https://api.github.com/repos/vadmeste/minio/subscribers","subscription_url":"https://api.github.com/repos/vadmeste/minio/subscription","commits_url":"https://api.github.com/repos/vadmeste/minio/commits{/sha}","git_commits_url":"https://api.github.com/repos/vadmeste/minio/git/commits{/sha}","comments_url":"https://api.github.com/repos/vadmeste/minio/comments{/number}","issue_comment_url":"https://api.github.com/repos/vadmeste/minio/issues/comments{/number}","contents_url":"https://api.github.com/repos/vadmeste/minio/contents/{+path}","compare_url":"https://api.github.com/repos/vadmeste/minio/compare/{base}...{head}","merges_url":"https://api.github.com/repos/vadmeste/minio/merges","archive_url":"https://api.github.com/repos/vadmeste/minio/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/vadmeste/minio/downloads","issues_url":"https://api.github.com/repos/vadmeste/minio/issues{/number}","pulls_url":"https://api.github.com/repos/vadmeste/minio/pulls{/number}","milestones_url":"https://api.github.com/repos/vadmeste/minio/milestones{/number}","notifications_url":"https://api.github.com/repos/vadmeste/minio/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/vadmeste/minio/labels{/name}","releases_url":"https://api.github.com/repos/vadmeste/minio/releases{/id}","deployments_url":"https://api.github.com/repos/vadmeste/minio/deployments","created_at":"2015-02-06T20:48:08Z","updated_at":"2018-04-11T00:18:07Z","pushed_at":"2018-07-12T22:14:49Z","git_url":"git://github.com/vadmeste/minio.git","ssh_url":"git@github.com:vadmeste/minio.git","clone_url":"https://github.com/vadmeste/minio.git","svn_url":"https://github.com/vadmeste/minio","homepage":"http://minio.io","size":38645,"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,"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":"minio:master","ref":"master","sha":"2aa18cafc674faf97201a973504cb4caa3a3e67c","user":{"login":"minio","id":695951,"node_id":"MDEyOk9yZ2FuaXphdGlvbjY5NTk1MQ==","avatar_url":"https://avatars3.githubusercontent.com/u/695951?v=4","gravatar_id":"","url":"https://api.github.com/users/minio","html_url":"https://github.com/minio","followers_url":"https://api.github.com/users/minio/followers","following_url":"https://api.github.com/users/minio/following{/other_user}","gists_url":"https://api.github.com/users/minio/gists{/gist_id}","starred_url":"https://api.github.com/users/minio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/minio/subscriptions","organizations_url":"https://api.github.com/users/minio/orgs","repos_url":"https://api.github.com/users/minio/repos","events_url":"https://api.github.com/users/minio/events{/privacy}","received_events_url":"https://api.github.com/users/minio/received_events","type":"Organization","site_admin":false},"repo":{"id":29261473,"node_id":"MDEwOlJlcG9zaXRvcnkyOTI2MTQ3Mw==","name":"minio","full_name":"minio/minio","owner":{"login":"minio","id":695951,"node_id":"MDEyOk9yZ2FuaXphdGlvbjY5NTk1MQ==","avatar_url":"https://avatars3.githubusercontent.com/u/695951?v=4","gravatar_id":"","url":"https://api.github.com/users/minio","html_url":"https://github.com/minio","followers_url":"https://api.github.com/users/minio/followers","following_url":"https://api.github.com/users/minio/following{/other_user}","gists_url":"https://api.github.com/users/minio/gists{/gist_id}","starred_url":"https://api.github.com/users/minio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/minio/subscriptions","organizations_url":"https://api.github.com/users/minio/orgs","repos_url":"https://api.github.com/users/minio/repos","events_url":"https://api.github.com/users/minio/events{/privacy}","received_events_url":"https://api.github.com/users/minio/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/minio/minio","description":"Minio is an open source object storage server compatible with Amazon S3 APIs","fork":false,"url":"https://api.github.com/repos/minio/minio","forks_url":"https://api.github.com/repos/minio/minio/forks","keys_url":"https://api.github.com/repos/minio/minio/keys{/key_id}","collaborators_url":"https://api.github.com/repos/minio/minio/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/minio/minio/teams","hooks_url":"https://api.github.com/repos/minio/minio/hooks","issue_events_url":"https://api.github.com/repos/minio/minio/issues/events{/number}","events_url":"https://api.github.com/repos/minio/minio/events","assignees_url":"https://api.github.com/repos/minio/minio/assignees{/user}","branches_url":"https://api.github.com/repos/minio/minio/branches{/branch}","tags_url":"https://api.github.com/repos/minio/minio/tags","blobs_url":"https://api.github.com/repos/minio/minio/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/minio/minio/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/minio/minio/git/refs{/sha}","trees_url":"https://api.github.com/repos/minio/minio/git/trees{/sha}","statuses_url":"https://api.github.com/repos/minio/minio/statuses/{sha}","languages_url":"https://api.github.com/repos/minio/minio/languages","stargazers_url":"https://api.github.com/repos/minio/minio/stargazers","contributors_url":"https://api.github.com/repos/minio/minio/contributors","subscribers_url":"https://api.github.com/repos/minio/minio/subscribers","subscription_url":"https://api.github.com/repos/minio/minio/subscription","commits_url":"https://api.github.com/repos/minio/minio/commits{/sha}","git_commits_url":"https://api.github.com/repos/minio/minio/git/commits{/sha}","comments_url":"https://api.github.com/repos/minio/minio/comments{/number}","issue_comment_url":"https://api.github.com/repos/minio/minio/issues/comments{/number}","contents_url":"https://api.github.com/repos/minio/minio/contents/{+path}","compare_url":"https://api.github.com/repos/minio/minio/compare/{base}...{head}","merges_url":"https://api.github.com/repos/minio/minio/merges","archive_url":"https://api.github.com/repos/minio/minio/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/minio/minio/downloads","issues_url":"https://api.github.com/repos/minio/minio/issues{/number}","pulls_url":"https://api.github.com/repos/minio/minio/pulls{/number}","milestones_url":"https://api.github.com/repos/minio/minio/milestones{/number}","notifications_url":"https://api.github.com/repos/minio/minio/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/minio/minio/labels{/name}","releases_url":"https://api.github.com/repos/minio/minio/releases{/id}","deployments_url":"https://api.github.com/repos/minio/minio/deployments","created_at":"2015-01-14T19:23:58Z","updated_at":"2018-07-13T00:44:07Z","pushed_at":"2018-07-13T00:44:03Z","git_url":"git://github.com/minio/minio.git","ssh_url":"git@github.com:minio/minio.git","clone_url":"https://github.com/minio/minio.git","svn_url":"https://github.com/minio/minio","homepage":"https://minio.io/downloads.html#download-server","size":38636,"stargazers_count":12081,"watchers_count":12081,"language":"Go","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1055,"mirror_url":null,"archived":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":1055,"open_issues":132,"watchers":12081,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/minio/minio/pulls/6090"},"html":{"href":"https://github.com/minio/minio/pull/6090"},"issue":{"href":"https://api.github.com/repos/minio/minio/issues/6090"},"comments":{"href":"https://api.github.com/repos/minio/minio/issues/6090/comments"},"review_comments":{"href":"https://api.github.com/repos/minio/minio/pulls/6090/comments"},"review_comment":{"href":"https://api.github.com/repos/minio/minio/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/minio/minio/pulls/6090/commits"},"statuses":{"href":"https://api.github.com/repos/minio/minio/statuses/2584444df316808796e55d74a2d4141440892a4e"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"kannappanr"}}