{"action":"created","issue":{"url":"https://api.github.com/repos/akka/akka/issues/25264","repository_url":"https://api.github.com/repos/akka/akka","labels_url":"https://api.github.com/repos/akka/akka/issues/25264/labels{/name}","comments_url":"https://api.github.com/repos/akka/akka/issues/25264/comments","events_url":"https://api.github.com/repos/akka/akka/issues/25264/events","html_url":"https://github.com/akka/akka/pull/25264","id":335185769,"node_id":"MDExOlB1bGxSZXF1ZXN0MTk2OTUzODg0","number":25264,"title":"Switched to new sbt PR validator plugin","user":{"login":"jroper","id":105833,"node_id":"MDQ6VXNlcjEwNTgzMw==","avatar_url":"https://avatars0.githubusercontent.com/u/105833?v=4","gravatar_id":"","url":"https://api.github.com/users/jroper","html_url":"https://github.com/jroper","followers_url":"https://api.github.com/users/jroper/followers","following_url":"https://api.github.com/users/jroper/following{/other_user}","gists_url":"https://api.github.com/users/jroper/gists{/gist_id}","starred_url":"https://api.github.com/users/jroper/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jroper/subscriptions","organizations_url":"https://api.github.com/users/jroper/orgs","repos_url":"https://api.github.com/users/jroper/repos","events_url":"https://api.github.com/users/jroper/events{/privacy}","received_events_url":"https://api.github.com/users/jroper/received_events","type":"User","site_admin":false},"labels":[{"id":37797347,"node_id":"MDU6TGFiZWwzNzc5NzM0Nw==","url":"https://api.github.com/repos/akka/akka/labels/tested","name":"tested","color":"d7e102","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2018-06-24T14:57:32Z","updated_at":"2018-06-25T03:38:03Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/akka/akka/pulls/25264","html_url":"https://github.com/akka/akka/pull/25264","diff_url":"https://github.com/akka/akka/pull/25264.diff","patch_url":"https://github.com/akka/akka/pull/25264.patch"},"body":"This switches to the new sbt PR validator plugin.\n\nThe plugin has been substantially rewritten because it couldn't make the same assumptions about the code base structure and what needed to be run that Akka was making. I've tested it locally - when changing an individual project, it just builds that project and its dependencies, and when changing the project folder, it rebuilds all projects. Also, the plugin itself has reasonable scripted tests. But, it's difficult to comprehensively test it, so after merging, you should keep an eye on it to make sure it's doing the right thing.\n\nHere are things that have changed to be aware of:\n\n* Determining what changes are individual project changes, and what changes are sbt build changes, are no longer done based on simple matching of base directories, but rather using include and exclude filters. One consequence, this means changing `*.sbt` files in the root directory now triggers a full rebuild, since the filter for building all projects now matches these.\n* Associating changes with projects is now done by inspecting the configured base directory of each project, and choosing the most specific one, rather than assuming Akka's flat project structure.\n* Dependency analysis no longer uses the dependency graph plugin, but rather uses sbt's build structure directly. Not sure why the dependency graph plugin was used, since that requires going through Ivy, it's a lot simpler to just consider sbt's dependsOn configuration, which is what is done now.\n* GitHub credentials now use sbt's credentials mechanism rather than an environment variable. To retrofit this into the existing build setup, I've configured the sbt credentials based on the environment variable.\n* The new plugin supports both the Jenkins GHPRB plugin and Travis. Hopefully I've got the logic right, it's impossible to test it in a scripted test since you need the actual environment to make sure the integration is right.\n* The new plugin does not port the `PrValidation` configuration, since that's specific to how Akka wants to do its PR validation (it wants to pass different options to the test framework). So that stuff still stays in Akka.\n* The tasks that get run are now configurable via `prValidatorTasks`, `prValidatorBuildAllTasks` and `prValidatorEnforcedBuildAllTasks`.\n\nFull documentation can be found here:\n\nhttps://github.com/sbt/sbt-pull-request-validator\n\nAnd now to make sure the GitHub enforced build integration is still working: PLS BUILD ALL"},"comment":{"url":"https://api.github.com/repos/akka/akka/issues/comments/399821563","html_url":"https://github.com/akka/akka/pull/25264#issuecomment-399821563","issue_url":"https://api.github.com/repos/akka/akka/issues/25264","id":399821563,"node_id":"MDEyOklzc3VlQ29tbWVudDM5OTgyMTU2Mw==","user":{"login":"ktoso","id":120979,"node_id":"MDQ6VXNlcjEyMDk3OQ==","avatar_url":"https://avatars1.githubusercontent.com/u/120979?v=4","gravatar_id":"","url":"https://api.github.com/users/ktoso","html_url":"https://github.com/ktoso","followers_url":"https://api.github.com/users/ktoso/followers","following_url":"https://api.github.com/users/ktoso/following{/other_user}","gists_url":"https://api.github.com/users/ktoso/gists{/gist_id}","starred_url":"https://api.github.com/users/ktoso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ktoso/subscriptions","organizations_url":"https://api.github.com/users/ktoso/orgs","repos_url":"https://api.github.com/users/ktoso/repos","events_url":"https://api.github.com/users/ktoso/events{/privacy}","received_events_url":"https://api.github.com/users/ktoso/received_events","type":"User","site_admin":false},"created_at":"2018-06-25T03:38:03Z","updated_at":"2018-06-25T03:38:03Z","author_association":"MEMBER","body":"PLS BUILD ALL"}}
{"actor":{"display_login":"ktoso"}}