- Does fuzzyma/contao-database-commands-bundle work with Laravel?
- No. This is a Contao CMS bundle built on Symfony Console, not a Laravel package, so it has no service provider, no package auto-discovery, and no Artisan integration. Composer-installing it into a Laravel app would only pull dead Symfony 3 dependencies for no capability gain. In Laravel, schema evolution is covered by php artisan migrate and admin bootstrap by a seeder or a small custom Artisan command.
- How do I install contao-database-commands-bundle?
- Install it with composer require fuzzyma/contao-database-commands-bundle on a compatible Contao install. It registers through Contao's bundle convention, so on Contao 4.4 to 4.6 the console commands become available without extra wiring. The constraints are from 2018, so it will fail to resolve on modern PHP or Contao versions.
- Which Contao, PHP and Symfony versions does it support?
- The 2018 release vintage implies php ^5.6 || ^7.0 and Symfony 3.x console constraints, matching Contao 4.4 to 4.6. It will not resolve against PHP 8.x or Symfony 5/6 as used by Contao 4.9 and later. Validate the Contao minor, PHP runtime and Symfony console version as a three-way matrix before committing.
- What commands does the bundle actually provide?
- It registers Symfony Console commands that trigger Contao's database schema update and that create an admin backend user entry. The schema update wraps Contao's Doctrine-driven Database\Installer rather than any migration framework. It is not a general-purpose migration or seeding tool.
- How is the bundle configured after installation?
- There is very little configuration beyond bundle registration. The commands use Contao's existing database connection and installer settings, and inputs such as admin credentials are passed as CLI arguments rather than a config file. There are no Laravel-style env flags, so behavior depends on the Contao version underneath.
- Is it safe to run the database update command in production?
- Treat it with caution. The command wraps Contao's installer, which performs destructive DDL, and there is no dry-run contract you can rely on across Contao versions. Back up first and prefer running it in development or preview environments. Contao 4.9+ ships contao:migrate natively, which is the safer path.
- Can I use it to create admin users automatically in CI/CD?
- It works technically, but it is a credential-creation primitive with a direct escalation and audit gap when driven by CI environment variables. Limit automatic admin creation to ephemeral preview or test environments. In production, create backend users deliberately via Contao's native contao:user:create on 4.9+ instead.
- Is the package still maintained and what are the risks?
- The last release was 2018-12-04 with around 19 stars, zero dependents and no maintainer response path, so it is effectively abandoned. It is MIT licensed, so you can fork it, but you then own any CVE response yourself. The lack of downstream validation makes the unmaintained status a real supply-chain concern.
- What are the alternatives to this bundle?
- For Contao, upgrade to 4.9 or later (or 4.13 LTS) and use the native contao:migrate and contao:user:create commands, then drop the bundle. For Laravel, php artisan migrate plus a seeder or a short custom Artisan command covers the same ground with framework-native audit hooks. A roughly 50-line in-house Symfony command is often cheaper than forking the upstream.
- How should I test or validate compatibility before adopting it?
- Run a short spike against a clone of the actual target: capture the Contao, PHP and Symfony versions, then run composer require --dry-run against a copy of the target composer.lock. Expect resolution to fail on PHP 8.0 or newer, which usually ends the evaluation. If it resolves, scope the bundle to non-production environments; otherwise fork and bump the constraints or replace it with native commands.