Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
d783166
solr feature branch - part 1 (#1870)
EPortman Aug 20, 2025
8a564a8
Update vaults.gcp.env
EPortman Aug 20, 2025
940facc
#29879 namex solr api integration (#1876)
eve-git Aug 27, 2025
501730c
29879 create solr client (#1877)
eve-git Sep 8, 2025
ba6f633
29879 Remove punctuation from names before extracting phonetics (#1878)
eve-git Sep 10, 2025
9129212
Add designation from NameRequestto support Solr name filter (#1905)
eve-git Sep 19, 2025
04e4ff0
29879 Update according to new Solr-API highlighting output (#1925)
eve-git Nov 14, 2025
2e56899
Merge branch 'main' of github.com:bcgov/namex into feature-solr
hfekete Dec 17, 2025
65dbba5
Merge branch 'main' of github.com:bcgov/namex into feature-solr-merged
hfekete Jan 12, 2026
96a8dcf
Merge pull request #1947 from hfekete/feature-solr-merged
hfekete Jan 22, 2026
57e8a86
Feature solr merged (#1959)
hfekete Feb 18, 2026
7027ae8
Feature solr merged (#1961)
hfekete Feb 18, 2026
7fd08d4
32639 - Feature solr merged (#1964)
hfekete Mar 3, 2026
05a347f
Feature solr merged (#1965)
hfekete Mar 5, 2026
d7fa1c2
feat: Add `sub_type` field support in Solr document processing for NR…
hfekete Mar 25, 2026
ca526d9
fix:use correct service account env vars for solr api auth
Oluwapizzy May 14, 2026
2c513bf
fix: use correct env vars for solr api service account auth and updat…
Oluwapizzy May 15, 2026
559cb0b
Merge pull request #1970 from Oluwapizzy/feature-solr-merged
Oluwapizzy May 15, 2026
c73cec6
fix: convert possible conflict solr deletes to state updates
Oluwapizzy Jun 2, 2026
323037d
Merge pull request #1973 from bcgov/fix/convert-solr-deletes-to-updates
Oluwapizzy Jun 3, 2026
0e7db5e
feat: add test-only endpoint to set NR state without Solr update (#32…
Oluwapizzy Jun 10, 2026
cb5977a
Merge pull request #1975 from Oluwapizzy/feature/test-set-nr-state
Oluwapizzy Jun 11, 2026
c9f99fa
Security complaints
stevenc987 Jun 16, 2026
f2b53e3
Update .env.sample
stevenc987 Jun 16, 2026
37db5f5
fix secrtes in .env.sample
Oluwapizzy Jun 16, 2026
9ca74c2
Merge branch 'feature-solr-merged' into feature/test-set-nr-state
stevenc987 Jun 16, 2026
9a2c738
Merge pull request #1981 from Oluwapizzy/feature/test-set-nr-state
Oluwapizzy Jun 16, 2026
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
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1 +1 @@
* @eve-git @shaangill025 @stevenc987 @mengdong19 @ozamani9gh @rarmitag @flutistar @EPortman
* @stevenc987 @mengdong19 @ozamani9gh @rarmitag @hfekete @davemck513
4 changes: 4 additions & 0 deletions .github/workflows/bad-designation-notifier-cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,10 @@ on:
- "false"
- "true"

permissions:
id-token: write
contents: write

jobs:
namex-bad-designation-notifier-cd:
uses: bcgov/bcregistry-sre/.github/workflows/backend-job-cd.yaml@main
Expand Down
8 changes: 5 additions & 3 deletions .github/workflows/bad-designation-notifier-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,14 @@ defaults:
shell: bash
working-directory: ./jobs/bad-designation-notifier

permissions:
id-token: write
contents: write

jobs:
namex-bad-designation-notifier-ci:
uses: bcgov/bcregistry-sre/.github/workflows/backend-ci.yaml@main
with:
app_name: "namex-bad-designation-notifier"
working_directory: "./jobs/bad-designation-notifier"
codecov_flag: "namexbaddesignationnotifier"
skip_isort: "true"
skip_black: "true"
codecov_flag: "namex-bad-designation-notifier"
4 changes: 4 additions & 0 deletions .github/workflows/bad-name-notifier-cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,10 @@ on:
- "false"
- "true"

permissions:
id-token: write
contents: write

jobs:
namex-bad-name-notifier-cd:
uses: bcgov/bcregistry-sre/.github/workflows/backend-job-cd.yaml@main
Expand Down
8 changes: 5 additions & 3 deletions .github/workflows/bad-name-notifier-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,14 @@ defaults:
shell: bash
working-directory: ./jobs/bad-name-notifier

permissions:
id-token: write
contents: write

jobs:
namex-bad-name-notifier-ci:
uses: bcgov/bcregistry-sre/.github/workflows/backend-ci.yaml@main
with:
app_name: "namex-bad-name-notifier"
working_directory: "./jobs/bad-name-notifier"
codecov_flag: "namexbadnamenotifier"
skip_isort: "true"
skip_black: "true"
codecov_flag: "namex-bad-name-notifier"
2 changes: 1 addition & 1 deletion .github/workflows/notebook-report-cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
uses: bcgov/bcregistry-sre/.github/workflows/backend-job-cd.yaml@main
with:
target: ${{ inputs.target }}
app_name: "notebook-report"
app_name: "namex-notebook-report"
working_directory: "./jobs/notebook-report"
redeploy: ${{ inputs.redeploy }}
secrets:
Expand Down
4 changes: 1 addition & 3 deletions .github/workflows/sftp-nuans-report-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,4 @@ jobs:
with:
app_name: "nuans-report"
working_directory: "./jobs/sftp-nuans-report"
codecov_flag: "namexnuansreport"
skip_isort: "true"
skip_black: "true"
codecov_flag: "namexnuansreport"
44 changes: 24 additions & 20 deletions api/.env.sample
Original file line number Diff line number Diff line change
@@ -1,29 +1,33 @@
SECRET_KEY=
GUNICORN_PROCESSES='2'
GUNICORN_THREADS='5'
GUNICORN_PROCESSES=
GUNICORN_THREADS=

# Database
# only for local db
# check dev-scripts/local-db/docker-compose.yml for exact values
# similar values are also used in https://github.com/bcgov/bcregistry-sre/blob/main/.github/workflows/backend-ci.yaml
DATABASE_USERNAME=postgres
DATABASE_PASSWORD="postgres"
DATABASE_NAME="unittesting"
DATABASE_HOST="localhost"
DATABASE_PORT="54345"
DATABASE_SCHEMA="public"
DATABASE_OWNER="postgres"
DATABASE_USERNAME=
DATABASE_PASSWORD=
DATABASE_NAME=
DATABASE_HOST=
DATABASE_PORT=
DATABASE_SCHEMA=
DATABASE_OWNER=

# only when conenecting to clousql db
DATABASE_INSTANCE_CONNECTION_NAME=
DATABASE_NAME=namex
DATABASE_USERNAME="[email protected]" # your email, which needs to be added as IAM user to cloudsql instance and granted readwrite access
DATABASE_IP_TYPE=public
DATABASE_OWNER=userHQH
DATABASE_NAME=
DATABASE_USERNAME= # your email, which needs to be added as IAM user to cloudsql instance and granted readwrite access
DATABASE_IP_TYPE=
DATABASE_OWNER=

# APIs
SOLR_BASE_URL=
# Solr API
SOLR_API_URL=
SOLR_API_VERSION=
SOLR_API_SERVICE_ACCOUNT_CLIENT_ID=
SOLR_API_SERVICE_ACCOUNT_CLIENT_SECRET=

# APIs
SOLR_SYNONYMS_API_URL=
SOLR_SYNONYMS_API_VERSION=

Expand Down Expand Up @@ -61,9 +65,9 @@ ENTITY_SERVICE_ACCOUNT_CLIENT_SECRET=

JWT_OIDC_WELL_KNOWN_CONFIG=
JWT_OIDC_CLIENT_SECRET=
JWT_OIDC_ALGORITHMS=RS256
JWT_OIDC_CACHING_ENABLED=True
JWT_OIDC_JWKS_CACHE_TIMEOUT=300
JWT_OIDC_ALGORITHMS=
JWT_OIDC_CACHING_ENABLED=
JWT_OIDC_JWKS_CACHE_TIMEOUT=

# PUBSUB
NAMEX_MAILER_TOPIC=
Expand All @@ -74,7 +78,7 @@ MRAS_SVC_URL=
MRAS_SVC_API_KEY=

# Local development only
DISABLE_NAMEREQUEST_SOLR_UPDATES=1
DISABLE_NAMEREQUEST_SOLR_UPDATES=

# launchdarkly
NAMEX_LD_SDK_ID=sdk-075200eb-4ff7-4e0e-872a-848585d3d460
NAMEX_LD_SDK_ID=
15 changes: 13 additions & 2 deletions api/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ class Config(object):

SQLALCHEMY_TRACK_MODIFICATIONS = False

SOLR_BASE_URL = os.getenv('SOLR_BASE_URL', None)
SOLR_API_URL = f'{os.getenv('SOLR_API_URL', None)}{os.getenv('SOLR_API_VERSION', None)}'

SOLR_SYNONYMS_API_URL = f'{os.getenv("SOLR_SYNONYMS_API_URL", None)}{os.getenv("SOLR_SYNONYMS_API_VERSION", None)}'

Expand Down Expand Up @@ -100,8 +100,16 @@ class Config(object):
PAYMENT_SVC_AUTH_CLIENT_ID = os.getenv('NAME_REQUEST_SERVICE_ACCOUNT_CLIENT_ID', '')
PAYMENT_SVC_CLIENT_SECRET = os.getenv('NAME_REQUEST_SERVICE_ACCOUNT_CLIENT_SECRET', '')

SOLR_SVC_AUTH_URL = os.getenv('KEYCLOAK_AUTH_TOKEN_URL', '')
SOLR_API_SERVICE_ACCOUNT_CLIENT_ID = os.getenv('SOLR_API_SERVICE_ACCOUNT_CLIENT_ID', '')
SOLR_API_SERVICE_ACCOUNT_CLIENT_SECRET = os.getenv('SOLR_API_SERVICE_ACCOUNT_CLIENT_SECRET', '')

DISABLE_NAMEREQUEST_SOLR_UPDATES = int(os.getenv('DISABLE_NAMEREQUEST_SOLR_UPDATES', 0))

# Enables test-only endpoints (e.g. force NR state without notifying Solr).
# Set in dev/test/sandbox only - never in production.
ALLOW_TEST_ENDPOINT = os.getenv('ALLOW_TEST_ENDPOINT', 'false').lower() == 'true'

NAMEX_NR_STATE_TOPIC = os.getenv('NAMEX_NR_STATE_TOPIC', '')
EMAILER_TOPIC = os.getenv('NAMEX_MAILER_TOPIC', '')

Expand Down Expand Up @@ -142,7 +150,10 @@ class TestConfig(Config): # pylint: disable=too-few-public-methods
DB_NAME = os.getenv('DATABASE_TEST_NAME', 'unittesting')
DB_HOST = os.getenv('DATABASE_TEST_HOST', 'localhost')
DB_PORT = os.getenv('DATABASE_TEST_PORT', '54345')
SQLALCHEMY_DATABASE_URI = f'postgresql+pg8000://{DB_USER}:{DB_PASSWORD}@{DB_HOST}:{int(DB_PORT)}/{DB_NAME}'
if os.getenv('TEST_USE_LOCAL_DB', False):
SQLALCHEMY_DATABASE_URI = f'postgresql+psycopg2://{DB_USER}:{DB_PASSWORD}@{DB_HOST}:{int(DB_PORT)}/{DB_NAME}'
else:
SQLALCHEMY_DATABASE_URI = f'postgresql+pg8000://{DB_USER}:{DB_PASSWORD}@{DB_HOST}:{int(DB_PORT)}/{DB_NAME}'

# Ensure SQLAlchemy is properly configured for Flask-Marshmallow compatibility
SQLALCHEMY_TRACK_MODIFICATIONS = False
Expand Down
3 changes: 2 additions & 1 deletion api/devops/gcp/clouddeploy.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -82,4 +82,5 @@ serialPipeline:
cloudsql-instances: "a083gt-prod:northamerica-northeast1:namex-db-prod"
resources-cpu: 4000m
resources-memory: 8Gi
container-concurrency: "8"
max-scale: "60"
container-concurrency: "20"
8 changes: 6 additions & 2 deletions api/devops/vaults.gcp.env
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,15 @@ LEGAL_API_URL="op://API/$APP_ENV/legal-api/LEGAL_API_URL"
LEGAL_API_VERSION="op://API/$APP_ENV/legal-api/LEGAL_API_VERSION_2"
NAMEX_LD_SDK_ID="op://launchdarkly/$APP_ENV/namex/NAMEX_LD_SDK_ID"
SECRET_KEY="op://namex/$APP_ENV/namex-api/SECRET_KEY"
SOLR_BASE_URL="op://namex/$APP_ENV/namex-api/SOLR_BASE_URL_EXTERNAL"
SOLR_API_URL="op://namex/$APP_ENV/solr/SOLR_API_URL"
SOLR_API_VERSION="op://namex/$APP_ENV/solr/SOLR_API_VERSION"
SOLR_API_SERVICE_ACCOUNT_CLIENT_ID="op://namex/$APP_ENV/solr/SOLR_API_SERVICE_ACCOUNT_CLIENT_ID"
SOLR_API_SERVICE_ACCOUNT_CLIENT_SECRET="op://namex/$APP_ENV/solr/SOLR_API_SERVICE_ACCOUNT_CLIENT_SECRET"
GUNICORN_PROCESSES="op://namex/$APP_ENV/namex-api/GUNICORN_PROCESSES"
GUNICORN_THREADS="op://namex/$APP_ENV/namex-api/GUNICORN_THREADS"
AUTO_ANALYZE_URL="op://namex/$APP_ENV/namex-api/AUTO_ANALYZE_URL"
AUTO_ANALYZE_CONFIG="op://namex/$APP_ENV/namex-api/AUTO_ANALYZE_CONFIG"
ALLOW_TEST_ENDPOINT="op://namex/$APP_ENV/namex-api/ALLOW_TEST_ENDPOINT"
MRAS_SVC_URL="op://namex/$APP_ENV/mras-api/MRAS_SVC_URL"
MRAS_SVC_API_KEY="op://namex/$APP_ENV/mras-api/MRAS_SVC_API_KEY"
JWT_OIDC_AUDIENCE="op://namex/$APP_ENV/jwt/JWT_OIDC_AUDIENCE"
Expand All @@ -47,4 +51,4 @@ DATABASE_USERNAME="op://database/$APP_ENV/namex-db-gcp/DATABASE_USERNAME"
DATABASE_NAME="op://database/$APP_ENV/namex-db-gcp/DATABASE_NAME"
DATABASE_INSTANCE_CONNECTION_NAME="op://database/$APP_ENV/namex-db-gcp/DATABASE_INSTANCE_CONNECTION_NAME"
DATABASE_SCHEMA="op://database/$APP_ENV/namex-db-gcp/DATABASE_SCHEMA"
DATABASE_OWNER="op://database/$APP_ENV/namex-db-gcp/DATABASE_OWNER"
DATABASE_OWNER="op://database/$APP_ENV/namex-db-gcp/DATABASE_OWNER"
2 changes: 1 addition & 1 deletion api/namex/VERSION.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
__version__ = '1.2.69'
__version__ = '1.2.70'
4 changes: 0 additions & 4 deletions api/namex/analytics/__init__.py

This file was deleted.

164 changes: 0 additions & 164 deletions api/namex/analytics/phonetic/__init__.py

This file was deleted.

Loading