Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,8 @@ test:
variables:
POSTGRES_DB: sdm_test
POSTGRES_PASSWORD: postgres
SDM_POSTGRES_TEST_DSN: postgresql://postgres:postgres@postgres:5432/sdm_test
PGPASSWORD: postgres
SDM_POSTGRES_TEST_DSN: postgresql://postgres@postgres:5432/sdm_test
SDM_REQUIRE_POSTGRES: "1"
script:
# databricks is here for its driver, not for a server: those tests mock the
Expand Down Expand Up @@ -126,7 +127,8 @@ engine:
variables:
POSTGRES_DB: sdm_test
POSTGRES_PASSWORD: postgres
SDM_POSTGRES_TEST_DSN: postgresql://postgres:postgres@postgres:5432/sdm_test
PGPASSWORD: postgres
SDM_POSTGRES_TEST_DSN: postgresql://postgres@postgres:5432/sdm_test
SDM_REQUIRE_POSTGRES: "1"
script:
- apt-get update -qq && apt-get install -y -qq build-essential cmake git
Expand Down
72 changes: 72 additions & 0 deletions .nspect-allowlist.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
# SPDX-FileCopyrightText: Copyright (c) 2026, NVIDIA CORPORATION & AFFILIATES.
# All rights reserved.
# SPDX-License-Identifier: Apache-2.0

# Secret-scanner allowlist, read by nSpect's Pulse scan at the repository root.
#
# Every entry below is a placeholder credential in a test or an example, not a
# secret. Most of them exist precisely because this client redacts credentials
# before they reach a log or an error: the tests assert the redaction by
# feeding it a URL with a password in it. The scanner cannot tell that apart
# from a real one, and verified none of them against a live service.
#
# Regenerate after a scan rather than editing by hand, and never add an entry
# for a credential that is real. A real one is rotated and removed.

version = "1.0.0"

[[pulse-trufflehog.files]]
file = "packages/structured-data-models-client/src/sdm_client/core/transport.py"

[[pulse-trufflehog.files.secrets]]
type = "URI"
values = [ "http://user:********@host", "https://user:********@host/path" ]

[[pulse-trufflehog.files]]
file = "packages/structured-data-models-client/tests/test_credential_redaction.py"

[[pulse-trufflehog.files.secrets]]
type = "URI"
values = [ "https://user:********@host/v1", "https://user:********@host:8443/v1" ]

[[pulse-trufflehog.files]]
file = "packages/structured-data-models-client/tests/test_transport_hardening.py"

[[pulse-trufflehog.files.secrets]]
type = "URI"
values = [ "http://user:********@127.0.0.1:8000", "http://user:********@localhost:8000", "https://user:********@nim.example" ]

[[pulse-trufflehog.files]]
file = "packages/structured-data-models-relational-engine/src/sdm_relational_engine/client/client.py"

[[pulse-trufflehog.files.secrets]]
type = "URI"
values = [ "http://user:********@host", "https://user:********@host/path" ]

[[pulse-trufflehog.files]]
file = "packages/structured-data-models-relational-engine/tests/client/test_credential_redaction.py"

[[pulse-trufflehog.files.secrets]]
type = "URI"
values = [ "https://user:********@host/v1", "https://user:********@host:8443/v1" ]

[[pulse-trufflehog.files]]
file = "packages/structured-data-models-relational-engine/tests/client/test_rfm_nim_live_harness.py"

[[pulse-trufflehog.files.secrets]]
type = "URI"
values = [ "https://user:********@example.test/rfm" ]

[[pulse-trufflehog.files]]
file = "packages/structured-data-models-relational-engine/tests/client/test_snowflake_serving.py"

[[pulse-trufflehog.files.secrets]]
type = "URI"
values = [ "https://user:********@acct.snowflakecomputing.com" ]

[[pulse-trufflehog.files]]
file = "qa/probe_edges.py"

[[pulse-trufflehog.files.secrets]]
type = "URI"
values = [ "http://user:********@example.com" ]
Loading