Create migration for empty database

This commit is contained in:
Dmitri Vereshchagin 2015-03-29 17:14:17 +03:00
parent ce7d36faf8
commit c6dff0ef24
5 changed files with 182 additions and 47 deletions

View File

@ -15,6 +15,7 @@ class AppKernel extends Kernel
new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),
new Symfony\Bundle\AsseticBundle\AsseticBundle(),
new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
new Doctrine\Bundle\MigrationsBundle\DoctrineMigrationsBundle(),
new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
new Misd\GuzzleBundle\MisdGuzzleBundle(),
new Skobkin\Bundle\PointToolsBundle\SkobkinPointToolsBundle(),

View File

@ -77,7 +77,7 @@ class Requirement
}
/**
* Returns the help text for resolving the problem
* Returns the help text for resolving the problem.
*
* @return string The help text
*/
@ -119,10 +119,10 @@ class PhpIniRequirement extends Requirement
*
* @param string $cfgName The configuration name used for ini_get()
* @param bool|callback $evaluation Either a boolean indicating whether the configuration should evaluate to true or false,
or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement
* or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement
* @param bool $approveCfgAbsence If true the Requirement will be fulfilled even if the configuration option does not exist, i.e. ini_get() returns false.
This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin.
Example: You require a config to be true but PHP later removes this config and defaults it to true internally.
* This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin.
* Example: You require a config to be true but PHP later removes this config and defaults it to true internally.
* @param string|null $testMessage The message for testing the requirement (when null and $evaluation is a boolean a default message is derived)
* @param string|null $helpHtml The help text formatted in HTML for resolving the problem (when null and $evaluation is a boolean a default help is derived)
* @param string|null $helpText The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags)
@ -221,10 +221,10 @@ class RequirementCollection implements IteratorAggregate
*
* @param string $cfgName The configuration name used for ini_get()
* @param bool|callback $evaluation Either a boolean indicating whether the configuration should evaluate to true or false,
or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement
* or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement
* @param bool $approveCfgAbsence If true the Requirement will be fulfilled even if the configuration option does not exist, i.e. ini_get() returns false.
This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin.
Example: You require a config to be true but PHP later removes this config and defaults it to true internally.
* This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin.
* Example: You require a config to be true but PHP later removes this config and defaults it to true internally.
* @param string $testMessage The message for testing the requirement (when null and $evaluation is a boolean a default message is derived)
* @param string $helpHtml The help text formatted in HTML for resolving the problem (when null and $evaluation is a boolean a default help is derived)
* @param string|null $helpText The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags)
@ -239,10 +239,10 @@ class RequirementCollection implements IteratorAggregate
*
* @param string $cfgName The configuration name used for ini_get()
* @param bool|callback $evaluation Either a boolean indicating whether the configuration should evaluate to true or false,
or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement
* or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement
* @param bool $approveCfgAbsence If true the Requirement will be fulfilled even if the configuration option does not exist, i.e. ini_get() returns false.
This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin.
Example: You require a config to be true but PHP later removes this config and defaults it to true internally.
* This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin.
* Example: You require a config to be true but PHP later removes this config and defaults it to true internally.
* @param string $testMessage The message for testing the requirement (when null and $evaluation is a boolean a default message is derived)
* @param string $helpHtml The help text formatted in HTML for resolving the problem (when null and $evaluation is a boolean a default help is derived)
* @param string|null $helpText The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags)

View File

@ -64,6 +64,12 @@ doctrine:
auto_generate_proxy_classes: "%kernel.debug%"
auto_mapping: true
doctrine_migrations:
dir_name: %kernel.root_dir%/DoctrineMigrations
namespace: Application\Migrations
table_name: migration_versions
name: Application Migrations
# Swiftmailer Configuration
swiftmailer:
transport: "%mailer_transport%"

View File

@ -19,7 +19,9 @@
"sensio/distribution-bundle": "~3.0,>=3.0.12",
"sensio/framework-extra-bundle": "~3.0,>=3.0.2",
"incenteev/composer-parameter-handler": "~2.0",
"misd/guzzle-bundle": "~1.0"
"misd/guzzle-bundle": "~1.0",
"doctrine/migrations": "1.0.*@dev",
"doctrine/doctrine-migrations-bundle": "2.1.*@dev"
},
"require-dev": {
"sensio/generator-bundle": "~2.3"

198
composer.lock generated
View File

@ -4,7 +4,7 @@
"Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
"This file is @generated automatically"
],
"hash": "9b2a01fca6691fa7cf3a44dba320f9a9",
"hash": "6f8a78a0b471fceb335f2e83e43985ef",
"packages": [
{
"name": "doctrine/annotations",
@ -514,6 +514,65 @@
],
"time": "2014-11-28 09:43:36"
},
{
"name": "doctrine/doctrine-migrations-bundle",
"version": "dev-master",
"target-dir": "Doctrine/Bundle/MigrationsBundle",
"source": {
"type": "git",
"url": "https://github.com/doctrine/DoctrineMigrationsBundle.git",
"reference": "6a1bd731dbdd4ad952a3b246a8f38c9c12f52e62"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/doctrine/DoctrineMigrationsBundle/zipball/6a1bd731dbdd4ad952a3b246a8f38c9c12f52e62",
"reference": "6a1bd731dbdd4ad952a3b246a8f38c9c12f52e62",
"shasum": ""
},
"require": {
"doctrine/doctrine-bundle": "~1.0",
"doctrine/migrations": "~1.0@dev",
"php": ">=5.3.2",
"symfony/framework-bundle": "~2.1"
},
"type": "symfony-bundle",
"extra": {
"branch-alias": {
"dev-master": "2.1.x-dev"
}
},
"autoload": {
"psr-0": {
"Doctrine\\Bundle\\MigrationsBundle": ""
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Symfony Community",
"homepage": "http://symfony.com/contributors"
},
{
"name": "Doctrine Project",
"homepage": "http://www.doctrine-project.org"
},
{
"name": "Fabien Potencier",
"email": "fabien@symfony.com"
}
],
"description": "Symfony DoctrineMigrationsBundle",
"homepage": "http://www.doctrine-project.org",
"keywords": [
"dbal",
"migrations",
"schema"
],
"time": "2015-02-16 13:24:46"
},
{
"name": "doctrine/inflector",
"version": "v1.0.1",
@ -635,6 +694,64 @@
],
"time": "2014-09-09 13:34:57"
},
{
"name": "doctrine/migrations",
"version": "dev-master",
"source": {
"type": "git",
"url": "https://github.com/doctrine/migrations.git",
"reference": "65978aa4e9ffca3bb632225ad8c6320077d80d85"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/doctrine/migrations/zipball/65978aa4e9ffca3bb632225ad8c6320077d80d85",
"reference": "65978aa4e9ffca3bb632225ad8c6320077d80d85",
"shasum": ""
},
"require": {
"doctrine/dbal": "~2.0",
"php": ">=5.3.2"
},
"require-dev": {
"symfony/console": "2.*",
"symfony/yaml": "2.*"
},
"suggest": {
"symfony/console": "to run the migration from the console"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.0.x-dev"
}
},
"autoload": {
"psr-0": {
"Doctrine\\DBAL\\Migrations": "lib"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"LGPL-2.1"
],
"authors": [
{
"name": "Benjamin Eberlei",
"email": "kontakt@beberlei.de"
},
{
"name": "Jonathan Wage",
"email": "jonwage@gmail.com"
}
],
"description": "Database Schema migrations using Doctrine DBAL",
"homepage": "http://www.doctrine-project.org",
"keywords": [
"database",
"migrations"
],
"time": "2015-03-23 09:47:20"
},
{
"name": "doctrine/orm",
"version": "v2.4.7",
@ -1053,16 +1170,16 @@
},
{
"name": "monolog/monolog",
"version": "1.12.0",
"version": "1.13.1",
"source": {
"type": "git",
"url": "https://github.com/Seldaek/monolog.git",
"reference": "1fbe8c2641f2b163addf49cc5e18f144bec6b19f"
"reference": "c31a2c4e8db5da8b46c74cf275d7f109c0f249ac"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/Seldaek/monolog/zipball/1fbe8c2641f2b163addf49cc5e18f144bec6b19f",
"reference": "1fbe8c2641f2b163addf49cc5e18f144bec6b19f",
"url": "https://api.github.com/repos/Seldaek/monolog/zipball/c31a2c4e8db5da8b46c74cf275d7f109c0f249ac",
"reference": "c31a2c4e8db5da8b46c74cf275d7f109c0f249ac",
"shasum": ""
},
"require": {
@ -1079,6 +1196,7 @@
"phpunit/phpunit": "~4.0",
"raven/raven": "~0.5",
"ruflin/elastica": "0.90.*",
"swiftmailer/swiftmailer": "~5.3",
"videlalvaro/php-amqplib": "~2.4"
},
"suggest": {
@ -1095,7 +1213,7 @@
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.12.x-dev"
"dev-master": "1.13.x-dev"
}
},
"autoload": {
@ -1121,7 +1239,7 @@
"logging",
"psr-3"
],
"time": "2014-12-29 21:29:35"
"time": "2015-03-09 09:58:04"
},
{
"name": "psr/log",
@ -1163,17 +1281,17 @@
},
{
"name": "sensio/distribution-bundle",
"version": "v3.0.18",
"version": "v3.0.20",
"target-dir": "Sensio/Bundle/DistributionBundle",
"source": {
"type": "git",
"url": "https://github.com/sensiolabs/SensioDistributionBundle.git",
"reference": "ac026149ffb1d3a5c893290d2d3ca8795013de08"
"reference": "48c76189fb0a76a20a4a67a750b513ed06074b55"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sensiolabs/SensioDistributionBundle/zipball/ac026149ffb1d3a5c893290d2d3ca8795013de08",
"reference": "ac026149ffb1d3a5c893290d2d3ca8795013de08",
"url": "https://api.github.com/repos/sensiolabs/SensioDistributionBundle/zipball/48c76189fb0a76a20a4a67a750b513ed06074b55",
"reference": "48c76189fb0a76a20a4a67a750b513ed06074b55",
"shasum": ""
},
"require": {
@ -1219,21 +1337,21 @@
"configuration",
"distribution"
],
"time": "2015-02-27 12:59:18"
"time": "2015-03-26 11:09:50"
},
{
"name": "sensio/framework-extra-bundle",
"version": "v3.0.4",
"version": "v3.0.6",
"target-dir": "Sensio/Bundle/FrameworkExtraBundle",
"source": {
"type": "git",
"url": "https://github.com/sensiolabs/SensioFrameworkExtraBundle.git",
"reference": "b3bc3e67c8b6b68b18d727012183520d35ee762a"
"reference": "1c3ed356bd1ff67cd71806efbb71511644035c85"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sensiolabs/SensioFrameworkExtraBundle/zipball/b3bc3e67c8b6b68b18d727012183520d35ee762a",
"reference": "b3bc3e67c8b6b68b18d727012183520d35ee762a",
"url": "https://api.github.com/repos/sensiolabs/SensioFrameworkExtraBundle/zipball/1c3ed356bd1ff67cd71806efbb71511644035c85",
"reference": "1c3ed356bd1ff67cd71806efbb71511644035c85",
"shasum": ""
},
"require": {
@ -1274,7 +1392,7 @@
"annotations",
"controllers"
],
"time": "2014-12-02 09:52:52"
"time": "2015-03-24 15:12:07"
},
{
"name": "sensiolabs/security-checker",
@ -1323,16 +1441,16 @@
},
{
"name": "swiftmailer/swiftmailer",
"version": "v5.3.1",
"version": "v5.4.0",
"source": {
"type": "git",
"url": "https://github.com/swiftmailer/swiftmailer.git",
"reference": "c5f963e7f9d6f6438fda4f22d5cc2db296ec621a"
"reference": "31454f258f10329ae7c48763eb898a75c39e0a9f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/c5f963e7f9d6f6438fda4f22d5cc2db296ec621a",
"reference": "c5f963e7f9d6f6438fda4f22d5cc2db296ec621a",
"url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/31454f258f10329ae7c48763eb898a75c39e0a9f",
"reference": "31454f258f10329ae7c48763eb898a75c39e0a9f",
"shasum": ""
},
"require": {
@ -1344,7 +1462,7 @@
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "5.3-dev"
"dev-master": "5.4-dev"
}
},
"autoload": {
@ -1371,7 +1489,7 @@
"mail",
"mailer"
],
"time": "2014-12-05 14:17:14"
"time": "2015-03-14 06:06:39"
},
{
"name": "symfony/assetic-bundle",
@ -1560,12 +1678,12 @@
"source": {
"type": "git",
"url": "https://github.com/symfony/symfony.git",
"reference": "755ea09a440c1b8ea560e403b442fc9f53e0ae93"
"reference": "6ce03d3942ae65b9bcbc2afbec800ea1cf8361d8"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/symfony/zipball/755ea09a440c1b8ea560e403b442fc9f53e0ae93",
"reference": "755ea09a440c1b8ea560e403b442fc9f53e0ae93",
"url": "https://api.github.com/repos/symfony/symfony/zipball/6ce03d3942ae65b9bcbc2afbec800ea1cf8361d8",
"reference": "6ce03d3942ae65b9bcbc2afbec800ea1cf8361d8",
"shasum": ""
},
"require": {
@ -1598,7 +1716,6 @@
"symfony/locale": "self.version",
"symfony/monolog-bridge": "self.version",
"symfony/options-resolver": "self.version",
"symfony/phpunit-bridge": "self.version",
"symfony/process": "self.version",
"symfony/property-access": "self.version",
"symfony/proxy-manager-bridge": "self.version",
@ -1630,7 +1747,8 @@
"ircmaxell/password-compat": "~1.0",
"monolog/monolog": "~1.11",
"ocramius/proxy-manager": "~0.4|~1.0",
"propel/propel1": "~1.6"
"propel/propel1": "~1.6",
"symfony/phpunit-bridge": "self.version"
},
"type": "library",
"extra": {
@ -1640,7 +1758,13 @@
},
"autoload": {
"psr-0": {
"Symfony\\": "src/"
"Symfony\\Bridge\\Doctrine\\": "src/",
"Symfony\\Bridge\\Monolog\\": "src/",
"Symfony\\Bridge\\ProxyManager\\": "src/",
"Symfony\\Bridge\\Swiftmailer\\": "src/",
"Symfony\\Bridge\\Twig\\": "src/",
"Symfony\\Bundle\\": "src/",
"Symfony\\Component\\": "src/"
},
"classmap": [
"src/Symfony/Component/HttpFoundation/Resources/stubs",
@ -1669,7 +1793,7 @@
"keywords": [
"framework"
],
"time": "2015-03-02 10:21:01"
"time": "2015-03-29 09:44:52"
},
{
"name": "twig/extensions",
@ -1784,17 +1908,17 @@
"packages-dev": [
{
"name": "sensio/generator-bundle",
"version": "v2.5.2",
"version": "v2.5.3",
"target-dir": "Sensio/Bundle/GeneratorBundle",
"source": {
"type": "git",
"url": "https://github.com/sensiolabs/SensioGeneratorBundle.git",
"reference": "4b09746520a826a7bf34a466ba31c7d8740fef7e"
"reference": "e50108c2133ee5c9c484555faed50c17a61221d3"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sensiolabs/SensioGeneratorBundle/zipball/4b09746520a826a7bf34a466ba31c7d8740fef7e",
"reference": "4b09746520a826a7bf34a466ba31c7d8740fef7e",
"url": "https://api.github.com/repos/sensiolabs/SensioGeneratorBundle/zipball/e50108c2133ee5c9c484555faed50c17a61221d3",
"reference": "e50108c2133ee5c9c484555faed50c17a61221d3",
"shasum": ""
},
"require": {
@ -1828,13 +1952,15 @@
}
],
"description": "This bundle generates code for you",
"time": "2015-02-11 07:21:23"
"time": "2015-03-17 06:36:52"
}
],
"aliases": [],
"minimum-stability": "stable",
"stability-flags": {
"symfony/symfony": 20
"symfony/symfony": 20,
"doctrine/migrations": 20,
"doctrine/doctrine-migrations-bundle": 20
},
"prefer-stable": false,
"prefer-lowest": false,