GitHub user mohamagdy reopened a pull request: https://github.com/apache/zeppelin/pull/2700
[ZEPPELIN-3092] GitHub Integration ### What is this PR for? GitHub integration as a storage for notebooks. ### What type of PR is it? Feature ### What is the Jira issue? [ZEPPELIN-3092](https://issues.apache.org/jira/browse/ZEPPELIN-3092) ### How should this be tested? 1. Change the configuration in `zeppelin-site.xml` to enable GitHub integration (add GitHub url, username, access token and origin) as described in https://github.com/apache/zeppelin/compare/master...mohamagdy:zeppelin-3092-remote-github-integration?expand=1#diff-89104d48f0358450399a6f679bba9c4f 2. Start the Zeppelin server 3. Open an existing notebook or create a new notebook 4. Do some changes to the notebook, for example add a new paragraph 5. Click on the versioning button on the top menu to commit and save changes 6. Checkout the changes in the GitHub repository. The changes should be reflected ### Questions: * **Does the licenses files need update?** No * **Is there breaking changes for older versions?** No * **Does this needs documentation?** Yes. Documentation is updated as part of the pull request. You can merge this pull request into a Git repository by running: $ git pull https://github.com/mohamagdy/zeppelin zeppelin-3092-remote-github-integration Alternatively you can review and apply these changes as the patch at: https://github.com/apache/zeppelin/pull/2700.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #2700 ---- commit 94675032cce563e169889d411e0d420ac30f3a49 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-05T13:12:10Z [ZEPPELIN-3092] Add `zepplein-server/local-repo` to `.gitignore` commit 0bde310138666dadb69006ee586c8312ded8e148 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-05T13:12:49Z [ZEPPELIN-3092] Add `zeppelin-site.xml` to `zeppelin-server` resources commit eeb485a2fec19f80c0043fb6053fec71c5a83d41 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-05T13:13:41Z [ZEPPELIN-3092] Add Github configuration reader commit 32f6764b19562720453c0930ad7335c07d3b29e4 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-05T16:52:50Z [ZEPPELIN-3092] Fix GitNotebook test - Setting the proper path for the test notebooks - Add the test notebooks to the `src/test/resource` directory commit 33ae24a473188be4ca81a79456703287f2fe07a5 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-05T16:54:42Z [ZEPPELIN-3092] Add remote Github repository synchronzing - Pull the latest changes when the notebook page loads in the browser - After commiting the changes, pull the latest changes from the remote repo then push the latest changes to the remote repo commit bb0afe2fca3f7915bd3f6047fdc8860d29722ba6 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-08T16:33:17Z [ZEPPELIN-3092] Add GitHub remote to configurations commit 2dbf11622cadc200b7d4d06c215ff0b5fa2c39b1 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-08T17:03:23Z [ZEPPELIN-3092] Add GitHub configuration to `zeppelin-site.xml` template commit 5236176ad9cf157aaf30886eaf43f50d537f8510 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-08T17:04:11Z [ZEPPELIN-3092] Move GitHub notebook repostiory to separte file commit 843e42a2736af325fe2240e5f8d03e2ec0c5d8f4 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-08T17:24:19Z [ZEPPELIN-3092] Cleanup GitHub repository tests commit 2b093b2056bbff1fd8595f3db11549c23f02d534 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-08T17:40:40Z [ZEPPELIN-3092] Add documentation about GitHub integration commit 0dacbf1c2fb8bb7013af7545cb173cb9a30ad058 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-08T17:46:46Z [ZEPPELIN-3092] Fix encoding in the documenation commit aadd9b5f36dcd8f6ef21cadc08d2da36f1e1902b Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-08T17:50:49Z [ZEPPELIN-3092] Revert back ZeppelinServer changes The changes were removed because it was closing the local server when any key is pressed in the console. commit b77a2d33706bf33bbe698c3328c1bb8ed7a5f1da Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-08T17:53:34Z [ZEPPELIN-3092] Fix identation in `pom.xml` commit 6aa4ba7ddd8c0055643e5ae8d487cedf35f0de8e Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-08T17:56:04Z [ZEPPELIN-3092] Revert back `GitNotebookRepo` to `master` Only change the visiblity of the `getGit` method to `protected` commit 3009abd47de3048cae922c82e36081d61608f3e9 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-08T18:03:28Z [ZEPPELIN-3092] Reset `GitNotebookRepo` to `master` commit 81969e123a4fb8e28501262e3b12f2380951f45e Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-08T18:06:40Z [ZEPPELIN-3092] Add documentation for loading notebooks from repo The change is about refreshing the notebooks everytime the repository is requested. Refreshing means, fetching the latest version from the repository. For example in case of GitHub storage, everytime the notebook is requested, it is pulled from GitHub and updated locally (`git pull`). commit 0174bbdbf9dde311b5d3e2b71f552d01b2e4ce36 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-08T18:10:17Z [ZEPPELIN-3092] Add documentation how to enabled `GitHubNotebookRepo` commit 264565b09fb8b3162120feec4078d431284a83ce Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-11T12:48:07Z [ZEPPELIN-3092] Fix line length to be 100 commit 6ba67ca8ecf2649e40f22f0107168f1cb5084352 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-11T12:48:45Z [ZEPPELIN-3092] Add Javadoc to `GitHubNotebookRepo` and fix line length to 100 commit 2c1cf743b54861e9bd53e483f3c873a77dbba1b1 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-15T13:55:46Z [ZEPPELIN-3029] Fix remote origin key name commit 90de14ccdf2a7a07db5a1876cedd2c4e45d2c884 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-15T14:25:19Z Merge branch 'master' into zeppelin-3092-remote-github-integration commit 0e9db3f6a8673fd5451fc81371be8c4210e0ba0e Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-15T15:38:52Z [ZEPPELIN-3092] Remove test GitHub repository URL and access token commit 14cb0241dd8537bc80ad96058108d87199a4a760 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-15T17:50:17Z [ZEPPELIN-3092] Fix notebook path for Git and GitHub tests commit 13a0014de11d5db5e62d8f4dd9993ab34f652f01 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-16T10:34:56Z [ZEPPELIN-3092] Disable GitHub configuration for Zeppelin server commit 30f2ab47a9373b86125fc96e32afc59b5459adfb Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-17T17:28:25Z [ZEPPELIN-3029] Increase Paragraph and Browser timeouts Due to continous failure of Travis CI tests for `timeout`. commit 8bd23d063723a13d2b99d77d3a285c9053302942 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-17T20:34:26Z [ZEPPELIN-3092] Set browser timeout to 180 seconds To avoid CI's random failures commit f362dcbbed7114b62f628ee38d02286346eb43f5 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-18T09:44:49Z [ZEPPELIN-3029] Use jGit version 4.5.4 instead of 4.3.1 commit be2c2784b96da038ff9877491f8691b7921bdcf6 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-18T09:47:12Z Revert "[ZEPPELIN-3092] Set browser timeout to 180 seconds" This reverts commit 8bd23d063723a13d2b99d77d3a285c9053302942. commit fc13fa697bc92b2f63fd5c8237ef90d2fd39271e Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-18T09:47:21Z Revert "[ZEPPELIN-3029] Increase Paragraph and Browser timeouts" This reverts commit 30f2ab47a9373b86125fc96e32afc59b5459adfb. commit d545e81b0096a56c8f0bcdaf31a4772b8034ebd9 Author: Mohamed Magdy <mohamed.magdy@...> Date: 2017-12-18T14:05:04Z [ZEPPELIN-3092] Remove duplicated dependency from `pom.xml` ---- ---