GitHub user 1ambda reopened a pull request: https://github.com/apache/zeppelin/pull/1982
[ZEPPELIN-2069] Helium Package Configuration ### What is this PR for? Supporting helium package configurations. I attached screenshots. #### Implementation details. In case of spell, spell developer can create config spec in their `package.json` and it will be part of `helium.json` which is consumed by Zeppelin. ``` "config": { "repeat": { "type": "number", "description": "How many times to repeat", "defaultValue": 1 } }, ``` 1. Persists conf per `package name@package version` since each version can require different configs even if they are the same package. 2. Saves key-value config only. Since config spec (e.g `type`, `desc`, `defaultValue`) can be provided. So it's not efficient save both of them. 3. Extracts config related functions to `helium.service.js` since it can be used not only in `helium.controller.js` for view but also should be used in `paragraph.controller.js`, `result.controller.js` for executing spell. ### What type of PR is it? [Feature] ### Todos * [x] - create config view in `/helium` * [x] - persist config per `package@version` * [x] - pass config to spell ### What is the Jira issue? [ZEPPELIN-2069](https://issues.apache.org/jira/browse/ZEPPELIN-2069) ### How should this be tested? - Build with examples `mvn clean package -Phelium-dev -Pexamples -DskipTests;` - Open `/helium` page - Update the `echo-spell` config - Execute the spell like the screenshot below. (you don't need to refresh the page, since executing spell will fetch config from server) ### Screenshots (if appropriate)  ### Questions: * Does the licenses files need update? - NO * Is there breaking changes for older versions? - NO * Does this needs documentation? - NO You can merge this pull request into a Git repository by running: $ git pull https://github.com/1ambda/zeppelin ZEPPELIN-2069/helium-package-configuration Alternatively you can review and apply these changes as the patch at: https://github.com/apache/zeppelin/pull/1982.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 #1982 ---- commit 692687c356fbebc6611d7f0ce0fd12effbddf307 Author: 1ambda <1am...@gmail.com> Date: 2017-02-06T07:34:32Z feat: Support config, version field for helium pkg commit c3c2a359adad5c4f9d1bd989647c4ab59a0739f5 Author: 1ambda <1am...@gmail.com> Date: 2017-02-06T07:34:52Z feat: Support config for helium pkg in backend commit 1b8bfcbcadea79381c0008e9cd43190f3058d901 Author: 1ambda <1am...@gmail.com> Date: 2017-02-06T07:37:48Z chore: Add conf to example spells commit 53e9768563bf5a4bd4b04a867c48fb4e34f8204a Author: 1ambda <1am...@gmail.com> Date: 2017-02-06T07:41:24Z feat: Support helium conf in frontend commit a00edc54cada73bd4e6274469c60007a2c59c511 Author: 1ambda <1am...@gmail.com> Date: 2017-02-07T02:07:28Z refactor: Extact spell related code to helium commit dd1eb7fe8881c0801b25277c3d662290f4f9b090 Author: 1ambda <1am...@gmail.com> Date: 2017-02-07T02:23:37Z feat: Pass confs to spell interpret() commit f2d42ca431146e4e03eba39bddecc861880912bb Author: 1ambda <1am...@gmail.com> Date: 2017-02-07T04:18:15Z feat: Add config to framework, examples commit d9c812ee161e7ea9bd44fd2367bd551ac9201b31 Author: 1ambda <1am...@gmail.com> Date: 2017-02-07T04:18:27Z fix: Remove digest from para ctrl commit 85c02242fb132996b70525a652affe4e0ce0b533 Author: 1ambda <1am...@gmail.com> Date: 2017-02-16T03:21:25Z fix: Use artifact as key of config commit 23d5031808718e646ed76d4a5a8b037c30dfc54c Author: 1ambda <1am...@gmail.com> Date: 2017-02-16T03:37:09Z feat: Add disabled class to cfg button while fetching commit d5830d7107dcdc117d7fd759b43f9de50c992b4e Author: 1ambda <1am...@gmail.com> Date: 2017-02-16T04:38:11Z refactor: HeliumService commit 367bd541a9984e55d87216231dce49df1ac2dd16 Author: 1ambda <1am...@gmail.com> Date: 2017-02-16T04:41:01Z fix: Lint error commit f084c58c1b33849a2f1df4bd9a98a82a74a7bb15 Author: 1ambda <1am...@gmail.com> Date: 2017-02-16T04:53:12Z fix: configExists commit 187808445082f868046ffd1946112b241101c88a Author: 1ambda <1am...@gmail.com> Date: 2017-02-16T09:16:55Z refactor: Create API call for config commit b4bc56836dcd985494c54142352f18cd0a24ea12 Author: 1ambda <1am...@gmail.com> Date: 2017-02-16T09:57:43Z feat: Make spell execution transactional commit 008ae4a0e81dc5f3d8f9a8a8d8e5b53edb02c9f4 Author: 1ambda <1am...@gmail.com> Date: 2017-02-21T06:44:03Z feat: Close spell config panel after saving commit c3100a38b879d8d6d936f528f8f8078bff2623d4 Author: 1ambda <1am...@gmail.com> Date: 2017-02-21T07:29:01Z fix: DON'T serialize version field in HeliumPackage ---- --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---