Bug 34484 - Revise appliance wizard
Revise appliance wizard
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: UMC - Basic settings
UCS 3.2
Other Linux
: P5 normal (vote)
: UCS 3.2-2-errata
Assigned To: Alexander Kläser
Dirk Wiesenthal
:
: 27041 29721 29945 30635 30979 31895 32036 32097 33371 33996 34242 34629 35518 (view as bug list)
Depends on: 30635
Blocks: 35815
  Show dependency treegraph
 
Reported: 2014-04-07 10:55 CEST by Alexander Kläser
Modified: 2014-09-11 08:23 CEST (History)
10 users (show)

See Also:
What kind of report is it?: ---
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): Design, Further conceptual development, Release Goal, Usability
Max CVSS v3 score:


Attachments
Screenshot Search Icon (63.41 KB, image/png)
2014-07-18 10:48 CEST, Florian Best
Details
Screenshot App Overview (104.33 KB, image/png)
2014-07-18 10:57 CEST, Florian Best
Details
Screenshot RadioButton Border (52.33 KB, image/png)
2014-07-21 16:37 CEST, Florian Best
Details
some network fixes patch (2.37 KB, patch)
2014-07-25 13:35 CEST, Florian Best
Details | Diff
post-RESOLVED fixes (43.33 KB, text/plain)
2014-08-05 23:05 CEST, Dirk Wiesenthal
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Kläser univentionstaff 2014-04-07 10:55:16 CEST
Within the scope of this wizard, new possibilites for the system setup appliance wizard will be explored.
Comment 1 Stefan Gohmann univentionstaff 2014-04-25 09:12:16 CEST
The first version can be found here:
  dev/branches/ucs-3.2/component/system-setup-wizard

The following things should be changed:

- the tabs (Overview, UCS System Setup) should not be shown in the appliance mode

- a welcome dialog should be shown, maybe instead of the sentence "The UCS initial con...." for example:

"Welcome to your new Univention Corporate Server (UCS) system or instance. To 
finish the setup, we need to ask a few questions. 

If this system will become a member of an existing UCS domain you will need 
the credentials of a valid domain administrator account during this process."

- It would be really nice if the language switch does not reload the whole site.

- The message "The configuration can also be conducted via a web browser from an external system." should be removed.

- "Where are you?" should be renamed to "Where is this system located?"

- If a valid city was insert the found values (timezone, keyboard layout, ...) should be shown as a box right of the city input field. The box should include a change button. If the admin clicks on the change button or no city was given, the next page is shown. Otherwise the next page could be skipped.
 
- The keyboard test field should only be shown if system setup is started locally.

- The text "Type text to test the keyboard layout" should be above the input field.

- The image for the locale settings should be changed. Maybe we could use this one: http://www.psdgraphics.com/psd-icons/psd-world-map-icon/

- Domain setup: we should add some more text, for example:
Below "Create new UCS domain": This system will not share user or computer 
accounts with already existing systems. Later, additional systems can join the 
newly created UCS domain and use the account data shared by this system.

Below "Join into an existing UCS domain": This system will be part of a 
group of existing system that share user and computer accounts, credentials 
and other trustworthy information. 

If unsure, select 'Create new UCS domain.'

- User information, we should add some more fields:
  Last name, First name
  Organization
  Email address to activate UCS
  Description of the Administrator account
  Password

- Domain and host configuration should be moved to the network dialog. We should auto generate a host name and if it is a master, we should generate the domain name from the organization name. <organization>.local or something similar.

- If the domain name is set, the ldap base should be auto generated and shown in a box. This box should include a change button.

- we should be able to define more than one network interface

- it should be possible to mark the selected software

There are more issues, but we should proceed iteratively
Comment 2 Alexander Kläser univentionstaff 2014-06-04 17:33:51 CEST
(In reply to Stefan Gohmann from comment #1)
> ...
> - It would be really nice if the language switch does not reload the whole
> site.

This is not supported out-of-the-box, however, a workaround seems possible. I found the following Dojo bug report that discusses this issue:

> https://bugs.dojotoolkit.org/ticket/17196

Note that we mainly implemented our own i18n handling, yet still rely on a few  Dojo features there. See also for some information in the locale handling:

> http://dojotoolkit.org/reference-guide/1.9/quickstart/internationalization/specifying-locale.html

The easiest way would be to rebuild all widgets and containers via JavaScript when changing the locale. This would then close all open modules, although module tabs could be reopened again, however, without preserving an opened DetailPage or the currently entered text in a form. To avoid this, we could furthermore allow widgets to implement a method that can be called upon language change. This method would take care of adjusting all necessary text parts (eventually with already localized parts from the server-side Python module) and calling sub-widgets to change their language. This would require adjusting all main widgets (and eventually some modules, at least the most important ones).
Comment 3 Alexander Kläser univentionstaff 2014-07-15 16:15:50 CEST
[WORK IN PROGRESS]

A first version has been committed. Packages have not yet been rebuilt.

Main TODOs:
* Data handling between frontend + backend
* Human readable summary page
* Validation handling from the backend side


univention-management-console-frontend (3.0.152-39):
Bug #34484:
* Adjust CSS rules to integrate dijit/form/Select
* Use Dojo async attribute
* If UMC overview is disabled and a startup module is specified, only load
  AMD modules of the startup UMC module
* Allow dynamic reloading of translations
* Added radio button widget
* Added tools.defer()
* Fixed validation of Form
* Fixed vertical scrolling issues with the Grid in Firefox
* Allow configuration of LabelPanes via the widget property 'labelConf'
* TextBox: allow dynamic changing of 'inlineLabel'
* Wizard: added convenience method isPageVisible()

univention-system-setup (7.0.69-11):
* Bug #34484: [WIP] Integration of new appliance wizard
Comment 4 Florian Best univentionstaff 2014-07-15 16:35:21 CEST
Please change the name in the declare function of the RadioButton. It is currently "umc.modules.uccsetup.RadioButton".
Comment 5 Florian Best univentionstaff 2014-07-16 07:37:20 CEST
Build currently fails.

Traceback (most recent call last):
  File "city-data/create_country_data.py", line 65, in <module>
    country_names = _util.get_localized_names(country_geonameids, ilocale)
  File "/root/build/univention-system-setup/city-data/_util.py", line 128, in get_localized_names
    with open(_get_path('alternateNames.txt')) as infile:
  File "/root/build/univention-system-setup/city-data/_util.py", line 41, in _get_path
    raise RuntimeError('Cannot find data file %s' % filename)
RuntimeError: Cannot find data file alternateNames.txt
Comment 6 Florian Best univentionstaff 2014-07-16 08:46:07 CEST
The python version in hashbang is missing for the files:
* city-data/create_city_data.py
* city-data/create_country_codes.py
* city-data/create_country_data.py
* city-data/create_localized_country_labels.py

The removed file help_default.html is still referenced in
* conffiles/update_sytem_setup_help.sh
* debian/univention-system-setup.postinst
* debian/univention-management-console-module-setup.install
* debian/univention-system-setup.links
Comment 7 Alexander Kläser univentionstaff 2014-07-16 21:43:25 CEST
(In reply to Florian Best from comment #4)
> Please change the name in the declare function of the RadioButton. It is
> currently "umc.modules.uccsetup.RadioButton".

Done.

univention-management-console-frontend (3.0.152-40):
* Bug #34484: fixed class name of RadioButton


(In reply to Florian Best from comment #5)
> Build currently fails.
> ...

Fixed.

(In reply to Florian Best from comment #6)
> The python version in hashbang is missing for the files:
> * city-data/create_city_data.py
> * city-data/create_country_codes.py
> * city-data/create_country_data.py
> * city-data/create_localized_country_labels.py

Fixed.

> The removed file help_default.html is still referenced in
> * conffiles/update_sytem_setup_help.sh
> * debian/univention-system-setup.postinst
> * debian/univention-management-console-module-setup.install
> * debian/univention-system-setup.links

help_default templates, the script update_sytem_setup_help.sh as well as the UCR variable system/setup/boot/help have been removed from the package.

Fixed also the fuzzy entries in the .po files.

univention-system-setup (7.0.69-13):
Bug #34484 [WIP]
* fixed fuzzy entries
* removed obsolete files
* fixed copyrights
Comment 8 Florian Best univentionstaff 2014-07-17 07:51:32 CEST
Can you please run jshint over at least ApplianceWizard.js → there are a lot of missing semicolons and some other things.
Comment 9 Alexander Kläser univentionstaff 2014-07-17 10:04:57 CEST
(In reply to Florian Best from comment #8)
> Can you please run jshint over at least ApplianceWizard.js → there are a lot
> of missing semicolons and some other things.

Fixed.

univention-system-setup (7.0.69-17):
* Bug #34484: [WIP] fixed jshint warnings, auto values for ssl UCR variables
Comment 10 Florian Best univentionstaff 2014-07-18 10:21:53 CEST
This line in ApplianceWizard.js produced an error:
return this.getWidget('role-nonmaster', irole).get('value');

TypeError: can not read property 'get' of undefined.

This prevents selecting the next page when selecting system role. FYI: I sometimes switched to previous pages.
Comment 11 Florian Best univentionstaff 2014-07-18 10:36:32 CEST
(In reply to Alexander Kläser from comment #3)
> univention-management-console-frontend (3.0.152-39):
> Bug #34484:
> * Adjust CSS rules to integrate dijit/form/Select
> * Use Dojo async attribute
> * If UMC overview is disabled and a startup module is specified, only load
>   AMD modules of the startup UMC module
> * Allow dynamic reloading of translations
> * Added radio button widget
> * Added tools.defer()
> * Fixed validation of Form
> * Fixed vertical scrolling issues with the Grid in Firefox
> * Allow configuration of LabelPanes via the widget property 'labelConf'
> * TextBox: allow dynamic changing of 'inlineLabel'
> * Wizard: added convenience method isPageVisible()
All changes in the frontend are working: VERIFIED.
I merged the frontend changes into UCS 4.
Comment 12 Florian Best univentionstaff 2014-07-18 10:48:09 CEST
Created attachment 6000 [details]
Screenshot Search Icon

search icon in Firefox looks odd.
Comment 13 Florian Best univentionstaff 2014-07-18 10:57:42 CEST
Created attachment 6001 [details]
Screenshot App Overview

The description of the installable apps is always 'undefined'.
Comment 14 Alexander Kläser univentionstaff 2014-07-19 13:09:46 CEST
(In reply to Florian Best from comment #10)
> This line in ApplianceWizard.js produced an error:
> return this.getWidget('role-nonmaster', irole).get('value');
> 
> TypeError: can not read property 'get' of undefined.

Fixed.

(In reply to Florian Best from comment #13)
> Created attachment 6001 [details]
> Screenshot App Overview
> 
> The description of the installable apps is always 'undefined'.

Fixed.

Committed more adaptations... and a few more are yet to come.

univention-system-setup (7.0.69-19):
Bug #34484 [WIP]
* fixed reference to undefined
* fixed undefined description of apps
* added package dependencies
* added automatic DNS query of domain name
* ensure that wizard values are returned in the correct format for backend
* ensure that apps are displayed only for the selected server role
* replaced old software component handling from installer with apps
* read pre-configured DHCP settings + apply them to the network wizard page
* add backend-side auto completion of specific config values
* add UCS system activation via submitted email address in setup-join.sh
Comment 15 Alexander Kläser univentionstaff 2014-07-21 14:19:36 CEST
Slowly converging to a final version. The latest build should work up to (and including) the server side validation. The last main open points are:
* Integration of join process itself (incl. progress bar and error handling)
* Integration of live DHCP query (when checking the check box)
* Translations
* IPv6 handling

univention-system-setup (7.0.69-23):
Bug #34484 [WIP]
* added more validation
* automatic focus on invalid widgets
* summarize changes
* handle timeout errors for DNS lookups
Comment 16 Florian Best univentionstaff 2014-07-21 15:22:27 CEST
umc/python/setup/__init__.py:49: 'urllib2' imported but unused
umc/python/setup/__init__.py:51: 'UMC_CommandError' imported but unused
umc/python/setup/__init__.py:248: local variable 'success' is assigned to but never used
umc/python/setup/__init__.py:251: undefined name 'sucess'
umc/python/setup/util.py:43: 'sys' imported but unused
umc/python/setup/util.py:44: 'apt' imported but unused
umc/python/setup/util.py:51: 'Translation' imported but unused
umc/python/setup/util.py:161: undefined name 'util'
umc/python/setup/util.py:163: undefined name '_'
umc/python/setup/util.py:196: undefined name 'Locale'
umc/python/setup/util.py:212: undefined name 'util'
umc/python/setup/util.py:666: undefined name 'urllib2'
umc/python/setup/util.py:666: undefined name 'urllib2'
umc/python/setup/util.py:668: undefined name 'UMC_CommandError'
umc/python/setup/util.py:668: undefined name '_'
Comment 17 Florian Best univentionstaff 2014-07-21 16:37:21 CEST
Created attachment 6010 [details]
Screenshot RadioButton Border

Two grey borders around the selected radio button.
Comment 18 Alexander Kläser univentionstaff 2014-07-21 17:12:10 CEST
*** Bug 27041 has been marked as a duplicate of this bug. ***
Comment 19 Alexander Kläser univentionstaff 2014-07-21 17:12:50 CEST
*** Bug 30635 has been marked as a duplicate of this bug. ***
Comment 20 Alexander Kläser univentionstaff 2014-07-21 17:13:32 CEST
*** Bug 32097 has been marked as a duplicate of this bug. ***
Comment 21 Alexander Kläser univentionstaff 2014-07-22 14:40:00 CEST
(In reply to Florian Best from comment #17)
> Created attachment 6010 [details]
> Screenshot RadioButton Border
> 
> Two grey borders around the selected radio button.

This is a dojo problem.

(In reply to Florian Best from comment #16)
> umc/python/setup/__init__.py:49: 'urllib2' imported but unused
> umc/python/setup/__init__.py:51: 'UMC_CommandError' imported but unused
> umc/python/setup/__init__.py:248: local variable 'success' is assigned to
> but never used
> umc/python/setup/__init__.py:251: undefined name 'sucess'
> umc/python/setup/util.py:43: 'sys' imported but unused
> umc/python/setup/util.py:44: 'apt' imported but unused
> umc/python/setup/util.py:51: 'Translation' imported but unused
> umc/python/setup/util.py:161: undefined name 'util'
> umc/python/setup/util.py:163: undefined name '_'
> umc/python/setup/util.py:196: undefined name 'Locale'
> umc/python/setup/util.py:212: undefined name 'util'
> umc/python/setup/util.py:666: undefined name 'urllib2'
> umc/python/setup/util.py:666: undefined name 'urllib2'
> umc/python/setup/util.py:668: undefined name 'UMC_CommandError'
> umc/python/setup/util.py:668: undefined name '_'

Fixed pyflake errors.


What has been changed otherwise?

univention-system-setup (7.0.69-28):
Bug #34484:
* integrated DHCP query
* added DNS checks for UCS nameserver
* fixed pyflake errors

univention-system-setup (7.0.69-27):
* Bug #34484: fixed fuzzy entries

univention-system-setup (7.0.69-26):
Bug #34484:
* set primary interface automatically
* fixed typo for setting ssl/email
* fixed the activation of UCS (via umc call)

univention-system-setup (7.0.69-25):
Bug #34484:
* integration and cleanup of appliance join and standard setup save process
* handle errors during setup process
* removed first name, last name, and description for Administrator account
* fixed a few typos in the python files


Remaining open points:
* translation
* IPv6 handling
Comment 22 Florian Best univentionstaff 2014-07-22 14:45:01 CEST
* The images aren't loaded directly so that they are displayed with some delay.
* The gateway address generation could depend on the entered netmask, not just the IP.
* After switching the Language to german, entering 'New ' in the city selection, choosing 'Neu Dehli' via keyboard and RETURN → 'New York' is selected.
Comment 23 Florian Best univentionstaff 2014-07-22 16:50:43 CEST
* The "back" button is displayed after successful configuration.
Comment 24 Alexander Kläser univentionstaff 2014-07-22 17:19:27 CEST
(In reply to Florian Best from comment #22)
> * The images aren't loaded directly so that they are displayed with some
> delay.

Yes, let us ignore this for now.

> * The gateway address generation could depend on the entered netmask, not
> just the IP.

Sure, it is just a simple guess for 90% of the cases.

> * After switching the Language to german, entering 'New ' in the city
> selection, choosing 'Neu Dehli' via keyboard and RETURN → 'New York' is
> selected.

Yes, let us ignore this for now, I do not think that these problems are significant at this moment.

(In reply to Florian Best from comment #23)
> * The "back" button is displayed after successful configuration.

Jep, fixed.


univention-system-setup (7.0.69-29):
Bug #34484:
* take ipv6/gateway into account
* remove 'back' button on last wizard page
* let appliance page refer to UMC without header and without overview page
Comment 25 Alexander Kläser univentionstaff 2014-07-22 18:56:54 CEST
The UCS activation should work now.

univention-system-setup (7.0.69-30):
* Bug #34484: fixed indentation and moved UCS activiation (as script in
  cleanup-post.d directory)
Comment 26 Alexander Kläser univentionstaff 2014-07-22 20:39:29 CEST
Added missing translations.

univention-system-setup (7.0.69-31):
* Bug #34484: added translations

Here is a (quite complete) list of things I considered in the implementation...

Generic:
* UMC tabs and header are not shown in the appliance mode (check also link from startsite with installed system-setup-boot package)
* language can be changed on the fly without page reload
* visible validation with error message on invalid fields + focus to first invalid field
* validation for password input field is working as expected while typing
* blacklisting/whitelisting works for software + role selection
* disable fast page switches (c.f., Bug #27734)
* deprecated pages have been removed
* keyboard layout of X-Server is adjusted upon selection
* ssl variables are set automatically
* fixed horizontal jumping in grid with FF
* only the module specified in the query string is loaded (if overview==false)
* version dependency to UMC frontend
* license activation is triggered if a valid email address is specified
* Read and set current values → just special handling for DHCP
* page for validation errors (from frontend as well as backend)
* session is kept alive on summary page and last (=finished) page
* errors during the join process are handled
* dialogue for admin credentials for non-master systems
* the code path for the tab version has been re-organized and separated from the code path for the appliance wizard
* browser redirection after setup (also IP address change is handled)
* the handling of standby animations upon errors should be working fine

City search:
* live search for cities to preconfigure locale settings
* check preconfigured settings for common countries/cities → does everything work as expected?

Network settings:
* master: FQDN - non master systems: hostname or FQDN
* configuration of more than one network device
* proxy configuration
* network address is displayed above address/netmask fields iff there is more than one network device
* a DHCP query is launched upon checking the DHCP check box
* DHCP: nameserver and gateway are set
* DHCP: nameserver is checked to be a UCS nameserver
* IPv6 should be handled correctly
* primary interface is set automatically
* if a system is preconfigured with DHCP (EC2), DHCP should already been selected

Software:
* install selected system components (source: app center)
* app description via info button
* App Center ist synced during installation of system-setup-boot, the query for the wizard is carried out locally (i.e., no internet access required)
* only packages are displayed that are allowed for the chosen role
* check for invalid software combinations
Comment 27 Florian Best univentionstaff 2014-07-23 08:14:43 CEST
The wizard is currently unable to open:

ApplianceWizard.js
+936 this._setupTooltips();
TypeError: undefined is not a function
Comment 28 Florian Best univentionstaff 2014-07-23 09:23:33 CEST
"oder wird es eine existierenden Domäne beitreten"
eine → einer

The startsite says something about a ssh key which i didn't configure. Probably this is wanted for EC2 users. Is that OK?

After successful configuration: "Klicken Sie auf die Schaltfläche Fortfahren, um …" → The Schaltfläche is called "Fertigstellen" not "Fortfahren".

When leaving out the field 'Organisation' the system cannot be configured. Errormessage is:
• Ein unerwarteter Fehler trat während des Einrichtungsprozesses auf: 'organization'
The error message is not really descriptive.
The button to continue is called 'Ungejoint fortfahren' → this is obviously wrong because the error has nothing to do with the join process.
The button 'Erneut konfigurieren' brings us back to the Software selection page. OK, I guess it is  better than switching to the first page.

After going back and changing the field 'Organisation' my already correctly set FQDN was reset to ucs1234.$organisation.local. If the field was already changed by hand the auto-fillout should be prevented as before.
Comment 29 Erik Damrose univentionstaff 2014-07-23 09:25:07 CEST
(In reply to Florian Best from comment #28)
> The startsite says something about a ssh key which i didn't configure.
> Probably this is wanted for EC2 users. Is that OK?

That is done via Bug #34388
Comment 30 Florian Best univentionstaff 2014-07-23 09:31:12 CEST
It is not possible to configure a IPv6 *and* a IPv4 Address per network interface.
Comment 31 Florian Best univentionstaff 2014-07-23 10:12:16 CEST
* The "next" button on the confirmation page could be labeled "Install" or "Configure".
Comment 32 Florian Best univentionstaff 2014-07-23 10:23:08 CEST
* The software components aren't translated to german after switching the language.
Comment 33 Florian Best univentionstaff 2014-07-23 11:34:59 CEST
* joining is not possible: after the dialog an JS exception occurs:
ApplianceWizard.js +1456
this._progressBar.reset(…………)
TypeError: this._progressBar is undefined.
Comment 34 Alexander Kläser univentionstaff 2014-07-23 12:09:12 CEST
YAML files have been adjusted:
2014-07-15-univention-management-console-frontend.yaml
2014-06-13-univention-system-setup.yaml
Comment 35 Alexander Kläser univentionstaff 2014-07-23 12:10:55 CEST
(In reply to Florian Best from comment #27)
> The wizard is currently unable to open:
> 
> ApplianceWizard.js
> +936 this._setupTooltips();
> TypeError: undefined is not a function

Oops. Fixed!

univention-system-setup (7.0.69-32):
* Bug #34484: fixed reference to undefined
Comment 36 Florian Best univentionstaff 2014-07-23 13:00:27 CEST
(In reply to Florian Best from comment #33)
> * joining is not possible: after the dialog an JS exception occurs:
> ApplianceWizard.js +1456
> this._progressBar.reset(…………)
> TypeError: this._progressBar is undefined.
→ missing lang.hitch(this, ...)
Comment 37 Alexander Kläser univentionstaff 2014-07-23 13:34:29 CEST
univention-system-setup (7.0.69-33):
Bug #34484:
* some text changes
* added tooltips to hostname and proxy field
* fixed CSS margins on page for role selection
Comment 38 Alexander Kläser univentionstaff 2014-07-23 14:44:26 CEST
(In reply to Florian Best from comment #33)
> * joining is not possible: after the dialog an JS exception occurs:
> ApplianceWizard.js +1456
> this._progressBar.reset(…………)
> TypeError: this._progressBar is undefined.

Correct, I fixed this one.

univention-system-setup (7.0.69-35):
* Bug #34484: fixed lang.hitch usage in ApplianceWizard:join(), minor text
  adaptations
Comment 39 Florian Best univentionstaff 2014-07-23 14:45:31 CEST
* It would be very good if the summary shows the guessed FQDN.
Comment 40 Florian Best univentionstaff 2014-07-23 14:52:13 CEST
The button on the error page is called "Continue" → maybe better "Close" / "Finish" / ?
Comment 41 Alexander Kläser univentionstaff 2014-07-23 15:05:16 CEST
(In reply to Florian Best from comment #39)
> * It would be very good if the summary shows the guessed FQDN.

Agreed and implemented.

univention-system-setup (7.0.69-36):
* Bug #34484: show the guessed domain name in the summary page
Comment 42 Florian Best univentionstaff 2014-07-23 16:00:00 CEST
* When DHCP is selected i cannot go to the next page because 'at least one network device have to be configured'
* "Domain DNS Server" should be named "UCS Domain DNS Server" (only the first field is wrong)
* When doing the DHCP query the discovered IP-Addresses should be inserted into the input boxes.
Comment 43 Florian Best univentionstaff 2014-07-23 16:16:19 CEST
Two more errors:
First: System setup tries to join even if the configuration before fails (e.g. installing univention-server-slave).

Second: Currently every installation of a non-master fails with the error message:
__MSG__:univention-server-master: Failed to uninstall
__ERR__:univention-server-master: Failed to uninstall
__MSG__:univention-server-slave: Failed to install
__ERR__:univention-server-slave: Failed to install
Comment 44 Florian Best univentionstaff 2014-07-23 16:19:15 CEST
(In reply to Florian Best from comment #43)
> Two more errors:
> First: System setup tries to join even if the configuration before fails
> (e.g. installing univention-server-slave).
If installing univention-server-slave fails for any reason the system is installed as master and joins then against the real master as master.
Comment 45 Alexander Kläser univentionstaff 2014-07-23 21:48:51 CEST
(In reply to Florian Best from comment #43)
> Two more errors:
> First: System setup tries to join even if the configuration before fails
> (e.g. installing univention-server-slave).
> 
> Second: Currently every installation of a non-master fails with the error
> message:
> __MSG__:univention-server-master: Failed to uninstall
> __ERR__:univention-server-master: Failed to uninstall
> __MSG__:univention-server-slave: Failed to install
> __ERR__:univention-server-slave: Failed to install

Might this be related to Bug 33418? I experienced similar problems under specific circumstances...
Comment 46 Florian Best univentionstaff 2014-07-24 09:22:38 CEST
* The ucr variable description of system/setup/boot/pages/blacklist currently contains pages which doesn't exists anymore.
* When having SoftwarePage on the blacklist after a click on 'back' on the summary brings me to that page.
*  When having ServerRole on the blacklist (I assume the system will be a master then) one don't need to enter the LDAP base (is it guessed then?). And the description of the FQDN field is 'Enter FQDN or hostname'. After that the summary displays '$host.knut.univention.de' as I entered billy as UCS DNS server. I guess it's just the wrong page displayed then?
Comment 47 Florian Best univentionstaff 2014-07-24 09:34:17 CEST
(In reply to Florian Best from comment #46)
> *  When having ServerRole on the blacklist (I assume the system will be a
> master then) one don't need to enter the LDAP base (is it guessed then?).
> And the description of the FQDN field is 'Enter FQDN or hostname'. After
> that the summary displays '$host.knut.univention.de' as I entered billy as
> UCS DNS server. I guess it's just the wrong page displayed then?
Well, the summary shows me that the system will be configured as role 'Member Server' → I can enter an UCS activation email address and a organisation name but this should only be possible on a master.
Comment 48 Florian Best univentionstaff 2014-07-24 09:55:47 CEST
* Entering a valid IPv6 prefix is not possible (e.g. 128)
* The netmask cannot be entered as e.g. "24"
Comment 49 Florian Best univentionstaff 2014-07-24 09:57:42 CEST
* No IPv6 identifier is sent along with the validate request which ends up in a traceback
Comment 50 Florian Best univentionstaff 2014-07-24 10:13:29 CEST
* When having a system with 2 interfaces (eth0, eth1) and eth1 has a MAC address which will receive a IP address via DHCP the query fails.
Comment 51 Florian Best univentionstaff 2014-07-24 10:55:52 CEST
* The network values aren't filled out (neither DHCP checkbox nor currently set IP addresses)
Comment 52 Florian Best univentionstaff 2014-07-24 11:00:51 CEST
* The summary doesn't show which software components are uninstalled
Comment 53 Florian Best univentionstaff 2014-07-24 11:01:01 CEST
will be*
Comment 54 Florian Best univentionstaff 2014-07-24 11:08:04 CEST
* When switching back from summary my selected software components gets reset.
Comment 55 Florian Best univentionstaff 2014-07-24 12:17:16 CEST
* was there a default software selection before?
* typo "folgenden Informationen geben genauerer Informationen" → genauerer
Comment 56 Florian Best univentionstaff 2014-07-24 14:19:02 CEST
The system setup scripts fail if a locale is set which is different to the actual locale of the process.
Traceback (most recent call last):
  File "/usr/lib/univention-system-setup/scripts/30_net//10interfaces", line 36, in <module>
    from univention.management.console.modules.setup.setup_script import SetupScript, main, _
  File "/usr/lib/pymodules/python2.6/univention/management/console/modules/setup/setup_script.py", line 47, in <module>
    _ = setup_i18n()
  File "/usr/lib/pymodules/python2.6/univention/management/console/modules/setup/setup_script.py", line 44, in setup_i18n
    locale.setlocale(locale.LC_ALL, '')
  File "/usr/lib/python2.6/locale.py", line 513, in setlocale
    return _setlocale(category, locale)
locale.Error: unsupported locale setting
Comment 57 Florian Best univentionstaff 2014-07-24 14:28:59 CEST
Wouldn't it be nicer if the domain credentials would be questioned on a own page instead of a dialog? (We can create a bug for that).
→ The domain join credentials could be validated before the configuration starts to avoid join errors (so that a warning can be displayed on the validation page)
Comment 58 Alexander Kläser univentionstaff 2014-07-24 14:46:34 CEST
(In reply to Florian Best from comment #56)
> The system setup scripts fail if a locale is set which is different to the
> actual locale of the process.
> Traceback (most recent call last):
>   File "/usr/lib/univention-system-setup/scripts/30_net//10interfaces", line
> 36, in <module>
>     from univention.management.console.modules.setup.setup_script import
> SetupScript, main, _
>   File
> "/usr/lib/pymodules/python2.6/univention/management/console/modules/setup/
> setup_script.py", line 47, in <module>
>     _ = setup_i18n()
>   File
> "/usr/lib/pymodules/python2.6/univention/management/console/modules/setup/
> setup_script.py", line 44, in setup_i18n
>     locale.setlocale(locale.LC_ALL, '')
>   File "/usr/lib/python2.6/locale.py", line 513, in setlocale
>     return _setlocale(category, locale)
> locale.Error: unsupported locale setting

Fixed that one. The current UMC locale is now added to the list of supported locales (i.e. UCR variable "locale").

univention-system-setup (7.0.69-38):
* Bug #34484: make sure that the current locale in UMC is also added to the
  list of supported locales
Comment 59 Florian Best univentionstaff 2014-07-24 15:38:49 CEST
In a EC2 environment, when DHCP query fails:

Die Ausführung des Kommandos setup/net/dhclient ist fehlgeschlagen:

Traceback (most recent call last):
  File "/usr/lib/pymodules/python2.6/univention/management/console/modules/__init__.py", line 204, in execute
    func( request )
  File "/usr/lib/pymodules/python2.6/univention/management/console/modules/decorators.py", line 305, in _response
    result = _multi_response(self, request)
  File "/usr/lib/pymodules/python2.6/univention/management/console/modules/decorators.py", line 432, in _response
    for res in function(self, iterator, *nones):
  File "/usr/lib/pymodules/python2.6/univention/management/console/modules/decorators.py", line 271, in _fake_func
    yield function(self, *args)
  File "/usr/lib/pymodules/python2.6/univention/management/console/modules/setup/__init__.py", line 555, in net_dhclient
    return util.dhclient(interface, timeout)
  File "/usr/lib/pymodules/python2.6/univention/management/console/modules/setup/util.py", line 663, in dhclient
    dhcp_dict['is_ucs_nameserver_1'] = bool(get_nameserver_domain(dhcp_dict['nameserver_1']))
  File "/usr/lib/pymodules/python2.6/univention/management/console/modules/setup/util.py", line 817, in get_nameserver_domain
    reverse_lookup = resolver.query(reverse_address, 'PTR')
  File "/usr/lib/pymodules/python2.6/dns/resolver.py", line 671, in query
    raise NXDOMAIN
NXDOMAIN
Comment 60 Florian Best univentionstaff 2014-07-24 15:45:06 CEST
(In reply to Florian Best from comment #51)
> * The network values aren't filled out (neither DHCP checkbox nor currently
> set IP addresses)
also gateway (and nameserver sometimes?) isn't prefilled.
Comment 61 Florian Best univentionstaff 2014-07-24 16:16:54 CEST
(In reply to Alexander Kläser from comment #58)
> Fixed that one. The current UMC locale is now added to the list of supported
> locales (i.e. UCR variable "locale").
> 
> univention-system-setup (7.0.69-38):
> * Bug #34484: make sure that the current locale in UMC is also added to the
>   list of supported locales
The profile contains the value twice now:
locale="de_DE.UTF-8:UTF-8 en_US.UTF-8:UTF-8 en_US.UTF8:UTF8"
Comment 62 Alexander Kläser univentionstaff 2014-07-24 16:32:07 CEST
(In reply to Florian Best from comment #61)
> (In reply to Alexander Kläser from comment #58)
> > Fixed that one. The current UMC locale is now added to the list of supported
> > locales (i.e. UCR variable "locale").
> > 
> > univention-system-setup (7.0.69-38):
> > * Bug #34484: make sure that the current locale in UMC is also added to the
> >   list of supported locales
> The profile contains the value twice now:
> locale="de_DE.UTF-8:UTF-8 en_US.UTF-8:UTF-8 en_US.UTF8:UTF8"

Fixed. I used now univention.i18n.Locale instead of the python locale module (which returns "UTF8" instead of "UTF-8").

univention-system-setup (7.0.69-39):
* Bug #34484: fixed handling of codest (python module locale returns 'UTF8',
  yet we need 'UTF-8')
Comment 63 Florian Best univentionstaff 2014-07-24 16:34:31 CEST
While the standby animation for DHCP query runs (DHCP selected via keyboard) you can use the keyboard (with tab key) to enter more values or go to the next page.
Comment 64 Florian Best univentionstaff 2014-07-25 08:01:40 CEST
Currently the check for invalid software combinations is hardcoded (only samba3/4 and kvm/xen). Is it possible now to use the appcenter code for this?
Comment 65 Florian Best univentionstaff 2014-07-25 08:11:10 CEST
The language switch currently only works for the frontend strings, not the ones from the backend (switch with initial english from english to german)
Comment 66 Florian Best univentionstaff 2014-07-25 09:40:36 CEST
* The software components aren't filtered by server role
Comment 67 Florian Best univentionstaff 2014-07-25 09:47:59 CEST
(In reply to Florian Best from comment #66)
> * The software components aren't filtered by server role
oh, my fault. this works!
Comment 68 Florian Best univentionstaff 2014-07-25 10:40:18 CEST
(In reply to Alexander Kläser from comment #26)
> Generic:
> * UMC tabs and header are not shown in the appliance mode
OK
> (check also link from startsite with installed system-setup-boot package)
OK
> * language can be changed on the fly without page reload
OK frontend, REOPEN: backend
> * visible validation with error message on invalid fields + focus to first invalid field
OK
> * validation for password input field is working as expected while typing
OK
> * blacklisting/whitelisting works for software + role selection
REOPEN: backbutton for software selection, wrong page displayed in role-selection
> * disable fast page switches (c.f., Bug #27734)
OK
> * deprecated pages have been removed
OK (HelpPage, ServerRolePage, SoftwarePage)
> * keyboard layout of X-Server is adjusted upon selection
OK
> * ssl variables are set automatically
REOPEN: organisation field must be checked in the backend, set to require or use some default string (+ hint that it can be changed afterwards?)
> * fixed horizontal jumping in grid with FF
OK
> * only the module specified in the query string is loaded (if overview==false)
OK
> * version dependency to UMC frontend
OK → UMC-frontend errata have to be released before system-setup
> * license activation is triggered if a valid email address is specified
OK
> * Read and set current values → just special handling for DHCP
REOPEN: no values are set, nameserver is sometimes weird set
> * page for validation errors (from frontend as well as backend)
OK
> * session is kept alive on summary page and last (=finished) page
OK → on error page and on finished page
> * errors during the join process are handled
REOPEN: buttons for the further options, error handling
> * dialogue for admin credentials for non-master systems
OK
> * the code path for the tab version has been re-organized and separated from the code path for the appliance wizard
OK → cleanup of the other pages should be done in the future
> * browser redirection after setup (also IP address change is handled)
OK
> * the handling of standby animations upon errors should be working fine
OK
> City search:
> * live search for cities to preconfigure locale settings
OK
> * check preconfigured settings for common countries/cities → does everything work as expected?
OK → selecting Moskau is very funny
> Network settings:
> * master: FQDN
OK
> non master systems: hostname or FQDN
OK
> * configuration of more than one network device
REOPEN: active DHCP checkbox without configured interface disallows switching to next page, …
> * proxy configuration
OK
> * network address is displayed above address/netmask fields if there is more than one network device
OK
> * a DHCP query is launched upon checking the DHCP check box
REOPEN: only for eth0
> * DHCP: nameserver and gateway are set
REOPEN: not set
> * DHCP: nameserver is checked to be a UCS nameserver
OK
> * IPv6 should be handled correctly
REOPEN: prefix validation, IPv6 address identifier
> * primary interface is set automatically
OK, altough not necessary
> * if a system is preconfigured with DHCP (EC2), DHCP should already been selected
REOPEN: not selected
> Software:
> * install selected system components (source: app center)
OK, well not OK because weird Bug 33418
> * app description via info button
OK
> * App Center is synced during installation of system-setup-boot, the query for the wizard is carried out locally (i.e., no internet access required)
OK, fails in internal circumstances when update/secure_apt=false
> * only packages are displayed that are allowed for the chosen role
OK
> * check for invalid software combinations
REOPEN: can this be done by appcenter instead of hard-coding?

I merged all current commits into UCS 4.0
Comment 69 Florian Best univentionstaff 2014-07-25 11:04:37 CEST
*** Bug 29721 has been marked as a duplicate of this bug. ***
Comment 70 Florian Best univentionstaff 2014-07-25 11:24:28 CEST
*** Bug 30979 has been marked as a duplicate of this bug. ***
Comment 71 Florian Best univentionstaff 2014-07-25 11:29:55 CEST
*** Bug 31895 has been marked as a duplicate of this bug. ***
Comment 72 Florian Best univentionstaff 2014-07-25 12:08:20 CEST
Bug #27943 would also be a oneliner.
Comment 73 Florian Best univentionstaff 2014-07-25 12:25:50 CEST
*** Bug 29945 has been marked as a duplicate of this bug. ***
Comment 74 Florian Best univentionstaff 2014-07-25 12:34:48 CEST
*** Bug 33996 has been marked as a duplicate of this bug. ***
Comment 75 Florian Best univentionstaff 2014-07-25 12:36:21 CEST
*** Bug 34629 has been marked as a duplicate of this bug. ***
Comment 76 Alexander Kläser univentionstaff 2014-07-25 13:10:25 CEST
*** Bug 32036 has been marked as a duplicate of this bug. ***
Comment 77 Philipp Hahn univentionstaff 2014-07-25 13:22:27 CEST
IMHO "IPv4-Adresse/IPv6-Adresse" and "IPv4-Netzmaske/IPv6-Präfix" should be combined into one CIDR input box, as
1) probably nobody likes entering "255.255.255.128" anymore if "/25" could do,
2) "/24" is even rejected with "Invalid IP address! Expected format is IPv4 or IPv6",
4) "255.0.255.0" is wrongly accepted,
3) the error message is even wrong for "255.255.255.0", as that is not an address but a mask.
Comment 78 Florian Best univentionstaff 2014-07-25 13:35:31 CEST
Created attachment 6024 [details]
some network fixes patch

* fix adding of required IPv6 "default" identifier
* fix setting of primary interface name in DHCP
* when DHCP is activated it is enabled for every interface not just hardcoded eth0 which does not necessarily exists
Comment 79 Alexander Kläser univentionstaff 2014-07-25 13:40:31 CEST
The country flags need to be removed from the language select widget on the start site.
Comment 80 Florian Best univentionstaff 2014-07-25 14:31:37 CEST
locale contains duplicated locale due to appended ".UTF-8" → "en_US.UTF-8:UTF-8 en_US.UTF-8.UTF-8:UTF-8"
Comment 81 Florian Best univentionstaff 2014-07-28 10:50:00 CEST
There are some values which bypass validation because they are set trough auto completion. e.g. it is now possible to have an invalid ssl/organization.
Comment 82 Florian Best univentionstaff 2014-07-28 11:28:04 CEST
It is currently possible to get the error message:
'At least one domain name server needs to be given if DHCP or SLAAC is not specified.'
→ This happens when configuring a UCS4.0 DC master. The validate request contains only variables for dns/forwarder* but not nameserver* values.
(→ IPv6 SLAAC is not possible with the new wizard)

(In reply to Alexander Kläser from comment #26)
> * App Center ist synced during installation of system-setup-boot, the query for the wizard is carried out locally (i.e., no internet access required)
→ For fresh installations (UCS4.0) this will not work because there is no network connection.
Comment 83 Alexander Kläser univentionstaff 2014-07-29 15:12:55 CEST
*** Bug 32275 has been marked as a duplicate of this bug. ***
Comment 84 Florian Best univentionstaff 2014-07-30 10:51:11 CEST
*** Bug 35518 has been marked as a duplicate of this bug. ***
Comment 85 Alexander Kläser univentionstaff 2014-07-30 18:24:29 CEST
First bulk of fixes.


==== I18N ====

* Remove country flags
FIXED.

* After switching the Language to german, entering 'New ' in the city selection, choosing 'Neu Dehli' via keyboard and RETURN → 'New York' is selected.
FIXED. This used to be a generic probl: when selecting an item with the up/down cursors keys and confirming with "enter", only the first entry had been selected.

* The software components aren't translated to german after switching the language.
FIXED. This was a caching problem + I needed to reload the app_center module.

* The language switch currently only works for the frontend strings, not the ones from the backend (switch with initial english from english to german)
FIXED. I needed to call univention.lib.i18n.Translation.set_language() (also for the network module).


==== NETWORK ====

* It is not possible to configure a IPv6 *and* a IPv4 Address per network interface.
Yes this behaviour is intended.

* When DHCP is selected i cannot go to the next page because 'at least one network device have to be configured'
FIXED .

* When doing the DHCP query the discovered IP-Addresses should be inserted into the input boxes.
FIXED.

* The netmask cannot be entered as e.g. "24"
FIXED. A mask is also analyzed on bitlevel to have the right format, "24" is the suggested value instead of 255.255.255.0.

* Entering a valid IPv6 prefix is not possible (e.g. 128)
FIXED.

* No IPv6 identifier is sent along with the validate request which ends up in a traceback
FIXED via Patch (attachment 6024 [details]) with minor adaptations. Thanks!

* When having a system with 2 interfaces (eth0, eth1) and eth1 has a MAC address which will receive a IP address via DHCP the query fails.
FIXED. Requests are executed asynchronously for each interfaces.

* The network values aren't filled out (neither DHCP checkbox nor currently set IP addresses)
FIXED.

* Also gateway (and nameserver sometimes?) isn't prefilled.
Should work fine.

* if a system is preconfigured with DHCP (EC2), DHCP should already been selected → REOPEN: not selected
FIXED. The checkbox is set true if there is at least one device with IPv4 DHCP enabled.


univention-system-setup (7.0.69-42):
Bug #34484:
* Fixed multiple network related issues (device handling, DHCP, netmask
  validation etc.)
* Fixed problems with language switch
* Removed country flags from language selection
Comment 86 Alexander Kläser univentionstaff 2014-07-30 20:03:05 CEST
Second and last bulk of changes...

==== NETWORK ====

* If DHCP is preconfigured and not changed in the wizard, the interfaces settings should not be changed.
FIXED.

* In a EC2 environment, when DHCP query fails (comment 59)
FIXED. An NXDOMAIN exception is now caught.

* If a DHCP server is not reachable, the request takes maybe 1min.
FIXED. I just needed to remove the p.wait() line in util.py which waited for the process to terminated.

* DHCP/SLAAC related error message on UCS4.0 DC Master (comment 82).
FIXED. Well, it is not really scope of this bug, but nevertheless. We will probably need to adapt things any way.

* "IPv4-Adresse/IPv6-Adresse" and "IPv4-Netzmaske/IPv6-Präfix" should be combined into one CIDR input box (comment 77)
FIXED/IGNORED. The validation as well as the invalid message were incorrect. For now, I will leave it with two separated fields, as this is used in the general basic settings part in a similar manner.


==== BLACK/WHITE LISTING ====

* When having SoftwarePage on the blacklist after a click on 'back' on the summary brings me to that page.
FIXED.

* When having ServerRole on the blacklist (I assume the system will be a master then) one don't need to enter the LDAP base (is it guessed then?). And the description of the FQDN field is 'Enter FQDN or hostname'. After that the summary displays '$host.knut.univention.de' as I entered billy as UCS DNS server. I guess it's just the wrong page displayed then?
* Well, the summary shows me that the system will be configured as role 'Member Server' → I can enter an UCS activation email address and a organisation name but this should only be possible on a master.
FIXED (2x). The role was determined not taken the black listing into account.

* The ucr variable description of system/setup/boot/pages/blacklist currently contains pages which doesn't exists anymore.
FIXED.


==== GENERAL ====

* search icon in Firefox looks odd
FIXED.

* When leaving out the field 'Organisation' the system cannot be configured. Errormessage is: Ein unerwarteter Fehler trat während des Einrichtungsprozesses auf: 'organization'
FIXED.

* The button 'Erneut konfigurieren' brings us back to the Software selection page. OK, I guess it is  better than switching to the first page.
Yes, it is better ;) .

* After going back and changing the field 'Organisation' my already correctly set FQDN was reset to ucs1234.$organisation.local. If the field was already changed by hand the auto-fillout should be prevented as before.
IGNORED. Well, this should not happen very often.

* System setup tries to join even if the configuration before fails (e.g. installing univention-server-slave).
FIXED (?). This should have been fixed with univention-system-setup (7.0.69-38) (see also comment 58).

* The summary doesn't show which software components are uninstalled
IGNORED. Why should it? What counts at this point is which software is going to be installed.

* When switching back from summary my selected software components gets reset.
INVALID. I cannot reproduce this, works fine for me.

* Was there a default software selection before?
Depending on what is installed, as now :) .

* While the standby animation for DHCP query runs (DHCP selected via keyboard) you can use the keyboard (with tab key) to enter more values or go to the next page.
FIXED. Well, true you can do that, but you seem to be able to do that _always_. I blur the last selected element now explicitely, although hitting tab several times will enable you to do that anyways.

* Currently the check for invalid software combinations is hardcoded (only samba3/4 and kvm/xen). Is it possible now to use the appcenter code for this?
IGNORED. I intentionally left it like this, as the existing script works with a list of packages that are installed. Therefore the frontend passes a list of packages to be installed.

* Read and set current values → no values are set, nameserver is sometimes weird set
FIXED (?). In fact, only gateway/DHCP values are set. UCS name server is set (for role != DC Master) based on the values from DHCP only if it is a UCS domain name server.

* There are some values which bypass validation because they are set trough auto completion. e.g. it is now possible to have an invalid ssl/organization.
IGNORED. This does not really lead to any problem currently.

* locale contains duplicated locale due to appended ".UTF-8" → "en_US.UTF-8:UTF-8 en_US.UTF-8.UTF-8:UTF-8"
FIXED.


==== TEXT CHANGES ====

* "oder wird es eine existierenden Domäne beitreten": eine → einer
FIXED.

* After successful configuration: "Klicken Sie auf die Schaltfläche Fortfahren, um …" → The Schaltfläche is called "Fertigstellen" not "Fortfahren".
FIXED.

* The button to continue is called 'Ungejoint fortfahren' → this is obviously wrong because the error has nothing to do with the join process.
* The button on the error page is called "Continue" → maybe better "Close" / "Finish" / ?
FIXED. The button is now called "Finish", I also rephrased the part of the text that says the system would be unjoined.

* The "next" button on the confirmation page could be labeled "Install" or "Configure".
FIXED. Label is now "Conifgure system".

* "Domain DNS Server" should be named "UCS Domain DNS Server" (only the first field is wrong)
FIXED.

* typo "folgenden Informationen geben genauerer Informationen" → genauerer
FIXED.

* DE and EN mixed for role descriptions
FIXED.


Along with the previous commit, these should have been all known open points.

univention-system-setup (7.0.69-43):
Bug #34484:
* Fixed some more network related issues (DHCP timeout, DNS error handling)
* Fixed black/white list handing and UCR variable descriptions
* Fixed LiveSearch icon size
* Fixed internal logic problems
* Fixed typos and adapted text parts
Comment 87 Florian Best univentionstaff 2014-07-31 07:20:48 CEST
If there will be another commit it would be good if the patch from Bug #34242 would be integrated. It occurred again in UCS4 installer and a workaround has been done for it.

Missing semicolon. (umc/js/setup/ApplianceWizard.js:144:31)
> var _regBitMask = /^1*0*$/

I merged the changes into UCS 3.2-2 and UCS 4.0-0.
Comment 88 Florian Best univentionstaff 2014-07-31 09:55:54 CEST
(In reply to Alexander Kläser from comment #85)
> First bulk of fixes.
> 
> 
> ==== I18N ====
> 
> * Remove country flags
> FIXED.
OK

> * After switching the Language to german, entering 'New ' in the city
> selection, choosing 'Neu Dehli' via keyboard and RETURN → 'New York' is
> selected.
> FIXED. This used to be a generic probl: when selecting an item with the
> up/down cursors keys and confirming with "enter", only the first entry had
> been selected.
OK

> * The software components aren't translated to german after switching the
> language.
> FIXED. This was a caching problem + I needed to reload the app_center module.
OK

> * The language switch currently only works for the frontend strings, not the
> ones from the backend (switch with initial english from english to german)
> FIXED. I needed to call univention.lib.i18n.Translation.set_language() (also
> for the network module).
OK

> ==== NETWORK ====
> 
> * It is not possible to configure a IPv6 *and* a IPv4 Address per network
> interface.
> Yes this behaviour is intended.
OK

> * When DHCP is selected i cannot go to the next page because 'at least one
> network device have to be configured'
> FIXED .

> * When doing the DHCP query the discovered IP-Addresses should be inserted
> into the input boxes.
> FIXED.
OK

> * The netmask cannot be entered as e.g. "24"
> FIXED. A mask is also analyzed on bitlevel to have the right format, "24" is
> the suggested value instead of 255.255.255.0.
OK

> * Entering a valid IPv6 prefix is not possible (e.g. 128)
> FIXED.
OK, also the help text.

> * No IPv6 identifier is sent along with the validate request which ends up
> in a traceback
> FIXED via Patch (attachment 6024 [details]) with minor adaptations. Thanks!
NO QA DONE YET

> * When having a system with 2 interfaces (eth0, eth1) and eth1 has a MAC
> address which will receive a IP address via DHCP the query fails.
> FIXED. Requests are executed asynchronously for each interfaces.
NO QA DONE YET

> * The network values aren't filled out (neither DHCP checkbox nor currently
> set IP addresses)
> FIXED.
> * Also gateway (and nameserver sometimes?) isn't prefilled.
> Should work fine.
REOPEN: Only the preferred external nameserver is set with some guessed value. None of the set UCR variables are loaded into the form.

> * if a system is preconfigured with DHCP (EC2), DHCP should already been
> selected → REOPEN: not selected
> FIXED. The checkbox is set true if there is at least one device with IPv4
> DHCP enabled.

Some more things:
* Wenigstens ein Interface … → Mindestens ein Interface …
* When a IPv6 address is entered a IPv4 gateway is accepted.
* When going back to other pages the values from the network page are now removed (DHCP was set up).


(In reply to Alexander Kläser from comment #86)
> Second and last bulk of changes...
> 
> ==== NETWORK ====
> …
…
NO QA DONE

> ==== BLACK/WHITE LISTING ====
> 
> * When having SoftwarePage on the blacklist after a click on 'back' on the
> summary brings me to that page.
> FIXED.
OK

> * When having ServerRole on the blacklist (I assume the system will be a
> master then) one don't need to enter the LDAP base (is it guessed then?).
> And the description of the FQDN field is 'Enter FQDN or hostname'. After
> that the summary displays '$host.knut.univention.de' as I entered billy as
> UCS DNS server. I guess it's just the wrong page displayed then?
> * Well, the summary shows me that the system will be configured as role
> 'Member Server' → I can enter an UCS activation email address and a
> organisation name but this should only be possible on a master.
> FIXED (2x). The role was determined not taken the black listing into account.
REOPEN: having ServerRolePage on the blacklist doesn't have any effect. It's possible to configure the server role.

> * The ucr variable description of system/setup/boot/pages/blacklist
> currently contains pages which doesn't exists anymore.
> FIXED.
→ OK

> ==== GENERAL ====
> 
> * search icon in Firefox looks odd
> FIXED.
OK, well the ComboBoxes have the same issue.

> * When leaving out the field 'Organisation' the system cannot be configured.
> Errormessage is: Ein unerwarteter Fehler trat während des
> Einrichtungsprozesses auf: 'organization'
> FIXED.
NO QA DONE

> * The button 'Erneut konfigurieren' brings us back to the Software selection
> page. OK, I guess it is  better than switching to the first page.
> Yes, it is better ;) .
OK

> ==== TEXT CHANGES ====
> 
> * "oder wird es eine existierenden Domäne beitreten": eine → einer
> FIXED.
OK

> * After successful configuration: "Klicken Sie auf die Schaltfläche
> Fortfahren, um …" → The Schaltfläche is called "Fertigstellen" not
> "Fortfahren".
> FIXED.
OK

> * The button to continue is called 'Ungejoint fortfahren' → this is
> obviously wrong because the error has nothing to do with the join process.
> * The button on the error page is called "Continue" → maybe better "Close" /
> "Finish" / ?
> FIXED. The button is now called "Finish", I also rephrased the part of the
> text that says the system would be unjoined.
NO QA DONE

> * The "next" button on the confirmation page could be labeled "Install" or
> "Configure".
> FIXED. Label is now "Conifgure system".
OK

> * "Domain DNS Server" should be named "UCS Domain DNS Server" (only the
> first field is wrong)
> FIXED.
REOPEN: in german it is still 'Bevorzugter Domänen-DNS Server' instead of Bevorz. UCS-Dom. DNS-server

> * typo "folgenden Informationen geben genauerer Informationen" → genauerer
> FIXED.
OK

> * DE and EN mixed for role descriptions
> FIXED.
NO QA DONE

comment #86 is mostly unQAed (only the above points are QAed).
Comment 89 Alexander Kläser univentionstaff 2014-07-31 11:18:00 CEST
I added "Administrator" as suggested username in the dialog for join credentials.

(In reply to Florian Best from comment #87)
> If there will be another commit it would be good if the patch from Bug
> #34242 would be integrated. It occurred again in UCS4 installer and a
> workaround has been done for it.

FIXED.

> Missing semicolon. (umc/js/setup/ApplianceWizard.js:144:31)
> > var _regBitMask = /^1*0*$/

FIXED. Also fixed another jslint hint.


(In reply to Florian Best from comment #88)
> > * The network values aren't filled out (neither DHCP checkbox nor currently
> > set IP addresses)
> > FIXED.
> > * Also gateway (and nameserver sometimes?) isn't prefilled.
> > Should work fine.
> REOPEN: Only the preferred external nameserver is set with some guessed
> value. None of the set UCR variables are loaded into the form.

FIXED. Some clarifications...

Forwarder: If DHCP is preconfigured, the forwarder value is being set now, it will not be overriden by a random name server from the city search field.

IP values: If DHCP is preconfigured, address and mask/prefix values are shown. IPv4 values are preferred to IPv6 values. If DHCP is preconfigured and left enabled, the network interface configuration will not be changed.

> Some more things:
> * Wenigstens ein Interface … → Mindestens ein Interface …

FIXED.

> * When a IPv6 address is entered a IPv4 gateway is accepted.

IGNORED.

> * When going back to other pages the values from the network page are now
> removed (DHCP was set up).

??? This I cannot reproduce at all on my system with FF/Chromium.

> > * When having ServerRole on the blacklist (I assume the system will be a
> > master then) one don't need to enter the LDAP base (is it guessed then?).
> > And the description of the FQDN field is 'Enter FQDN or hostname'. After
> > that the summary displays '$host.knut.univention.de' as I entered billy as
> > UCS DNS server. I guess it's just the wrong page displayed then?
> > * Well, the summary shows me that the system will be configured as role
> > 'Member Server' → I can enter an UCS activation email address and a
> > organisation name but this should only be possible on a master.
> > FIXED (2x). The role was determined not taken the black listing into account.
> REOPEN: having ServerRolePage on the blacklist doesn't have any effect. It's
> possible to configure the server role.

IGNORED. "SystemRolePage" works fine, "ServerRolePage" does not exist ;) .

> > * "Domain DNS Server" should be named "UCS Domain DNS Server" (only the
> > first field is wrong)
> > FIXED.
> REOPEN: in german it is still 'Bevorzugter Domänen-DNS Server' instead of
> Bevorz. UCS-Dom. DNS-server

FIXED. Oops, thanks :) .


univention-system-setup (7.0.69-44):
Bug #34484:
* Improved handling of DHCP network values
* Fixed typos
* Fixed jslint errors
Comment 90 Alexander Kläser univentionstaff 2014-07-31 14:22:56 CEST
*** Bug 34242 has been marked as a duplicate of this bug. ***
Comment 91 Dirk Wiesenthal univentionstaff 2014-07-31 16:46:31 CEST
Page 1:

Wording:
  Geben Sie eine naheglegene Stadt -> naheg*e*legene
  Enter a near city -> Enter a city near you

Process:
  If selecting a country with unknown settings (such as keyboard layout), "Next" should go to the "Adapt" page. You should also set the settings to the locale's default in case these are unknown.
  Currently you can go through the list with the arrow keys, select your city with unknown settings. And those unknown settings are filled with those of the last city you selected...
Comment 92 Dirk Wiesenthal univentionstaff 2014-07-31 16:55:41 CEST
Page Administrator account information
  Wording:
    personlized license key -> person*a*lized
    E-Mailadresse -> E-Mail-Adresse
    ermöglicht das UCS-Systems für -> UCS-System
Comment 93 Dirk Wiesenthal univentionstaff 2014-07-31 17:12:12 CEST
I like how you handle ä ß and such in the company's name when preconfiguring the domain name. But a dot breaks it, like in "Univention Inc."
Comment 94 Dirk Wiesenthal univentionstaff 2014-07-31 17:33:25 CEST
Page System role:
  Wording:
    beizutreten.Dazu -> spaces
    Member-Server:
      Memberserver sind Server-Systeme
      -> keep consistent.
    DC Slave-Systeme sind ideal für Standort-Server sowie für ladeintensive Dienste
    -> not only does ladeintensiv (load-intenive) feel wrong, it actually is misleading. This may hold for services that require many LDAP lookups. But for other services (MySQL, etc), a member server is enough, is it?
Comment 95 Dirk Wiesenthal univentionstaff 2014-07-31 17:49:49 CEST
Software configuration:
  This step can also be skipped
  ->
  This step can be skipped
  Software vor Drittanbietern (bspw. Groupware) können
  ->
  Software vor Drittanbietern (bspw. Groupware) kann

Domain setup:
  Der eingerichtete Domänennaame -> Domänenname

System role:
  Der Zugriff auf Domänendaten erfolgt hierbei über andere
  ->
  Der Zugriff auf Domänendaten erfolgt hier über andere
Comment 96 Dirk Wiesenthal univentionstaff 2014-08-01 10:01:38 CEST
* When switching back from summary my selected software components gets reset.
INVALID. I cannot reproduce this, works fine for me.

→ Not for me. Firefox here.

* The netmask cannot be entered as e.g. "24"
FIXED. A mask is also analyzed on bitlevel to have the right format, "24" is the suggested value instead of 255.255.255.0.

→ I would rather see 255.255.255.0. It is the way we present the netmask in UCS@school.
Comment 97 Dirk Wiesenthal univentionstaff 2014-08-01 10:25:04 CEST
Click on the button Continue to complete the setup process.
[ Finish ]
Comment 98 Dirk Wiesenthal univentionstaff 2014-08-01 10:27:43 CEST
Restarting server components...
 
This may take a few seconds...


→ It takes forever? (EC2 with DHCP)
Comment 99 Dirk Wiesenthal univentionstaff 2014-08-01 11:23:30 CEST
CertificatePage _after_ wizard, i.e. ordinary system-setup:

Hinweis: Dieser Schritt ist nur auf Domänencontroller Master-Systemen notwendig.

→ Remove this?
Comment 100 Dirk Wiesenthal univentionstaff 2014-08-01 11:25:11 CEST
Lokales Root-Passwort (*) is required. Why? I just logged into UMC using the root password. Why do I *have to* change it (i.e. setting it to the old value...)?

BTW: Comment 100
Comment 101 Dirk Wiesenthal univentionstaff 2014-08-01 11:29:01 CEST
Validation error:

  oder geben sie den vollständigen Domänennamen des Systems an.
  →
  oder geben Sie
Comment 102 Dirk Wiesenthal univentionstaff 2014-08-01 11:43:02 CEST
Configuration error:

Domänen-Join: missing dns service record for _domaincontroller_master._tcp.univention-gmbh.local

Could this be checked beforehand?


I was unable to install a member:

Configuring server role: univention-server-master: Failed to uninstall
Configuring server role: univention-server-member: Failed to install
Comment 103 Alexander Kläser univentionstaff 2014-08-01 15:44:06 CEST
*** Bug 33371 has been marked as a duplicate of this bug. ***
Comment 104 Alexander Kläser univentionstaff 2014-08-01 15:50:52 CEST
(In reply to Dirk Wiesenthal from comment #91)
> Page 1:
> 
> Wording:
>   Geben Sie eine naheglegene Stadt -> naheg*e*legene

FIXED.

>   Enter a near city -> Enter a city near you

FIXED → "Enter a city nearby to preconfigure..."

> Process:
>   If selecting a country with unknown settings (such as keyboard layout),
> "Next" should go to the "Adapt" page. You should also set the settings to
> the locale's default in case these are unknown.
>   Currently you can go through the list with the arrow keys, select your
> city with unknown settings. And those unknown settings are filled with those
> of the last city you selected...

FIXED.

(In reply to Dirk Wiesenthal from comment #92)
> Page Administrator account information
>   Wording:
>     personlized license key -> person*a*lized
>     E-Mailadresse -> E-Mail-Adresse
>     ermöglicht das UCS-Systems für -> UCS-System

FIXED.

(In reply to Dirk Wiesenthal from comment #93)
> I like how you handle ä ß and such in the company's name when preconfiguring
> the domain name. But a dot breaks it, like in "Univention Inc."

FIXED.

(In reply to Dirk Wiesenthal from comment #94)
> Page System role:
>   Wording:
>     beizutreten.Dazu -> spaces
>     Member-Server:
>       Memberserver sind Server-Systeme
>       -> keep consistent.
>     DC Slave-Systeme sind ideal für Standort-Server sowie für ladeintensive
> Dienste
>     -> not only does ladeintensiv (load-intenive) feel wrong, it actually is
> misleading. This may hold for services that require many LDAP lookups. But
> for other services (MySQL, etc), a member server is enough, is it?

FIXED.

(In reply to Dirk Wiesenthal from comment #95)
> Software configuration:
>   This step can also be skipped
>   ->
>   This step can be skipped
>   Software vor Drittanbietern (bspw. Groupware) können
>   ->
>   Software vor Drittanbietern (bspw. Groupware) kann
> 
> Domain setup:
>   Der eingerichtete Domänennaame -> Domänenname
> 
> System role:
>   Der Zugriff auf Domänendaten erfolgt hierbei über andere
>   ->
>   Der Zugriff auf Domänendaten erfolgt hier über andere

FIXED.

(In reply to Dirk Wiesenthal from comment #96)
> * When switching back from summary my selected software components gets
> reset.
> INVALID. I cannot reproduce this, works fine for me.
> 
> → Not for me. Firefox here.

FIXED. The problem occurred as I reset the grid upon changing to the page. This is now done only once and should be fine.

> * The netmask cannot be entered as e.g. "24"
> FIXED. A mask is also analyzed on bitlevel to have the right format, "24" is
> the suggested value instead of 255.255.255.0.
> 
> → I would rather see 255.255.255.0. It is the way we present the netmask in
> UCS@school.

FIXED. 255.255.255.0 is used now.

(In reply to Dirk Wiesenthal from comment #97)
> Click on the button Continue to complete the setup process.
> [ Finish ]

FIXED.

(In reply to Dirk Wiesenthal from comment #98)
> Restarting server components...
>  
> This may take a few seconds...
> 
> → It takes forever? (EC2 with DHCP)

FIXED. This was a specific problem that occurred in a scenario where DHCP was preconfigured. In this case, the network configuration will not be altered and a "undefined" reference caused a JS exception.

(In reply to Dirk Wiesenthal from comment #99)
> CertificatePage _after_ wizard, i.e. ordinary system-setup:
> 
> Hinweis: Dieser Schritt ist nur auf Domänencontroller Master-Systemen
> notwendig.
> 
> → Remove this?

FIXED.

(In reply to Dirk Wiesenthal from comment #100)
> Lokales Root-Passwort (*) is required. Why? I just logged into UMC using the
> root password. Why do I *have to* change it (i.e. setting it to the old
> value...)?

FIXED. The root password is now required only in local mode (i.e. username=__systemsetup__), otherwise a warning is prompted that can be ignored. Note that the root password field has a different position for master/non-master role.

> BTW: Comment 100

True, how sad, indeed! If I would use one comment per line that I write, we would be at 200 ;) !

(In reply to Dirk Wiesenthal from comment #101)
> Validation error:
> 
>   oder geben sie den vollständigen Domänennamen des Systems an.
>   →
>   oder geben Sie

FIXED.

(In reply to Dirk Wiesenthal from comment #102)
> Configuration error:
> 
> Domänen-Join: missing dns service record for
> _domaincontroller_master._tcp.univention-gmbh.local
> 
> Could this be checked beforehand?
> 
> 
> I was unable to install a member:
> 
> Configuring server role: univention-server-master: Failed to uninstall
> Configuring server role: univention-server-member: Failed to install

FIXED. True, the functionality was already there. 

I opened Bug 35547 for checking domain admin password beforehand, as this feature would mean too much work at his point.


univention-system-setup (7.0.69-45.1):
Bug #34484:
* Fixed a JavaScript error that broke the redirection with pre-configured
  DHCP network settings that are left unchanged
* Fixed problems with clearing the software selection (which got reset when
  entering the software page)
* Only skip locale page if pre-configured values for keyboard, time zone,
  and default locale could be determined
* fixed handling of special characters for suggested domain name
* Only require the root password in the local wizard mode.
* Improved validation of domain name server.
* Various text improvements.
Comment 105 Alexander Kläser univentionstaff 2014-08-01 16:13:09 CEST
YAML file has been adjusted.
Comment 106 Dirk Wiesenthal univentionstaff 2014-08-05 23:01:55 CEST
Changesets I had to do. Did my own QA and did not find any errors there:

* Fixed changing locale during session
* Fixed required root password
* Change default TLD to .intranet
* Wording

Apart from that, new wizard is beautiful and works great.
Comment 107 Dirk Wiesenthal univentionstaff 2014-08-05 23:05:07 CEST
Created attachment 6059 [details]
post-RESOLVED fixes

For the record. My patch
Comment 108 Daniel Orrego univentionstaff 2014-08-07 17:08:10 CEST
I got the nameserver message in the last step before set up starts:

"Domain name server: At least one domain name server needs to be given if DHCP or SLAAC is not specified."

It let me start the set up only if I selected dynamic DHCP in at least on of the network interfaces, otherwise I can't start the set up.

It's an 3.2-2 appliance (DC Master role, no package selections) running on openstack (qemu+KVM)
Comment 109 Janek Walkenhorst univentionstaff 2014-08-07 17:43:12 CEST
http://errata.univention.de/ucs/3.2/160.html
Comment 110 Janek Walkenhorst univentionstaff 2014-08-07 17:44:51 CEST
http://errata.univention.de/ucs/3.2/163.html