When installing a package with a plugin, I don't want to immediately extend the LDAP schema with the ipa-server-upgrade command, as for some users this may be unexpected behavior, considering that the schema cannot be rolled back. For this purpose, I have an installer that will extend the schema when the user wants it, but the problem is that the plugins are already in the correct location, and when the FreeIPA web server loads, it crashes due to the missing schema extension.

Кому: FreeIPA users list <[email protected]>;
Копия: "Данила Скачедубов" <[email protected]>, Rob Crittenden <[email protected]>;
Тема: [Freeipa-users] Re: Dynamic control of plugin loading (backend and frontend);
23:28, 26 декабря 2025 г., "Rob Crittenden via FreeIPA-users" <[email protected]>:

Why are you trying to achieve this? What is the use case for having
plugins and the database schema out-of-sync?

rob

Данила Скачедубов via FreeIPA-users wrote:

 I think I have figured out that plugin loading can indeed be skipped
 using |errors.SkipPluginModule|.
 
 However, my question is whether it is possible to check the LDAP schema
 for the required objects *within the plugin before registering it* with
 |register = Registry()|.
 
 From what I understand, at this stage |api.Backend.ldap2| or other LDAP
 API objects are not yet available, so direct access to the LDAP
 connection for schema verification isn’t possible.
 
 Is there a recommended approach to perform such a check safely before
 full plugin initialization, so the plugin can be skipped if the required
 objectClasses are missing?
 
 Thanks,
 Daniel
 
  
 ----------------
 Кому: [email protected]
 ([email protected]);
 Тема: [Freeipa-users] Dynamic control of plugin loading (backend and
 frontend);
 26.12.2025, 13:51, "Данила Скачедубов via FreeIPA-users"
 <[email protected]>:
 
     Good afternoon,
 
     I’ve encountered a task related to dynamically disabling plugins and
     would like to clarify the following.
 
     Is it possible to control, via code, whether a plugin is loaded —
     both on the backend (Python) and the frontend (_javascript_) — without
     physically moving it out of the required directories? This applies
     both to newly developed plugins and to existing ones.
 
     For example, is there a way to prevent FreeIPA from failing in cases
     where backend and frontend plugins are already present, but the LDAP
     schema has not yet been extended with the objects that the plugin is
     supposed to work with?
 
     Thank you in advance for your help.
 
     Best regards,
     Daniel
 
     ,--
     _______________________________________________
     FreeIPA-users mailing list -- [email protected]
     <mailto:[email protected]>
     To unsubscribe send an email to
     [email protected]
     <mailto:[email protected]>
     Fedora Code of Conduct:
     https://docs.fedoraproject.org/en-US/project/code-of-conduct/
     List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
     List Archives:
     https://lists.fedorahosted.org/archives/list/[email protected]
     Do not reply to spam, report it:
     https://pagure.io/fedora-infrastructure/new_issue
 
 


--
_______________________________________________
FreeIPA-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedorahosted.org/archives/list/[email protected]
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue


--
Отправлено из мобильного приложения Яндекс Почты
-- 
_______________________________________________
FreeIPA-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedorahosted.org/archives/list/[email protected]
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue

Reply via email to