{"action":"created","issue":{"url":"https://api.github.com/repos/jenkinsci/ec2-plugin/issues/252","repository_url":"https://api.github.com/repos/jenkinsci/ec2-plugin","labels_url":"https://api.github.com/repos/jenkinsci/ec2-plugin/issues/252/labels{/name}","comments_url":"https://api.github.com/repos/jenkinsci/ec2-plugin/issues/252/comments","events_url":"https://api.github.com/repos/jenkinsci/ec2-plugin/issues/252/events","html_url":"https://github.com/jenkinsci/ec2-plugin/pull/252","id":281339093,"number":252,"title":"JENKINS-25832: Launch multiple slaves in parallel","user":{"login":"Jimilian","id":4785672,"avatar_url":"https://avatars2.githubusercontent.com/u/4785672?v=4","gravatar_id":"","url":"https://api.github.com/users/Jimilian","html_url":"https://github.com/Jimilian","followers_url":"https://api.github.com/users/Jimilian/followers","following_url":"https://api.github.com/users/Jimilian/following{/other_user}","gists_url":"https://api.github.com/users/Jimilian/gists{/gist_id}","starred_url":"https://api.github.com/users/Jimilian/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Jimilian/subscriptions","organizations_url":"https://api.github.com/users/Jimilian/orgs","repos_url":"https://api.github.com/users/Jimilian/repos","events_url":"https://api.github.com/users/Jimilian/events{/privacy}","received_events_url":"https://api.github.com/users/Jimilian/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":40,"created_at":"2017-12-12T10:52:10Z","updated_at":"2018-05-22T20:18:42Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/jenkinsci/ec2-plugin/pulls/252","html_url":"https://github.com/jenkinsci/ec2-plugin/pull/252","diff_url":"https://github.com/jenkinsci/ec2-plugin/pull/252.diff","patch_url":"https://github.com/jenkinsci/ec2-plugin/pull/252.patch"},"body":"\r\nThis commit changes the behaviour of core functionality: raising new\r\nnodes.\r\n\r\nIt implements very simple algorithm:\r\n- if NodeProvisioner requested X executors, start to raise\r\nX/N nodes (N is number of executors on each node).\r\n- if there is any orphant nodes (~not known by Jenkins at all), take\r\nthem in account (and start if it's neccessary)\r\n- if there is not enough orphant nodes - raise needed nodes in parallel\r\n- give them back to NodeProvisioner in RUNNING state\r\n\r\nAlso I failed to stop myself from extracting duplicated code to separate methods... sorry, for making review harder.\r\n\r\nI attached the last version of master + this PR to this message. So, if someone wants to give a try, it's enough to download it and rename back to `.hpi` (GitHub does not allow `hpi` file extension)\r\n[ec2-1.38-SNAPSHOT-Katysha-Edition.zip](https://github.com/jenkinsci/ec2-plugin/files/1551270/ec2-1.38-SNAPSHOT-Katysha-Edition.zip)\r\n  "},"comment":{"url":"https://api.github.com/repos/jenkinsci/ec2-plugin/issues/comments/391126593","html_url":"https://github.com/jenkinsci/ec2-plugin/pull/252#issuecomment-391126593","issue_url":"https://api.github.com/repos/jenkinsci/ec2-plugin/issues/252","id":391126593,"user":{"login":"steven-foster","id":22874983,"avatar_url":"https://avatars3.githubusercontent.com/u/22874983?v=4","gravatar_id":"","url":"https://api.github.com/users/steven-foster","html_url":"https://github.com/steven-foster","followers_url":"https://api.github.com/users/steven-foster/followers","following_url":"https://api.github.com/users/steven-foster/following{/other_user}","gists_url":"https://api.github.com/users/steven-foster/gists{/gist_id}","starred_url":"https://api.github.com/users/steven-foster/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/steven-foster/subscriptions","organizations_url":"https://api.github.com/users/steven-foster/orgs","repos_url":"https://api.github.com/users/steven-foster/repos","events_url":"https://api.github.com/users/steven-foster/events{/privacy}","received_events_url":"https://api.github.com/users/steven-foster/received_events","type":"User","site_admin":false},"created_at":"2018-05-22T20:18:42Z","updated_at":"2018-05-22T20:18:42Z","author_association":"NONE","body":"@Jimilian thanks for that, I appreciate it. \r\nAbout the previously discussed general over-provisioning, it seems like maybe the default node provisioning strategy is  reporting too much excess work for some reason (in my case lots of pipelines which are split into parallel stages)? I don't fully understand the system, but would you say that was incorrect behaviour that should be fixed in core, or should another provisioning strategy be written on its own to address that?"}}
{"actor":{"display_login":"steven-foster"}}