Bug 30789 - images are updated even if image-build isn't finished
images are updated even if image-build isn't finished
Status: CLOSED FIXED
Product: Z_Univention Corporate Client (UCC)
Classification: Unclassified
Component: General
unspecified
Other Linux
: P5 normal
: UCC 2.0
Assigned To: Moritz Muehlenhoff
Erik Damrose
: interim-2
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2013-03-15 10:53 CET by Ingo Steuwer
Modified: 2014-06-12 09:19 CEST (History)
2 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):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ingo Steuwer univentionstaff 2013-03-15 10:53:38 CET
the current default behaviour is:

- after rollout, UCC systems are configured to boot locally and update if new images are available
- building a new image version makes the image file available to clients immediatly
- if an UCC system boots during the image build process, it uses the incomplete image to update

the result is a system that is completely broken:
- the incomplete image might even not boot at all
- an update to the final image in this version isn't easily possible because the client already has an image with this version number

I think we need two things here:
1. images must not be available for the clients during the build process
2. there is need for a two-step-process: images need testing after the build before clients do an image update (a first step would be to not configure clients into the auto-update mode during the rollout)
Comment 1 Moritz Muehlenhoff univentionstaff 2013-12-18 09:28:33 CET
The image build should occur in a different directory from the directory serving the images.
Comment 2 Erik Damrose univentionstaff 2014-04-08 16:04:52 CEST
(In reply to Ingo Steuwer from comment #0)
> the current default behaviour is:
> 
> - after rollout, UCC systems are configured to boot locally and update if
> new images are available

This was never the default behaviour. While joining, the boot option is set to 'none', which is 'Image boot without update'

> - building a new image version makes the image file available to clients
> immediatly

only when selecting /var/lib/univention-client-boot as the target directory

> - if an UCC system boots during the image build process, it uses the
> incomplete image to update

See below for UCC 2 improvements

> 
> the result is a system that is completely broken:
> - the incomplete image might even not boot at all
> - an update to the final image in this version isn't easily possible because
> the client already has an image with this version number

The UCCs initramfs compares the image's md5 sums to determine if an update should take place.


(In reply to Moritz Muehlenhoff from comment #1)
> The image build should occur in a different directory from the directory
> serving the images.

In UCC 2 the image is moved to the target directory only after the creation is completed, which leaves only a small timeframe in which no complete image is available for clients.
Comment 3 Moritz Muehlenhoff univentionstaff 2014-04-17 11:56:41 CEST
(In reply to Ingo Steuwer from comment #0)
> I think we need two things here:
> 1. images must not be available for the clients during the build process

This is fixed in UCC 2.0 with Bug 31634

> 2. there is need for a two-step-process: images need testing after the build
> before clients do an image update (a first step would be to not configure
> clients into the auto-update mode during the rollout)

This is entirely an organisational topic: If /var/lib/univention-client-boot is configured as the target directory, the images are served right away. if there's the need for a additional QA, a different target directory should be used and the images after afterwards.
Comment 4 Erik Damrose univentionstaff 2014-04-17 11:58:34 CEST
(In reply to Moritz Muehlenhoff from comment #3)
> This is fixed in UCC 2.0 with Bug 31634
OK: Fixed with Bug 31634

> > 2. there is need for a two-step-process
> This is entirely an organisational topic
I agree. E.g. Create the image with a different name for testing.
Comment 5 Moritz Muehlenhoff univentionstaff 2014-06-12 09:19:54 CEST
UCC 2.0 has been released:
 http://docs.univention.de/release-notes-ucc-2.0.html

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