{"action":"opened","number":335,"pull_request":{"url":"https://api.github.com/repos/ceph/ceph-deploy/pulls/335","id":41536284,"html_url":"https://github.com/ceph/ceph-deploy/pull/335","diff_url":"https://github.com/ceph/ceph-deploy/pull/335.diff","patch_url":"https://github.com/ceph/ceph-deploy/pull/335.patch","issue_url":"https://api.github.com/repos/ceph/ceph-deploy/issues/335","number":335,"state":"open","locked":false,"title":"Add \"ceph-deploy repo\" command","user":{"login":"trhoden","id":1627176,"avatar_url":"https://avatars.githubusercontent.com/u/1627176?v=3","gravatar_id":"","url":"https://api.github.com/users/trhoden","html_url":"https://github.com/trhoden","followers_url":"https://api.github.com/users/trhoden/followers","following_url":"https://api.github.com/users/trhoden/following{/other_user}","gists_url":"https://api.github.com/users/trhoden/gists{/gist_id}","starred_url":"https://api.github.com/users/trhoden/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/trhoden/subscriptions","organizations_url":"https://api.github.com/users/trhoden/orgs","repos_url":"https://api.github.com/users/trhoden/repos","events_url":"https://api.github.com/users/trhoden/events{/privacy}","received_events_url":"https://api.github.com/users/trhoden/received_events","type":"User","site_admin":false},"body":"This introduces a new `ceph-deploy repo` set of commands.\r\n\r\nYou can use `ceph-deploy repo` to create or delete repo files by name.  The repo details can be passed in my `--gpg-url` and `--repo-url`.  Note that for RPM systems, this command only supports the basic \"ceph\" template -- meaning that it will always put three entries into a single `.repo` file for [ceph], [ceph-noarch], and [ceph-source].\r\n\r\nWe could potentially swap this out for the more flexible custom/arbitrary repo definitions if that is deemed worthwhile.  Even if we think that it might be, let's talk about it because I don't want to **not** be able to switch to it later for backwards compatibility reasons because we didn't start that way.\r\n\r\nI haven't tested yet that this works when reading repos from `cephdeploy.conf`.  I need to check that next.  I did test that `--remove` worked on CentOS7 and Trusty, and that I could create valid repo definitions using `--gpg-url` and `--repo-url` on those same two distros.\r\n\r\nAnother future TODO is to add support for reading the repo/gpg URL from env vars (as is done in another place of the code) so that security conscious users can use those to input URLs that use HTTP basic auth (e.g. https://{user}:{password}@fqdn/repo/....).","created_at":"2015-08-04T05:46:34Z","updated_at":"2015-08-04T05:46:34Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/ceph/ceph-deploy/pulls/335/commits","review_comments_url":"https://api.github.com/repos/ceph/ceph-deploy/pulls/335/comments","review_comment_url":"https://api.github.com/repos/ceph/ceph-deploy/pulls/comments{/number}","comments_url":"https://api.github.com/repos/ceph/ceph-deploy/issues/335/comments","statuses_url":"https://api.github.com/repos/ceph/ceph-deploy/statuses/450dbaff6bcb602f31851246c227214bc5c862d5","head":{"label":"trhoden:RM-12553","ref":"RM-12553","sha":"450dbaff6bcb602f31851246c227214bc5c862d5","user":{"login":"trhoden","id":1627176,"avatar_url":"https://avatars.githubusercontent.com/u/1627176?v=3","gravatar_id":"","url":"https://api.github.com/users/trhoden","html_url":"https://github.com/trhoden","followers_url":"https://api.github.com/users/trhoden/followers","following_url":"https://api.github.com/users/trhoden/following{/other_user}","gists_url":"https://api.github.com/users/trhoden/gists{/gist_id}","starred_url":"https://api.github.com/users/trhoden/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/trhoden/subscriptions","organizations_url":"https://api.github.com/users/trhoden/orgs","repos_url":"https://api.github.com/users/trhoden/repos","events_url":"https://api.github.com/users/trhoden/events{/privacy}","received_events_url":"https://api.github.com/users/trhoden/received_events","type":"User","site_admin":false},"repo":{"id":10270179,"name":"ceph-deploy","full_name":"trhoden/ceph-deploy","owner":{"login":"trhoden","id":1627176,"avatar_url":"https://avatars.githubusercontent.com/u/1627176?v=3","gravatar_id":"","url":"https://api.github.com/users/trhoden","html_url":"https://github.com/trhoden","followers_url":"https://api.github.com/users/trhoden/followers","following_url":"https://api.github.com/users/trhoden/following{/other_user}","gists_url":"https://api.github.com/users/trhoden/gists{/gist_id}","starred_url":"https://api.github.com/users/trhoden/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/trhoden/subscriptions","organizations_url":"https://api.github.com/users/trhoden/orgs","repos_url":"https://api.github.com/users/trhoden/repos","events_url":"https://api.github.com/users/trhoden/events{/privacy}","received_events_url":"https://api.github.com/users/trhoden/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/trhoden/ceph-deploy","description":"Deploy Ceph with minimal infrastructure, using just SSH access","fork":true,"url":"https://api.github.com/repos/trhoden/ceph-deploy","forks_url":"https://api.github.com/repos/trhoden/ceph-deploy/forks","keys_url":"https://api.github.com/repos/trhoden/ceph-deploy/keys{/key_id}","collaborators_url":"https://api.github.com/repos/trhoden/ceph-deploy/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/trhoden/ceph-deploy/teams","hooks_url":"https://api.github.com/repos/trhoden/ceph-deploy/hooks","issue_events_url":"https://api.github.com/repos/trhoden/ceph-deploy/issues/events{/number}","events_url":"https://api.github.com/repos/trhoden/ceph-deploy/events","assignees_url":"https://api.github.com/repos/trhoden/ceph-deploy/assignees{/user}","branches_url":"https://api.github.com/repos/trhoden/ceph-deploy/branches{/branch}","tags_url":"https://api.github.com/repos/trhoden/ceph-deploy/tags","blobs_url":"https://api.github.com/repos/trhoden/ceph-deploy/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/trhoden/ceph-deploy/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/trhoden/ceph-deploy/git/refs{/sha}","trees_url":"https://api.github.com/repos/trhoden/ceph-deploy/git/trees{/sha}","statuses_url":"https://api.github.com/repos/trhoden/ceph-deploy/statuses/{sha}","languages_url":"https://api.github.com/repos/trhoden/ceph-deploy/languages","stargazers_url":"https://api.github.com/repos/trhoden/ceph-deploy/stargazers","contributors_url":"https://api.github.com/repos/trhoden/ceph-deploy/contributors","subscribers_url":"https://api.github.com/repos/trhoden/ceph-deploy/subscribers","subscription_url":"https://api.github.com/repos/trhoden/ceph-deploy/subscription","commits_url":"https://api.github.com/repos/trhoden/ceph-deploy/commits{/sha}","git_commits_url":"https://api.github.com/repos/trhoden/ceph-deploy/git/commits{/sha}","comments_url":"https://api.github.com/repos/trhoden/ceph-deploy/comments{/number}","issue_comment_url":"https://api.github.com/repos/trhoden/ceph-deploy/issues/comments{/number}","contents_url":"https://api.github.com/repos/trhoden/ceph-deploy/contents/{+path}","compare_url":"https://api.github.com/repos/trhoden/ceph-deploy/compare/{base}...{head}","merges_url":"https://api.github.com/repos/trhoden/ceph-deploy/merges","archive_url":"https://api.github.com/repos/trhoden/ceph-deploy/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/trhoden/ceph-deploy/downloads","issues_url":"https://api.github.com/repos/trhoden/ceph-deploy/issues{/number}","pulls_url":"https://api.github.com/repos/trhoden/ceph-deploy/pulls{/number}","milestones_url":"https://api.github.com/repos/trhoden/ceph-deploy/milestones{/number}","notifications_url":"https://api.github.com/repos/trhoden/ceph-deploy/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/trhoden/ceph-deploy/labels{/name}","releases_url":"https://api.github.com/repos/trhoden/ceph-deploy/releases{/id}","created_at":"2013-05-24T16:11:47Z","updated_at":"2015-05-07T20:50:13Z","pushed_at":"2015-08-04T05:36:09Z","git_url":"git://github.com/trhoden/ceph-deploy.git","ssh_url":"git@github.com:trhoden/ceph-deploy.git","clone_url":"https://github.com/trhoden/ceph-deploy.git","svn_url":"https://github.com/trhoden/ceph-deploy","homepage":null,"size":2356,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"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":"ceph:master","ref":"master","sha":"b0edfc8ce2d0df32d0e5ca8c4decf0e031b8b874","user":{"login":"ceph","id":1015767,"avatar_url":"https://avatars.githubusercontent.com/u/1015767?v=3","gravatar_id":"","url":"https://api.github.com/users/ceph","html_url":"https://github.com/ceph","followers_url":"https://api.github.com/users/ceph/followers","following_url":"https://api.github.com/users/ceph/following{/other_user}","gists_url":"https://api.github.com/users/ceph/gists{/gist_id}","starred_url":"https://api.github.com/users/ceph/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ceph/subscriptions","organizations_url":"https://api.github.com/users/ceph/orgs","repos_url":"https://api.github.com/users/ceph/repos","events_url":"https://api.github.com/users/ceph/events{/privacy}","received_events_url":"https://api.github.com/users/ceph/received_events","type":"Organization","site_admin":false},"repo":{"id":5786856,"name":"ceph-deploy","full_name":"ceph/ceph-deploy","owner":{"login":"ceph","id":1015767,"avatar_url":"https://avatars.githubusercontent.com/u/1015767?v=3","gravatar_id":"","url":"https://api.github.com/users/ceph","html_url":"https://github.com/ceph","followers_url":"https://api.github.com/users/ceph/followers","following_url":"https://api.github.com/users/ceph/following{/other_user}","gists_url":"https://api.github.com/users/ceph/gists{/gist_id}","starred_url":"https://api.github.com/users/ceph/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ceph/subscriptions","organizations_url":"https://api.github.com/users/ceph/orgs","repos_url":"https://api.github.com/users/ceph/repos","events_url":"https://api.github.com/users/ceph/events{/privacy}","received_events_url":"https://api.github.com/users/ceph/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/ceph/ceph-deploy","description":"Deploy Ceph with minimal infrastructure, using just SSH access","fork":false,"url":"https://api.github.com/repos/ceph/ceph-deploy","forks_url":"https://api.github.com/repos/ceph/ceph-deploy/forks","keys_url":"https://api.github.com/repos/ceph/ceph-deploy/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ceph/ceph-deploy/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ceph/ceph-deploy/teams","hooks_url":"https://api.github.com/repos/ceph/ceph-deploy/hooks","issue_events_url":"https://api.github.com/repos/ceph/ceph-deploy/issues/events{/number}","events_url":"https://api.github.com/repos/ceph/ceph-deploy/events","assignees_url":"https://api.github.com/repos/ceph/ceph-deploy/assignees{/user}","branches_url":"https://api.github.com/repos/ceph/ceph-deploy/branches{/branch}","tags_url":"https://api.github.com/repos/ceph/ceph-deploy/tags","blobs_url":"https://api.github.com/repos/ceph/ceph-deploy/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ceph/ceph-deploy/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ceph/ceph-deploy/git/refs{/sha}","trees_url":"https://api.github.com/repos/ceph/ceph-deploy/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ceph/ceph-deploy/statuses/{sha}","languages_url":"https://api.github.com/repos/ceph/ceph-deploy/languages","stargazers_url":"https://api.github.com/repos/ceph/ceph-deploy/stargazers","contributors_url":"https://api.github.com/repos/ceph/ceph-deploy/contributors","subscribers_url":"https://api.github.com/repos/ceph/ceph-deploy/subscribers","subscription_url":"https://api.github.com/repos/ceph/ceph-deploy/subscription","commits_url":"https://api.github.com/repos/ceph/ceph-deploy/commits{/sha}","git_commits_url":"https://api.github.com/repos/ceph/ceph-deploy/git/commits{/sha}","comments_url":"https://api.github.com/repos/ceph/ceph-deploy/comments{/number}","issue_comment_url":"https://api.github.com/repos/ceph/ceph-deploy/issues/comments{/number}","contents_url":"https://api.github.com/repos/ceph/ceph-deploy/contents/{+path}","compare_url":"https://api.github.com/repos/ceph/ceph-deploy/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ceph/ceph-deploy/merges","archive_url":"https://api.github.com/repos/ceph/ceph-deploy/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ceph/ceph-deploy/downloads","issues_url":"https://api.github.com/repos/ceph/ceph-deploy/issues{/number}","pulls_url":"https://api.github.com/repos/ceph/ceph-deploy/pulls{/number}","milestones_url":"https://api.github.com/repos/ceph/ceph-deploy/milestones{/number}","notifications_url":"https://api.github.com/repos/ceph/ceph-deploy/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ceph/ceph-deploy/labels{/name}","releases_url":"https://api.github.com/repos/ceph/ceph-deploy/releases{/id}","created_at":"2012-09-12T22:30:24Z","updated_at":"2015-07-24T14:39:49Z","pushed_at":"2015-08-03T23:10:06Z","git_url":"git://github.com/ceph/ceph-deploy.git","ssh_url":"git@github.com:ceph/ceph-deploy.git","clone_url":"https://github.com/ceph/ceph-deploy.git","svn_url":"https://github.com/ceph/ceph-deploy","homepage":null,"size":5306,"stargazers_count":105,"watchers_count":105,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":109,"mirror_url":null,"open_issues_count":14,"forks":109,"open_issues":14,"watchers":105,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/ceph/ceph-deploy/pulls/335"},"html":{"href":"https://github.com/ceph/ceph-deploy/pull/335"},"issue":{"href":"https://api.github.com/repos/ceph/ceph-deploy/issues/335"},"comments":{"href":"https://api.github.com/repos/ceph/ceph-deploy/issues/335/comments"},"review_comments":{"href":"https://api.github.com/repos/ceph/ceph-deploy/pulls/335/comments"},"review_comment":{"href":"https://api.github.com/repos/ceph/ceph-deploy/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/ceph/ceph-deploy/pulls/335/commits"},"statuses":{"href":"https://api.github.com/repos/ceph/ceph-deploy/statuses/450dbaff6bcb602f31851246c227214bc5c862d5"}},"merged":false,"mergeable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"commits":14,"additions":263,"deletions":115,"changed_files":9}}