# Published passenger app doesn't appear in dropdown menus

**URL:** <https://discourse.openondemand.org/t/published-passenger-app-doesnt-appear-in-dropdown-menus/4901>\
**Category:** Get Help\
**Tags:** question\
**Created:** [June 12, 2026, 8:13pm UTC](https://discourse.openondemand.org/t/published-passenger-app-doesnt-appear-in-dropdown-menus/4901 "2026-06-12T20:13:44Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![RonRahaman](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/ronrahaman/32/1031_2.png) [@RonRahaman](https://discourse.openondemand.org/u/RonRahaman)\
**Post date:** [June 12, 2026, 8:13pm UTC](https://discourse.openondemand.org/t/published-passenger-app-doesnt-appear-in-dropdown-menus/4901/1 "2026-06-12T20:13:44Z")

</div>

Hi all,

I’m trying to publish a passenger app at our site for the first time, but it is not appearing on the dropdown on the top menu bar as I expect. Any tips on debugging this?

I’m following the [Python tutorial](https://osc.github.io/ood-documentation/latest/tutorials/tutorials-passenger-apps/python-starter-app.html#), and the app works in my sandbox. After manually deploying it, I have this in `/var/www/ood/apps/sys/quota/manifest.yaml`

```yaml
name: Quota
description: Display quotas
icon: fa://hdd-o
category: Files
subcategory: Utilities

```

and after initializing, here is `/var/lib/ondemand-nginx/config/apps/sys/quota.conf`

```plaintext
location ~ ^/pun/sys/quota(/.*|$) {
  error_page 404 @error_404;
  alias /var/www/ood/apps/sys/quota/public$1;
  passenger_base_uri /pun/sys/quota;
  passenger_app_root /var/www/ood/apps/sys/quota;
  passenger_document_root /var/www/ood/apps/sys/quota/public;
  passenger_enabled on;

  passenger_app_env production;

  # Give apps the ability to download files from filesystem
  passenger_env_var HTTP_X_SENDFILE_TYPE X-Accel-Redirect;
  passenger_env_var HTTP_X_ACCEL_MAPPING "/=/sendfile";
  passenger_set_header X-Sendfile-Type "X-Accel-Redirect";
  passenger_set_header X-Accel-Mapping "/=/sendfile";
}

```

I can go directly to [https://our-ood-domain.edu/pun/sys/quota/](https://our-ood-domain.edu/pun/sys/quota/) and see the app correctly. However, I can’t see it in the “Files” dropdown.

Many thanks,  
Ron

* * *

_Ron Rahaman : Senior Research Scientist : Partnership for an Advanced Computing Environment : Georgia Institute of Technology_

---

<div class="post-metadata">

**Author:** ![jeff.ohrstrom](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/jeff.ohrstrom/32/136_2.png) [@jeff.ohrstrom](https://discourse.openondemand.org/u/jeff.ohrstrom)\
**Post date:** [June 12, 2026, 8:56pm UTC](https://discourse.openondemand.org/t/published-passenger-app-doesnt-appear-in-dropdown-menus/4901/2 "2026-06-12T20:56:40Z")

</div>

That could be a bug/behavior where we treat that category special. As in, I guess we never anticipated someone adding apps to it?

If you look at this if/else block we appear to treat the shell category the same. You may be able to do something with custom navbar configuration to override it, but I call it a bug because we should allow for this use case.

> <https://github.com/OSC/ondemand/blob/ded72b67db95f35d125676a165aed4aa63090c69/apps/dashboard/app/apps/ood_app.rb#L83>

---

<div class="post-metadata">

**Author:** ![RonRahaman](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/ronrahaman/32/1031_2.png) [@RonRahaman](https://discourse.openondemand.org/u/RonRahaman)\
**Post date:** [June 15, 2026, 2:55pm UTC](https://discourse.openondemand.org/t/published-passenger-app-doesnt-appear-in-dropdown-menus/4901/3 "2026-06-15T14:55:32Z")

</div>

Gotcha. I’d actually like to use a new dashboard category for my passenger app (I was using Files because the tutorial showed it). But when I use a new category, I can’t see the passenger app in the nav bar, either.

Here’s my manifest in `/var/www/ood/apps/sys/quota/manifest.yaml`, using a new “Quotas” category:

```yaml
---
name: Storage Quota
category: Quotas
description: This is the Storage Quota app

```

And here’s where I set the categories that appear in the nav bar `/etc/ood/config/ondemand.d/ondemand.yml`.

```yaml
nav_bar:
  - interactive apps
  - files
  - jobs
  - clusters
  - quotas
  - my interactive sessions

```

All the categories appear in the nav bar **except** for Quotas.

---

<div class="post-metadata">

**Author:** ![RonRahaman](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/ronrahaman/32/1031_2.png) [@RonRahaman](https://discourse.openondemand.org/u/RonRahaman)\
**Post date:** [June 15, 2026, 2:57pm UTC](https://discourse.openondemand.org/t/published-passenger-app-doesnt-appear-in-dropdown-menus/4901/4 "2026-06-15T14:57:57Z")

</div>

We are on OnDemand v4.1.4

---

<div class="post-metadata">

**Author:** ![jeff.ohrstrom](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/jeff.ohrstrom/32/136_2.png) [@jeff.ohrstrom](https://discourse.openondemand.org/u/jeff.ohrstrom)\
**Post date:** [June 16, 2026, 7:41pm UTC](https://discourse.openondemand.org/t/published-passenger-app-doesnt-appear-in-dropdown-menus/4901/5 "2026-06-16T19:41:15Z")

</div>

Reading the documentation, that should work. I’ll look into it a bit.

---

<div class="post-metadata">

**Author:** ![jeff.ohrstrom](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/jeff.ohrstrom/32/136_2.png) [@jeff.ohrstrom](https://discourse.openondemand.org/u/jeff.ohrstrom)\
**Post date:** [June 16, 2026, 7:51pm UTC](https://discourse.openondemand.org/t/published-passenger-app-doesnt-appear-in-dropdown-menus/4901/6 "2026-06-16T19:51:48Z")

</div>

OK odd, I was able to test with 4.1 and it worked for me. I wonder if the sub-category is somehow throwing this off - I tested with an app in a special category but no sub-category.

Beyond that, I’d maybe try a permission issue?

Manifest seeks OK - though maybe you need a `role`? The app I tested with has one. I believe only `batch_connect` role is meaningful, but maybe an empty role is somehow buggy?

---

<div class="post-metadata">

**Author:** ![RonRahaman](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/ronrahaman/32/1031_2.png) [@RonRahaman](https://discourse.openondemand.org/u/RonRahaman)\
**Post date:** [June 18, 2026, 10:40pm UTC](https://discourse.openondemand.org/t/published-passenger-app-doesnt-appear-in-dropdown-menus/4901/7 "2026-06-18T22:40:17Z")

</div>

Oh gosh, I figured it out. My manifest was named `manifest.yaml`, not `manifest.yml`. Changing its name to the latter fixed everything.

---

<div class="post-metadata">

**Author:** ![jeff.ohrstrom](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/jeff.ohrstrom/32/136_2.png) [@jeff.ohrstrom](https://discourse.openondemand.org/u/jeff.ohrstrom)\
**Post date:** [June 22, 2026, 1:26pm UTC](https://discourse.openondemand.org/t/published-passenger-app-doesnt-appear-in-dropdown-menus/4901/8 "2026-06-22T13:26:20Z")

</div>

😆 that seems to be a bug. I’ve filed [Manifest files with `yaml` extension are ignored. · Issue #5557 · OSC/ondemand · GitHub](https://github.com/OSC/ondemand/issues/5557) upstream as it should respond to that.

---

<div class="post-metadata">

**Author:** ![RonRahaman](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/ronrahaman/32/1031_2.png) [@RonRahaman](https://discourse.openondemand.org/u/RonRahaman)\
**Post date:** [June 22, 2026, 2:06pm UTC](https://discourse.openondemand.org/t/published-passenger-app-doesnt-appear-in-dropdown-menus/4901/9 "2026-06-22T14:06:07Z")

</div>

Thanks for posting that issue Jeff!

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex015/uploads/osc/original/2X/b/bae70bd0ed39a3ae769c2108155f4cb3e9da8385.png) [@system](https://discourse.openondemand.org/u/system)\
**Post date:** [June 24, 2026, 2:07pm UTC](https://discourse.openondemand.org/t/published-passenger-app-doesnt-appear-in-dropdown-menus/4901/10 "2026-06-24T14:07:03Z")

</div>

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.
