Univention Bugzilla – Bug 53954
Remove iTalc support in UCS@school 5.0
Last modified: 2021-11-29 17:20:34 CET
We want to remove the support for iTalc in UCS@school 5.0 This means all computer rooms are handled as veyon computer rooms. - We can remove the school role used to identify veyon rooms - We can remove italc support from the computer room module - We might want a diagnose module - How is the upgrade path? - How to handle hybrid envs with 5.0 primary and 4.4 replicas (that could still have iTalc installed and running)
What is this bug exactly about? I already removed iTALC from the UCS@school 5.0 code.
This bug is fixed in https://git.knut.univention.de/univention/ucsschool/-/issues/434 - We can remove the school role used to identify veyon rooms -> We decided to keep the role as it plays a vital role in mixed/hybrid environments (ucs@school 5.0 on primary, ucs@school 4.4 on replica) - We can remove italc support from the computer room module -> this was already done - How is the upgrade path? We want to prevent the upgrade for servers with computerrooms with italc-computerrooms twenzel/5.0/53954_prevent_italc_computerrooms - How to handle hybrid envs with 5.0 primary and 4.4 replicas (that could still have iTalc installed and running) I tested a hybrid env, italc computerrooms still worked on the replica which was 4.4. The migration of italc -> veyon will still be possible on the respective 4.4 replica (c.f. docu) UCS@school 5.0 servers, which - in some way, e.g. skip checks during upgrade - manage to upgrade with italc rooms (or mess them up in any other way) do not show italc computers in the UMC Computerroom & UMC Exams. They still will show up in the room management module (but there will no radiobutton anymore). imho this is should be a rare scenario. But... Mainly for this - We might want a diagnose module -> I did write one, but we might want to discuss this: It's currently only installed on primaries, thus only detects problematic objects in single-server envs and "weird" multi-server-envs which also have schools on their primary. Even better would be to check all ucsschool-replicas, which are joined against the primary - if you have any advice, I'd be happy. (don't be misled by the branch name) twenzel/5.0/53954_remove_veyon_role additionally, docu & changelog was added
We now decided to prevent the upgrade if any computerrooms are present on single-servers & school replicas. primaries will be able to update. I modified the diagnostic module to check for non-veyon rooms on school servers with ucs 5.0. It will be needed when the upgrade with computerrooms is enabled, but also to detect mistakes in the room configuration, e.g. when rooms are modified via udm. UCS@school [twenzel/5.0/53954_remove_veyon_role] 312bd7800 Bug #53953: add diagnostic module [twenzel/5.0/53954_remove_veyon_role] 9a528d840 Bug #53953: documentation [twenzel/5.0/53954_remove_veyon_role] ce51cb2f3 Bug #53954: make veyon default UCS [twenzel/5.0/53954_prevent_italc_computerrooms] 863bb956af Bug #53954: upgrading to UCS@school 5.0 with existing computer rooms on single-master & replicas is not yet supported
replaced ldap-call with ucr [twenzel/5.0/53954_prevent_italc_computerrooms] 688fe869de Bug #53954: ucr ldap/hostname
Unintended behavior: if a italc-room is opened in the room management in 5.0 an saved (even without doing any changes), it is "converted" to a veyon room (role appended)
I fixed this & improved the print statement in check.sh as requested.
All well - please merge your changes in ucs and ucsschool to the main branches and build the packages. I added one commit to make ucslint happy: [twenzel/5.0/53954_remove_veyon_role d117a42e2] Bug #53954: fix dependency on transitional package
Thanks for the QA [5.0-0] 511a94ec93 Bug #53954: changelog [5.0-0] 990897146f Bug #53954: Merge branch 'twenzel/5.0/53954_prevent_italc_computerrooms' into 5.0-0 [5.0-0] 8f66598969 Bug #53954: upgrading to UCS@school 5.0 with existing computer rooms on single-master & replicas is not yet supported check.sh will be released during the UCS@school release as well as the ucs@school documentation + release notes [5.0] d28075261 Bug #53954: changelogs [5.0] 4cb921e79 Bug #53954: fix dependency on transitional package [5.0] 72024e42c Bug #53954: respect italc backend in computerroom put [5.0] a46511921 Bug #53954: add diagnostic module [5.0] d1ae0911e Bug #53954: documentation [5.0] 7616a057b Bug #53954: make veyon default Package: ucs-school-umc-diagnostic Version: 2.0.9A~5.0.0.202111101709 Branch: ucs_5.0-0 Scope: ucs-school-5.0 Package: ucs-school-umc-rooms Version: 17.0.6A~5.0.0.202111101712 Branch: ucs_5.0-0 Scope: ucs-school-5.0 Package: ucs-school-umc-computerroom Version: 12.0.7A~5.0.0.202111101714 Branch: ucs_5.0-0 Scope: ucs-school-5.0 hoping everything will pass in jenkins :) have a nice evening!
I test in jenkins showed that the veyon backend option was not set when saving an existing room. We have to get the role from ldap instead. Package: ucs-school-umc-rooms Version: 17.0.7A~5.0.0.202111110941 Branch: ucs_5.0-0 Scope: ucs-school-5.0
(In reply to Tobias Wenzel from comment #9) > I test in jenkins showed that the veyon backend option was not set when I test -> A test
Still works as intended after merge and build. Awaiting nightly Jenkins run before verifying.
No Jenkins tests related to the computer room have failed.
The test `21_computerroom_module_base_checks.py` fails, because *new* rooms created in UCS@school 5.0 do not have the `veyon` flag in `ucsschool_role` attribute. It worked during QA only, because in the UMC code the flag is added explicitly (line 116: room.veyon_backend = True). This should be done in the ucsschool.lib. Idea: in ComputerRoom overwrite create_without_hooks_roles(): super().create_without_hooks_roles() self.veyon_backend = True
Verify that in Jenkins 21_computerroom_module_base_checks.py is green.
Thanks for reopening the bug. Comment #13 worked as expected. Package: ucs-school-lib Version: 13.0.9A~5.0.0.202111181326 Branch: ucs_5.0-0 Scope: ucs-school-5.0
super() is not valid in Python2.
thanks for the remark! Package: ucs-school-lib Version: 13.0.10A~5.0.0.202111191033 Branch: ucs_5.0-0 Scope: ucs-school-5.0
OK: works in Python 2 + 3 OK: new rooms are yevon rooms (ucsschoolRole=['computer_room:school:$OU', 'veyon-backend:school:-'] OK: rooms from 4.4 / non-veyon rooms are not "migrated" (ucsschoolRole added) when edited in 5.0 Reopen: Please remove line 116: (room.veyon_backend = True) from schoolrooms/__init__.py. It is not needed anymore. Then only the Jenkins test tonight is missing for verification.
5.0 - Bug #53954: veyon_backend is set in ucsschool.lib Package: ucs-school-umc-rooms Version: 17.0.8A~5.0.0.202111191320 Branch: ucs_5.0-0 Scope: ucs-school-5.0
All exam / room tests are green.
UCS@school 5.0 v1 has been released. https://docs.software-univention.de/release-notes-ucsschool-5.0v1-de.html If this error occurs again, please clone this bug.