Assemble an Integrant system from a loaded configuration map.
This is the half of wagoe.system-config that is the same in every
application: the components every Wagoe app has (database, HTTP, router,
observability, i18n), the framework modules its config switches on, and the
modules bb scaffold generate produced. What is left for the application is
what only it knows — see the generated config.clj.
Before BOU-326 this lived in the generated file, 404 lines of it, and a
second copy lived in this repository's own src/wagoe/system_config.clj.
Neither copy wired :wagoe/workflow-db-schema, so wagoe add workflow
produced a module whose tables were never created.
Usage: (system-config (config/load-config) {:extra-modules #{:wagoe/user}})
Assemble an Integrant system from a loaded configuration map.
This is the half of `wagoe.system-config` that is the same in every
application: the components every Wagoe app has (database, HTTP, router,
observability, i18n), the framework modules its config switches on, and the
modules `bb scaffold generate` produced. What is left for the application is
what only it knows — see the generated `config.clj`.
Before BOU-326 this lived in the generated file, 404 lines of it, and a
second copy lived in this repository's own `src/wagoe/system_config.clj`.
Neither copy wired `:wagoe/workflow-db-schema`, so `wagoe add workflow`
produced a module whose tables were never created.
Usage:
(system-config (config/load-config) {:extra-modules #{:wagoe/user}})Integrant system lifecycle management for Wagoe application.
This namespace defines init-key and halt-key! multimethods for all system components, providing proper lifecycle management and dependency injection for the entire application.
Components:
Usage: (require '[wagoe.config :as config]) (require '[wagoe.system-config :as sys-config]) ; your application's (require '[integrant.core :as ig]) (def cfg (sys-config/ig-config (config/load-config))) (def system (ig/init cfg)) (ig/halt! system)
Integrant system lifecycle management for Wagoe application. This namespace defines init-key and halt-key! multimethods for all system components, providing proper lifecycle management and dependency injection for the entire application. Components: - :wagoe/db-context - Database connection pool and adapter - :wagoe/user-repository - User data persistence - :wagoe/session-repository - Session data persistence - :wagoe/user-service - User business logic orchestration - :wagoe/logging - Structured logging and audit trails - :wagoe/metrics - Application and business metrics collection - :wagoe/error-reporting - Error tracking and alerting - :wagoe/http-handler - HTTP request routing and handling - :wagoe/http-server - Jetty HTTP server Usage: (require '[wagoe.config :as config]) (require '[wagoe.system-config :as sys-config]) ; your application's (require '[integrant.core :as ig]) (def cfg (sys-config/ig-config (config/load-config))) (def system (ig/init cfg)) (ig/halt! system)
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |