Skip to content

CLI Commands

Operational reference for the artisan commands you run to deploy, maintain, and operate Inventorix.

Local dev (DDEV): prefix every command with ddev artisan, e.g. ddev artisan migrate.
Docker / production: run commands inside the app container, e.g. docker exec -it <container> php artisan migrate.


CommandDescription
php artisan migrateRun pending database migrations.
php artisan migrate --forceRun migrations in production (bypasses the interactive prompt). The Docker image runs this automatically on start when RUN_MIGRATIONS=true.
php artisan db:seedSeed the database. Creates the default admin account (hello@noix.dev / Start23!). Change the password immediately after first login.
php artisan key:generateGenerate and write a new APP_KEY to .env. Required on first setup.
php artisan filament:upgradeUpdate Filament internal assets after a package upgrade. Run after composer update.
php artisan filament:assetsRe-publish Filament static assets. Run if the UI looks broken after a deployment.

Inventorix uses the database queue driver by default. For production workloads, switch to redis and use Horizon.

CommandDescription
php artisan queue:workProcess jobs from the default queue. Use in simple single-server setups.
php artisan horizonStart Laravel Horizon (Redis-backed queue manager with a dashboard). Requires QUEUE_CONNECTION=redis.

See Queues configuration and Operations.


The task scheduler dispatches commands on a timed basis. In production, a single cron entry drives the scheduler:

Terminal window
* * * * * php artisan schedule:run >> /dev/null 2>&1
CommandDescription
php artisan schedule:runExecute all due scheduled tasks once. Called by the system cron every minute.
php artisan schedule:workStart the scheduler in the foreground (polls every minute). Useful in Docker containers instead of a system cron.
ScheduleCommandDescription
Daily at 07:00warranty:scan-expiriesScan asset warranty/guarantee end dates and send an expiry digest email.

CommandSignature
Scan warranty expiriesphp artisan warranty:scan-expiries

Scans all assets with a guarantee_end date and sends a grouped expiry digest email to the configured recipients. Skips silently if warranty notifications are disabled in Settings or no recipients are configured.

This command has no CLI options. Behaviour is controlled entirely through the Warranty settings in the admin UI (enable/disable, lead-time days, recipient list).

See Notifications for how warranty alerts work from the user’s perspective.


CommandDescription
php artisan activitylog:cleanDelete old activity log entries. Uses the retention period configured in config/activitylog.php (default: 365 days). Run periodically to keep the activity_log table from growing unbounded.

See Operations.


Run these after deploying a new version or changing configuration.

CommandDescription
php artisan config:cacheSerialise all config files into a single cache file. Do not run in local dev — cached config ignores .env changes.
php artisan route:cacheCache the route list. Speeds up route resolution.
php artisan view:cachePre-compile all Blade views.
php artisan event:cacheCache event/listener discovery.
php artisan optimizeRuns config:cache, route:cache, view:cache, and event:cache together.
php artisan optimize:clearClear all caches created by optimize.

CommandDescription
php artisan octane:startStart the Octane application server (used in the Docker image). Defaults to the FrankenPHP or Swoole driver as configured in config/octane.php.
php artisan octane:reloadReload Octane workers without dropping existing connections. Use after a code deploy.
php artisan octane:stopStop the Octane server.