Skip to content
This repository has been archived by the owner on Jan 27, 2025. It is now read-only.

UI portal fixes #179

Merged
merged 77 commits into from
Mar 17, 2021
Merged

UI portal fixes #179

merged 77 commits into from
Mar 17, 2021

Conversation

fulder
Copy link
Contributor

@fulder fulder commented Mar 3, 2021

Note: review after: #178

TLDR:

This PR bumps some of the currently failing plugin to 12.2 to solve issues with FBSD_1.6 symbol variable and fixes some small (both general and UI specific) issues with the installation tests.

It has also been the base for plugin repo PRs and fixes (see long progress/fixes list below for more info).


Test fixes:

  • Add --retry-all-errors to curl command. transmission plugin is a good example with some Connection reset by peer issues, but working after a few some more waiting time/retry. See test without the flag: https://cirrus-ci.com/task/5682271261818880 compared to with: https://cirrus-ci.com/task/5650314154999808
  • Add support for skipping admin UI check in plugin tests using new env var: SKIP_UI_CHECK: "false" A good example is the quasselcore plugin containing admin portal URL (for the server IP/port) although it is no real UI and can only be reached using a quassel-client.
  • Set global HOME env var to /root. Starting an empty FreeBSD jail has this variable and this has been problematic for homebridge plugin where this variable is used for the pm2 service.
  • Set global USER env var to root. Starting an empty FreeBSD jail has this variable and this has been problematic for homebridge/hoobs plugins where this variable is used for the pm2 service.
  • Disable ipfw after post_install script, if it has some rules disabling the communication between cirrus and the machine the job will just run forever until timeout (openvpn is a good example of this)
  • Set global PATH env var for all possible binary locations (taken from the iocage repo). openvpn plugin does install the binary file inside the /usr/local/sbin which was previously missing from path.
  • Improve wait for service function waiting a while for services to return proper status instead of just doing it once.
  • Stop ipfw service after the service check. Plugins starting up this service in post install would otherwise always fail (as it would be stopped) and ignore the error logs when this service is not enabled.

Plugins upgraded to 12.2 due to FBSD_1.6 symbol variable issues:

Other fixes:

  • emby admin UI not reachable even while installing the plugin manually (but can't see any error logs during installation). Upgrading it to 12.2 seems to have solved the issue.

Still existing bugs (left for plugin maintainers and/or other PRs), double checked if these plugins really don't work manually installing the plugins on my TN machine:

  • Failing but with possible solutions (in plugin repos)
    • calibre-web UI not reachable. Created a possible plugin PR fix for this: Fix listen address bug aserrallerios/iocage-plugin-calibre-web#3
    • jenkins and jenkins-lts seems to have 5XX issues trying to access the UI. Possible fix in plugin PR: Remove nginx freenas/iocage-plugin-jenkins#3
    • motioneye post_installation bugs. A bit different behavior here compared to manual installation (due to post_install bug the manual installation result in the plugin jail being destroyed again, but the test doesn't seem to crash because of this script, returning a 0 code even though there are some errors, although the UI is, as expected, not reachable after the installation). Update: Related PR/issues and possible solution (in PR comments): back to py27 as motioneye doesn't support py3 yet. #188
    • rtorrent-flood test still failing. Possible fix: Upgrade repo pierrickrouxel/iocage-plugin-rtorrent-flood#8. Update: PR merged and seems like it's working again with the test on this branch being green.
    • gitlab master run was green but had the same (missed) issues related to post_install. Update: PR merged and seems like it's working again with the test on this branch being green.
  • Failing with no solution right now:
    • homebridge the plugin repository has been archived (https://github.com/grimneko/iocage-plugin-homebridge), maybe it's time to remove the plugin from this index? It did have the same 12.2 symbol issue but even after upgrading the UI can not be reached: https://cirrus-ci.com/task/6690476246958080
    • openvpn there is something really buggy with the installation making it getting stuck spamming Using SSL: openssl OpenSSL 1.1.1d-freebsd 10 Sep 2019 during post install. I have tried to install this plugin a several times and sometimes it works, my guess is that there is something wrong with the entropy as this seems to hang up during some DH param generation. Update: Finally found the cause of this plugin installation getting stuck for a long time. The openvpn plugin enables the ipfw which locks out the job progress inside cirrus ci 😄. A simple stop of this service after post_install made it pass.
    • quasselcore UI not reachable
    • unificontroller-lts UI not reachable. Seems to be issues while starting up the controller after a clean installation. Created a new bug report for it here: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=254330

Related issues:

@fulder
Copy link
Contributor Author

fulder commented Mar 17, 2021

The currently failing tests on this branch are all known issues and the majority of them have PRs with fixes in plugin repositories.

That said, the installation tests should be more stable and without UI false positives right now and I don't think I will do much more on this branch.

Hope we can merge: #178 (it is the one this branch/PR is based upon) now and I will remove the WIP status after this, meaning it should be ready for review/merge as well (although probably easier to do it after the #178 merge)

@fulder fulder changed the title WIP: UI portal fixes UI portal fixes Mar 17, 2021
@fulder
Copy link
Contributor Author

fulder commented Mar 17, 2021

@sonicaj Thank you for all the merges into master regarding my other PRs ❤️.

Have merged upstream master into this one as well. New failures after merge/extra fixes:

  • deluge-pip: Previously false positive, service was not started properly, PR/issue: Add dependency to deluge #184
  • gitlab Looks like there's a new (previously missed) bug with gitlab_pages not starting properly (will leave this for future plugin PRs to not block merging of this one any further)
  • rtorrent-flood rtorrent service not supporting status due to missing command in service rc.d file. PR to fix this here: Add command to rtorrent service pierrickrouxel/iocage-plugin-rtorrent-flood#9
  • zrepl Service is not running, will also leave this one for future (plugin) PRs.

Have now removed the WIP status and this one should be ready for merge as well 👼

Copy link
Member

@sonicaj sonicaj left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As always, thank you for your contribution :)

@sonicaj sonicaj merged commit 3a5a9fc into ix-plugin-hub:master Mar 17, 2021
@fulder fulder deleted the ui-portal-fixes branch June 10, 2021 06:12
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants