aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJeremy Benoist <jeremy.benoist@gmail.com>2016-08-24 21:38:26 +0200
committerJeremy Benoist <jeremy.benoist@gmail.com>2016-08-24 21:38:26 +0200
commitad9304cd7ed139dc59d6f40e6f8f4adcc6923c80 (patch)
treea9866a6f98b9f7766a9a0e0cae4440c1c04dbf19
parent78b3c31d7025c743c80bcc44adda21379de8f6c5 (diff)
downloadwallabag-ad9304cd7ed139dc59d6f40e6f8f4adcc6923c80.tar.gz
wallabag-ad9304cd7ed139dc59d6f40e6f8f4adcc6923c80.tar.zst
wallabag-ad9304cd7ed139dc59d6f40e6f8f4adcc6923c80.zip
Handle table prefix in migration
and fix migration for name field in oauth table
-rw-r--r--app/DoctrineMigrations/Version20160410190541.php11
-rw-r--r--app/DoctrineMigrations/Version20160812120952.php25
2 files changed, 29 insertions, 7 deletions
diff --git a/app/DoctrineMigrations/Version20160410190541.php b/app/DoctrineMigrations/Version20160410190541.php
index 77c78c54..5030d9c2 100644
--- a/app/DoctrineMigrations/Version20160410190541.php
+++ b/app/DoctrineMigrations/Version20160410190541.php
@@ -6,7 +6,6 @@ use Doctrine\DBAL\Migrations\AbstractMigration;
6use Doctrine\DBAL\Schema\Schema; 6use Doctrine\DBAL\Schema\Schema;
7use Symfony\Component\DependencyInjection\ContainerAwareInterface; 7use Symfony\Component\DependencyInjection\ContainerAwareInterface;
8use Symfony\Component\DependencyInjection\ContainerInterface; 8use Symfony\Component\DependencyInjection\ContainerInterface;
9use Wallabag\CoreBundle\Entity\Entry;
10 9
11class Version20160410190541 extends AbstractMigration implements ContainerAwareInterface 10class Version20160410190541 extends AbstractMigration implements ContainerAwareInterface
12{ 11{
@@ -20,12 +19,17 @@ class Version20160410190541 extends AbstractMigration implements ContainerAwareI
20 $this->container = $container; 19 $this->container = $container;
21 } 20 }
22 21
22 private function getTable($tableName)
23 {
24 return $this->container->getParameter('database_table_prefix') . $tableName;
25 }
26
23 /** 27 /**
24 * @param Schema $schema 28 * @param Schema $schema
25 */ 29 */
26 public function up(Schema $schema) 30 public function up(Schema $schema)
27 { 31 {
28 $this->addSql('ALTER TABLE `wallabag_entry` ADD `uuid` LONGTEXT DEFAULT NULL'); 32 $this->addSql('ALTER TABLE `'.$this->getTable('entry').'` ADD `uuid` LONGTEXT DEFAULT NULL');
29 } 33 }
30 34
31 /** 35 /**
@@ -34,6 +38,7 @@ class Version20160410190541 extends AbstractMigration implements ContainerAwareI
34 public function down(Schema $schema) 38 public function down(Schema $schema)
35 { 39 {
36 $this->abortIf($this->connection->getDatabasePlatform()->getName() != 'sqlite', 'This down migration can\'t be executed on SQLite databases, because SQLite don\'t support DROP COLUMN.'); 40 $this->abortIf($this->connection->getDatabasePlatform()->getName() != 'sqlite', 'This down migration can\'t be executed on SQLite databases, because SQLite don\'t support DROP COLUMN.');
37 $this->addSql('ALTER TABLE `wallabag_entry` DROP `uuid`'); 41
42 $this->addSql('ALTER TABLE `'.$this->getTable('entry').'` DROP `uuid`');
38 } 43 }
39} 44}
diff --git a/app/DoctrineMigrations/Version20160812120952.php b/app/DoctrineMigrations/Version20160812120952.php
index 58f070c7..9adfdc8b 100644
--- a/app/DoctrineMigrations/Version20160812120952.php
+++ b/app/DoctrineMigrations/Version20160812120952.php
@@ -4,15 +4,32 @@ namespace Application\Migrations;
4 4
5use Doctrine\DBAL\Migrations\AbstractMigration; 5use Doctrine\DBAL\Migrations\AbstractMigration;
6use Doctrine\DBAL\Schema\Schema; 6use Doctrine\DBAL\Schema\Schema;
7use Symfony\Component\DependencyInjection\ContainerAwareInterface;
8use Symfony\Component\DependencyInjection\ContainerInterface;
7 9
8class Version20160812120952 extends AbstractMigration 10class Version20160812120952 extends AbstractMigration implements ContainerAwareInterface
9{ 11{
10 /** 12 /**
13 * @var ContainerInterface
14 */
15 private $container;
16
17 public function setContainer(ContainerInterface $container = null)
18 {
19 $this->container = $container;
20 }
21
22 private function getTable($tableName)
23 {
24 return $this->container->getParameter('database_table_prefix') . $tableName;
25 }
26
27 /**
11 * @param Schema $schema 28 * @param Schema $schema
12 */ 29 */
13 public function up(Schema $schema) 30 public function up(Schema $schema)
14 { 31 {
15 $this->addSql('ALTER TABLE wallabag_oauth2_clients ADD name CLOB DEFAULT NULL COLLATE BINARY'); 32 $this->addSql('ALTER TABLE '.$this->getTable('oauth2_clients').' ADD name longtext COLLATE \'utf8_unicode_ci\' DEFAULT NULL');
16 } 33 }
17 34
18 /** 35 /**
@@ -21,7 +38,7 @@ class Version20160812120952 extends AbstractMigration
21 public function down(Schema $schema) 38 public function down(Schema $schema)
22 { 39 {
23 $this->abortIf($this->connection->getDatabasePlatform()->getName() == 'sqlite', 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.'); 40 $this->abortIf($this->connection->getDatabasePlatform()->getName() == 'sqlite', 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.');
24 $this->addSql('ALTER TABLE wallabag_oauth2_clients DROP COLUMN name; 41
25'); 42 $this->addSql('ALTER TABLE '.$this->getTable('oauth2_clients').' DROP COLUMN name');
26 } 43 }
27} 44}