openpsa / installer
Installer for OpenPSA components and projects
Requires
- php: >=8.1
- composer-plugin-api: ^2.0
- openpsa/midgard-portable: >=1.10
- symfony/console: >=6.4
- symfony/filesystem: >=6.4
Requires (Dev)
- composer/composer: ^2.0
- phpunit/phpunit: ^10.5.10
This package is auto-updated.
Last update: 2026-06-08 14:00:33 UTC
README
Installation and setup tools for OpenPSA/MidCOM packages and projects.
Composer Support
Due to the logic of Composer, this basically consists of two parts,
a custom installer, that is to say, an implementation of Composer\Installer\InstallerInterface which is used for
packages installed in the vendor directory, and static functions that are run from script hooks in the root package.
What the installer will do is link all the schema files to the central Midgard 2 schema dir, and all the static
directories (both from themes and from components' static folders) to midcom-static, so that they are accessible via
the web server.
Usage
To use the installer in a libary or component, simply set the type key to midcom-package in composer.json. You should
also add openpsa/installer to your requires.
To use the installer in a root package, add openpsa/installer to your requires in composer.json.
Additionally, add the following hooks:
"scripts": { "post-install-cmd": [ "openpsa\\installer\\installer::setup_root_package" ], "post-update-cmd": [ "openpsa\\installer\\installer::setup_root_package" ] },
Database setup
The installer package contains a CLI utility to set up new databases. From your project's root directory, you can run it like this:
./vendor/bin/openpsa-installer midgard2:setup
You can pass the name or location of an existing Midgard2 configuration file as an argument to the script, or you can optionally specify the DB type you want to create. Run
./vendor/bin/openpsa-installer help midgard2:setup
to see all available options.