Fetch/store Web App metadata and icons, finish RS integration #153

Merged
raucao merged 39 commits from feature/142-webapp_database into master 2024-01-01 13:18:48 +00:00
Owner

Not entirely done yet, but almost there. You can already authorize any RS apps against your local account (username@localhost:3000).

How to run/test

There are instructions in the README for adding a bucket to Minio. The LC Dockerfile is available in this branch, so you can also use build instead of image to build LC locally from that: 5apps/liquor-cabinet#2

To do

  • Create Web App model, integrate Manifique for fetching app metadata and icons
  • Add admin page for inspecting indexed Web Apps
  • Add Docker Compose services for S3 (Minio) and Liquor Cabinet (RS API)
  • Only use the primary domain/ou for RS (except for the user address in dev)
  • Fix bug in Liquor Cabinet signature generation (fails in the new LC Docker container for some reason)
  • Finish storage dashboard (add more info to auths, allow revocation)
  • Add missing specs (mostly just Web App related)

closes #94
closes #142

Not entirely done yet, but almost there. You can already authorize any RS apps against your local account (`username@localhost:3000`). ### How to run/test There are instructions in the README for adding a bucket to Minio. The LC Dockerfile is available in this branch, so you can also use `build` instead of `image` to build LC locally from that: https://gitea.kosmos.org/5apps/liquor-cabinet/pulls/2 ### To do * [x] Create Web App model, integrate Manifique for fetching app metadata and icons * [x] Add admin page for inspecting indexed Web Apps * [x] Add Docker Compose services for S3 (Minio) and Liquor Cabinet (RS API) * [x] Only use the primary domain/ou for RS (except for the user address in dev) * [x] Fix bug in Liquor Cabinet signature generation (fails in the new LC Docker container for some reason) * [x] Finish storage dashboard (add more info to auths, allow revocation) * [x] Add missing specs (mostly just Web App related) closes #94 closes #142
raucao added the
feature
label 2023-11-01 21:06:27 +00:00
raucao added 21 commits 2023-11-01 21:06:28 +00:00
Add admin page for web apps
All checks were successful
continuous-integration/drone/push Build is passing
2b8bfaaca8
Only show avatar when available on admin user page
Some checks failed
continuous-integration/drone/push Build is failing
5075fef616
Replace user addresses with usernames in the respective URLs
Superfluous, since the whole db should be RS only
Add info for running Minio/RS to README
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
00049f3743
raucao requested review from galfert 2023-11-02 10:57:33 +00:00
Author
Owner

@galfert I actually get the same signature issue we talked about when running Liquor Cabinet on the host directly. Going to forgo further debugging in favor of 5apps/liquor-cabinet#3

@galfert I actually get the same signature issue we talked about when running Liquor Cabinet on the host directly. Going to forgo further debugging in favor of https://gitea.kosmos.org/5apps/liquor-cabinet/issues/3
raucao added 1 commit 2023-11-16 11:44:31 +00:00
raucao force-pushed feature/142-webapp_database from 157d7efeb6 to 1995e6dda2 2023-11-16 11:45:16 +00:00 Compare
raucao added 3 commits 2023-11-16 11:46:51 +00:00
Finish working liquor-cabinet setup for Docker Compose
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
27bb7d1bfe
Author
Owner

Update: Liquor Cabinet now works (without any changes) with Docker Compose, and also supports v4 signatures now. So the RS integration now works entirely in dev and should also be compatible with Garage.

Update: Liquor Cabinet now works (without any changes) with Docker Compose, and also supports v4 signatures now. So the RS integration now works entirely in dev and should also be compatible with Garage.
raucao added 3 commits 2023-11-18 16:36:27 +00:00
Add note
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
4fdf8accd6
raucao added 3 commits 2023-11-19 17:49:35 +00:00
Implement RS auth revocation
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
713e91a720
raucao added 1 commit 2023-11-19 18:10:44 +00:00
Allow to launch RS apps from dashboard
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
aa399b862a
raucao changed title from WIP: Fetch/store Web App metadata and icons, finish RS integration to Fetch/store Web App metadata and icons, finish RS integration 2023-11-19 18:11:08 +00:00
Author
Owner

Update: MVP of the dashboard is fully working now, allowing to revoke authorizations and launch apps with storage-first flow.

Update: MVP of the dashboard is fully working now, allowing to revoke authorizations and launch apps with storage-first flow.
raucao added 1 commit 2023-11-20 11:22:18 +00:00
Re-add more specs
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
bdf5a18ad4
raucao force-pushed feature/142-webapp_database from 1960f39073 to 9a9947f9ad 2023-11-20 12:32:46 +00:00 Compare
raucao added 1 commit 2023-11-20 12:41:11 +00:00
Small refactoring
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2a70bf2fb9
raucao added 3 commits 2023-11-20 17:33:19 +00:00
Improve permission list in RS emails
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Release Drafter / Update release notes draft (pull_request) Successful in 3s
aab6793b86
raucao added the
kredits-3
label 2023-11-20 17:33:37 +00:00
Author
Owner

More updates:

  • Respect start_url from Web App Manifest when launching apps from the Storage dashboard
  • Add (configurable) notifications for new authorizations
More updates: * Respect `start_url` from Web App Manifest when launching apps from the Storage dashboard * Add (configurable) notifications for new authorizations
galfert approved these changes 2023-12-05 03:58:04 +00:00
galfert left a comment
Owner

Changes look all good. Great job 🙌

So far I wasn't able to test it though.

When running docker compose up, I get the following error from the accounts-ldap-1 instance:

ERR - createprlistensockets - PR_Bind() on address conversion failed file /data/run/slapd-localhost.socket failed: Netscape Portable Runtime error -5968 (TCP-specific function attempted on a non-TCP file descriptor.)

I deleted all my old containers and images, but that didn't help.

Changes look all good. Great job 🙌 So far I wasn't able to test it though. When running `docker compose up`, I get the following error from the `accounts-ldap-1` instance: ``` ERR - createprlistensockets - PR_Bind() on address conversion failed file /data/run/slapd-localhost.socket failed: Netscape Portable Runtime error -5968 (TCP-specific function attempted on a non-TCP file descriptor.) ``` I deleted all my old containers and images, but that didn't help.
@ -0,0 +4,4 @@
</div>
<div class="flex-grow">
<h4 class="mb-1 text-lg font-bold">
<%= @web_app.name %>
Owner

Maybe it might be nice to also link the name or the client_id field directly to the launch URL? Just to easier open the app without having to go via the dropdown.

Maybe it might be nice to also link the name or the client_id field directly to the launch URL? Just to easier open the app without having to go via the dropdown.
Author
Owner

When running docker compose up, I get the following error from the accounts-ldap-1 instance:

If you want to start with a fresh LDAP container (or Rails, after switching from running it on the host), you also have to delete the files in ./tmp first.

However, if the documented quick start commands are not working on a fresh repo checkout, please file an issue for that, and I'll check it out asap!

> When running docker compose up, I get the following error from the accounts-ldap-1 instance: If you want to start with a fresh LDAP container (or Rails, after switching from running it on the host), you also have to delete the files in `./tmp` first. However, if the documented quick start commands are not working on a fresh repo checkout, please file an issue for that, and I'll check it out asap!
Author
Owner

@galfert Were you able to run it in the meantime?

@galfert Were you able to run it in the meantime?
raucao merged commit 4e566a0607 into master 2024-01-01 13:18:48 +00:00
raucao deleted branch feature/142-webapp_database 2024-01-01 13:18:48 +00:00
Sign in to join this conversation.
No description provided.