Bug 42172 - The setup wizard should be a standalone application
The setup wizard should be a standalone application
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: UMC - Setup wizard
UCS 4.2
Other Linux
: P5 normal (vote)
: UCS 4.2
Assigned To: Alexander Kläser
Erik Damrose
: interim-2
Depends on: 38824
Blocks:
  Show dependency treegraph
 
Reported: 2016-08-29 17:28 CEST by Florian Best
Modified: 2017-04-04 18:28 CEST (History)
3 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): Cleanup
Max CVSS v3 score:


Attachments
module-setup.log (1.96 KB, text/x-log)
2017-02-23 09:54 CET, Erik Damrose
Details
installer: software selection (57.47 KB, image/png)
2017-03-01 11:19 CET, Erik Damrose
Details
setup appliance with external browser: fixed width (39.99 KB, image/png)
2017-03-02 14:31 CET, Erik Damrose
Details
styling issues in applance mode (31.06 KB, image/png)
2017-03-02 14:37 CET, Erik Damrose
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Florian Best univentionstaff 2016-08-29 17:28:41 CEST
The current UCS setup wizard uses UMC as basis by appending the query string:

?username=__systemsetup__&password=${USSPASSWD}&module=setup&flavor=wizard&overview=false&lang=$default_locale

This should be replaced by an own html site using the new UMC javascript library (→ Bug #38824).
Comment 1 Alexander Kläser univentionstaff 2017-02-20 13:28:09 CET
I have moved the setup wizard into a standalone web application. univention-system-setup-boot should work as before.

univention-system-setup (10.0.6-3):
r76871 | Bug #42172: remove obsolete setup.css
r76870 | Bug #42172: remove flavor wizard + remove references to ApplianceWizard
r76867 | Bug #42172: move setup wizard into stand alone web application

univention-management-console (9.0.34-1):
r76867 | Bug #42172: move setup wizard into stand alone web application

univention-web (1.0.26-2):
r76873 | Bug #42172: revert last changes+fix inline label color in header search
r76867 | Bug #42172: move setup wizard into stand alone web application

changelog-4.2-0.xml:
r76868 | Bug #42172: added changelog entry
Comment 2 Florian Best univentionstaff 2017-02-20 14:03:45 CET
As the flavor was removed the following UCR variables are unused, too:

usr/sbin/univention-system-setup-boot:»   »   'umc/module/setup/wizard/disabled' \
usr/sbin/univention-system-setup-boot:»   »   'umc/module/setup/wizard/disabled=true' \
usr/share/univention-system-setup/startxwithfirefox:»   /usr/sbin/univention-config-registry unset umc/module/setup/wizard/disabled

The HTML files are part of the univention-system-setup-boot package? This package is removed in the cleanup-step, right? So if you finish the initial configuration the HTML files are removed. Might this lead to side effects (e.g. because of page reloads)?
Comment 3 Florian Best univentionstaff 2017-02-20 18:57:50 CET
dojo.js:13991 ReferenceError: _ is not defined(…) "ReferenceError: _ is not defined
    at Object.<anonymous> (http://xen3.school.local/univention/setup/main.js:187:20)
Comment 4 Alexander Kläser univentionstaff 2017-02-21 18:34:38 CET
I addressed all comments via [r76932]:
* Move setup wizard into univention-system-setup
* Redirect access to /univention/management (for access != localhost)
* Make sure that a reload on localhost is redirected to the last wizard page
  (if univention-system-setup-boot has been uninstalled)
* Add missing reference to '_'
* Remove referecnes to UCR variable umc/module/setup/wizard/disabled
Comment 5 Alexander Kläser univentionstaff 2017-02-21 18:38:53 CET
univention-system-setup (10.0.7-2):
r76933 | Bug #42172: adjust type in apache config
Comment 6 Alexander Kläser univentionstaff 2017-02-21 18:39:41 CET
univention-system-setup (10.0.7-3):
r76934 | Bug #42172: adjust another typo in apache config
Comment 7 Florian Best univentionstaff 2017-02-22 10:52:04 CET
/usr/sbin/univention-system-setup-boot: Zeile 72: is_ucr_true: Kommando nicht gefunden.
Comment 8 Erik Damrose univentionstaff 2017-02-22 10:55:21 CET
(In reply to Florian Best from comment #7)
> /usr/sbin/univention-system-setup-boot: Zeile 72: is_ucr_true: Kommando
> nicht gefunden.

-> Bug #42133, but should be fixed here regardless
Comment 9 Florian Best univentionstaff 2017-02-22 11:00:43 CET
load-css.js:71 GET http://xen3.school.local/univention/management/modules/setup.css 
load-css.js:58 Error loading stylesheet /univention/management/modules/setup.css
Comment 10 Alexander Kläser univentionstaff 2017-02-22 15:39:12 CET
(In reply to Florian Best from comment #7)
> /usr/sbin/univention-system-setup-boot: Zeile 72: is_ucr_true: Kommando
> nicht gefunden.

Fixed.

(In reply to Florian Best from comment #9)
> load-css.js:71 GET
> http://xen3.school.local/univention/management/modules/setup.css 
> load-css.js:58 Error loading stylesheet
> /univention/management/modules/setup.css

Fixed.

We observed that umcp commands were sent before the authentication has been finished. I adjusted this, so the initialization of the wizard waits until the authentication has finished.

univention-system-setup (10.0.7-6):
r76989 | Bug #42172: remove css reference + add reference to ucr.sh
r76987 | Bug #42172: wait with initialization until login has been completed
Comment 11 Erik Damrose univentionstaff 2017-02-23 09:54:24 CET
Created attachment 8452 [details]
module-setup.log

Reopen: with the current DVD build (ucs_4.2-0-20170223-060050-dvd-amd64.iso, univention-system-setup 10.0.7-7A~4.2.0.201702221613) a traceback appears when system setup is loaded: 
Die Ausführung des Kommandos setup/lang/locales wizard ist fehlgeschlagen:
...
TypeError: cannot deepcopy this pattern object

See attached log. When closing the traceback, the last wizard page is shown. When reloading the page, the traceback reappears.
Comment 12 Florian Best univentionstaff 2017-02-23 09:55:08 CET
The traceback is my bug, I will fix it.
Comment 13 Alexander Kläser univentionstaff 2017-02-23 11:26:38 CET
I did an error when checking the UCR variable system/setup/boot/start which led to the wizard jumping every time to the last page.

univention-system-setup (10.0.7-8):
r77034 | Bug #42172: fix typo when checking the UCR variable system/setup/boot/start
Comment 14 Alexander Kläser univentionstaff 2017-02-23 12:54:46 CET
The method _showDummyProgressbar() had not yet been moved into the wizard. This has been fixed. Module hook files are not loaded anymore.

univention-system-setup (10.0.7-9):
r77041 | Bug #42172: move _showDummyProgressbar() to wizard + adjust index.html
Comment 15 Alexander Kläser univentionstaff 2017-02-28 15:49:56 CET
AFAIS, the language switch currently breaks with a JavaScript error.

→ REOPENED
Comment 16 Erik Damrose univentionstaff 2017-03-01 11:19:30 CET
Created attachment 8478 [details]
installer: software selection

On the software page
* When selecting more than one item in the grid, one has to click exactly on the checkbox. Clicking on the title of another item, or even the 'info' icon, will deselect all other entries. Users will not expect this. And the the whole list is two pages long, so it will not be noticed immediately.
* I think we should get rid of the scrollbar for the page (see screenshot). The 'next' button is not visible and clickable immediately, the whole page spans two pages. Maybe a scrollbar in the grid?
Comment 17 Alexander Kläser univentionstaff 2017-03-01 15:04:59 CET
(In reply to Alexander Kläser from comment #15)
> AFAIS, the language switch currently breaks with a JavaScript error.
> 
> → REOPENED

I fixed this problem, the logic was broken at some points. I also reorderd the www files... /var/www/univention/{setup,initialsetup} are now symlinks to /usr/share/univention-system-setup{/www,-boot/www}, respectively. This complies with all other packages which use symlinks in /var/www/univention, as well.

univention-system-setup (10.0.7-16):
r77204 | Bug #42172: Fix errors when changing the language + reorder files

(In reply to Erik Damrose from comment #16)
> Created attachment 8478 [details]
> installer: software selection
> 
> On the software page
> * When selecting more than one item in the grid, one has to click exactly on
> the checkbox. Clicking on the title of another item, or even the 'info'
> icon, will deselect all other entries. Users will not expect this. And the
> the whole list is two pages long, so it will not be noticed immediately.

This is the same behaviour as with all other grids.

> * I think we should get rid of the scrollbar for the page (see screenshot).
> The 'next' button is not visible and clickable immediately, the whole page
> spans two pages. Maybe a scrollbar in the grid?

We consciously chose to make grids un-scrollable. Scrolling should be done via the page, instead.

For both points I would like to wait for more feedback and leave it in the current state... for now. Both points need some discussion.
Comment 18 Alexander Kläser univentionstaff 2017-03-02 12:52:05 CET
I moved some functionality which will be needed at other places into umc/tools.

univention-system-setup (10.0.7-17):
r77235 | Bug #42172: use umc/tools for isFQDN()/isIP*Address()
Comment 19 Erik Damrose univentionstaff 2017-03-02 14:31:03 CET
Created attachment 8484 [details]
setup appliance with external browser: fixed width

when accessing with an external browser (appliance mode), there seems to be a fixed witdh, except for the 'next' button
Comment 20 Erik Damrose univentionstaff 2017-03-02 14:37:23 CET
Created attachment 8485 [details]
styling issues in applance mode

In appliance mode, the following styling issues have been found:
* Language selection: Text is ALL CAPS
* City searchbox: example text is misaligned and only partly visible (only with internal browser, displayed correctly with external browser)
* Unnecessary scrollbar (also other pages)
Comment 21 Alexander Kläser univentionstaff 2017-03-03 13:23:10 CET
(In reply to Erik Damrose from comment #19)
> Created attachment 8484 [details]
> setup appliance with external browser: fixed width
> 
> when accessing with an external browser (appliance mode), there seems to be
> a fixed witdh, except for the 'next' button

As discussed, I added a white card around the wizard for external browsers.

(In reply to Erik Damrose from comment #20)
> Created attachment 8485 [details]
> styling issues in applance mode
> 
> In appliance mode, the following styling issues have been found:
> * Language selection: Text is ALL CAPS
> * City searchbox: example text is misaligned and only partly visible (only
> with internal browser, displayed correctly with external browser)
> * Unnecessary scrollbar (also other pages)

These issues have been fixed. I also optimized the standby animation to appear much smoother.

univention-web (1.0.29-17):
r77319 | Bug #43528: Add styling for cards + fix select box + buttons

univention-system-setup (10.0.7-18):
r77320 | Bug #42172: Adjust styling of wizard and elements
Comment 22 Alexander Kläser univentionstaff 2017-03-03 14:09:56 CET
Clicks on the info icon will no longer alter the selection.

I also added width=100% when the setup wizard is called within the VM console.

univention-system-setup (10.0.7-19):
r77324 | Bug #42172: Keep selection when clicking on info icon + optimize width
Comment 23 Alexander Kläser univentionstaff 2017-03-03 15:54:55 CET
I updated the integration of the translations...

r77335 | Bug #42172: Update l10n integration
r77334 | Bug #42172: Update l10n integration
Comment 24 Erik Damrose univentionstaff 2017-03-07 10:22:33 CET
Should be OK for now, bug 43726 remains.
Comment 25 Alexander Kläser univentionstaff 2017-03-08 15:00:32 CET
I needed to adjust the checks tools.isFQDN() + tools.isHostname().

univention-system-setup (10.0.7-22):
r77472 | Bug #42172: Fix _validateHostname() check

univention-web (1.0.31-13):
r77471 | Bug #42172: adjust FQDN reg exp + add tools.isHostname() check
Comment 26 Erik Damrose univentionstaff 2017-03-14 17:44:36 CET
This is OK for now. For additional issues, new bugs will be created. -> Verified
Comment 27 Stefan Gohmann univentionstaff 2017-04-04 18:28:56 CEST
UCS 4.2 has been released:
 https://docs.software-univention.de/release-notes-4.2-0-en.html
 https://docs.software-univention.de/release-notes-4.2-0-de.html

If this error occurs again, please use "Clone This Bug".