Skip to content

feat(variables): add JSON external secret UI - #3093

Draft
TheoGrandin74 wants to merge 16 commits into
stagingfrom
feat/secret-manager-json-integration
Draft

TheoGrandin74 wants to merge 16 commits into
stagingfrom
feat/secret-manager-json-integration

Conversation

@TheoGrandin74

@TheoGrandin74 TheoGrandin74 commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

Adds a JSON external-secret option to the variables page and service-creation flow. Users select a secret-manager source and reference, assign a display name, and optionally add a key prefix and description. JSON contents are not fetched or displayed in the console.

  • Share one Add secret dropdown with variable, file, and JSON options across both flows.
  • Reuse the existing secret modal and render JSON references as ordinary rows, without key previews or expandable details.
  • Show the JSON icon with the prefix and underscore, or No prefix, in both lists.
  • Search reference-level fields and count each reference as one external secret.
  • Preserve the existing variable/file API paths and leave the shared ModalCrud component unchanged.
  • Surface submission failures in the modal and allow retry.

Draft / integration status

The JSON API contract is still pending. Add, Edit, and Delete work locally for user-entered JSON references. Variables-page drafts reset on remount; creation-flow drafts stay in form state but are not persisted during service creation. TODO comments mark the real API handler integration points. No seeded example data or injected references remain. JSON references are never sent through the single-variable API.

Before shipping: replace local JSON handlers with API persistence and validation, integrate JSON creation during service creation, and finish JSON analytics. This PR does not change deployment behavior.

Validation

  • Latest handler fix: 33 focused tests passed across the external-secrets modal/table and service-creation variables suites, including local JSON add/edit/delete, prefix retention, and failed-submit retry.
  • Console TypeScript check passed.
  • Formatting and diff whitespace checks passed.
  • Changed-file lint passed with one existing useless-fragment warning.
  • Earlier repository-wide tests encountered timeouts and were stopped; repository-wide tests are not confirmed green.

@nx-cloud

nx-cloud Bot commented Oct 12, 2026 •

Copy link
Copy Markdown

View your CI Pipeline Execution ↗ for commit 5b007ba

Command Status Duration Result
nx run console:build --parallel=3 --configurati... ✅ Succeeded 57s View ↗
nx affected --target=test --parallel=3 --config... ✅ Succeeded 2m 27s View ↗
nx affected --target=lint --parallel=3 ✅ Succeeded 2m 25s View ↗
nx-cloud record -- yarn nx format:check ✅ Succeeded 2s View ↗

💡 Verify your cache is correct by running tasks in a sandbox. Read docs ↗


☁️ Nx Cloud last updated this comment at 2026-10-13 10:06:09 UTC

@codecov

codecov Bot commented Oct 12, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 76.38889% with 17 lines in your changes missing coverage. Please review.
✅ Project coverage is 52.02%. Comparing base (487b60a) to head (5b007ba).
⚠️ Report is 3 commits behind head on staging.

Files with missing lines Patch % Lines
...rnal-secrets/add-secret-modal/add-secret-modal.tsx 73.07% 5 Missing and 2 partials ⚠️
...tainer-variables/step-variables/step-variables.tsx 50.00% 4 Missing and 1 partial ⚠️
.../src/lib/external-secrets/external-secrets-tab.tsx 83.33% 0 Missing and 5 partials ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           staging    #3093      +/-   ##
===========================================
- Coverage    52.48%   52.02%   -0.47%     
===========================================
  Files          744     1339     +595     
  Lines        18789    29827   +11038     
  Branches      5731     8974    +3243     
===========================================
+ Hits          9862    15518    +5656     
- Misses        7357    11803    +4446     
- Partials      1570     2506     +936     
Flag Coverage Δ
unittests 52.02% <76.38%> (-0.47%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant