[BlueOcean] BlueOcean Extensibility JEP

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

[BlueOcean] BlueOcean Extensibility JEP

Ivan Meredith
Hello everyone,

I have been working on a JEP for Blue Ocean Extensibility. This will come in several parts that cover the technical aspects of how javascript extensions are registered and how packaging is done as well as documentation and an SDK to help develop extensions.

I've opened a PR for https://github.com/imeredith/jep/tree/jep-submission/jep/0000 that explains Blue Oceans extensibility generally, and https://github.com/imeredith/jep/tree/jep-submission-extensibility-api/jep/0000 that defines a Javascript API for plugins to use. 

I'm currently working on a JEP for packaging/bundling the Javascript extensions and assets.

Any feedback/questions on the JEPs or just the general direction is welcome.

Thanks, Ivan








--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/da5fb343-a91d-48e0-ba98-ab7a7122e3ab%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: [BlueOcean] BlueOcean Extensibility JEP

Liam Newman
https://github.com/jenkinsci/jep/pull/112 - Merged 
https://github.com/jenkinsci/jep/pull/113 - Merged

Blue Ocean Extensibility - https://github.com/jenkinsci/jep/tree/master/jep/203
Blue Ocean Extensibility API - https://github.com/jenkinsci/jep/tree/master/jep/204


On Tuesday, June 5, 2018 at 8:12:01 PM UTC-7, Ivan Meredith wrote:
Hello everyone,

I have been working on a JEP for Blue Ocean Extensibility. This will come in several parts that cover the technical aspects of how javascript extensions are registered and how packaging is done as well as documentation and an SDK to help develop extensions.

I've opened a PR for <a href="https://github.com/imeredith/jep/tree/jep-submission/jep/0000" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fimeredith%2Fjep%2Ftree%2Fjep-submission%2Fjep%2F0000\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGkFSDK-3yZS-cqrvJfSa6V_Gpwtw&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fimeredith%2Fjep%2Ftree%2Fjep-submission%2Fjep%2F0000\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGkFSDK-3yZS-cqrvJfSa6V_Gpwtw&#39;;return true;">https://github.com/imeredith/jep/tree/jep-submission/jep/0000 that explains Blue Oceans extensibility generally, and <a href="https://github.com/imeredith/jep/tree/jep-submission-extensibility-api/jep/0000" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fimeredith%2Fjep%2Ftree%2Fjep-submission-extensibility-api%2Fjep%2F0000\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFNjjcAG8_NlmRz4EbHk4b3TkuwaA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fimeredith%2Fjep%2Ftree%2Fjep-submission-extensibility-api%2Fjep%2F0000\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFNjjcAG8_NlmRz4EbHk4b3TkuwaA&#39;;return true;">https://github.com/imeredith/jep/tree/jep-submission-extensibility-api/jep/0000 that defines a Javascript API for plugins to use. 

I'm currently working on a JEP for packaging/bundling the Javascript extensions and assets.

Any feedback/questions on the JEPs or just the general direction is welcome.

Thanks, Ivan








--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/32582ea5-164e-4bb1-bf2b-82e1bfe6b872%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: [BlueOcean] BlueOcean Extensibility JEP

Oleg Nenashev
Hi,

Great to see that BlueOcean is finally going to get some extensibility.
I was waiting for it since Beta, and it was blocker for BlueOcean adoption in some of my projects.

JEP-204 looks good to me. Few questions there:
  • What is the reason to create a new extension engine/store? I'd guess there are many existing engines for JS/TS
  • There is no logic to unregister extensions. IIUC it means that I may need to reload BlueOcean page if the master restarts and uninstalls some plugins
  • Does BlueOcean project plan switch to TypeScript? Or is it just a quick reference implementation?
Sorry if I ask stupid questions, I am not a JavaScript guy.

JEP-203... Would it be possible to clarify the specification in JEP-203?
From what I see it's a top-level document which defines the extensibility goals and announces breaking changes in existing APIs.
Without links to downstream JEPs describing particular sections, IMHO there is no much value in this JEP. And I doubt it can be accepted in the current state until there are specifications for all sections in the document (in downstream JEPs?).

Best regards,
Oleg

On Tuesday, June 12, 2018 at 7:24:56 PM UTC+2, Liam Newman wrote:
<a href="https://github.com/jenkinsci/jep/pull/112" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjep%2Fpull%2F112\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNG6191hP5_PfC5AXLw3Rol633yWjA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjep%2Fpull%2F112\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNG6191hP5_PfC5AXLw3Rol633yWjA&#39;;return true;">https://github.com/jenkinsci/jep/pull/112 - Merged 
<a href="https://github.com/jenkinsci/jep/pull/113" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjep%2Fpull%2F113\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNE7u5W5elDrzr7fcvDsK-0pBxjPPg&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjep%2Fpull%2F113\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNE7u5W5elDrzr7fcvDsK-0pBxjPPg&#39;;return true;">https://github.com/jenkinsci/jep/pull/113 - Merged

Blue Ocean Extensibility - <a href="https://github.com/jenkinsci/jep/tree/master/jep/203" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjep%2Ftree%2Fmaster%2Fjep%2F203\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNF2kwsbEzM4X9d9sBVdg14IJ0-k7w&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjep%2Ftree%2Fmaster%2Fjep%2F203\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNF2kwsbEzM4X9d9sBVdg14IJ0-k7w&#39;;return true;">https://github.com/jenkinsci/jep/tree/master/jep/203
Blue Ocean Extensibility API - <a href="https://github.com/jenkinsci/jep/tree/master/jep/204" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjep%2Ftree%2Fmaster%2Fjep%2F204\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFJ1eqUDaqvLZLmGBOgd5aE2Ak6IQ&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjep%2Ftree%2Fmaster%2Fjep%2F204\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFJ1eqUDaqvLZLmGBOgd5aE2Ak6IQ&#39;;return true;">https://github.com/jenkinsci/jep/tree/master/jep/204


On Tuesday, June 5, 2018 at 8:12:01 PM UTC-7, Ivan Meredith wrote:
Hello everyone,

I have been working on a JEP for Blue Ocean Extensibility. This will come in several parts that cover the technical aspects of how javascript extensions are registered and how packaging is done as well as documentation and an SDK to help develop extensions.

I've opened a PR for <a href="https://github.com/imeredith/jep/tree/jep-submission/jep/0000" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fimeredith%2Fjep%2Ftree%2Fjep-submission%2Fjep%2F0000\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGkFSDK-3yZS-cqrvJfSa6V_Gpwtw&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fimeredith%2Fjep%2Ftree%2Fjep-submission%2Fjep%2F0000\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGkFSDK-3yZS-cqrvJfSa6V_Gpwtw&#39;;return true;">https://github.com/imeredith/jep/tree/jep-submission/jep/0000 that explains Blue Oceans extensibility generally, and <a href="https://github.com/imeredith/jep/tree/jep-submission-extensibility-api/jep/0000" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fimeredith%2Fjep%2Ftree%2Fjep-submission-extensibility-api%2Fjep%2F0000\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFNjjcAG8_NlmRz4EbHk4b3TkuwaA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fimeredith%2Fjep%2Ftree%2Fjep-submission-extensibility-api%2Fjep%2F0000\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFNjjcAG8_NlmRz4EbHk4b3TkuwaA&#39;;return true;">https://github.com/imeredith/jep/tree/jep-submission-extensibility-api/jep/0000 that defines a Javascript API for plugins to use. 

I'm currently working on a JEP for packaging/bundling the Javascript extensions and assets.

Any feedback/questions on the JEPs or just the general direction is welcome.

Thanks, Ivan








--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/5ec022bb-056e-47f5-b7c9-e89eb61472a4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.