curtin files are not being updated when the package updates, leading to stale config files that break deployments
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
maas-cert-server |
Fix Released
|
Medium
|
Jeff Lane |
Bug Description
It seems that it's possible to somehow end up with stale curtin files for some reason. This was found on a failing Partner system recently.
Essentially, they were unable to deploy Xenial due to broken curtin files.
NOW< it's possible they just hadn't updated, HOWEVER, it's entirely possible also that apt didn't update them as they're considered config files.
We need to investiate the following scenario:
Older version w/ older curtin files updated to latest version: are curtin files automatically updated?
Older version with manually modified curtin files updated to latest version: are files automatically updated?
If not, it may be worth while doing one of two things:
add an "Update" to maniacs-setup so the following happens:
maniacs-setup -u checks the two versions (Installed and Candidate via 'apt-cache policy') and if they are wrong, it updates m-c-s automatically.
then runs -p to ensure the curtin files are updated
Another option to look at (and maybe do before messing with maniacs) is to see if there's a way to ensure/force the curtin files to update when apt updates m-c-s
Related branches
- Rod Smith: Approve
-
Diff: 92 lines (+57/-12)3 files modifieddebian/changelog (+8/-0)
debian/postinst (+49/-0)
usr/sbin/maniacs-setup (+0/-12)
Changed in maas-cert-server: | |
assignee: | nobody → Jeff Lane (bladernr) |
Changed in maas-cert-server: | |
status: | In Progress → Fix Committed |
Changed in maas-cert-server: | |
status: | Fix Committed → Fix Released |
Yeah, so this looks more like a procedural problem...
To replicate this I did the following:
Fresh trusty install in a VM
in the VM:
* add the hardware-cert PPA only
* modify the cert ppa .list to change trusty to utopic (to get an older version of m-c-s)
* sudo apt-get update
* sudo apt-get maas-cert-server
eventually got it all installed, or at least what I needed. userdata_ custom were default
Checked /etc/maas/preseeds and found that curtin_userdata and curtin_
ran maniacs-setup
* had to move the preseed bit to the front, as this older m-c-s version breaks here due to some DNS problem that isn't germane to this.
* verified that maniacs setup DID create the -orig files and copied our versions to /etc/maas/preseed
So now, I have trusty, with maas, and with our preseeds via m-c-s (version 2.1.0 utopic) source. list.d/ hardware- certification. list and changed utopic back to trusty.
Next, I corrected /etc/maas/
I then also added the maas/stable ppa to also grab the latest MAAS.
I did an update and upgrade and got the latest maas (1.9.3) and the latest m-c-s (2.20 trusty)
Then I rechecked and noted that the preseeds are not updated.
This only occurs manually.