Skip to content

[ENG-715] feat: Update workflows and add SAML SSO support#42

Merged
twk3 merged 4 commits into
mainfrom
feat/add-saml-sso
Jul 9, 2026
Merged

[ENG-715] feat: Update workflows and add SAML SSO support#42
twk3 merged 4 commits into
mainfrom
feat/add-saml-sso

Conversation

@twk3

@twk3 twk3 commented Jul 8, 2026

Copy link
Copy Markdown
Contributor
  • Updated GitHub Actions workflows to use actions/checkout@v5 and other updated action versions.
  • Bumped chart version to 0.7.0 and added SAML SSO configuration options in values.yaml and documentation.
  • Enhanced deployment templates to include SAML SSO environment variables and secret mounts.
  • Updated quickstart guide to include steps for enabling SAML SSO.

Summary by CodeRabbit

  • New Features
    • Added optional SAML SSO support with new Helm values for issuer/provider metadata, default roles, allowed email domains, and AuthnRequests signing; the server consumes SAML settings and mounts IdP metadata from a Kubernetes secret.
  • Documentation
    • Updated the configuration reference and EKS quickstart with SAML setup and metadata/certificate rotation guidance; added commented SAML examples to sample configs.
  • Bug Fixes
    • Improved CI chart testing reliability with stricter in-cluster test setup and removal of install failure suppression.
  • Chores
    • Bumped the Helm chart version to 0.7.0 and updated CI/release documentation workflow tooling (checkout to v5, plus related action updates).

- Updated GitHub Actions workflows to use actions/checkout@v5 and other updated action versions.
- Bumped chart version to 0.7.0 and added SAML SSO configuration options in values.yaml and documentation.
- Enhanced deployment templates to include SAML SSO environment variables and secret mounts.
- Updated quickstart guide to include steps for enabling SAML SSO.
@coderabbitai

coderabbitai Bot commented Jul 8, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: b25900fb-7a1f-46ec-baa6-c3478256475f

📥 Commits

Reviewing files that changed from the base of the PR and between cb74b09 and 45f6e91.

📒 Files selected for processing (4)
  • .github/workflows/lint-test.yaml
  • charts/currents/ci/lint-values.yaml
  • charts/currents/templates/_common.tpl
  • charts/currents/templates/server/deployment.yaml
🚧 Files skipped from review as they are similar to previous changes (3)
  • charts/currents/templates/server/deployment.yaml
  • charts/currents/ci/lint-values.yaml
  • charts/currents/templates/_common.tpl

📝 Walkthrough

Walkthrough

Adds SAML SSO support to the Helm chart and documentation, bumps the chart version, and updates GitHub Actions workflows plus CI test dependencies and values for private-image lint/install runs.

Changes

SAML SSO Feature

Layer / File(s) Summary
SAML values and env template
charts/currents/values.yaml, charts/currents/templates/_common.tpl, charts/currents/templates/server/deployment.yaml
Introduces currents.betterAuth.sso.saml values, a currents.samlSSOEnv helper, and conditional server deployment wiring for SAML env vars, secret mounts, and the secret-backed volume.
Chart version and SAML docs
charts/currents/Chart.yaml, docs/configuration.md, docs/eks/quickstart.md, samples/eks/eks-config.yaml, samples/local/chart-config.yaml
Bumps the chart version and adds SAML configuration reference, quickstart instructions, and commented sample configuration blocks.

CI Workflow Updates

Layer / File(s) Summary
Checkout action version bumps
.github/workflows/docs-check.yaml, .github/workflows/release.yaml, .github/workflows/sync-docs.yaml
Bumps actions/checkout from v4 to v5 in the docs-check, release, and sync-docs workflows.
lint-test workflow and CI test environment
.github/workflows/lint-test.yaml, .github/ci/dependencies.yaml, charts/currents/ci/lint-values.yaml
Updates lint-test setup versions and permissions, adds AWS OIDC and ECR login, creates kind, deploys MongoDB, ClickHouse, and Redis test dependencies, and extends the lint values file for chart installation.

Estimated code review effort: 4 (Complex) | ~45 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main changes: workflow updates and new SAML SSO support.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/add-saml-sso

Warning

Tools execution failed with the following error:

Failed to run tools: 13 INTERNAL: Received RST_STREAM with code 2 (Internal server error)


Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (4)
.github/workflows/lint-test.yaml (1)

79-79: 🔒 Security & Privacy | 🔵 Trivial | 💤 Low value

Consider moving default_branch into an env var to avoid direct expression interpolation in run:.

Static analysis flags direct expansion of github.event.repository.default_branch into the shell command as a template-injection pattern. Practical risk here is low (requires repo-admin control of branch naming), and the same pattern is used elsewhere in this file, but GitHub's hardening guidance recommends passing untrusted/semi-trusted context values via env: instead of inline interpolation.

🔧 Optional hardening
       - name: Run chart-testing (install)
         if: steps.list-changed.outputs.changed == 'true'
-        run: ct install --target-branch ${{ github.event.repository.default_branch }}
+        env:
+          TARGET_BRANCH: ${{ github.event.repository.default_branch }}
+        run: ct install --target-branch "$TARGET_BRANCH"
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/lint-test.yaml at line 79, Move the
`github.event.repository.default_branch` value out of the `run:` command and
into an `env:` variable for the workflow step, then reference that variable in
the `ct install` command. Update the step that currently uses `ct install
--target-branch` so it reads from the environment instead of direct expression
interpolation, and apply the same pattern consistently in this workflow where
`default_branch` is used.

Source: Linters/SAST tools

charts/currents/templates/_common.tpl (1)

237-263: 🎯 Functional Correctness | 🔵 Trivial | ⚡ Quick win

Unguarded empty issuer still emits env var.

Unlike providerId, defaultRole, and allowedDomains which are wrapped in truthiness checks, SSO_SAML_ISSUER (Lines 241-242) is always rendered when enabled is true, even if issuer is empty. Combined with the missing required-field validation noted in values.yaml, this can silently produce SSO_SAML_ISSUER: "" at runtime.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@charts/currents/templates/_common.tpl` around lines 237 - 263, The
currents.samlSSOEnv template always renders SSO_SAML_ISSUER whenever
currents.sso.saml.enabled is true, even if issuer is empty. Add the same kind of
truthiness guard used for providerId, defaultRole, and allowedDomains so the env
var is only emitted when issuer is set, and keep the logic inside
currents.samlSSOEnv consistent with the other optional SAML fields.
docs/eks/quickstart.md (1)

236-250: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Signed AuthnRequests setup not documented.

The values example only covers enabled, issuer, providerId, metadataSecretName, defaultRole, allowedDomains. authnRequestsSigned (and the corresponding spCertKey/spKeyKey secret entries) is a supported option per values.yaml/_common.tpl but isn't mentioned here, so a reader following only this quickstart won't discover how to enable request signing.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/eks/quickstart.md` around lines 236 - 250, The SSO values example in the
quickstart omits the supported signed AuthnRequests configuration, so readers
won’t know how to enable it. Update the `currents.sso.saml` example to mention
`authnRequestsSigned` and the required secret entries referenced by
`values.yaml` and `_common.tpl` (`spCertKey` and `spKeyKey`), and add a short
note explaining where these settings belong in the `currents:` block so the
quickstart fully reflects the supported SAML options.
charts/currents/values.yaml (1)

75-84: 🩺 Stability & Availability | 🔵 Trivial | ⚡ Quick win

No fail-fast validation for required SAML fields.

enabled, issuer, and metadataSecretName are documented as required when SAML is turned on, but nothing enforces this — an operator enabling SAML without setting issuer/metadataSecretName gets a deployment with an empty SSO_SAML_ISSUER env var and a volume referencing an empty secret name, likely failing at apply-time with an unclear Kubernetes error rather than a clear Helm template error.

Consider using Helm's required function in _common.tpl/deployment.yaml when enabled is true, consistent with fail-fast patterns elsewhere. This is optional given the rest of the chart follows the same "required in comment, unenforced" convention (e.g. objectStorage.secretName, clickhouse.host).

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@charts/currents/values.yaml` around lines 75 - 84, Add fail-fast Helm
validation for the SAML settings so enabling SAML without the required fields
does not render a broken deployment. Update the SAML handling in deployment
rendering (and/or the shared helpers in _common.tpl) to gate on
currents.saml.enabled and use required for currents.saml.issuer and
currents.saml.metadataSecretName before wiring SSO_SAML_ISSUER and the metadata
secret volume. Keep the checks close to the existing SAML env/volume logic so
the template fails with a clear Helm error instead of an empty secret reference
or empty issuer.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.github/workflows/lint-test.yaml:
- Around line 12-15: The Checkout step uses actions/checkout without disabling
credential persistence, leaving the GITHUB_TOKEN in git config for the rest of
the job. Update the Checkout configuration to set persist-credentials to false
in the checkout action so the lint-test workflow does not retain credentials
while it runs third-party actions.

---

Nitpick comments:
In @.github/workflows/lint-test.yaml:
- Line 79: Move the `github.event.repository.default_branch` value out of the
`run:` command and into an `env:` variable for the workflow step, then reference
that variable in the `ct install` command. Update the step that currently uses
`ct install --target-branch` so it reads from the environment instead of direct
expression interpolation, and apply the same pattern consistently in this
workflow where `default_branch` is used.

In `@charts/currents/templates/_common.tpl`:
- Around line 237-263: The currents.samlSSOEnv template always renders
SSO_SAML_ISSUER whenever currents.sso.saml.enabled is true, even if issuer is
empty. Add the same kind of truthiness guard used for providerId, defaultRole,
and allowedDomains so the env var is only emitted when issuer is set, and keep
the logic inside currents.samlSSOEnv consistent with the other optional SAML
fields.

In `@charts/currents/values.yaml`:
- Around line 75-84: Add fail-fast Helm validation for the SAML settings so
enabling SAML without the required fields does not render a broken deployment.
Update the SAML handling in deployment rendering (and/or the shared helpers in
_common.tpl) to gate on currents.saml.enabled and use required for
currents.saml.issuer and currents.saml.metadataSecretName before wiring
SSO_SAML_ISSUER and the metadata secret volume. Keep the checks close to the
existing SAML env/volume logic so the template fails with a clear Helm error
instead of an empty secret reference or empty issuer.

In `@docs/eks/quickstart.md`:
- Around line 236-250: The SSO values example in the quickstart omits the
supported signed AuthnRequests configuration, so readers won’t know how to
enable it. Update the `currents.sso.saml` example to mention
`authnRequestsSigned` and the required secret entries referenced by
`values.yaml` and `_common.tpl` (`spCertKey` and `spKeyKey`), and add a short
note explaining where these settings belong in the `currents:` block so the
quickstart fully reflects the supported SAML options.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 891a52de-cbe2-423d-8d16-55b32296dd9e

📥 Commits

Reviewing files that changed from the base of the PR and between a90944c and 30e5de2.

📒 Files selected for processing (12)
  • .github/workflows/docs-check.yaml
  • .github/workflows/lint-test.yaml
  • .github/workflows/release.yaml
  • .github/workflows/sync-docs.yaml
  • charts/currents/Chart.yaml
  • charts/currents/templates/_common.tpl
  • charts/currents/templates/server/deployment.yaml
  • charts/currents/values.yaml
  • docs/configuration.md
  • docs/eks/quickstart.md
  • samples/eks/eks-config.yaml
  • samples/local/chart-config.yaml

Comment thread .github/workflows/lint-test.yaml
- Introduced a new dependencies.yaml file to deploy ephemeral MongoDB and ClickHouse instances for chart testing.
- Updated lint-test.yaml to create the `currents-ci` namespace and apply the new dependencies, ensuring the app pods can reach the database services.
- Enhanced lint-values.yaml to reference the new in-cluster MongoDB and ClickHouse configurations and secrets.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (5)
.github/workflows/lint-test.yaml (4)

72-73: 🚀 Performance & Scalability | 🔵 Trivial | ⚡ Quick win

Unbounded parallel docker pull (-P 0).

Pulling every private image at once can saturate runner bandwidth/disk and risks ECR pull throttling, especially as the image list grows.

♻️ Proposed fix
-          echo "$images" | xargs -P 0 -n 1 docker pull
+          echo "$images" | xargs -P 4 -n 1 docker pull
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/lint-test.yaml around lines 72 - 73, The concurrent image
pull in the workflow is unbounded because xargs uses -P 0, which can overwhelm
runner resources and trigger registry throttling. Update the docker pull step in
the lint-test workflow to use a fixed, modest parallelism limit instead of
unlimited concurrency, while keeping the existing xargs-based batching logic
intact.

68-69: 🚀 Performance & Scalability | 🔵 Trivial

Fragile awk-based image extraction.

Matching on $1 == "image:" is sensitive to rendered YAML formatting (indentation, quoting, multi-line values) and could silently miss or misparse images if the chart templates change. Consider yq for a more robust extraction (e.g., yq eval '.. | .image? // empty' -).

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/lint-test.yaml around lines 68 - 69, The image extraction
in the lint workflow is too dependent on rendered YAML formatting because the
current `awk` pipeline only matches `$1 == "image:"`. Update the `helm template`
pipeline in this workflow to use a more robust YAML-aware extractor such as `yq`
when collecting image fields, and keep the existing filtering/sorting logic
afterward so the `images` check still works reliably if template formatting
changes.

51-56: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

ECR account ID duplicated across two lines.

"513558712013" appears here and again as the grep filter at Line 69. If the account ever changes, one occurrence could be missed, silently breaking the private-image preload logic.

♻️ Proposed fix
+    env:
+      CURRENTS_ECR_ACCOUNT: "513558712013"
     steps:
       ...
       - name: Login to Currents ECR
         if: steps.list-changed.outputs.changed == 'true'
         uses: aws-actions/amazon-ecr-login@v2
         with:
-          registries: "513558712013"
+          registries: ${{ env.CURRENTS_ECR_ACCOUNT }}
       ...
       - name: Preload Currents images into kind
         run: |
           images=$(helm template ct-release charts/currents -f charts/currents/ci/lint-values.yaml \
-            | awk '$1 == "image:" { print $2 }' | tr -d '"' | grep '513558712013' | sort -u)
+            | awk '$1 == "image:" { print $2 }' | tr -d '"' | grep "$CURRENTS_ECR_ACCOUNT" | sort -u)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/lint-test.yaml around lines 51 - 56, The Currents ECR
account ID is duplicated in the workflow, so update the login step and the later
private-image preload check in the same place to use a single shared source of
truth. Refactor the duplicated `"513558712013"` value in the workflow around the
`Login to Currents ECR` step and the `grep`-based check so both references stay
in sync if the account changes.

117-117: 🔒 Security & Privacy | 🔵 Trivial | ⚡ Quick win

Static analysis flags template-injection on --target-branch interpolation.

${{ github.event.repository.default_branch }} is expanded directly into the run: script. Practically low-risk since default_branch is repo-owner controlled, but the fix is cheap and matches GitHub's hardening guidance (this pattern also exists unchanged at Lines 35/42).

🔒 Proposed fix
       - name: Run chart-testing (install)
         if: steps.list-changed.outputs.changed == 'true'
-        run: ct install --target-branch ${{ github.event.repository.default_branch }} --namespace currents-ci --helm-extra-args "--timeout 600s"
+        env:
+          TARGET_BRANCH: ${{ github.event.repository.default_branch }}
+        run: ct install --target-branch "$TARGET_BRANCH" --namespace currents-ci --helm-extra-args "--timeout 600s"
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/lint-test.yaml at line 117, Static analysis is flagging
direct GitHub Actions expression interpolation in the `ct install` command for
`--target-branch`, so update the workflow to avoid embedding `${{
github.event.repository.default_branch }}` directly in the shell script. Move
the value into an environment variable in the same job/step and reference that
variable in the `run` command, and apply the same hardening pattern to the
matching `ct install` invocations elsewhere in this workflow.

Source: Linters/SAST tools

.github/ci/dependencies.yaml (1)

21-31: 🚀 Performance & Scalability | 🔵 Trivial

Consider adding resource requests/limits for CI stability.

Neither container declares resource requests/limits. On resource-constrained kind runners, this risks noisy-neighbor effects with the app pods being tested, occasionally causing readiness timeouts. Not addressing the Trivy/Checkov securityContext findings here, since this is explicitly documented as an ephemeral CI-only dependency.

Also applies to: 60-80

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/ci/dependencies.yaml around lines 21 - 31, Add resource requests and
limits to the CI-only MongoDB container in the dependencies manifest so it
behaves predictably on constrained kind runners. Update the mongodb container
definition alongside the existing readinessProbe and the other matching
container block(s) referenced by the comment so both declare explicit CPU/memory
requests and limits instead of relying on defaults.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.github/workflows/lint-test.yaml:
- Around line 88-97: The replica set readiness check in the workflow does not
fail when PRIMARY election never happens, so the job continues into later steps
with a misleading error. Update the retry loop around the mongodb `mongosh`
`db.hello().isWritablePrimary` check to detect the exhausted 30 attempts and
exit the job immediately with a clear failure message before secret creation and
`ct install`. Use the existing replica-set init/wait block in the workflow to
locate the change.

---

Nitpick comments:
In @.github/ci/dependencies.yaml:
- Around line 21-31: Add resource requests and limits to the CI-only MongoDB
container in the dependencies manifest so it behaves predictably on constrained
kind runners. Update the mongodb container definition alongside the existing
readinessProbe and the other matching container block(s) referenced by the
comment so both declare explicit CPU/memory requests and limits instead of
relying on defaults.

In @.github/workflows/lint-test.yaml:
- Around line 72-73: The concurrent image pull in the workflow is unbounded
because xargs uses -P 0, which can overwhelm runner resources and trigger
registry throttling. Update the docker pull step in the lint-test workflow to
use a fixed, modest parallelism limit instead of unlimited concurrency, while
keeping the existing xargs-based batching logic intact.
- Around line 68-69: The image extraction in the lint workflow is too dependent
on rendered YAML formatting because the current `awk` pipeline only matches `$1
== "image:"`. Update the `helm template` pipeline in this workflow to use a more
robust YAML-aware extractor such as `yq` when collecting image fields, and keep
the existing filtering/sorting logic afterward so the `images` check still works
reliably if template formatting changes.
- Around line 51-56: The Currents ECR account ID is duplicated in the workflow,
so update the login step and the later private-image preload check in the same
place to use a single shared source of truth. Refactor the duplicated
`"513558712013"` value in the workflow around the `Login to Currents ECR` step
and the `grep`-based check so both references stay in sync if the account
changes.
- Line 117: Static analysis is flagging direct GitHub Actions expression
interpolation in the `ct install` command for `--target-branch`, so update the
workflow to avoid embedding `${{ github.event.repository.default_branch }}`
directly in the shell script. Move the value into an environment variable in the
same job/step and reference that variable in the `run` command, and apply the
same hardening pattern to the matching `ct install` invocations elsewhere in
this workflow.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: e991d630-1222-4111-9db1-31356634a459

📥 Commits

Reviewing files that changed from the base of the PR and between 30e5de2 and 79db2b8.

📒 Files selected for processing (3)
  • .github/ci/dependencies.yaml
  • .github/workflows/lint-test.yaml
  • charts/currents/ci/lint-values.yaml

Comment thread .github/workflows/lint-test.yaml
- Introduced Redis deployment and service in dependencies.yaml
- Updated lint-test.yaml to include rollout status check
- Modified lint-values.yaml to reference the new Redis configuration

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
.github/ci/dependencies.yaml (1)

20-32: 🔒 Security & Privacy | 🔵 Trivial | 💤 Low value

Missing pod/container securityContext (CI-only, low risk).

Static analysis flags mongodb and redis containers for running with default security context (root, writable rootfs, no allowPrivilegeEscalation: false). Since this manifest is explicitly CI-only ephemeral test infra (per the file's own comment), the risk is minimal, but adding a baseline securityContext is cheap and keeps the CI cluster consistent with production hardening practices.

🔒 Optional hardening
       containers:
         - name: mongodb
           image: mongo:8
+          securityContext:
+            allowPrivilegeEscalation: false
+            readOnlyRootFilesystem: false
+            runAsNonRoot: false

(similarly for the redis container)

Also applies to: 101-122

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/ci/dependencies.yaml around lines 20 - 32, Add a baseline
securityContext to the CI test containers so `mongodb` (and the matching `redis`
container) do not run with default root-oriented settings. Update the container
specs in the `spec.containers` section to set the common hardening flags (for
example, disable privilege escalation and use a non-writable root filesystem
where compatible), keeping the existing `readinessProbe` and args unchanged.

Source: Linters/SAST tools

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In @.github/ci/dependencies.yaml:
- Around line 20-32: Add a baseline securityContext to the CI test containers so
`mongodb` (and the matching `redis` container) do not run with default
root-oriented settings. Update the container specs in the `spec.containers`
section to set the common hardening flags (for example, disable privilege
escalation and use a non-writable root filesystem where compatible), keeping the
existing `readinessProbe` and args unchanged.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 035d2e90-7db8-49ce-aa95-a85eeff8c0a2

📥 Commits

Reviewing files that changed from the base of the PR and between 79db2b8 and cb74b09.

📒 Files selected for processing (3)
  • .github/ci/dependencies.yaml
  • .github/workflows/lint-test.yaml
  • charts/currents/ci/lint-values.yaml
🚧 Files skipped from review as they are similar to previous changes (2)
  • charts/currents/ci/lint-values.yaml
  • .github/workflows/lint-test.yaml

- Removed the ECR login step and preloading of images into the kind cluster from the GitHub Actions workflow.
- Added a new secret for ECR credentials to allow kind to pull private images directly.
- Updated lint-values.yaml to include the new imagePullSecrets configuration.
- Improved error handling for MongoDB replica set initialization in the CI workflow.
- Ensured required fields for SAML configuration in deployment templates are validated.
@twk3 twk3 changed the title feat: Update workflows and add SAML SSO support [ENG-715] feat: Update workflows and add SAML SSO support Jul 8, 2026
@twk3
twk3 merged commit ad3c86d into main Jul 9, 2026
3 checks passed
@twk3
twk3 deleted the feat/add-saml-sso branch July 9, 2026 15:41
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