Project

General

Profile

Bug #5291

Difficult to be sure that a package install has ended

Added by Phillip Davis over 3 years ago. Updated over 3 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Package System
Target version:
Start date:
10/09/2015
Due date:
% Done:

100%

Estimated time:
Affected Version:
2.3
Affected Architecture:

Description

The Package Installer screen has a scrolling text box that shows the progress of the package installation. Various steps along the way will say:
Something-or-other... done.

So it is difficult to know if there is a "done" displayed, if that is the last "done" and it is really all finished.

The title above that text box continues to say "Beginning package installation".

On 2.2.* that title was a box and the text content would change to things like:
- Package deleted.
- Installation of Notes completed.

It would be good to have some positive feedback when the package install process has really finished.

Package-Installation.png (43.7 KB) Package-Installation.png Phillip Davis, 10/09/2015 11:41 AM
ReinstallAll.png (28.3 KB) ReinstallAll.png Phillip Davis, 10/15/2015 10:15 PM
reinstall.jpg (107 KB) reinstall.jpg Steve Beaver, 10/16/2015 08:04 AM

Associated revisions

Revision 1166ee1e (diff)
Added by Steve Beaver over 3 years ago

Fixed #5291 - Reinstalling pfSense-pkg-openvpn-client-export

History

#1 Updated by Phillip Davis over 3 years ago

Also when you remove a package, the title of the text box says "Beginning package installation" - that is a bit dumb, but I think it did that in 2.2.* also. It should say "Beginning package removal".

At the end of package removal there is some text output that says "Package deleted" - in places like that the word "deleted" could be changed to "removed" to match the button text that the user pushed originally.

#2 Updated by Steve Beaver over 3 years ago

  • Status changed from New to Confirmed
  • Assignee set to Phillip Davis

Duplicates #5279

The package manager is a WIP. I am converting it to a system that starts the installation process in the background and then monitors it via AJAX to get the status and progress. It will be another couple of days before it is ready for testing.

Stay tuned.

#3 Updated by Chris Buechler over 3 years ago

  • Assignee deleted (Phillip Davis)

part of #5279, but good feedback here, will leave to make sure that's addressed once finished.

#4 Updated by Jim Thompson over 3 years ago

  • Assignee set to Steve Beaver

#5 Updated by Steve Beaver over 3 years ago

  • File pkg_install.gif added
  • Status changed from Confirmed to Assigned
The package installation system has been updated such that:
  • The installer is run in the background so that the GUI remains responsive
  • The GUI polls for status/progress via AJAX
  • The progress bar works correctly, obtaining its information from the installer JSON output
  • The exit status of each step is indicated by "Success" or "Failure" in the text window
  • A banner is displayed showing "Wait", "Success" and "failed" (paraphrasing). The background color is changed to match the message.
ToDo:
  • Handle page reloads and catch some of the less obvious errors.
  • Combine the pfSense-upgrade and pfSense-upgrade-GUI.sh scripts
  • Add some gettext()-s where needed

#6 Updated by Steve Beaver over 3 years ago

  • Status changed from Assigned to Feedback
  • Assignee changed from Steve Beaver to Phillip Davis

The package installer now shows a color coded completion banner, "real time" log data and a progress bar.

The progress bar is of limited use at them moment since some packages (pfBlockerNG is an example) run for close to a minute, but only output progress information during the 1st second. Perhaps this can be improved too.

#7 Updated by Steve Beaver over 3 years ago

  • % Done changed from 0 to 100

#8 Updated by Phillip Davis over 3 years ago

See pull request https://github.com/pfsense/pfsense/pull/1965 for a couple of changes to tidy up a few bits of text.
Works nicely, thanks.
Note that "reinstallall" is not working - should I raise another redmine report for that? Or is it already a known part of WIP?

#9 Updated by Steve Beaver over 3 years ago

I believe the reinstallation issue was fixed late yesterday with an update to the pfSense-update script but I will check. Thanks for the PR. I'll look at it later today.

#10 Updated by Steve Beaver over 3 years ago

  • File deleted (pkg_install.gif)

#11 Updated by Steve Beaver over 3 years ago

Confirmed that reinstallation works as expected. (tested with sudo, snort and pfBlockerNG)
PR merged and tested.

Thanks!

#12 Updated by Phillip Davis over 3 years ago

Single package reinstall works.
But Diagnostics->Backup/Restore, "Reinstall Packages" does nothing after pressing "Confirm".

#13 Updated by Steve Beaver over 3 years ago

reinstallall functionality restored and tested.

Please note that the progress bar is suppressed during this operation. It is not really possible to know in advance how many steps are required, so it would jump about in a nonsensical manner. The textarea tells all and the status banner information is accurate.

#14 Updated by Phillip Davis over 3 years ago

I did reinstall all on a system with Cron and OpenVPN Client Export Utility installed. The reinstall completed very quickly and the text area has just the word "Success".
Is it supposed to be that quiet?

I tried editing /usr/local/www/packages/cron/cron.php - just put some rubbish text in comments. Then do package reinstall all. The edited version of cron.php was still there. I expected that the reinstall would overwrite all the files supplied by the package with the proper package versions.

What is really supposed to happen?

I did an individual reinstall of Cron package. cron.php went back to the original code as I expected.

#15 Updated by Steve Beaver over 3 years ago

No. You should see the logs from the uninstall and install processes for each package. I tested with a VM and with real hardware but perhaps there is some timing issue. I'll try it on a few more. platforms and with the same packages you tested with.

Would you mind taking a look in /tmp/webgui-log.txt please? That should contain the logs.

#17 Updated by Steve Beaver over 3 years ago

Never mind the logs.

There were two issues specific to pfSense-pkg-openvpn-client-export:

My "Does the string begin with pfSense-pkg-" trick was crude and failed on all of the '-' in this package name, and once installed you cannot access the functionality because a required PHP function has been removed.

I have fixed the former (you should see more sensible re-install all output now) and have sent a note to Renato about the latter.

Thanks again for all of you testing. It really helps :)

#18 Updated by Steve Beaver over 3 years ago

openvpn client export issue moved to a new ticket #5311

#19 Updated by Phillip Davis over 3 years ago

General install, remove, reinstall and reinstall all seems good now. I just tried all the combinations on:
2.3-ALPHA (amd64)
built on Mon Oct 26 19:32:58 CDT 2015
FreeBSD 10.2-STABLE

The functionality works and the messages along the way are consistent with what is happening. IMHO this is resolved.

#20 Updated by Renato Botelho over 3 years ago

  • Project changed from Bootstrap to pfSense

#21 Updated by Phillip Davis over 3 years ago

Ping - this can be marked resolved.

#22 Updated by Chris Buechler over 3 years ago

  • Category set to Package System
  • Status changed from Feedback to Resolved

fixed

Also available in: Atom PDF