Julio Montoya
ea18ee1495
|
11 years ago | |
---|---|---|
.. | ||
lib/Doctrine/DBAL/Migrations | 11 years ago | |
tests | 11 years ago | |
.travis.yml | 11 years ago | |
LICENSE | 11 years ago | |
README.markdown | 11 years ago | |
build.properties.dev | 11 years ago | |
build.xml | 11 years ago | |
composer.json | 11 years ago | |
package.php | 11 years ago | |
phar-cli-stub.php | 11 years ago | |
phpunit.xml.dist | 11 years ago |
README.markdown
Doctrine Database Migrations
Eric Clemmons' Modifications
The latest official PHAR had path issues for me, so I made a couple of modifications and made packaging a bit easier, especially when creating a custom PHAR for your own apps.
Download doctrine-migrations.phar
with custom Input/Output CLI support
Modifications
- Added
DiffCommand
for migrations. - Support for custom
ArgvInput
in CLI instance - Support for custom
ConsoleOutput
in CLI instance
In the same way that Doctrine will attempt to load the return values from migrations-db.php
as your
connection parameters, you can have migrations-input.php
return:
$input = new \Symfony\Component\Console\Input\ArgvInput;
... make some changes ...
return $input;
or have migrations-output.php
return a customized ConsoleOutput
with support for HTML tags in
your SQL statements:
$output = new \Symfony\Component\Console\Output\ConsoleOutput;
$output->setStyle('p');
return $output;
This should give you the flexibility you need for customizing your input/output in the CLI.
Building Your Phar
Simply run php package.php
, which will create the file: build/doctrine-migrations.phar
for you.
Done! :) This is a bit simpler than getting Phing/Ant going and running phing build-migrations
and
hoping the rest of the build dependencies work.
Creating archive disabled by INI setting
If you receive an error that looks like:
creating archive "build/doctrine-migrations.phar" disabled by INI setting
This can be fixed by setting the following in your php.ini:
; http://php.net/phar.readonly
phar.readonly = Off
Installing Dependencies
To install dependencies issue the following commands:
git submodule init
git submodule update
Official Documentation
All available documentation can be found here.