Bug 52522 - Use Veyon backend for computerrooms configured as veyon
Use Veyon backend for computerrooms configured as veyon
Status: CLOSED FIXED
Product: UCS@school
Classification: Unclassified
Component: UMC - Computer room
UCS@school 4.4
Other Linux
: P5 normal (vote)
: UCS@school 4.4 v9
Assigned To: Daniel Tröder
Ole Schwiegert
:
: 46653 (view as bug list)
Depends on: 52914 52534 52551 52563 52564
Blocks: 52915 52922
  Show dependency treegraph
 
Reported: 2020-12-21 12:10 CET by Ole Schwiegert
Modified: 2021-03-24 14:10 CET (History)
4 users (show)

See Also:
What kind of report is it?: Development Internal
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ole Schwiegert univentionstaff 2020-12-21 12:10:59 CET
Computerrooms that are configured as using the Veyon backend should also finally be using the veyon backend for computerroom operations.
Comment 1 Ole Schwiegert univentionstaff 2020-12-22 13:03:55 CET
Development is done on oschwieg/4.4/veyon_integration (will be split for all individual bugs before merge)

Still missing:

- Demo mode: handled in Bug #
- Proper auth scheme
- Hardening against networking errors
- Tests
Comment 2 Tobias Wenzel univentionstaff 2021-01-06 14:54:26 CET
I "copied" the existing italc tests for display-names and multiple ip addresses. I did not use parametrize, because the functionalities are too much different (e.g. veyon uses veyon_client.ping instead of ping)

[oschwieg/4.4/veyon_integration] 67d9c79cb Bug #52522: copy italc tests
Comment 3 Daniel Tröder univentionstaff 2021-01-06 17:44:53 CET
Some code improvements:

299385d4b Bug #52522: cleanup
03c98e221 Bug #52522: improve type annotations

The python-notifier library doesn't handle exceptions. It just stops working but doesn't stop the thread. So in case of a problem there is no log entry and threads accumulate (ultimately leading to resource exhaustion).
A try-except block now surrounds the client updating code.

5f92f3744 Bug #52522: try-except block, as python-notifier doesn't handle exceptions

The Debian package "ucs-school-veyon-windows" now a) installs the Veyon Windows installer and creates a share
- "Veyon-Installation" on singlemaster
- "Veyon-Installation-$hostname" on dc slave
It also creates a public/private SSL key pair and publishes the public key on the netlogon share.

00856af68 Bug #52522: Debian package that provides Veyon Windows setup binary and SSL keys

The Veyon client now authenticates to the Veyon server using the private SSL key.

b3394c65f Bug #52522: authenticate to Veyon server using private ssl key

The "ucs-school-umc-computerroom" now depends on the packages "ucs-school-veyon-client" and "ucs-school-veyon-windows".

8aca49afa Bug #52522: add package dependencies
Comment 4 Daniel Tröder univentionstaff 2021-01-08 12:35:32 CET
(In reply to Ole Schwiegert from comment #1)
> Development is done on oschwieg/4.4/veyon_integration (will be split for all
> individual bugs before merge)
> 
> Still missing:
> 
> - Demo mode:
Handled in Bug 52563.

> - Proper auth scheme
See comment3 (b3394c65f).

> - Hardening against networking errors
1. See comment3 (5f92f3744).
2. Handled in Bug 52564.

> - Tests
See comment2 (67d9c79cb).

----------------------

Reversing Assignee/QA as I have QAed the work of the previous assignee and he can now QA Tobias and my work.
Comment 5 Daniel Tröder univentionstaff 2021-01-11 17:22:19 CET
The "Veyon-Installation" share wasn't being created, as its file system path is below /usr/share and that needs white listing.
Additionally no NFS share is created anymore.

a4db1297e Bug #52522: white list path below /usr/share for share listener
Comment 6 Daniel Tröder univentionstaff 2021-01-12 11:10:18 CET
*** Bug 46653 has been marked as a duplicate of this bug. ***
Comment 7 Ole Schwiegert univentionstaff 2021-01-12 13:58:10 CET
Further changes look good. I am reopening for one of us to merge and build at some point.
Comment 8 Tobias Wenzel univentionstaff 2021-01-13 09:07:37 CET
The documentation for 

- the umc computerroom
- the veyon client on Windows clients
- teacher documentation
- the migration from italc to veyon with focus on the special scenario single-server env https://help.univention.com/t/migration-of-the-computer-room-backend-italc-to-veyon/16937

[oschwieg/4.4/veyon_integration] 723f180dd Bug #52522: umc-computerroom documentation
[oschwieg/4.4/veyon_integration] 62c2295a6 Bug #52522: veyon-client documentation


went already through QA by direct messages.

Remember to 

- interactive rebase for fixups
- Publish the documentation including the pictures. The deprecated version (4.4-8) for italc is already published.
- List help.univention article
- add changelog entry with link to help.univention article
Comment 9 Florian Best univentionstaff 2021-01-26 19:58:34 CET
git:157a5e10c6ab7e4ea1863f4768f28146c4796e54 has not been merged to UCS 5.
Comment 10 Ole Schwiegert univentionstaff 2021-03-02 08:10:47 CET
Package: ucs-test-ucsschool
Version: 6.0.190A~4.4.0.202103020745
Branch: ucs_4.4-0
Scope: ucs-school-4.4

Package: ucs-school-umc-computerroom
Version: 11.0.0-28A~4.4.0.202103020757
Branch: ucs_4.4-0
Scope: ucs-school-4.4

Package: ucs-school-veyon-windows
Version: 4.5.2.0-0A~4.4.0.202103020759
Branch: ucs_4.4-0
Scope: ucs-school-4.4

merged and build in 4.4
Comment 11 Tobias Wenzel univentionstaff 2021-03-16 15:28:02 CET
QA → All OK → Verified

Changelogs → OK
Advisory → OK
Merge → OK
Tests → Pass on VM & Jenkins
Functionality → OK

Doku & help-article → have to be published after release
changelog entry (v9) for update scenario single server

I tested: the demo mode, shutdown/restart, locking screen & input devices and log out

Note:
When unlocking a client, the client gets unlocked but the UMC module - sometimes - is not updated, and I have to repress "unlock" to be able to "lock" the client again. Similar issues were discovered when using the demo mode (Bug 52563)
Comment 12 Tobias Wenzel univentionstaff 2021-03-24 14:10:38 CET
UCS@school 4.4 v9 has been released.

https://docs.software-univention.de/changelog-ucsschool-4.4v9-de.html

If this error occurs again, please clone this bug.