{"action":"created","issue":{"url":"https://api.github.com/repos/amplab/tachyon/issues/969","labels_url":"https://api.github.com/repos/amplab/tachyon/issues/969/labels{/name}","comments_url":"https://api.github.com/repos/amplab/tachyon/issues/969/comments","events_url":"https://api.github.com/repos/amplab/tachyon/issues/969/events","html_url":"https://github.com/amplab/tachyon/pull/969","id":84636098,"number":969,"title":"[WIP] [TACHYON-49,TACHYON-221] Better integration tests","user":{"login":"rvesse","id":2104864,"avatar_url":"https://avatars.githubusercontent.com/u/2104864?v=3","gravatar_id":"","url":"https://api.github.com/users/rvesse","html_url":"https://github.com/rvesse","followers_url":"https://api.github.com/users/rvesse/followers","following_url":"https://api.github.com/users/rvesse/following{/other_user}","gists_url":"https://api.github.com/users/rvesse/gists{/gist_id}","starred_url":"https://api.github.com/users/rvesse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rvesse/subscriptions","organizations_url":"https://api.github.com/users/rvesse/orgs","repos_url":"https://api.github.com/users/rvesse/repos","events_url":"https://api.github.com/users/rvesse/events{/privacy}","received_events_url":"https://api.github.com/users/rvesse/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":10,"created_at":"2015-06-03T15:56:40Z","updated_at":"2016-01-15T07:50:17Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/amplab/tachyon/pulls/969","html_url":"https://github.com/amplab/tachyon/pull/969","diff_url":"https://github.com/amplab/tachyon/pull/969.diff","patch_url":"https://github.com/amplab/tachyon/pull/969.patch"},"body":"This PR is a follow up to previous PRs that have refactored Tachyon out into multiple modules\r\n\r\nWhen I originally did the Under FS refactor as TACHYON-221 I used a multi-module approach for testing that allowed Tachyon builds to test multiple under file systems in a single build without the need to activate profiles explicitly.  However when the larger refactorings of TACHYON-49 those changes were lost and we went back to a situation with only being able to run a single under file system for integration testing in a single build.\r\n\r\nThis PR rectifies this by splitting the integration tests into a multi-module setup again and using advanced features of the Surefire plugin to simply re-use the test cases against each under file system in a separate module potentially allowing a single build to test all supported under file systems.\r\n\r\nThe under file systems that require no additional configuration (local and hdfs) are enabled to run by default, the implementations that need additional configuration (glusterfs and S3) must be enabled via a profile (`s3Test` and `glusterfsTest`).  For those that need additional configuration the enforcer plugin is now used to fail the build if the profile is activated but the user has not provided the necessary configuration.\r\n\r\nFinally the Hadoop Contract tests are split out into a separate module that just runs those tests.  Since those tests require Hadoop 2.6.0 or higher (HDFS Contract Testing was only introduced in 2.6.0) the relevant test classes are only compiled when the `contractTest` profile is activated and the enforcer plugin is used to enforce that `hadoop.version` is set to 2.6.0 or higher.\r\n\r\n### WIP\r\n\r\nThis is WIP and there are a couple more things to add yet:\r\n\r\n- Integration test module for Swift\r\n- Updated documentation on running integration tests"},"comment":{"url":"https://api.github.com/repos/amplab/tachyon/issues/comments/171895195","html_url":"https://github.com/amplab/tachyon/pull/969#issuecomment-171895195","issue_url":"https://api.github.com/repos/amplab/tachyon/issues/969","id":171895195,"user":{"login":"AmplabJenkins","id":4031291,"avatar_url":"https://avatars.githubusercontent.com/u/4031291?v=3","gravatar_id":"","url":"https://api.github.com/users/AmplabJenkins","html_url":"https://github.com/AmplabJenkins","followers_url":"https://api.github.com/users/AmplabJenkins/followers","following_url":"https://api.github.com/users/AmplabJenkins/following{/other_user}","gists_url":"https://api.github.com/users/AmplabJenkins/gists{/gist_id}","starred_url":"https://api.github.com/users/AmplabJenkins/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AmplabJenkins/subscriptions","organizations_url":"https://api.github.com/users/AmplabJenkins/orgs","repos_url":"https://api.github.com/users/AmplabJenkins/repos","events_url":"https://api.github.com/users/AmplabJenkins/events{/privacy}","received_events_url":"https://api.github.com/users/AmplabJenkins/received_events","type":"User","site_admin":false},"created_at":"2016-01-15T07:50:17Z","updated_at":"2016-01-15T07:50:17Z","body":"Test FAILed.\nRefer to this link for build results (access rights to CI server needed): \nhttps://amplab.cs.berkeley.edu/jenkins//job/Tachyon-Pull-Request-Builder/7922/\nTest FAILed."}}