Add Micron asset picker to work package creator
Adds an optional read-only Micron asset catalog lookup for the WP creator, with searchable asset IDs, CSV import, and graceful fallback to manual asset entry when the catalog is absent or unreachable. This includes the backend /api/assets endpoint, SQL Server connector configuration, Docker network changes for outbound access, and UI updates/documentation to make the catalog read-only and clearly distinguish Micron-vetted assets from manual entries.
This commit is contained in:
@@ -30,3 +30,25 @@ AUTH_SECRET_KEY=CHANGE_ME_run_the_command_above
|
||||
# notifications are marked "skipped", nothing is sent) until both the toggle is
|
||||
# on and SMTP is configured.
|
||||
# SMTP_PASSWORD=your-smtp-app-password
|
||||
|
||||
# ── Micron asset catalog (optional) ───────────────────────────────────────────
|
||||
# Backs the searchable asset picker in the work package creator. READ-ONLY: the
|
||||
# app only ever runs the single SELECT in server/assets_db.py, so give it a
|
||||
# db_datareader login and nothing more.
|
||||
#
|
||||
# Leave this unset and the suite works normally — the picker reports that no
|
||||
# catalog is configured and people type asset tags in by hand.
|
||||
#
|
||||
# URL-encode special characters in the password (@ = %40, # = %23, / = %2F …).
|
||||
# MICRON_DB_URL=mssql+pymssql://readonly_user:PASSWORD@sqlhost.example.com:1433/MicronDB
|
||||
#
|
||||
# To use pyodbc instead of pymssql you must also add pyodbc to requirements.txt
|
||||
# and install the Microsoft ODBC driver in the image:
|
||||
# MICRON_DB_URL=mssql+pyodbc://readonly_user:PASSWORD@sqlhost.example.com/MicronDB?driver=ODBC+Driver+18+for+SQL+Server
|
||||
#
|
||||
# Two things to check when the picker says the catalog is unreachable:
|
||||
# 1. The table/column names in ASSET_QUERY (server/assets_db.py) match the real
|
||||
# Micron schema — that one constant is the whole schema contract.
|
||||
# 2. The api container is on the `outbound` network in docker-compose.yml. The
|
||||
# `internal` network has no default gateway, which blocks the VPN as well as
|
||||
# the internet.
|
||||
|
||||
Reference in New Issue
Block a user