GitHub PullRequestReviewCommentEvent at 2014-08-21 01:37:46
Repository: juju
Actor: axw
Payload: {"action":"created","comment":{"url":"https://api.github.com/repos/juju/juju/pulls/comments/16516722","id":16516722,"diff_hunk":"@@ -91,18 +96,12 @@ type BootstrapParams struct {\n // implementation.  The typical provider implementation needs locking to\n // avoid undefined behaviour when the configuration changes.\n type Environ interface {\n-\t// Bootstrap initializes the state for the environment, possibly\n-\t// starting one or more instances.  If the configuration's\n-\t// AdminSecret is non-empty, the administrator password on the\n-\t// newly bootstrapped state will be set to a hash of it (see\n-\t// utils.PasswordHash), When first connecting to the\n-\t// environment via the juju package, the password hash will be\n-\t// automatically replaced by the real password.\n-\t//\n-\t// Bootstrap is responsible for selecting the appropriate tools,\n-\t// and setting the agent-version configuration attribute prior to\n-\t// bootstrapping the environment.\n-\tBootstrap(ctx BootstrapContext, params BootstrapParams) error\n+\t// Bootstrap creates a new instance with the series and architecture\n+\t// of its choice, constrained to those of the available tools, and\n+\t// returns the instance's architecture, series, and a function that","path":"environs/interface.go","position":37,"original_position":37,"commit_id":"36440944e183bfb391f2d8e2fa94a075ad62f5b4","original_commit_id":"36440944e183bfb391f2d8e2fa94a075ad62f5b4","user":{"login":"axw","id":843579,"avatar_url":"https://avatars.githubusercontent.com/u/843579?v=2","gravatar_id":"3e47ab60c72fc978e7bcfaf7b22f479b","url":"https://api.github.com/users/axw","html_url":"https://github.com/axw","followers_url":"https://api.github.com/users/axw/followers","following_url":"https://api.github.com/users/axw/following{/other_user}","gists_url":"https://api.github.com/users/axw/gists{/gist_id}","starred_url":"https://api.github.com/users/axw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/axw/subscriptions","organizations_url":"https://api.github.com/users/axw/orgs","repos_url":"https://api.github.com/users/axw/repos","events_url":"https://api.github.com/users/axw/events{/privacy}","received_events_url":"https://api.github.com/users/axw/received_events","type":"User","site_admin":false},"body":"I was a bit eager here, but \"constrained to those of the available tools\" is key here when the next PR comes. Bootstrap will be provided with a list of available tools which will be filtered on constraints already. I can amend it if you like, but it's imminently going to be true.","created_at":"2014-08-21T01:37:46Z","updated_at":"2014-08-21T01:37:46Z","html_url":"https://github.com/juju/juju/pull/557#discussion_r16516722","pull_request_url":"https://api.github.com/repos/juju/juju/pulls/557","_links":{"self":{"href":"https://api.github.com/repos/juju/juju/pulls/comments/16516722"},"html":{"href":"https://github.com/juju/juju/pull/557#discussion_r16516722"},"pull_request":{"href":"https://api.github.com/repos/juju/juju/pulls/557"}}},"pull_request":{"url":"https://api.github.com/repos/juju/juju/pulls/557","id":20036761,"html_url":"https://github.com/juju/juju/pull/557","diff_url":"https://github.com/juju/juju/pull/557.diff","patch_url":"https://github.com/juju/juju/pull/557.patch","issue_url":"https://api.github.com/repos/juju/juju/issues/557","number":557,"state":"open","locked":false,"title":"Refactor Bootstrap","user":{"login":"axw","id":843579,"avatar_url":"https://avatars.githubusercontent.com/u/843579?v=2","gravatar_id":"3e47ab60c72fc978e7bcfaf7b22f479b","url":"https://api.github.com/users/axw","html_url":"https://github.com/axw","followers_url":"https://api.github.com/users/axw/followers","following_url":"https://api.github.com/users/axw/following{/other_user}","gists_url":"https://api.github.com/users/axw/gists{/gist_id}","starred_url":"https://api.github.com/users/axw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/axw/subscriptions","organizations_url":"https://api.github.com/users/axw/orgs","repos_url":"https://api.github.com/users/axw/repos","events_url":"https://api.github.com/users/axw/events{/privacy}","received_events_url":"https://api.github.com/users/axw/received_events","type":"User","site_admin":false},"body":"This is a step towards eliminating our reliance\non provider storage, specifically for supporting\nthe uploading of tools during bootstrap. A followup\nPR will remove the EnsureToolsAvailability function\nand make environs/bootstrap solely responsible for\nlocating and delivering tools to the bootstrapped\ninstances.\n\n- Environ.Bootstrap now returns the architecture\n  and series of the started instance, and a function\n  that must be called to finalize the bootstrap\n  process. The caller is responsible for filling in\n  the Tools of the machine config that is passed in\n  to the finalizer.\n- environs/bootstrap.Bootstrap now generates the\n  system SSH key, and then calls Environ.Bootstrap;\n  it finds appropriate tools for the instance based\n  on the architecture and series reported, and then\n  calls the finalizer.\n\nThere are some other refactoring changes:\n - MachineConfig.Constraints is now set by\n   NewBootstrapMachineConfig, not FinishMachineConfig;\n   only bootstrap machine configs actually set it,\n   and the constraints do not change during the bootstrap\n   process.\n - environs/manual/bootstrap*.go have been deleted,\n   and the minimally required logic moved into\n   provider/manual.","created_at":"2014-08-20T10:29:01Z","updated_at":"2014-08-21T01:37:47Z","closed_at":null,"merged_at":null,"merge_commit_sha":"0389ccc9d14647dbef9cee06bb3ebb718ae00ba6","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/juju/juju/pulls/557/commits","review_comments_url":"https://api.github.com/repos/juju/juju/pulls/557/comments","review_comment_url":"https://api.github.com/repos/juju/juju/pulls/comments/{number}","comments_url":"https://api.github.com/repos/juju/juju/issues/557/comments","statuses_url":"https://api.github.com/repos/juju/juju/statuses/36440944e183bfb391f2d8e2fa94a075ad62f5b4","head":{"label":"axw:environ-bootstrap-upload-tools","ref":"environ-bootstrap-upload-tools","sha":"36440944e183bfb391f2d8e2fa94a075ad62f5b4","user":{"login":"axw","id":843579,"avatar_url":"https://avatars.githubusercontent.com/u/843579?v=2","gravatar_id":"3e47ab60c72fc978e7bcfaf7b22f479b","url":"https://api.github.com/users/axw","html_url":"https://github.com/axw","followers_url":"https://api.github.com/users/axw/followers","following_url":"https://api.github.com/users/axw/following{/other_user}","gists_url":"https://api.github.com/users/axw/gists{/gist_id}","starred_url":"https://api.github.com/users/axw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/axw/subscriptions","organizations_url":"https://api.github.com/users/axw/orgs","repos_url":"https://api.github.com/users/axw/repos","events_url":"https://api.github.com/users/axw/events{/privacy}","received_events_url":"https://api.github.com/users/axw/received_events","type":"User","site_admin":false},"repo":{"id":20466577,"name":"juju","full_name":"axw/juju","owner":{"login":"axw","id":843579,"avatar_url":"https://avatars.githubusercontent.com/u/843579?v=2","gravatar_id":"3e47ab60c72fc978e7bcfaf7b22f479b","url":"https://api.github.com/users/axw","html_url":"https://github.com/axw","followers_url":"https://api.github.com/users/axw/followers","following_url":"https://api.github.com/users/axw/following{/other_user}","gists_url":"https://api.github.com/users/axw/gists{/gist_id}","starred_url":"https://api.github.com/users/axw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/axw/subscriptions","organizations_url":"https://api.github.com/users/axw/orgs","repos_url":"https://api.github.com/users/axw/repos","events_url":"https://api.github.com/users/axw/events{/privacy}","received_events_url":"https://api.github.com/users/axw/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/axw/juju","description":"juju is devops distilled","fork":true,"url":"https://api.github.com/repos/axw/juju","forks_url":"https://api.github.com/repos/axw/juju/forks","keys_url":"https://api.github.com/repos/axw/juju/keys{/key_id}","collaborators_url":"https://api.github.com/repos/axw/juju/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/axw/juju/teams","hooks_url":"https://api.github.com/repos/axw/juju/hooks","issue_events_url":"https://api.github.com/repos/axw/juju/issues/events{/number}","events_url":"https://api.github.com/repos/axw/juju/events","assignees_url":"https://api.github.com/repos/axw/juju/assignees{/user}","branches_url":"https://api.github.com/repos/axw/juju/branches{/branch}","tags_url":"https://api.github.com/repos/axw/juju/tags","blobs_url":"https://api.github.com/repos/axw/juju/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/axw/juju/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/axw/juju/git/refs{/sha}","trees_url":"https://api.github.com/repos/axw/juju/git/trees{/sha}","statuses_url":"https://api.github.com/repos/axw/juju/statuses/{sha}","languages_url":"https://api.github.com/repos/axw/juju/languages","stargazers_url":"https://api.github.com/repos/axw/juju/stargazers","contributors_url":"https://api.github.com/repos/axw/juju/contributors","subscribers_url":"https://api.github.com/repos/axw/juju/subscribers","subscription_url":"https://api.github.com/repos/axw/juju/subscription","commits_url":"https://api.github.com/repos/axw/juju/commits{/sha}","git_commits_url":"https://api.github.com/repos/axw/juju/git/commits{/sha}","comments_url":"https://api.github.com/repos/axw/juju/comments{/number}","issue_comment_url":"https://api.github.com/repos/axw/juju/issues/comments/{number}","contents_url":"https://api.github.com/repos/axw/juju/contents/{+path}","compare_url":"https://api.github.com/repos/axw/juju/compare/{base}...{head}","merges_url":"https://api.github.com/repos/axw/juju/merges","archive_url":"https://api.github.com/repos/axw/juju/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/axw/juju/downloads","issues_url":"https://api.github.com/repos/axw/juju/issues{/number}","pulls_url":"https://api.github.com/repos/axw/juju/pulls{/number}","milestones_url":"https://api.github.com/repos/axw/juju/milestones{/number}","notifications_url":"https://api.github.com/repos/axw/juju/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/axw/juju/labels{/name}","releases_url":"https://api.github.com/repos/axw/juju/releases{/id}","created_at":"2014-06-04T01:51:25Z","updated_at":"2014-06-25T09:58:35Z","pushed_at":"2014-08-20T10:27:17Z","git_url":"git://github.com/axw/juju.git","ssh_url":"git@github.com:axw/juju.git","clone_url":"https://github.com/axw/juju.git","svn_url":"https://github.com/axw/juju","homepage":null,"size":28719,"stargazers_count":0,"watchers_count":0,"language":"Go","has_issues":false,"has_downloads":true,"has_wiki":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"juju:master","ref":"master","sha":"3a8f263f8c2977241fc39450e9fb47b4d56fc975","user":{"login":"juju","id":4604548,"avatar_url":"https://avatars.githubusercontent.com/u/4604548?v=2","gravatar_id":"b095d1e26e5705abe0ad2de7d87aac2e","url":"https://api.github.com/users/juju","html_url":"https://github.com/juju","followers_url":"https://api.github.com/users/juju/followers","following_url":"https://api.github.com/users/juju/following{/other_user}","gists_url":"https://api.github.com/users/juju/gists{/gist_id}","starred_url":"https://api.github.com/users/juju/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/juju/subscriptions","organizations_url":"https://api.github.com/users/juju/orgs","repos_url":"https://api.github.com/users/juju/repos","events_url":"https://api.github.com/users/juju/events{/privacy}","received_events_url":"https://api.github.com/users/juju/received_events","type":"Organization","site_admin":false},"repo":{"id":20445947,"name":"juju","full_name":"juju/juju","owner":{"login":"juju","id":4604548,"avatar_url":"https://avatars.githubusercontent.com/u/4604548?v=2","gravatar_id":"b095d1e26e5705abe0ad2de7d87aac2e","url":"https://api.github.com/users/juju","html_url":"https://github.com/juju","followers_url":"https://api.github.com/users/juju/followers","following_url":"https://api.github.com/users/juju/following{/other_user}","gists_url":"https://api.github.com/users/juju/gists{/gist_id}","starred_url":"https://api.github.com/users/juju/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/juju/subscriptions","organizations_url":"https://api.github.com/users/juju/orgs","repos_url":"https://api.github.com/users/juju/repos","events_url":"https://api.github.com/users/juju/events{/privacy}","received_events_url":"https://api.github.com/users/juju/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/juju/juju","description":"juju is devops distilled","fork":false,"url":"https://api.github.com/repos/juju/juju","forks_url":"https://api.github.com/repos/juju/juju/forks","keys_url":"https://api.github.com/repos/juju/juju/keys{/key_id}","collaborators_url":"https://api.github.com/repos/juju/juju/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/juju/juju/teams","hooks_url":"https://api.github.com/repos/juju/juju/hooks","issue_events_url":"https://api.github.com/repos/juju/juju/issues/events{/number}","events_url":"https://api.github.com/repos/juju/juju/events","assignees_url":"https://api.github.com/repos/juju/juju/assignees{/user}","branches_url":"https://api.github.com/repos/juju/juju/branches{/branch}","tags_url":"https://api.github.com/repos/juju/juju/tags","blobs_url":"https://api.github.com/repos/juju/juju/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/juju/juju/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/juju/juju/git/refs{/sha}","trees_url":"https://api.github.com/repos/juju/juju/git/trees{/sha}","statuses_url":"https://api.github.com/repos/juju/juju/statuses/{sha}","languages_url":"https://api.github.com/repos/juju/juju/languages","stargazers_url":"https://api.github.com/repos/juju/juju/stargazers","contributors_url":"https://api.github.com/repos/juju/juju/contributors","subscribers_url":"https://api.github.com/repos/juju/juju/subscribers","subscription_url":"https://api.github.com/repos/juju/juju/subscription","commits_url":"https://api.github.com/repos/juju/juju/commits{/sha}","git_commits_url":"https://api.github.com/repos/juju/juju/git/commits{/sha}","comments_url":"https://api.github.com/repos/juju/juju/comments{/number}","issue_comment_url":"https://api.github.com/repos/juju/juju/issues/comments/{number}","contents_url":"https://api.github.com/repos/juju/juju/contents/{+path}","compare_url":"https://api.github.com/repos/juju/juju/compare/{base}...{head}","merges_url":"https://api.github.com/repos/juju/juju/merges","archive_url":"https://api.github.com/repos/juju/juju/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/juju/juju/downloads","issues_url":"https://api.github.com/repos/juju/juju/issues{/number}","pulls_url":"https://api.github.com/repos/juju/juju/pulls{/number}","milestones_url":"https://api.github.com/repos/juju/juju/milestones{/number}","notifications_url":"https://api.github.com/repos/juju/juju/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/juju/juju/labels{/name}","releases_url":"https://api.github.com/repos/juju/juju/releases{/id}","created_at":"2014-06-03T14:28:10Z","updated_at":"2014-08-19T04:47:51Z","pushed_at":"2014-08-20T23:46:25Z","git_url":"git://github.com/juju/juju.git","ssh_url":"git@github.com:juju/juju.git","clone_url":"https://github.com/juju/juju.git","svn_url":"https://github.com/juju/juju","homepage":"juju.ubuntu.com","size":39625,"stargazers_count":194,"watchers_count":194,"language":"Go","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":49,"mirror_url":null,"open_issues_count":45,"forks":49,"open_issues":45,"watchers":194,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/juju/juju/pulls/557"},"html":{"href":"https://github.com/juju/juju/pull/557"},"issue":{"href":"https://api.github.com/repos/juju/juju/issues/557"},"comments":{"href":"https://api.github.com/repos/juju/juju/issues/557/comments"},"review_comments":{"href":"https://api.github.com/repos/juju/juju/pulls/557/comments"},"review_comment":{"href":"https://api.github.com/repos/juju/juju/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/juju/juju/pulls/557/commits"},"statuses":{"href":"https://api.github.com/repos/juju/juju/statuses/36440944e183bfb391f2d8e2fa94a075ad62f5b4"}}}}