Install custom apps on Brain - install script no longer working

A couple of weeks ago I successfully deployed my FastAPI/ReactJS app on the Amiga Brain but just this week I noticed that it is no longer showing up in the list of Apps/Services. I’ve ssh’d into the Brain and re-run the install script and it still doesn’t show up.

I notice there’s a page in the documentation about switching users. Custom Apps / Services Ownership | Farm-ng Developers . When the main application runs, does it run as a particular user? It seems like the launcher is running as adminfarmng.

Hello @gsainsbury86 ,

Thank you for reporting this. Let’s first try to debug this asynchronously as it may be difficult to coordinate a call given the time zone differences.

  1. Can you confirm your app is based off of the GitHub - farm-ng/amiga-app-template ? If not, can you please share what it is based on?
  2. Is it missing from the list of services AND the app cards? Or only missing from one of the pages?

You are correct in determining that launcher (and other farm-ng services and apps) are run as adminfarmng. Custom applications are run as the user who has cloned and installed the application.

  1. Are you the user that has the code and runs the install script? If not, can you change to the user who has the code and install as that user?
  2. Could you run some tests of cloning and installing / uninstalling the GitHub - farm-ng/amiga-app-template to determine if you see the same behavior?
  3. Does the user this app belongs to have any other custom applications or services installed at the same time? This would require some manual manifest.json manipulation.

Thank you,
– Kyle

Hi Kyle,

Thanks, yes happy to proceed asynchronously.

  1. Yes, the app was created using the amiga-app-template.
  2. It is no longer showing up in services nor in the app cards.
  3. Yes, I am logging on using my username farm-ng-user-gsainsbury. A handful of other users are visible in /mnt/managed_home but their directories are all empty (save for Desktop).
  4. I didn’t notice the uninstall.sh before. I have now tried to run that for my app before re-running install.sh with no luck also. I also tried cloning the app-tempalte and installing and that worked successfully. I can see the Monitor App.
  5. I don’t believe so.

I think In working through the steps, I’ve figured it out though. I looked at the diff of my most recent change to the manifest.json and I removed "autostart": true from lidar-service. Adding it back made it so the app now appears again.

The current manifest.json is below. By removing autostart, I was hoping to only activate the lidar-service as necessary when running the app, but perhaps the interaction of that service being a dependency for lidar-app and not autostarting meant that it didn’t work?

{
  "services": {
    "lidar-service": {
      "name": "lidar-service",
      "type": "service",
      "exec_cmd": "/mnt/managed_home/farm-ng-user-gsainsbury/amiga-fastapi/venv/bin/python3 /mnt/managed_home/farm-ng-user-gsainsbury/amiga-fastapi/lidar_service.py",
      "args": [
        "--service-config /mnt/managed_home/farm-ng-user-gsainsbury/amiga-fastapi/config.json",  "--lidar_address 10.95.76.102"
      ],
      "autostart": true
    },
    "lidar-app": {
      "name": "lidar-app",
      "type": "app",
      "exec_cmd": "/mnt/managed_home/farm-ng-user-gsainsbury/amiga-fastapi/venv/bin/python3 /mnt/managed_home/farm-ng-user-gsainsbury/amiga-fastapi/main.py",
      "args": [
        "--config /mnt/managed_home/farm-ng-user-gsainsbury/amiga-fastapi/amiga_configs.json", "--port 8042"
      ],
      "deps": [
        "lidar-service"
      ],
      "http_gui_port": 8042,
      "display_name": "LIDAR App"
    }
  }
}

Hi @gsainsbury86 ,

I’m glad to hear you were able to resolve the issue. I will create a ticket in our software planning to investigate this behavior to recreate it and resolve the issue.

Best,
Kyle

Also just to check, if you set autostart: false instead of removing it, do you have the same behavior?

Hi Kyle,

I’m about to go on leave for a week but I’ll make a note to check when I get back after Easter and let you know.

Cheers

1 Like

Sounds great. Enjoy!