{"action":"closed","number":1954,"pull_request":{"url":"https://api.github.com/repos/drone/drone/pulls/1954","id":109139691,"html_url":"https://github.com/drone/drone/pull/1954","diff_url":"https://github.com/drone/drone/pull/1954.diff","patch_url":"https://github.com/drone/drone/pull/1954.patch","issue_url":"https://api.github.com/repos/drone/drone/issues/1954","number":1954,"state":"closed","locked":false,"title":"implement jsonrpc2 agent behind feature flag","user":{"login":"bradrydzewski","id":817538,"avatar_url":"https://avatars2.githubusercontent.com/u/817538?v=3","gravatar_id":"","url":"https://api.github.com/users/bradrydzewski","html_url":"https://github.com/bradrydzewski","followers_url":"https://api.github.com/users/bradrydzewski/followers","following_url":"https://api.github.com/users/bradrydzewski/following{/other_user}","gists_url":"https://api.github.com/users/bradrydzewski/gists{/gist_id}","starred_url":"https://api.github.com/users/bradrydzewski/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bradrydzewski/subscriptions","organizations_url":"https://api.github.com/users/bradrydzewski/orgs","repos_url":"https://api.github.com/users/bradrydzewski/repos","events_url":"https://api.github.com/users/bradrydzewski/events{/privacy}","received_events_url":"https://api.github.com/users/bradrydzewski/received_events","type":"User","site_admin":false},"body":"This can be enabled by passing the __DRONE_CANARY=true__  environment variable to the agent and the server. This will use a jsonrpc2 protocol for agent to server communication and a simplified queue and log manager, replacing the former mq package.\r\n\r\nThe purpose of this chance is improved scalability and reliability. The agents are better equipped to recover from failures and less likely to end up in an inconsistent state. This also introduces a new yaml parser and compiler, which should enable compatibility with other yaml files (compatibility with gitlab, bitbucket pipelines, travis, etc) and with multiple runners (kubernetes, docker, etc)\r\n\r\nThis alternate implementation has a number of issues and missing features.\r\n\r\n- [x] re-enable secret concealing\r\n- [ ] re-enable log limits\r\n- [x] make sure all `drone_` environment variables still exist\r\n- [x] handle yaml parsing and lint failures\r\n- [x] extra blank lines in build output\r\n- [ ] drone-exec not yet implemented. old code still executed\r\n- [x] re-start existing build not yet implemented. old code still executed\r\n- [x] cancel build is not yet hooked up\r\n- [ ] github status link may be blank or incorrect (ask brad for more detail)\r\n\r\nThis alternate implementation does contain breaking changes:\r\n\r\n* services are now accessed by hostname (similar to docker-compose) instead of localhost\r\n* secrets are only interpolated\r\n\r\nThe following items need more testing:\r\n\r\n- [ ] secrets\r\n- [ ] service containers and linking\r\n- [ ] restart with fork\r\n\r\nPlease note this patch __does not__ impact existing installations unless you set the __DRONE_CANARY__ flag. If you do not set this flag this patch will not impact your existing installation.\r\n","created_at":"2017-03-05T07:58:59Z","updated_at":"2017-03-15T02:10:10Z","closed_at":"2017-03-15T02:10:10Z","merged_at":"2017-03-15T02:10:10Z","merge_commit_sha":"fe669b744cbbab0d6c8a23dca944b755400ce214","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/drone/drone/pulls/1954/commits","review_comments_url":"https://api.github.com/repos/drone/drone/pulls/1954/comments","review_comment_url":"https://api.github.com/repos/drone/drone/pulls/comments{/number}","comments_url":"https://api.github.com/repos/drone/drone/issues/1954/comments","statuses_url":"https://api.github.com/repos/drone/drone/statuses/fc46a5be0a77454cd7302dedcef48e5ae59aa2b7","head":{"label":"bradrydzewski:master","ref":"master","sha":"fc46a5be0a77454cd7302dedcef48e5ae59aa2b7","user":{"login":"bradrydzewski","id":817538,"avatar_url":"https://avatars2.githubusercontent.com/u/817538?v=3","gravatar_id":"","url":"https://api.github.com/users/bradrydzewski","html_url":"https://github.com/bradrydzewski","followers_url":"https://api.github.com/users/bradrydzewski/followers","following_url":"https://api.github.com/users/bradrydzewski/following{/other_user}","gists_url":"https://api.github.com/users/bradrydzewski/gists{/gist_id}","starred_url":"https://api.github.com/users/bradrydzewski/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bradrydzewski/subscriptions","organizations_url":"https://api.github.com/users/bradrydzewski/orgs","repos_url":"https://api.github.com/users/bradrydzewski/repos","events_url":"https://api.github.com/users/bradrydzewski/events{/privacy}","received_events_url":"https://api.github.com/users/bradrydzewski/received_events","type":"User","site_admin":false},"repo":{"id":25100108,"name":"drone","full_name":"bradrydzewski/drone","owner":{"login":"bradrydzewski","id":817538,"avatar_url":"https://avatars2.githubusercontent.com/u/817538?v=3","gravatar_id":"","url":"https://api.github.com/users/bradrydzewski","html_url":"https://github.com/bradrydzewski","followers_url":"https://api.github.com/users/bradrydzewski/followers","following_url":"https://api.github.com/users/bradrydzewski/following{/other_user}","gists_url":"https://api.github.com/users/bradrydzewski/gists{/gist_id}","starred_url":"https://api.github.com/users/bradrydzewski/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bradrydzewski/subscriptions","organizations_url":"https://api.github.com/users/bradrydzewski/orgs","repos_url":"https://api.github.com/users/bradrydzewski/repos","events_url":"https://api.github.com/users/bradrydzewski/events{/privacy}","received_events_url":"https://api.github.com/users/bradrydzewski/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/bradrydzewski/drone","description":"Drone is a Continuous Integration platform built on Docker, written in Go","fork":true,"url":"https://api.github.com/repos/bradrydzewski/drone","forks_url":"https://api.github.com/repos/bradrydzewski/drone/forks","keys_url":"https://api.github.com/repos/bradrydzewski/drone/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bradrydzewski/drone/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bradrydzewski/drone/teams","hooks_url":"https://api.github.com/repos/bradrydzewski/drone/hooks","issue_events_url":"https://api.github.com/repos/bradrydzewski/drone/issues/events{/number}","events_url":"https://api.github.com/repos/bradrydzewski/drone/events","assignees_url":"https://api.github.com/repos/bradrydzewski/drone/assignees{/user}","branches_url":"https://api.github.com/repos/bradrydzewski/drone/branches{/branch}","tags_url":"https://api.github.com/repos/bradrydzewski/drone/tags","blobs_url":"https://api.github.com/repos/bradrydzewski/drone/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bradrydzewski/drone/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bradrydzewski/drone/git/refs{/sha}","trees_url":"https://api.github.com/repos/bradrydzewski/drone/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bradrydzewski/drone/statuses/{sha}","languages_url":"https://api.github.com/repos/bradrydzewski/drone/languages","stargazers_url":"https://api.github.com/repos/bradrydzewski/drone/stargazers","contributors_url":"https://api.github.com/repos/bradrydzewski/drone/contributors","subscribers_url":"https://api.github.com/repos/bradrydzewski/drone/subscribers","subscription_url":"https://api.github.com/repos/bradrydzewski/drone/subscription","commits_url":"https://api.github.com/repos/bradrydzewski/drone/commits{/sha}","git_commits_url":"https://api.github.com/repos/bradrydzewski/drone/git/commits{/sha}","comments_url":"https://api.github.com/repos/bradrydzewski/drone/comments{/number}","issue_comment_url":"https://api.github.com/repos/bradrydzewski/drone/issues/comments{/number}","contents_url":"https://api.github.com/repos/bradrydzewski/drone/contents/{+path}","compare_url":"https://api.github.com/repos/bradrydzewski/drone/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bradrydzewski/drone/merges","archive_url":"https://api.github.com/repos/bradrydzewski/drone/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bradrydzewski/drone/downloads","issues_url":"https://api.github.com/repos/bradrydzewski/drone/issues{/number}","pulls_url":"https://api.github.com/repos/bradrydzewski/drone/pulls{/number}","milestones_url":"https://api.github.com/repos/bradrydzewski/drone/milestones{/number}","notifications_url":"https://api.github.com/repos/bradrydzewski/drone/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bradrydzewski/drone/labels{/name}","releases_url":"https://api.github.com/repos/bradrydzewski/drone/releases{/id}","deployments_url":"https://api.github.com/repos/bradrydzewski/drone/deployments","created_at":"2014-10-11T23:58:46Z","updated_at":"2016-11-11T09:48:16Z","pushed_at":"2017-03-14T16:01:38Z","git_url":"git://github.com/bradrydzewski/drone.git","ssh_url":"git@github.com:bradrydzewski/drone.git","clone_url":"https://github.com/bradrydzewski/drone.git","svn_url":"https://github.com/bradrydzewski/drone","homepage":"","size":21373,"stargazers_count":2,"watchers_count":2,"language":"Go","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"drone:master","ref":"master","sha":"d7758a23e0860768703c4c2ae9347116410b1774","user":{"login":"drone","id":2181346,"avatar_url":"https://avatars2.githubusercontent.com/u/2181346?v=3","gravatar_id":"","url":"https://api.github.com/users/drone","html_url":"https://github.com/drone","followers_url":"https://api.github.com/users/drone/followers","following_url":"https://api.github.com/users/drone/following{/other_user}","gists_url":"https://api.github.com/users/drone/gists{/gist_id}","starred_url":"https://api.github.com/users/drone/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/drone/subscriptions","organizations_url":"https://api.github.com/users/drone/orgs","repos_url":"https://api.github.com/users/drone/repos","events_url":"https://api.github.com/users/drone/events{/privacy}","received_events_url":"https://api.github.com/users/drone/received_events","type":"Organization","site_admin":false},"repo":{"id":16607898,"name":"drone","full_name":"drone/drone","owner":{"login":"drone","id":2181346,"avatar_url":"https://avatars2.githubusercontent.com/u/2181346?v=3","gravatar_id":"","url":"https://api.github.com/users/drone","html_url":"https://github.com/drone","followers_url":"https://api.github.com/users/drone/followers","following_url":"https://api.github.com/users/drone/following{/other_user}","gists_url":"https://api.github.com/users/drone/gists{/gist_id}","starred_url":"https://api.github.com/users/drone/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/drone/subscriptions","organizations_url":"https://api.github.com/users/drone/orgs","repos_url":"https://api.github.com/users/drone/repos","events_url":"https://api.github.com/users/drone/events{/privacy}","received_events_url":"https://api.github.com/users/drone/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/drone/drone","description":"Drone is a Continuous Delivery platform built on Docker, written in Go","fork":false,"url":"https://api.github.com/repos/drone/drone","forks_url":"https://api.github.com/repos/drone/drone/forks","keys_url":"https://api.github.com/repos/drone/drone/keys{/key_id}","collaborators_url":"https://api.github.com/repos/drone/drone/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/drone/drone/teams","hooks_url":"https://api.github.com/repos/drone/drone/hooks","issue_events_url":"https://api.github.com/repos/drone/drone/issues/events{/number}","events_url":"https://api.github.com/repos/drone/drone/events","assignees_url":"https://api.github.com/repos/drone/drone/assignees{/user}","branches_url":"https://api.github.com/repos/drone/drone/branches{/branch}","tags_url":"https://api.github.com/repos/drone/drone/tags","blobs_url":"https://api.github.com/repos/drone/drone/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/drone/drone/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/drone/drone/git/refs{/sha}","trees_url":"https://api.github.com/repos/drone/drone/git/trees{/sha}","statuses_url":"https://api.github.com/repos/drone/drone/statuses/{sha}","languages_url":"https://api.github.com/repos/drone/drone/languages","stargazers_url":"https://api.github.com/repos/drone/drone/stargazers","contributors_url":"https://api.github.com/repos/drone/drone/contributors","subscribers_url":"https://api.github.com/repos/drone/drone/subscribers","subscription_url":"https://api.github.com/repos/drone/drone/subscription","commits_url":"https://api.github.com/repos/drone/drone/commits{/sha}","git_commits_url":"https://api.github.com/repos/drone/drone/git/commits{/sha}","comments_url":"https://api.github.com/repos/drone/drone/comments{/number}","issue_comment_url":"https://api.github.com/repos/drone/drone/issues/comments{/number}","contents_url":"https://api.github.com/repos/drone/drone/contents/{+path}","compare_url":"https://api.github.com/repos/drone/drone/compare/{base}...{head}","merges_url":"https://api.github.com/repos/drone/drone/merges","archive_url":"https://api.github.com/repos/drone/drone/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/drone/drone/downloads","issues_url":"https://api.github.com/repos/drone/drone/issues{/number}","pulls_url":"https://api.github.com/repos/drone/drone/pulls{/number}","milestones_url":"https://api.github.com/repos/drone/drone/milestones{/number}","notifications_url":"https://api.github.com/repos/drone/drone/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/drone/drone/labels{/name}","releases_url":"https://api.github.com/repos/drone/drone/releases{/id}","deployments_url":"https://api.github.com/repos/drone/drone/deployments","created_at":"2014-02-07T07:54:44Z","updated_at":"2017-03-15T00:29:16Z","pushed_at":"2017-03-15T02:10:10Z","git_url":"git://github.com/drone/drone.git","ssh_url":"git@github.com:drone/drone.git","clone_url":"https://github.com/drone/drone.git","svn_url":"https://github.com/drone/drone","homepage":"","size":21057,"stargazers_count":8999,"watchers_count":8999,"language":"Go","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1040,"mirror_url":null,"open_issues_count":125,"forks":1040,"open_issues":125,"watchers":8999,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/drone/drone/pulls/1954"},"html":{"href":"https://github.com/drone/drone/pull/1954"},"issue":{"href":"https://api.github.com/repos/drone/drone/issues/1954"},"comments":{"href":"https://api.github.com/repos/drone/drone/issues/1954/comments"},"review_comments":{"href":"https://api.github.com/repos/drone/drone/pulls/1954/comments"},"review_comment":{"href":"https://api.github.com/repos/drone/drone/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/drone/drone/pulls/1954/commits"},"statuses":{"href":"https://api.github.com/repos/drone/drone/statuses/fc46a5be0a77454cd7302dedcef48e5ae59aa2b7"}},"merged":true,"mergeable":null,"mergeable_state":"unknown","merged_by":{"login":"bradrydzewski","id":817538,"avatar_url":"https://avatars2.githubusercontent.com/u/817538?v=3","gravatar_id":"","url":"https://api.github.com/users/bradrydzewski","html_url":"https://github.com/bradrydzewski","followers_url":"https://api.github.com/users/bradrydzewski/followers","following_url":"https://api.github.com/users/bradrydzewski/following{/other_user}","gists_url":"https://api.github.com/users/bradrydzewski/gists{/gist_id}","starred_url":"https://api.github.com/users/bradrydzewski/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bradrydzewski/subscriptions","organizations_url":"https://api.github.com/users/bradrydzewski/orgs","repos_url":"https://api.github.com/users/bradrydzewski/repos","events_url":"https://api.github.com/users/bradrydzewski/events{/privacy}","received_events_url":"https://api.github.com/users/bradrydzewski/received_events","type":"User","site_admin":false},"comments":2,"review_comments":0,"maintainer_can_modify":false,"commits":11,"additions":30281,"deletions":190,"changed_files":329}}
{"actor":{"display_login":"bradrydzewski"}}