<p dir="ltr">It's a fair point. Will talk it over with Todd.</p>
<p dir="ltr">By the way, using the "Deployment" model you can delegate to the "Consumer" one like an adaptor. Don't underestimate the power of Another Level of Indirection. :)</p>
<div class="gmail_extra"><br><div class="gmail_quote">On Nov 2, 2016 9:15 AM, "Michael Kleinhenz" <<a href="mailto:kleinhenz@redhat.com">kleinhenz@redhat.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi all,<br>
<br>
preliminary notice: I can live with any of the solutions, I see<br>
advantages and problems with both.<br>
<br>
Maybe I have done too much sales on such stuff, but I think the<br>
"Consumer Model" will be a major roadblock in actually convincing<br>
people to support us. This model will require lots of effort, changes<br>
to their live system and/or deployment and operations(!) to support<br>
integrating with us. In my experience especially the last one,<br>
operations, is a real blocker for 3rd parties. Just my 0.02€ on real<br>
world adoption of products in the corporate world..<br>
<br>
I think our way of approaching that question is way to technical and<br>
not enough sales. (I am feeling dirty that I have said that :-)<br>
<br>
But anyway, again: if we decide for the consumer style model, thats<br>
fine for me, I just want to say that there might be another, non-tech,<br>
view on that.<br>
<br>
-- Michael<br>
<br>
<br>
On Tue, Nov 1, 2016 at 6:30 PM, Andrew Lee Rubinger <<a href="mailto:alr@redhat.com">alr@redhat.com</a>> wrote:<br>
> Gave some time to think this through. :) Appreciate the thoughts Michael,<br>
> because I think your email here has redirected our line of thinking into<br>
> something better than originally designed.<br>
><br>
> To me, the most important issues this thread has vetted are:<br>
><br>
> 1) Encouraging extension of Almighty through new providers<br>
> 2) Security<br>
><br>
> Now, I had been initially conceiving something akin to what Michael is<br>
> calling the "Deployment" model; an interface that providers implement. On<br>
> further reflection I've come to find the REST-based approach outlined as the<br>
> "Consumer" model accomplishes all of our goals and better handles the two<br>
> points above.<br>
><br>
> For 1), we let users register their own service, running *somewhere*, to be<br>
> written in whatever language and execution environment they decide. This<br>
> imposes on providers writers the burden of deploying their thing instead of<br>
> deploying it into Almighty, but, as 2) shows, this is a good thing.<br>
><br>
> The security constraints of 2) really say that we will absolutely not run<br>
> untrusted code in our online service offering. Initially I'd thought that<br>
> anyone who wants to write their own providers could be on their own to host<br>
> an Almighty instance as well, but by making the provider model a firewall<br>
> where untrusted code runs externally to Almighty, we could be opening<br>
> ourselves off to safe extensibility or community-driven extensions in the<br>
> future. While this is not a requirement for our first launch, it's<br>
> definitely the kind of thing Todd envisions for us going forward.<br>
><br>
> TL;DR for me now: a REST-based extension SPI model, and registration<br>
> mechanism with Almighty core which sets that up. Will look forward to<br>
> seeing those designs.<br>
><br>
> S,<br>
> ALR<br>
><br>
> On Mon, Oct 31, 2016 at 10:57 AM, Tomas Nozicka <<a href="mailto:tnozicka@redhat.com">tnozicka@redhat.com</a>> wrote:<br>
>><br>
>> Hi Pete,<br>
>><br>
>> (see inline)<br>
>><br>
>> On Thu, 2016-10-27 at 13:15 -0400, Pete Muir wrote:<br>
>> > This reminded me of the VS Code/LSP architecture. In this<br>
>> > architecture there are a number of proceses running:<br>
>> ><br>
>> > 1) The VS Code tool<br>
>> > 2) A server which can control and talk to any LSP implementation via<br>
>> > a socket or REST or other transport protocol<br>
>> > 3) The LSP implementation(s) written in the language of choice,<br>
>> > talking a JSON protocol<br>
>> I like the separation and implementation language independence.<br>
>><br>
>> ><br>
>> > This is closest to the the Consumer model that Michael describes, but<br>
>> > I think we could also look at also being able to run the plugin (and<br>
>> > the thing it connects to) on our servers, but using transports other<br>
>> > than HTTP (e.g. sockets).<br>
>> I am not opposing the idea, but would you mind laying out some story<br>
>> why it would be useful?<br>
>><br>
>> From my point of view vendors can run such service on OpenShift Online<br>
>> or any other server (or cloud).<br>
>><br>
>> Even we were (are) planing to run OSBP on different server using<br>
>> HTTPS.<br>
>><br>
>> I don't see the use case for supporting sockets (or similar mechanisms)<br>
>> especially when Almighty will be running in the cloud; if such<br>
>> mechanism could even work there.<br>
>><br>
>> ><br>
>> > I don't think allowing people to write scripts that execute inside<br>
>> > our processes is a good idea.<br>
>> +1<br>
>><br>
>><br>
>> Regards,<br>
>> Tomas<br>
><br>
><br>
><br>
><br>
> --<br>
> Red Hat Developer Group Architecture<br>
> @ALRubinger<br>
<br>
<br>
<br>
--<br>
Michael Kleinhenz<br>
Principal Software Engineer<br>
<br>
Red Hat Deutschland GmbH<br>
Werner-von-Siemens-Ring 14<br>
85630 Grasbrunn<br>
Germany<br>
<br>
RED HAT | TRIED. TESTED. TRUSTED.<br>
Red Hat GmbH, <a href="http://www.de.redhat.com" rel="noreferrer" target="_blank">www.de.redhat.com</a>,<br>
Registered seat: Grasbrunn, Commercial register: Amtsgericht München,<br>
HRB 153243,<br>
Managing Directors: Paul Argiry, Charles Cachera, Michael Cunningham,<br>
Michael O'Neill<br>
</blockquote></div></div>