New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

create workflow strategy for users' modified default templates #1453

Closed
mfc opened this Issue Nov 24, 2015 · 4 comments

Comments

Projects
None yet
3 participants
@mfc
Member

mfc commented Nov 24, 2015

A user will install additional packages to a default template. This creates problems when trying to restore a modified default template to a new system, where that template will already exist.

Some potential options:

  1. automatically create personal copies all templates on installations, have those be the templates used (so instead of fedora-21, my-fedora-21 is default). would eat up a lot of extra space.
  2. when restoring templates/VMs and two different templates/VMs conflict with the same name, offer to modify the name of the template attempting to be restored

I think the second option makes the most sense. There may be other strategies regarding this.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Nov 24, 2015

Member

There is a chain of problems, I think rooted in the fact of using rpm for template distribution:

  1. You need some template to restore a backup in some cases (UsbVM, NetVM - in case of NAS etc)
  2. So, you need to install that template somehow - the only option is installation ISO (for the first template)
  3. When the template is installed as RPM package, that package can be later removed. And if you rename the template, removing the RPM will fail (because files will be moved); if some other template was placed there instead, that template would be removed (#839)
  4. The above is exactly the reason why manual rename or remove of rpm-installed template is blocked. This means that user can't easily restore modified default template from a backup.
  5. Because of above, it is recommended (currently) to do modifications in clone of default template. This is the only reason. Other reason would be having an rpm update overriding user changes, but rpm upgrades of template packages are blocked exactly for this reason.

So, if we could solve #839 in some different way, this recommendation could be lifted. Also having #869 (exactly your second point) would improve/solve the problem. And yes - I think the current recommendation is a problem, not a solution. Needs to be fixed.

If you think #869 would be enough, lets close this one as a duplicate.

Member

marmarek commented Nov 24, 2015

There is a chain of problems, I think rooted in the fact of using rpm for template distribution:

  1. You need some template to restore a backup in some cases (UsbVM, NetVM - in case of NAS etc)
  2. So, you need to install that template somehow - the only option is installation ISO (for the first template)
  3. When the template is installed as RPM package, that package can be later removed. And if you rename the template, removing the RPM will fail (because files will be moved); if some other template was placed there instead, that template would be removed (#839)
  4. The above is exactly the reason why manual rename or remove of rpm-installed template is blocked. This means that user can't easily restore modified default template from a backup.
  5. Because of above, it is recommended (currently) to do modifications in clone of default template. This is the only reason. Other reason would be having an rpm update overriding user changes, but rpm upgrades of template packages are blocked exactly for this reason.

So, if we could solve #839 in some different way, this recommendation could be lifted. Also having #869 (exactly your second point) would improve/solve the problem. And yes - I think the current recommendation is a problem, not a solution. Needs to be fixed.

If you think #869 would be enough, lets close this one as a duplicate.

@andrewdavidwong

This comment has been minimized.

Show comment
Hide comment
@andrewdavidwong

andrewdavidwong Nov 26, 2015

Member

Is this a possible duplicate of #1403? Even if not, it definitely seems closely related...

Member

andrewdavidwong commented Nov 26, 2015

Is this a possible duplicate of #1403? Even if not, it definitely seems closely related...

@mfc mfc added the duplicate label Nov 26, 2015

@mfc

This comment has been minimized.

Show comment
Hide comment
@mfc

mfc Nov 26, 2015

Member

yeah, for now I think #869 would be enough, though as you note it doesn't tackle the underlying issues (which #1403 also highlights).

Member

mfc commented Nov 26, 2015

yeah, for now I think #869 would be enough, though as you note it doesn't tackle the underlying issues (which #1403 also highlights).

@mfc mfc closed this Nov 26, 2015

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Nov 27, 2015

Member

Another idea about a solution for #839 - instead of blocking some template changes (namely: rename, delete) fearing interference with package manager, maybe we should proceed in totally opposite way: require user to first delete such (template) VM, and refuse to remove the package if TemplateVM isn't deleted manually beforehand?
This way we will mitigate a problem of removing wrong template while removing package and also leave some more flexibility in template management.

Member

marmarek commented Nov 27, 2015

Another idea about a solution for #839 - instead of blocking some template changes (namely: rename, delete) fearing interference with package manager, maybe we should proceed in totally opposite way: require user to first delete such (template) VM, and refuse to remove the package if TemplateVM isn't deleted manually beforehand?
This way we will mitigate a problem of removing wrong template while removing package and also leave some more flexibility in template management.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment