-
Notifications
You must be signed in to change notification settings - Fork 32
feat: secrets manager integration #1193
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
feat: secrets manager integration #1193
Conversation
… secrets manager integration
…ion for role edit
|
✅ Build Completed with Success, Version=1193.0.0-c0298ba |
|
✅ Build Completed with Success, Version=1193.0.0-8774e04 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I noticed that our shadow-cljs config doesn't explicitly set the ClojureScript version, which means it defaults to whatever version shadow-cljs uses. I'd recommend we explicitly specify it because certain features depend on the version.
For example, update-vals is only available in ClojureScript ≥ 1.11.60. Since ClojureScript is backward compatible, upgrading shouldn't break anything in our frontend webapp.
We should add this to our :dependencies in shadow-cljs.edn:
clojure:dependencies
[[org.clojure/clojurescript "1.11.60"]
...]
Reference: https://github.com/hoophq/hoop/blob/main/webapp/shadow-cljs.edn#L5
Without explicitly setting the version, we're at the mercy of shadow-cljs's default, which might not include update-vals or other newer features we need.
|
✅ Build Completed with Success, Version=1193.0.0-04316dc |
…ials for improved state management
|
✅ Build Completed with Success, Version=1193.0.0-ba556ec |
…itional rendering
|
✅ Build Completed with Success, Version=1193.0.0-ba34955 |
|
✅ Build Completed with Success, Version=1193.0.0-f7d196f |
|
✅ Build Completed with Success, Version=1193.0.0-fdd4bc8 |
|
✅ Build Completed with Success, Version=1193.0.0-e957bf3 |
|
✅ Build Completed with Success, Version=1193.0.0-6980338 |
|
✅ Build Completed with Success, Version=1193.0.0-a3aaa91 |
|
✅ Build Completed with Success, Version=1193.0.0-994294a |
…ns and consolidating update logic
|
✅ Build Completed with Success, Version=1193.0.0-1dd7413 |
webapp/src/webapp/connections/views/setup/events/db_events.cljs
Outdated
Show resolved
Hide resolved
webapp/src/webapp/connections/views/setup/events/db_events.cljs
Outdated
Show resolved
Hide resolved
webapp/src/webapp/connections/views/setup/connection_method.cljs
Outdated
Show resolved
Hide resolved
|
✅ Build Completed with Success, Version=1193.0.0-7028fcf |
|
✅ Build Completed with Success, Version=1193.0.0-e6de37c |
|
✅ Build Completed with Success, Version=1193.0.0-e687b93 |
|
✅ Build Completed with Success, Version=1193.0.0-c00ef8e |
74e1f92 to
e687b93
Compare
|
✅ Build Completed with Success, Version=1193.0.0-74e1f92 |
|
✅ Build Completed with Success, Version=1193.0.0-e687b93 |
| updated-db (cond | ||
| ;; Update metadata-credentials if field exists there | ||
| (contains? metadata-credentials field-key) | ||
| (assoc-in db [:connection-setup :metadata-credentials field-key] | ||
| {:value (if (map? metadata-value) | ||
| (:value metadata-value) | ||
| (or metadata-value "")) | ||
| :source source}) | ||
|
|
||
| ;; Update SSH credentials if field exists there | ||
| (contains? ssh-credentials field-key-str) | ||
| (assoc-in db [:connection-setup :ssh-credentials field-key-str] | ||
| {:value (if (map? ssh-value) | ||
| (:value ssh-value) | ||
| (or ssh-value "")) | ||
| :source source}) | ||
|
|
||
| ;; Update Kubernetes token if field exists there | ||
| (contains? kubernetes-token field-key-kw) | ||
| (assoc-in db [:connection-setup :kubernetes-token field-key-kw] | ||
| {:value (if (map? kubernetes-value) | ||
| (:value kubernetes-value) | ||
| (or kubernetes-value "")) | ||
| :source source}) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here is a cond that does the same thing in all conditions
…er handling of adornments in forms
|
✅ Build Completed with Success, Version=1193.0.0-76d5d2f |
|
✅ Build Completed with Success, Version=1193.0.0-e348777 |
…environment variables
|
✅ Build Completed with Success, Version=1193.0.0-390c405 |


📝 Description
This pull request introduces UI selector for secrets manager providers to simplify role credentials configuration.
🚀 Type of Change
📋 Changes Made
Connection Method and Credential Source Handling:
webapp/connections/views/setup/connection_method.cljswith logic to normalize credential values, infer connection method from sources, and provide UI components for selecting connection method and source. This includes support for manual input, secrets manager, and AWS IAM role, as well as source selectors for environment variable inputs.events/db_events.cljsto store network credentials as maps with both value and source, and to infer/update the credential source based on the selected connection method or secrets manager provider.Environment Variables Input Improvements:
configuration_inputs.cljsto conditionally render input fields with a left adornment (source selector) when secrets manager is selected, allowing users to choose the source for each environment variable. Also added logic to hide default titles/subtitles when needed. [1] [2]Form Components Enhancement:
input-with-adornmenttoforms.cljs, a new input component supporting start adornments (such as a dropdown for source selection), and refactored password visibility toggling logic for better reuse.Documentation Link Updates:
config.cljsto include a new reference for RDS IAM authentication setup.Module Imports and Integration:
connection-methodmodule across relevant files for environment variable and event handling. [1] [2]🧪 Testing
Test Configuration:
Tests performed:
📸 Screenshots (if applicable)
✅ Checklist