Closed zppinho closed 6 months ago
Hi. Thanks for reporting!
Can you also provide the backstage version you're using? We are already aware that the latest release of Backstage if breaking this plugin due to all the permissions setup. This is currently in progress and under-review here: https://github.com/spreadshirt/backstage-plugin-s3/pull/90
However, the error described might be related to something else. I will test it first. However, I can say we are using the latest version for the backend plugin in our backstage instance in production and the listing is working fine. The main differences I can see is that you are using the config
setup while we use the radosgw-admin
setup, and that the permissionMiddleware
is not enabled in your example.
And regarding the issue you're facing due to the permissions issue. If you're running the latest Backstage version (1.24 or 1.25), sadly you'll need to wait until we release the changes in the PR mentioned above. If you're running an older version, I believe you need to set the middleware properly. The documentation should explain how to do that (https://github.com/spreadshirt/backstage-plugin-s3/tree/main/plugins/s3-viewer-backend#permissions-setup)
Alright, I found the issue. But the problem should only be happening with the yarn start
setup I think. The issue is that the standaloneServer is creating the wrong route: https://github.com/spreadshirt/backstage-plugin-s3/blob/main/plugins/s3-viewer-backend/src/service/standaloneServer.ts#L52. Instead, it should be "/s3-viewer". This is something that has already been tackled in the MR supporting the latest backstage version.
I was using the latest version of Backstage, I believe 1.25.0
"app@link:packages/app":
version "0.0.0"
dependencies:
"@backstage/app-defaults" "^1.5.3"
"@backstage/catalog-model" "^1.4.5"
"@backstage/cli" "^0.26.2"
"@backstage/core-app-api" "^1.12.3"
"@backstage/core-components" "^0.14.3"
"@backstage/core-plugin-api" "^1.9.1"
"@backstage/integration-react" "^1.1.25"
"@backstage/plugin-api-docs" "^0.11.3"
"@backstage/plugin-catalog" "^1.18.2"
"@backstage/plugin-catalog-common" "^1.0.22"
"@backstage/plugin-catalog-graph" "^0.4.3"
"@backstage/plugin-catalog-import" "^0.10.9"
"@backstage/plugin-catalog-react" "^1.11.2"
"@backstage/plugin-github-actions" "^0.6.14"
"@backstage/plugin-org" "^0.6.23"
"@backstage/plugin-permission-react" "^0.4.21"
"@backstage/plugin-scaffolder" "^1.19.2"
"@backstage/plugin-search" "^1.4.9"
"@backstage/plugin-search-react" "^1.7.9"
"@backstage/plugin-tech-radar" "^0.7.2"
"@backstage/plugin-techdocs" "^1.10.3"
"@backstage/plugin-techdocs-module-addons-contrib" "^1.1.8"
"@backstage/plugin-techdocs-react" "^1.2.2"
"@backstage/plugin-user-settings" "^0.8.4"
"@backstage/theme" "^0.5.2"
"@material-ui/core" "^4.12.2"
"@material-ui/icons" "^4.9.1"
"@spreadshirt/backstage-plugin-s3-viewer" "^0.5.0"
history "^5.0.0"
react "^18.0.2"
react-dom "^18.0.2"
react-router "^6.3.0"
react-router-dom "^6.3.0"
react-use "^17.2.4"
backstage created with 0.5.11 and the fix mentioned worked! thanks @ivangonzalezacuna
Alright. In that case, please bump the plugin to the latest version. We have just released it.
Also, please note that there are a couple possible breaking changes that you will need to apply in order to make it work. Basically those changes are affecting the permission setup: the middleware
is not needed any longer and the way to set the cookie has changed a little. If you're using the new backend system all the other changes will be completely transparent for you, but you might need some more changes if you're using the old backend setup.
backstage created with 0.5.11 and the fix mentioned worked! thanks @ivangonzalezacuna
Awesome!
Alright, I found the issue. But the problem should only be happening with the
yarn start
setup I think. The issue is that the standaloneServer is creating the wrong route: https://github.com/spreadshirt/backstage-plugin-s3/blob/main/plugins/s3-viewer-backend/src/service/standaloneServer.ts#L52. Instead, it should be "/s3-viewer". This is something that has already been tackled in the MR supporting the latest backstage version.
Closing this as the solution solves the issue.
Overview
The backend plugin in version 0.8.0 appears to be malfunctioning after the latest release. It can fetch the buckets as expected and shown in the logs, however, they are not being displayed in the frontend. Instead, a 404 error is displayed. This error is not encountered in version 0.7.6, the same behavior of the backend finding the buckets and not displaying occurs in a production environment.
Environment
Locally with (fedora:39) Production (Kubernetes:1.24.10 - @backstage/create-app@0.5.10)
Steps to Reproduce
app-config.yaml used
Expected
The bucket should be seen in backstage frontend
Actual
Frontend returns a message with "Request failed for buckets/grouped, 404 Not Found"
Logs
Logs from the container with the bucket
Logs from yarn start in branch @spreadshirt/backstage-plugin-s3-viewer-backend@0.8.0
Logs from yarn start in branch @spreadshirt/backstage-plugin-s3-viewer-backend@0.7.6
Aditional info
In version 0.7.6 in a production environment there seems to be another issue regarding permissions, could you provide a working "app-config.yaml" in a production environment.