Bug 44523 - Adjust branding integration of App appliances to changes in UCS 4.2
Adjust branding integration of App appliances to changes in UCS 4.2
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: UMC (Generic)
UCS 4.2
Other Linux
: P5 normal (vote)
: UCS 4.2-1-errata
Assigned To: Alexander Kläser
Erik Damrose
:
Depends on: 44281 44697
Blocks: 45050 44625
  Show dependency treegraph
 
Reported: 2017-05-03 09:26 CEST by Alexander Kläser
Modified: 2017-07-26 14:39 CEST (History)
2 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?:
Ticket number:
Bug group (optional): Appliance, Design, Usability
Max CVSS v3 score:


Attachments
error popup when visiting portal a second time (159.55 KB, image/png)
2017-07-14 11:41 CEST, Erik Damrose
Details
different logos used on welcome-screen (185.61 KB, image/png)
2017-07-14 15:43 CEST, Erik Damrose
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Kläser univentionstaff 2017-05-03 09:26:20 CEST
We need to adjust the branding integration of App appliances to UCS 4.2

+++ This bug was initially created as a clone of Bug #44281 +++

We need to block the update for App appliances as the package univention-app-appliance and its branding integration needs to be adapted to UCS 4.2.
Comment 1 Erik Damrose univentionstaff 2017-05-15 12:41:31 CEST
I fixed a missing redirection exception in the apache config in r79339

In the new activation pages, nothing happens UI-wise after i upload a license. It seems to get uploaded and the portal and UMC can be reached, but there is no redirection (or third page)
Comment 2 Alexander Kläser univentionstaff 2017-05-15 16:15:52 CEST
Here is an overview over the current changes that have been committed. The packages are working in a first version. However, some cleanups for the branding and also the update scenario need yet to be done.

univention-system-activation.yaml:
r79340 | Bug #44523: yaml

univention-system-activation (2.0.2-5):
r79339 | Bug #44523: Add mod_rewrite exception for file required by system-setup
r79327 | Bug #44523: Adapt system-activation to UCS 4.2 design
r79292 | [WIP] Bug #44523: Make sure that LDIF does not contain MOTD output
r79291 | [WIP] Bug #44523: Adjust package to changes in UCS 4.2

univention-app-appliance (1.0.2-8):
r79208 | [WIP] Bug #44523: remove references to UCR template files
r79207 | [WIP] Bug #44523: remove UMC files and rename {,umc}_header_logo
r79143 | [WIP] Bug #44523: add first steps info to portal + remove obsolete parts
r79093 | [WIP] Bug #44523: minor fixes for setup wizard
r79092 | [WIP] Bug #44523: adaptations for setup wizard
r79081 | Bug #44523: adjust appliance classes to changes in UCS 4.2
r79077 | [WIP] Bug #44523: adjust appliance classes to changes in UCS 4.2
Comment 3 Alexander Kläser univentionstaff 2017-05-19 13:12:32 CEST
These are currently the remaining open points:
* System activation needs to wait before redirecting to the portal for the apache
  reload to be finished
* All portal related entries need to be evaluated in /usr/sbin/
  univention-app-appliance, i.e., the corresponding values need to be set at the
  portal object (note that portal_font_color is not yet supported for 
  settings/portal)
* welcome_screen_font_color needs to be used as cue whether to use the dark/light
  plymouth as well as grub theme
Comment 4 Alexander Kläser univentionstaff 2017-05-19 13:14:08 CEST
More open points:
* The update of the app appliance package needs to be tested (are diverts 
  correctly removed?)
* The blocking logic for app appliances needs to be removed from the preup script 
  in the updater package
Comment 5 Alexander Kläser univentionstaff 2017-05-19 13:17:22 CEST
(In reply to Alexander Kläser from comment #4)
> More open points:
> * The update of the app appliance package needs to be tested (are diverts 
>   correctly removed?)
> [...]

* It might be necessary to call univention-app-appliance [appID] again after the
  package update (or after updating from 4.1 to 4.2)
Comment 6 Alexander Kläser univentionstaff 2017-05-20 03:14:20 CEST
Latest commits:

univention-system-activation (2.0.2-6):
r79350 | Bug #44523: Add missing JS module dependency

univention-app-appliance (1.0.2-10):
r79455 | Bug #44523: Restructure univention-app-appliance and incorporate portal
r79454 | Bug #44523: Remove dependency of UCR templates to UCR variables
r79357 | Bug #44523: Add styling for system activation

(In reply to Alexander Kläser from comment #3)
> These are currently the remaining open points:
> * System activation needs to wait before redirecting to the portal for the apache
>   reload to be finished

TBD

> * All portal related entries need to be evaluated in /usr/sbin/
>   univention-app-appliance, i.e., the corresponding values need to be set at the
>   portal object (note that portal_font_color is not yet supported for 
>   settings/portal)

Fixed

> * welcome_screen_font_color needs to be used as cue whether to use the dark/light
>   plymouth as well as grub theme

Fixed

(In reply to Alexander Kläser from comment #4)
> More open points:
> * The update of the app appliance package needs to be tested (are diverts 
>   correctly removed?)

TBD

> * The blocking logic for app appliances needs to be removed from the preup script 
>   in the updater package

TBD

(In reply to Alexander Kläser from comment #5)
> * It might be necessary to call univention-app-appliance [appID] again after the
>   package update (or after updating from 4.1 to 4.2)

TBD

And another point:
* We need to modify the UDM portal object after a join in system setup; this can
  be done using the option --only-configure-portal
Comment 7 Johannes Keiser univentionstaff 2017-05-22 11:38:28 CEST
(In reply to Alexander Kläser from comment #6)
> (In reply to Alexander Kläser from comment #3)
> > These are currently the remaining open points:
> > * System activation needs to wait before redirecting to the portal for the apache
> >   reload to be finished
> 
> TBD

r 79484
univention-system-activation (2.0.2-7) 
* Bug #44523: Wait for apache to reload before redirecting to portal
Comment 8 Johannes Keiser univentionstaff 2017-05-22 13:21:42 CEST
r 79494
* Bug #44523: Refactor redirect to portal function to make it
clearer that it only works with the portal
Comment 9 Alexander Kläser univentionstaff 2017-05-23 15:56:53 CEST
(In reply to Alexander Kläser from comment #6)
> [...]
> (In reply to Alexander Kläser from comment #3)
> > These are currently the remaining open points:
> > * System activation needs to wait before redirecting to the portal for the apache
> >   reload to be finished
> 
> TBD

Fixed, cf. comment 7.

> > * All portal related entries need to be evaluated in /usr/sbin/
> >   univention-app-appliance, i.e., the corresponding values need to be set at the
> >   portal object (note that portal_font_color is not yet supported for 
> >   settings/portal)
> 
> Fixed
> 
> > * welcome_screen_font_color needs to be used as cue whether to use the dark/light
> >   plymouth as well as grub theme
> 
> Fixed
> 
> (In reply to Alexander Kläser from comment #4)
> > More open points:
> > * The update of the app appliance package needs to be tested (are diverts 
> >   correctly removed?)
> 
> TBD

Fixed, all diverts and legacy files (including old UCR template files) are cleaned up when updating. Note that I moved the two style.css files away from the UCR templates into /usr/share/univention-app-appliance/templates. As UCR is relying on the state of dpkg-divert, the diversion used by univention-app-appliance collided with the UCR auto diversions. Instead, "ucr filter" is called in the /usr/sbin/univention-app-appliance script.

> > * The blocking logic for app appliances needs to be removed from the preup script 
> >   in the updater package
> 
> TBD

Yet to be done when everything is ready.

> (In reply to Alexander Kläser from comment #5)
> > * It might be necessary to call univention-app-appliance [appID] again after the
> >   package update (or after updating from 4.1 to 4.2)
> 
> TBD

Fixed as suggested.

> And another point:
> * We need to modify the UDM portal object after a join in system setup; this can
>   be done using the option --only-configure-portal

Fixed, the package now ships an appliance hook script.

RESOLVED for now. Either we reopen this bug after successful QA or we add a new bug for removing the blocking logic in the preup script.

univention-app-appliance (1.0.2-20):
r79580 | Bug #44523: Make appliance hook executable
r79577 | Bug #44523: Enforce to remove obsolete files
r79571 | Bug #44523: fix typo
r79569 | Bug #44523: fix typo in path + handle appliance.json as UCR template
r79566 | Bug #44523: Remove UCR debian file
r79565 | Bug #44523: Manually filter template files
r79557 | Bug #44523: Remove obsolete CSS file when updating
r79555 | Bug #44523: Re-apply branding after update to UCS 4.2
r79554 | Bug #44523: Clean up old diversions and templates when updating
r79486 | Bug #44523: Re-configure the portal object after setup process
Comment 10 Alexander Kläser univentionstaff 2017-05-23 18:15:05 CEST
I removed the extra header in system activation in order to make the design more in alignment with the UCS setup wizard.

univention-system-activation (2.0.2-9):
r79588 | Bug #44523: Remove superfluous header

univention-app-appliance.yaml:
r79591 | Bug #44523: update package versions in YAML files

univention-system-activation.yaml:
r79591 | Bug #44523: update package versions in YAML files
Comment 11 Alexander Kläser univentionstaff 2017-05-24 17:20:49 CEST
After testing a bit more, I spotted some logical errors (related to App Center path and a missing modify call on the UDM portal object) which I fixed.

univention-app-appliance (1.0.2-21):
r79672 | Bug #44523: Fix some logical errors and typos
Comment 12 Alexander Kläser univentionstaff 2017-05-24 17:23:33 CEST
@QA: I could not yet fully test the portal background image.
Comment 13 Alexander Kläser univentionstaff 2017-05-26 13:32:22 CEST
@QA: Feel free to check whether the font color works in the appliance setup, too (cf., Bug 44697).
Comment 14 Alexander Kläser univentionstaff 2017-05-30 15:04:55 CEST
I have updated the wiki page, please also have a look here:
http://wiki.univention.com/index.php?title=App_Appliance
Comment 15 Erik Damrose univentionstaff 2017-06-07 16:36:09 CEST
The logo is copied to /var/www/icon by the u-app-appliance script, but the directory is not created beforehand. Added it to debian/dirs
For docker apps, the logic to download the appliance images/logos was incorrect: one has to use the app.ucs_version attribute, because docker apps for ucs 4.2 can be on the appcenter server only in the /4.1/ path

Fixed both issues in:

Package: univention-app-appliance
Version: 1.0.2-22A~4.2.0.201706071632
Comment 16 Erik Damrose univentionstaff 2017-06-12 16:24:34 CEST
I fixed the appliance hook script in r80123. The wrong binary was called, and the app id was missing in parameters

Package: univention-app-appliance
Version: 1.0.2-23A~4.2.0.201706121624
Comment 17 Erik Damrose univentionstaff 2017-07-14 11:41:09 CEST
Created attachment 9027 [details]
error popup when visiting portal a second time

Looks very good, i really like it.

During testing, we found the following issue when opening the portal a second time, see screenshot.

Also, we discussed showing a header above the appliance first steps readme.
Comment 18 Erik Damrose univentionstaff 2017-07-14 15:43:06 CEST
Created attachment 9033 [details]
different logos used on welcome-screen

See screenshot: The welcome screen uses two different logos, apparently
ApplianceUmcHeaderLogo and ApplianceWelcomeScreenLogo. It should only use ApplianceWelcomeScreenLogo.
Comment 19 Alexander Kläser univentionstaff 2017-07-18 09:09:48 CEST
(In reply to Erik Damrose from comment #18)
> Created attachment 9033 [details]
> different logos used on welcome-screen
> 
> See screenshot: The welcome screen uses two different logos, apparently
> ApplianceUmcHeaderLogo and ApplianceWelcomeScreenLogo. It should only use
> ApplianceWelcomeScreenLogo.

This is part of Bug 45025.
Comment 20 Alexander Kläser univentionstaff 2017-07-18 10:17:54 CEST
We experienced the following problems from time to time when clicking on the "finish" button at the end of the setup process (with a local firefox session):
* Firefox does not shut down, hangs and utilizes a high percentage of CPU
* A 403 error message pops up just before the browser is being closed

This problems were caused by an the system activation package as it blocked via Apache rewrite rules UMCP and authentication requests.

univention-system-activation (2.0.2-11):
r81211 | Bug #44523: Adjust apache rules to allow UMCP commands and auth requests
r81210 | Bug #44523: Adjust apache rules to allow UMCP commands and auth requests
Comment 21 Alexander Kläser univentionstaff 2017-07-18 11:13:56 CEST
(In reply to Erik Damrose from comment #17)
> Created attachment 9027 [details]
> error popup when visiting portal a second time
> 
> Looks very good, i really like it.
> 
> During testing, we found the following issue when opening the portal a
> second time, see screenshot.

Fixed.

> Also, we discussed showing a header above the appliance first steps readme.

Fixed.

univention-app-appliance (1.0.2-29):
r81212 | Bug #44523:  Add header to first steps help + fix error message
Comment 22 Erik Damrose univentionstaff 2017-07-18 17:40:53 CEST
(In reply to Alexander Kläser from comment #20)
> This problems were caused by an the system activation package as it blocked
> via Apache rewrite rules UMCP and authentication requests.

OK, works fine now

(In reply to Alexander Kläser from comment #21)
> > During testing, we found the following issue when opening the portal a
> > second time, see screenshot.
> 
> Fixed.
> 
> > Also, we discussed showing a header above the appliance first steps readme.
> 
> Fixed.

OK

One little thing: Do the portal and system activation page use the same CSS? I had one occurrence where the configured portal background CSS was not shown, and i think the background from the system activation page was used (kopano appliance). I would like it if every item on the system activation page would be delivered as non-cacheable by the webserver.
Comment 23 Alexander Kläser univentionstaff 2017-07-19 09:51:42 CEST
(In reply to Erik Damrose from comment #22)
> One little thing: Do the portal and system activation page use the same CSS?
> I had one occurrence where the configured portal background CSS was not
> shown, and i think the background from the system activation page was used
> (kopano appliance). I would like it if every item on the system activation
> page would be delivered as non-cacheable by the webserver.

No, they do not share any CSS files as they reside below different paths (/univention/system-activation and /univention/portal). As discussed, I would rather assume that this is a caching problem within your browser session.
Comment 24 Alexander Kläser univentionstaff 2017-07-25 11:02:56 CEST
As discussed, the portal needs also to be configured after the update from 4.1-x.

univention-app-appliance (1.0.2-32):
r81355 | Bug #44523: Configure portal after update from 4.1-x
Comment 25 Erik Damrose univentionstaff 2017-07-25 16:02:13 CEST
OK: update from UCS 4.1
OK: new appliances on 4.2 (portal, welcome-screen, bootsplash)
OK: self-service integration
OK: yaml
Verified