Windows installer: payload hash-locking, SBOM, client-IP handling, operator docs
This commit is contained in:
58
README.md
58
README.md
@@ -20,7 +20,7 @@ ShopDB tracks and manages:
|
||||
## Tech Stack
|
||||
|
||||
**Backend:**
|
||||
- Python 3.12 with Flask
|
||||
- Python 3.14 with Flask
|
||||
- SQLAlchemy ORM
|
||||
- MySQL 5.7+ database (5.6 works with extra utf8mb4 config; see the DEPLOY wiki page)
|
||||
- JWT authentication
|
||||
@@ -36,26 +36,26 @@ ShopDB tracks and manages:
|
||||
|
||||
```
|
||||
shopdb-flask/
|
||||
├── shopdb/ # Flask application
|
||||
│ ├── core/
|
||||
│ │ ├── api/ # REST API endpoints
|
||||
│ │ ├── models/ # SQLAlchemy models
|
||||
│ │ ├── schemas/ # Validation schemas
|
||||
│ │ └── services/ # Business logic
|
||||
│ ├── plugins/ # Plugin system
|
||||
│ └── utils/ # Shared utilities
|
||||
├── frontend/ # Vue 3 application
|
||||
│ ├── src/
|
||||
│ │ ├── api/ # API client
|
||||
│ │ ├── components/ # Reusable components
|
||||
│ │ ├── views/ # Page components
|
||||
│ │ ├── router/ # Route definitions
|
||||
│ │ └── stores/ # Pinia stores
|
||||
│ └── public/ # Static assets
|
||||
├── plugins/ # Bundled and external plugins
|
||||
├── migrations/ # Alembic migration chain (flask db upgrade)
|
||||
├── scripts/ # Import and utility scripts
|
||||
└── tests/ # Test suite
|
||||
+-- shopdb/ # Flask application
|
||||
| +-- core/
|
||||
| | +-- api/ # REST API endpoints
|
||||
| | +-- models/ # SQLAlchemy models
|
||||
| | +-- schemas/ # Validation schemas
|
||||
| | `-- services/ # Business logic
|
||||
| +-- plugins/ # Plugin system
|
||||
| `-- utils/ # Shared utilities
|
||||
+-- frontend/ # Vue 3 application
|
||||
| +-- src/
|
||||
| | +-- api/ # API client
|
||||
| | +-- components/ # Reusable components
|
||||
| | +-- views/ # Page components
|
||||
| | +-- router/ # Route definitions
|
||||
| | `-- stores/ # Pinia stores
|
||||
| `-- public/ # Static assets
|
||||
+-- plugins/ # Bundled and external plugins
|
||||
+-- migrations/ # Alembic migration chain (flask db upgrade)
|
||||
+-- scripts/ # Import and utility scripts
|
||||
`-- tests/ # Test suite
|
||||
```
|
||||
|
||||
## Naming Conventions
|
||||
@@ -98,7 +98,7 @@ To maintain consistency with the legacy ShopDB database and codebase, the follow
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- Python 3.12
|
||||
- Python 3.14
|
||||
- Node.js 18+
|
||||
- MySQL 5.7+ (5.6 works with extra utf8mb4 config; see the DEPLOY wiki page)
|
||||
|
||||
@@ -174,8 +174,15 @@ token plus the IMPORT-API page in the project wiki drive the whole migration
|
||||
through documented endpoints (`X-Import-Mode` preserves original timestamps).
|
||||
`scripts/site_imports/wjf/` is the West Jefferson reference loader.
|
||||
|
||||
For the full per-site deployment runbook see the DEPLOY page in the project wiki;
|
||||
for every environment variable and Setting key see the CONFIG page in the project wiki.
|
||||
### Which deployment route
|
||||
|
||||
| Target | Use |
|
||||
|---|---|
|
||||
| **Windows Server + IIS** (how sister sites run) | **the INSTALL-WINDOWS page in the project wiki** - one installer `.exe`, offline, no manual IIS work. Day 2: the OPERATE-WINDOWS page in the project wiki |
|
||||
| Linux / Docker, air-gapped | the DEPLOY-AIRGAP page in the project wiki |
|
||||
| Linux / Docker, connected | the DEPLOY page in the project wiki |
|
||||
|
||||
For every environment variable and Setting key see the CONFIG page in the project wiki.
|
||||
|
||||
## Configuration
|
||||
|
||||
@@ -217,7 +224,7 @@ Query parameters for list endpoints:
|
||||
|
||||
ShopDB supports plugins for extending functionality. See `CONTRIBUTING.md` for plugin development guidelines.
|
||||
|
||||
The image bundles twelve plugins; only the ones a site installs are loaded:
|
||||
The image bundles thirteen plugins; only the ones a site installs are loaded:
|
||||
|
||||
- **computers** - Shopfloor PCs and workstations, collector fleet ingest
|
||||
- **employees** - Employee directory
|
||||
@@ -227,6 +234,7 @@ The image bundles twelve plugins; only the ones a site installs are loaded:
|
||||
- **knowledgebase** - Documentation and troubleshooting guides
|
||||
- **network** - Network devices and subnets
|
||||
- **notifications** - Shopfloor notifications and recognition feed
|
||||
- **printedparts** - 3D-printed part catalogue, kiosk issue tracking and stock alerts
|
||||
- **printers** - Extended printer management with Zabbix integration
|
||||
- **slides** - TV/kiosk slideshows
|
||||
- **usb** - CMMC USB check-in/out tracking
|
||||
|
||||
Reference in New Issue
Block a user