Skip to content
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

firmware: execute plugin resolution in console firmware update #5136

Closed
2 tasks done
fichtner opened this issue Aug 1, 2021 · 4 comments
Closed
2 tasks done

firmware: execute plugin resolution in console firmware update #5136

fichtner opened this issue Aug 1, 2021 · 4 comments
Assignees
Labels
feature Adding new functionality
Milestone

Comments

@fichtner
Copy link
Member

fichtner commented Aug 1, 2021

Important notices

Before you add a new report, we ask you kindly to acknowledge the following:

Is your feature request related to a problem? Please describe.

When restoring a configuration from a new install or doing an in-place installation the plugins will be missing. If GUI accessibility is affected by this (e.g. HAProxy setup) then you can't easily resolve plugin conflicts from the GUI.

Describe the solution you like

Now that we have the resolve plugin conflicts feature since 21.1.3 we should make it available on the console firmware upgrade. Maybe the easiest way would be to unconditionally invoke the plugin resolution on selecting option 12 after confirmation prior to kernel/base installation.

Describe alternatives you considered

A clear and concise description of any alternative solutions or features you considered.

Additional context

https://forum.opnsense.org/index.php?topic=24174.0

@fichtner fichtner added the feature Adding new functionality label Aug 1, 2021
@fichtner fichtner added this to the 22.1 milestone Aug 1, 2021
@fichtner fichtner self-assigned this Aug 1, 2021
fichtner added a commit that referenced this issue Aug 2, 2021
@teosoft123
Copy link

Hi Franco, I'm not sure one of the use cases will be covered, namely, if one (like I did) performs a fresh install from USB, and importing existing configuration. In this case, it's a fresh install, not an upgrade.
If menu 12 will offer plugin reconciliation even when there's no new updates, this will work, and only for people who read documentation :) because menu 12 per se does not suggest that it can also reconcile the plugins.
I agree that adding a new menu entry might not be justified for such a narrow case. I dunno, many help menu is needed?
All the menus are easy to understand, but now menu 12 has a hidden feature.

@fichtner
Copy link
Member Author

fichtner commented Aug 5, 2021

Hi Oleg,

You are quite right, but... (famous "but" 😄 )

  1. It's not such much hidden as it is automatic one might argue. The description in the script can be updated, the docs can be extended. Suggestions are welcome here.
  2. It will work when there are no new updates.
  3. We work under the constraint that remote packages being installed belong to a particular stable version. We did have issues in the past with bugfixes causing errors when people used a newer plugin (let's say 21.1.9 for example) with the newly installed 21.1 version. This combination needs to be avoided and I think we added a version check into the plugin installation from the GUI that says you need to update first to install the plugins. Actually, I think there is a bug in the plugin resolve that does not check for this yet.
  4. From the GUI we have all sorts of "guided" (even if just visually) functionality and plugin conflicts handling is one of them. But on the console such things tend to get in the way of clear and simple workflow and it's often better to bundle existing features there for maximum effect.
  5. Updating to the latest stable version is always recommended and should be done after each new installation which removes the blocking condition of point 3 automatically.

Cheers,
Franco

@teosoft123
Copy link

No worries, Franko. Perfect is, indeed, an enemy of good enough!
I installed 21.7 from USB stick today, and immediately after that, upgraded it to 21.7.1 from command line, and all plugins were installed.
Unfortunately, HAProxy didn't start; I've experienced this before and it's unrelated.
Thank you!

  • Oleg

@fichtner
Copy link
Member Author

fichtner commented Aug 6, 2021

Oleg, thanks for your input. Very helpful :)

Maybe 0304b783a42 can help with this in the future? This allows to restart all plugin services as well from the shell.

Cheers,
Franco

fichtner added a commit that referenced this issue Sep 1, 2021
fichtner added a commit that referenced this issue Sep 1, 2021
fichtner added a commit that referenced this issue Sep 1, 2021
(cherry picked from commit af7543e)
(cherry picked from commit 9506f4c)
oshogbo pushed a commit to DynFi/opnsense-core that referenced this issue Mar 3, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature Adding new functionality
Development

No branches or pull requests

2 participants