Skip to content

Existing ExApps can end up stuck in a broken state after Docker Proxy → HaRP transition #826

@vawaver

Description

@vawaver

Describe the bug

Hi,

I would like to report an issue affecting already deployed ExApps after moving from Docker Proxy for ExApps to HaRP.

I hit this after updating to Nextcloud AIO 12.9.1 Beta on the Beta channel, where I switched from Docker Proxy for ExApps to HaRP.

Problem

I previously had these ExApps deployed:

  • Nextcloud Context Agent
  • Assistant Talk Bot

After the update, the old ExApp containers were still present and running in Docker, but from the Nextcloud/AppAPI side they were no longer handled correctly.

From the user perspective, this resulted in a broken in-between state:

  • Deploy and Enable was inactive
  • Docker Proxy showed as unavailable
  • the apps could not be properly disabled, re-deployed, or recovered from the GUI
  • the old ExApp containers were still running in Docker/Portainer
  • app_api:app:list showed no registered ExApps

So effectively, the old ExApps were still running as containers, but AppAPI no longer had a usable state for managing them.

Observed behavior

What I observed was:

  • old ExApp containers still existed and were running
  • AppAPI no longer listed them as registered ExApps
  • the GUI controls were no longer usable
  • manual cleanup was needed before the apps could be deployed again through HaRP

In practice, this meant I had to:

  • manually remove the old leftover ExApp containers
  • manually re-register the deploy daemon
  • then manually redeploy the ExApps from the GUI

Expected behavior

I would expect already deployed ExApps to be handled more gracefully during this transition.

For example, one of these behaviors would be much clearer from the user perspective:

  • existing ExApps are migrated automatically if possible
  • existing ExApps are clearly marked as needing redeployment
  • the GUI offers a recovery path instead of leaving inactive controls
  • AppAPI provides a cleaner state instead of “containers still running, but no registered ExApps”

Actual behavior

The system ended up in a half-migrated state where:

  • old ExApp containers were still present
  • AppAPI no longer had a usable registration state for them
  • the GUI could not manage them anymore
  • the user had to figure out the cleanup manually

Additional note

During my recovery, I also ran into a 401 Unauthorized error while checking the new HaRP connection. In my case, this was likely my own mistake because I had overwritten the shared key shown in the GUI and later corrected it with the actual HP_SHARED_KEY from the running nextcloud-aio-harp container.

So I do not want to overstate that part as an AppAPI bug.

The main issue I want to report here is the handling of already deployed ExApps during the transition itself.

Environment

  • Nextcloud AIO 12.9.1 Beta

  • Beta channel

  • migration from Docker Proxy for ExApps to HaRP

  • affected ExApps:

    • Nextcloud Context Agent
    • Assistant Talk Bot

Steps/Code to Reproduce

all is mentioned above

Expected Results

all is mentioned above

Actual Results

all is mentioned above

Setup configuration

all is mentioned above

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions