-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
Detect breaking apps when enabled in the web UI #17435
Comments
A similar workflow should be used when clicking "Update", if possible. |
We are already pinging the server to get the navigation entries: abuse 😦 |
also @DeepDiver1975 @oparoz |
@nickvergessen really ? Then we could reuse that. |
How are you going to test if the app works? A Ping to its main route to see if you get a 200? |
Another suggestion I made on IRC was about having a temporary app config value "temp_enabled_until". The server would write a timestamp there which would leave the app enabled for a short time window. If within this time window the client's "ping" succeeded, the call would change it to permanently enabled. If the ping did not succeed, the app will auto-disable after the timeout. But this could cause other issues like if an app takes longer than the timeout to enable itself / init/migrate the database. I added this here for the sake of completeness in case it might spark even better ideas 😉 |
@oparoz that could be an idea too. But here the main goal was to make sure the app doesn't brick ownCloud... which is even worse than just having a broken app route. |
@PVince81 - But if oC is bricked then you're never going to get a reply or be able to disable the app, unless you're calling occ, no? |
Should be "immediately after the previous request finished" |
@oparoz yes, if OC is bricked you cannot disable the app. That's why we need a new special route that doesn't enable any apps to bypass the bricking. That route would disable it. |
@Raydiation thanks, updated |
Regarding: protect use from apps breaking the instance - could this be a solution: https://github.com/fieryprophet/php-sandbox |
I'm a bit worried about the overhead when using such parsers. Looking for data as I write this... |
Probably needs to be built in PHP rather than run on top of PHP otherwise like @oparoz mentioned this will be way to slow. |
^ builtin ❓ |
Yes, but with this requirement |
Usual PHP problem "well its possilbe but it wont work for your users" |
Is this related? owncloud/calendar#826 (comment) |
Proof of concept here: #17451 |
Just tried |
@PVince81 I have installed the latest news app on owncloud (news app requires php5.5+, I have only php5.4). I tried to disable via ./occ app:disable news, which throws an error. And I can't turn it into the maintenance mode via ./occ! |
@LukasReschke can the integrity check help here too? |
@tflidd you can enable maintenance mode by editing config/config.php and adding/setting "maintenance" to true |
Probably fixed by #17451? Thus closing. Please reopen if I'm wrong. |
This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
See #14754 (comment)
Basically the workflow would be as follows:
@Raydiation @icewind1991 @MorrisJobke @nickvergessen
Regarding command line enabling, a similar workflow could be used.
The text was updated successfully, but these errors were encountered: