mirror of
https://github.com/unraid/api.git
synced 2026-01-08 01:29:49 -06:00
separates Unraid Connect from the API ## Summary by CodeRabbit - **New Features** - Introduced a unified, JSON-schema-based settings system for API configuration and plugin settings, accessible via new GraphQL queries and mutations. - Added modular NestJS plugin architecture for Unraid Connect, including new modules for cloud, remote access, and system/network management. - Added granular connection and remote access state tracking, with new GraphQL types and resolvers for cloud and connection status. - Implemented event-driven and service-based management for SSO users, API keys, and dynamic remote access. - Enhanced UI components and queries to support unified settings and restart detection. - **Improvements** - Refactored configuration and state management to use service-based patterns, replacing direct store access and Redux logic. - Migrated legacy config files to new JSON formats with validation and persistence helpers. - Centralized global dependencies and shared services for plugins and CLI modules. - Improved logging, error handling, and lifecycle management for connections and background jobs. - Updated and expanded documentation for plugin development and settings management. - **Bug Fixes** - Improved handling of missing config files and ensured safe persistence. - Enhanced error reporting and validation in remote access and connection services. - **Removals** - Removed deprecated Redux slices, listeners, and legacy cloud/remote access logic. - Deleted obsolete test files, scripts, and unused code related to the old state/store approach. - **Tests** - Added new unit tests for settings merging, URL resolution, and cloud connectivity checks. - **Style** - Applied consistent formatting, import reorganization, and code style improvements across modules. - **Chores** - Updated build scripts, Dockerfiles, and development environment setup to support new dependencies and workflows. - Expanded .gitignore and configuration files for improved build artifact management.
24 lines
1.0 KiB
YAML
24 lines
1.0 KiB
YAML
services:
|
|
plugin-builder:
|
|
ports:
|
|
- 5858:5858
|
|
build: .
|
|
volumes:
|
|
- ./:/app
|
|
- /app/node_modules
|
|
- ${GIT_DIR:-../.git}:/app/.git
|
|
- ../.nvmrc:/app/.nvmrc
|
|
- ../.rclone-version:/app/.rclone-version
|
|
- ./source:/app/source
|
|
- ./scripts:/app/scripts
|
|
- ../unraid-ui/dist-wc:/app/source/dynamix.unraid.net/usr/local/emhttp/plugins/dynamix.my.servers/unraid-components/uui
|
|
- ../web/.nuxt/nuxt-custom-elements/dist/unraid-components:/app/source/dynamix.unraid.net/usr/local/emhttp/plugins/dynamix.my.servers/unraid-components/nuxt
|
|
- ../api/deploy/release/:/app/source/dynamix.unraid.net/usr/local/unraid-api # Use the release dir instead of pack to allow watcher to not try to build with node_modules
|
|
- ../api/deploy/node-modules-archive:/app/node-modules-archive
|
|
stdin_open: true # equivalent to -i
|
|
tty: true # equivalent to -t
|
|
environment:
|
|
- HOST_LAN_IP=${HOST_LAN_IP}
|
|
- CI=${CI:-false}
|
|
- TAG=${TAG}
|
|
- API_VERSION=${API_VERSION} |