goats_setup/¶
This Django app bootstraps a new GOATS installation by configuring project settings, URLs, and ASGI routing. It is invoked by the CLI’s goats install command and defines a Django management command to perform this setup non-interactively.
Main Responsibilities¶
Provides the
goats_setupmanagement command.Modifies
settings.py,urls.py, andasgi.pyusing Jinja2-based templates.Registers required GOATS and TOMToolkit apps.
Configures Redis, Channels, and static/media directories for GOATS projects.
Files¶
apps.pyDjango app registry file forgoats_setup.management/commands/goats_setup.pyCustom Django management command used bygoats install. Applies settings modifications using the provided templates. Supports CLI options like--media-dir,--ci, and--redis-addrport.templates/goats_setup/Jinja2-compatible templates rendered into the generated project.settings.tmplUsed to produce a modifiedsettings.pywith required installed apps and middleware.urls.tmplUsed to generate aurls.pypre-configured with GOATS and TOMToolkit routes.asgi.tmplUsed to configure Channels and Redis for asynchronous features.