Icon Wiki

Feature Wiki

Information about planned and released features


Setup - Abandon Multi Client

1 Reasons to Abandon Feature

The current multi client capability of ILIAS seems to be a way to easily share code between different ILIAS installations. The benefits of this (lesser storage requirements, easier checkout of the code) seem to have been greatly reduced with dropping storage prices and git checkouts. The benefits of multi client capabilities will diminish even more once an automatable setup exist. The additional complexity in the system introduced by the multi client capabilities seem not to be backed by the benefits anymore, thus the multi client support will be discontinued.

The issue was discussed at length, mostly on the page of the Setup Revision 2018 and on a follow-up workshop.

Multi-Client-Code in the general system won't be removed, but the GUI of the Setup will either be removed or  be completely overhauled, thus concerns of multi client installation won't be represented in the setup anymore. This includes the following features, currently available in the setup:
  • List of Clients
  • Populate one client using another client
If there are any users of multi client installations that need some mechanism for migrating their multi client setups to multiple single client setups, please get in touch. Building a mechanism like this will either require additional funding or other contributions from third parties and won't be covered by CaT Concepts and Training GmbH.

2 Technical Information

The removal of the multi client features in the setup will allow to remove the multi client features in other parts of the system as well. Depending on the requirements of current multi client users, this removal might require some more or less elaborate mechanism to migrate existing multi client setups.

3 Contact

4 Funding

Removing the feature from the ILIAS code base might need funding. If you are interest in funding this request, please add your name and institution to this list.
  • ...

5 Discussion

Use the following discussion section to express your objections against this request or your consent to get rid of this feature.
JourFixe, ILIAS [jourfixe], 25 MAY 2020: We highly appreciate this suggestion and accept to abandon "multi-client support" of ILIAS with version 7. For those who are interested in a migration of clients into distinct installation can contact Richard for a conceptual discussion. But such a migration would need additional funding. PR are highly appreciated.

We would highly appreciate to have a dedicated page that lists components and features where multi-client-related code can be removed (e.g. login procedure). But this would require additional funding.

6 Implementation

The multi client features have been removed in the setup, as described on this wiki page. There will be code in other components that now can be removed as well, a grep for CLIENT_ID reveals around 219 locations in various modules, which seems to be a good hint on locations that rely on the CLIENT_ID. I ask every maintainer to remove according code in his component. Possibly I will supply a rule for dicto to monitor that move, but no promises here.

Installations using the multi-client feature most probably won't stop working immediately after an update to ILIAS 7, since much of the code is still there. However, as every update, the update to ILIAS 7 should be tested and impact on installationsm, especially using the multi client feature, should be assessed carefully before rolling the update out to productive installations. I still advise everyone to get rid of installations using the multi client feature asap. Strategies to perform this move are outlined in the discussion about the CLI-Setup project.

I offered my general support to find appropriate strategies for that move when this wiki page was discussed in May 2020. By the lack of according requests, I conclude that the interest in a common strategy for that move or the problem in general is not big enough to warrant any further action from my side. If there is anyone who successfully performed a migration from one installation with multiple clients to multiple installations with one client, I ask this person to share her experiences, maybe via a forum post, an addition to the discussion of this wiki page or a post somewhere else, and link it here. After all, a FOSS community is about scratching shared itches together, where sharing information is one strategy to do so. Of course I'm also still available to discuss issues, as always.

2020-10-29 - Klees, Richard [rklees]
Removed Testcases
The following testcases have been removed from Testrail or modified because the feature is no longer part of the ILIAS core.
  • {Test case number linked to Testrail} : {test case title}
Approved at 2020-10-29 by Klees, Richard [rklees].

Last edited: 05. May 2021, 13:08, Kunkel, Matthias [mkunkel]