Skip to content

jonmldr/grumphp-doctrine-task

Repository files navigation

Doctrine schema validation task for GrumPHP

Latest Version on Packagist MIT Licensed Total Downloads PHP Version Support

This library provides Doctrine's schema validation in Symfony projects as a GrumPHP task.

Note: this task is made for Symfony projects, it uses 'bin/console' so you don't have to configure the Doctrine CLI.

Demo

demo

Installation

You can install the package via composer:

composer require --dev jonmldr/grumphp-doctrine-task

Configuration

# grumphp.yml
grumphp:
    tasks:
        doctrine_schema_validate:
            skip_mapping: false
            skip_sync: false
            skip_property_types: false
            em: default
            triggered_by: ['php', 'xml', 'yml']
    extensions:
        - JonMldr\GrumPhpDoctrineTask\ExtensionLoader

For multiple entity managers you can specify the entity manager to be used:

# grumphp.yml
grumphp:
    tasks:
        doctrine_schema_validate_application:
            em: application
            metadata:
                task: doctrine_schema_validate
        doctrine_schema_validate_reporting:
            em: reporting
            metadata:
                task: doctrine_schema_validate
    extensions:
        - JonMldr\GrumPhpDoctrineTask\ExtensionLoader

console_path

Default: 'bin/console'

With this parameter you can set the path of the console to be used.

skip_mapping

Default: false

With this parameter you can skip the mapping validation check.

skip_sync

Default: false

With this parameter you can skip checking if the mapping is in sync with the database.

triggered_by

Default: [php, xml, yml]

This is a list of extensions that should trigger the Doctrine task.

em

Default: null

Require doctrine/orm >= 3.0. Specify the entity manager to be used. If not set, the default entity manager will be used.

skip_property_types

Default: null

Require doctrine/orm >= 3.0. With this parameter you can skip checking if property types match the Doctrine types.

Changelog

Version 3.1

  • Added docker-compose.yml file for local development
  • Allowed phpro/grumphp Composer plugin
  • Updated Dockerfile
  • Add em option thanks to @majoskorec
  • Add skip_property_types option thanks to @majoskorec

Version 3.0

  • Upgraded GrumPHP version to ^2.0 thanks to @erkens
  • Upgraded to new ExtensionInterface for GrumPHP 2.x thanks to @erkens
  • Changed minimum PHP version to 8.1 thanks to @erkens

Version 2.1

  • Added PHP8 support
  • Added ExtensionLoader, see Configuration. The service definition can be removed if you add the ExtensionLoader to your grumphp.yml
  • Added the console_path option

Version 2.0

  • Updated to GrumPHP 1.x
  • Required PHP version 7.3 or higher (required by GrumPHP 1.x)
  • Task is also being executed during manual run
  • Option parity with default doctrine task
  • Added Docker file for local development
  • Removed composer.lock file

Supporters

Stargazers repo roster for @jonmldr/grumphp-doctrine-task

License

The MIT License (MIT). Please see License File for more information.

About

This package provides Doctrine's schema validation in Symfony projects as a GrumPHP task.

Topics

Resources

License

Stars

Watchers

Forks

Contributors