Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


SOLVED Cloudron can't uninstall apps after access to domain got denied

  • App Dev

    TL;DR

    Can't delete apps for domain where I have no longer access to.
    Stuck with apps which can not be uninstalled.


    This sound logical and why should this be an issue?

    Okay let me explain what happend here and why this should still work.
    I am currently managing a big cloudron server for multible communitys.
    I do not have direkt access to their domains (mostly via namecheap as manager)

    Now a community decided to switch to a self hosted cloudron (pay 30$ for their own premium) which is good!
    They basically tried cloudron premium for a month on the shared server to decide if they want to use this as well.
    I helped them migrate to their own server and restore the backups.

    Then they deleted me as a manager from namecheap, so they are the owner/manager alone.

    But here is the issue. I did not uninstall the app, but only stopped them and turn the backups off for their migration.

    Now I am sitting on 8 Apps which I can't uninstall since cloudron tries this

    Nov 06 16:25:43 box:apptask track.X Unregistering subdomain: track.X
    Nov 06 16:25:43 box:domains removeDNSRecord: track onX type A values [ 'X' ]
    Nov 06 16:25:43 box:dns/namecheap del: track for zone X of type A with values ["X"]
    Nov 06 16:25:44 box:apptask registerSubdomains: Remove error. Will retry. You don't seem to have edit permission for this domain.
    

    After writing this issue I am asking myself, why is there no:
    Try Cloudron premium for one month.

    Well I know this can be abused, I create my 100 Cloudron Users install all apps and then simply dont pay. Something like that.

    Could be negated by disabling all users and apps (except first 5 users and first 2 apps) after premium ended, but this behavior does not fit to the cloudron policy and I would not want such a death grip from this software. 😕

    But since I am advertising cloudron to many people and they want to try premium out first, I let them use a shared cloudron.
    I think if they would have an option for trying cloudron premium for a limited time for free they would do that.

  • App Dev

    @girish switching to manual DNS worked. Thanks 🙂

  • Staff

    @brutalbirdie A workaround is just to set the DNS Provider of the domain to be "manual". You can then delete the domain. When you get access back, put the DNS provider back. Would that work?

  • App Dev

    @girish switching to manual DNS worked. Thanks 🙂

  • Staff

    While that workaround solves it fine, it is probably not obvious at all. I think there is room for improvement here. For a start, once uninstall failed, the "repair" action comes into picture, which is oddly named for that use-case. However it would allow to re-run the uninstall (ie the last failed task).

    Now of course this would not solve any issue here, so maybe we should add some "force" option when uninstall fails. However for sake of consistency on the Cloudron itself, this option should not randomly skip resource cleanup errors, but I think the DNS records are not "owned" by the Cloudron and thus are ok to fail the cleanup?

    To give an example, where the "force" option should not apply: Removing the app data folder. For whatever reason if that fails, the uninstall should not just run along, leaving unreferenced folder/files on the filesystem.

    Just an idea though 😉

  • App Dev

    @nebulon had a similar idea about a notification that something failed but the user can force the uninstall.


  • @nebulon there should be branching logic after Cloudron 'senses' that it doesn't own that DNS anymore.

    Prompt for delete of an unmanaged resource in that state?