You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by Benoit TELLIER <bt...@apache.org> on 2022/08/15 10:27:12 UTC

Split webadmin-http-client in a separate maven module than webadmin-cli

Hello James community,

Today we have the webadmin-cli (which is sadly not actively developed) 
in its own maven module, consisting of picocli code for the CLI 
interaction calling a feign + jackson API to act on the remote WebAdmin API.

Linagora plans to set up a SaaS offer of a re-packaging of James (we 
call it TMail). We will implement a third party Java service that will 
call weAdmin endpoints in order to configure TMail/James according to 
the SaaS subscriptions.

As such we will need a programmatic way to create users, domains, 
quotas, etc...

We would like to reuse existing code, but without pulling the unneeded 
picocli dependency.

Thus we propose to set up a new maven module, `webadmin-http-client` for 
hosting this feign+jackson library, which `webadmin-cli` can depend on.

As part of this effort, we will also contribute the API calls for 
configuring quotas at the domain level.

Would this seem like a good move to you?

Best regards,

Benoit Tellier


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


Re: Split webadmin-http-client in a separate maven module than webadmin-cli

Posted by Benoit TELLIER <bt...@apache.org>.
Hello Jean,

We had a Swagger documentation available for webadmin, but it was 
outrageously out of date, as the support for it on top of "spark-java" 
was a hack. It could not have had been used for anything relevant and as 
such was dropped.

Thread: 
https://www.mail-archive.com/server-dev@james.apache.org/msg71155.html

Regarding your question, I am not sure I can get to a more relevant answer.

I agree the choice of "spark-java" is a poor choice, as this library is 
no longer (really) maintained, and that it might need to be eventually 
re-challenged... If somebody in the community is looking for being a 
technical dept hero...

Best regards,

Benoit

On 15/08/2022 23:53, Jean Helou wrote:
> Hello,
>
> Le lun. 15 août 2022 à 12:27, Benoit TELLIER <bt...@apache.org> a 
> écrit :
>
>
>     Thus we propose to set up a new maven module,
>     `webadmin-http-client` for
>     hosting this feign+jackson library, which `webadmin-cli` can
>     depend on.
>
>     As part of this effort, we will also contribute the API calls for
>     configuring quotas at the domain level.
>
>     Would this seem like a good move to you?
>
>
> I'm in favor of this change. Reading your proposal led me to check the 
> code and the initial CLI ADR because I was surprised that you felt the 
> need to share the http client.
>
> As far as I can tell the webadmin doesn't expose any kind of contract 
> (such as an openapi specification) that could be used to generate raw 
> client code.
> I couldn't find an ADR discussing this choice either even though it 
> seems quite significant
> Do you have any background info on this ?
>
> Thanks
> Jean
>
>
>
>
>
>     Best regards,
>
>     Benoit Tellier
>
>
>     ---------------------------------------------------------------------
>     To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
>     For additional commands, e-mail: server-dev-help@james.apache.org
>