Katello 4.3 Broken Package View

Problem:

I just noticed that after having updated Katello to 4.3.0, the view for browsing packages in a repository has gone defunct; it merely shows a white page now. It worked when I last tried it in 4.2.2 or something like that.

I was not able to find any error message logged anywhere and don’t know how to investigate further.

Expected outcome:

Display a list of packages in a repository / content view like before.

Foreman and Proxy versions:

Foreman 3.1.2
Katello 4.3.0

Foreman and Proxy plugin versions:

Foreman 3.1.2
Katello 4.3.0

Distribution and version:

CentOS 8 Stream

Other relevant data:

Foreman’s production.log does not show anything suspicious:

2022-03-10T11:55:40 [I|app|d06eb0e0] Started GET "/products/14/repositories/1334/content/debs" for x.x.x.x at 2022-03-10 11:55:40 +0100
2022-03-10T11:55:40 [I|app|d06eb0e0] Processing by Bastion::BastionController#index as HTML
2022-03-10T11:55:40 [I|app|d06eb0e0]   Parameters: {"bastion_page"=>"products", "path"=>"14/repositories/1334/content/debs"}
2022-03-10T11:55:40 [I|app|d06eb0e0]   Rendering /usr/share/gems/gems/katello-4.3.0/engines/bastion/app/views/bastion/layouts/application.html.erb
2022-03-10T11:55:40 [I|app|d06eb0e0]   Rendering /usr/share/gems/gems/katello-4.3.0/engines/bastion/app/views/bastion/layouts/assets.html.erb
2022-03-10T11:55:40 [I|app|d06eb0e0]   Rendering layouts/base.html.erb
2022-03-10T11:55:40 [I|app|d06eb0e0]   Rendered layouts/base.html.erb (Duration: 22.6ms | Allocations: 28968)
2022-03-10T11:55:40 [I|app|d06eb0e0]   Rendered /usr/share/gems/gems/katello-4.3.0/engines/bastion/app/views/bastion/layouts/assets.html.erb (Duration: 59.6ms | Allocations: 53419)
2022-03-10T11:55:40 [I|app|d06eb0e0]   Rendered /usr/share/gems/gems/katello-4.3.0/engines/bastion/app/views/bastion/layouts/application.html.erb (Duration: 64.7ms | Allocations: 59817)
2022-03-10T11:55:40 [I|app|d06eb0e0] Completed 200 OK in 74ms (Views: 61.8ms | ActiveRecord: 5.0ms | Allocations: 62931)
2022-03-10T11:55:41 [I|app|02661f2a] Started GET "/notification_recipients" for x.x.x.x at 2022-03-10 11:55:41 +0100
2022-03-10T11:55:41 [I|app|02661f2a] Processing by NotificationRecipientsController#index as JSON
2022-03-10T11:55:41 [I|app|02661f2a] Completed 200 OK in 7ms (Views: 0.1ms | ActiveRecord: 1.1ms | Allocations: 2460)
2022-03-10T11:55:42 [I|app|6168aa2f] Started GET "/products/details/views/product-details.html" for x.x.x.x at 2022-03-10 11:55:42 +0100
2022-03-10T11:55:42 [I|app|d2e79b3b] Started GET "/products/details/repositories/details/views/repository-details.html" for x.x.x.x at 2022-03-10 11:55:42 +0100
2022-03-10T11:55:42 [I|app|05011dfd] Started GET "/products/details/repositories/details/views/repository-manage-debs.html" for x.x.x.x at 2022-03-10 11:55:42 +0100
2022-03-10T11:55:42 [I|app|1efc1847] Started GET "/layouts/details-page-with-breadcrumbs.html" for x.x.x.x at 2022-03-10 11:55:42 +0100
2022-03-10T11:55:42 [I|app|83c6e7ac] Started GET "/katello/api/v2/products/14?organization_id=1" for x.x.x.x at 2022-03-10 11:55:42 +0100
2022-03-10T11:55:42 [I|app|83881e08] Started GET "/katello/api/v2/repositories/1334?organization_id=1&product_id=14" for x.x.x.x at 2022-03-10 11:55:42 +0100
2022-03-10T11:55:42 [I|app|83c6e7ac] Processing by Katello::Api::V2::ProductsController#show as HTML
2022-03-10T11:55:42 [I|app|83c6e7ac]   Parameters: {"organization_id"=>"1", "api_version"=>"v2", "id"=>"14"}
2022-03-10T11:55:42 [I|app|83881e08] Processing by Katello::Api::V2::RepositoriesController#show as HTML
2022-03-10T11:55:42 [I|app|83881e08]   Parameters: {"organization_id"=>"1", "product_id"=>"14", "api_version"=>"v2", "id"=>"1334"}
2022-03-10T11:55:42 [I|app|83c6e7ac]   Rendering /usr/share/gems/gems/katello-4.3.0/app/views/katello/api/v2/products/show.json.rabl within katello/api/v2/layouts/resource
2022-03-10T11:55:42 [I|app|83881e08]   Rendering /usr/share/gems/gems/katello-4.3.0/app/views/katello/api/v2/repositories/show.json.rabl within katello/api/v2/layouts/resource
2022-03-10T11:55:42 [I|app|67a99818] Started GET "/layouts/partials/page-header-with-actions.html" for x.x.x.x at 2022-03-10 11:55:42 +0100
2022-03-10T11:55:42 [I|app|7f29e870] Started GET "/layouts/partials/full-row-breadcrumbs.html" for x.x.x.x at 2022-03-10 11:55:42 +0100
2022-03-10T11:55:42 [I|app|1d419293] Started GET "/layouts/partials/page-loading-indicator.html" for x.x.x.x at 2022-03-10 11:55:42 +0100
2022-03-10T11:55:42 [I|app|83881e08]   Rendered /usr/share/gems/gems/katello-4.3.0/app/views/katello/api/v2/repositories/show.json.rabl within katello/api/v2/layouts/resource (Duration: 109.3ms | Allocations: 26188)
2022-03-10T11:55:42 [I|app|83881e08] Completed 200 OK in 126ms (Views: 39.7ms | ActiveRecord: 75.8ms | Allocations: 33557)
2022-03-10T11:55:42 [I|app|0741691d] Started GET "/common/views/select-action-dropdown.html" for x.x.x.x at 2022-03-10 11:55:42 +0100
2022-03-10T11:55:42 [I|app|83c6e7ac]   Rendered /usr/share/gems/gems/katello-4.3.0/app/views/katello/api/v2/products/show.json.rabl within katello/api/v2/layouts/resource (Duration: 201.4ms | Allocations: 124020)

Hello, are there any logs in the browser dev-tools console when entering that page?

Hi, thanks for looking into this.

Hello, are there any logs in the browser dev-tools console when entering that page?

Yes, there is a JavaScript error message. Does this one ring any bells?

Error: [$injector:unpr] Unknown provider: OstreeBranchProvider <- OstreeBranch <- RepositoryManageContentController
https://errors.angularjs.org/1.8.2/$injector/unpr?p0=OstreeB…C-%20OstreeBranch%20%3C-%20RepositoryManageContentController

Ohh… Angular fun,
@jeremylenz @Dewar anyone on your team who’s familiar with this code?

Hi,

This looks like Bug #33988: Repository content manage UI error: OstreeBranchProvider <- OstreeBranch <- RepositoryManageContentController - Katello - Foreman. Should be fixed in Katello 4.3.1.

1 Like

As a workaround, you can use Content > Packages and filter by repository there.