aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/phpbb/console/command
diff options
context:
space:
mode:
authorTristan Darricau <github@nicofuma.fr>2014-07-26 11:50:28 +0200
committerTristan Darricau <github@nicofuma.fr>2014-07-26 11:50:28 +0200
commit8b8e09f4d52cfa2d9d951d827114b2ae510dbfc8 (patch)
treeb1fcfe72fe0b6b397b43c2156666211cb38ea630 /phpBB/phpbb/console/command
parent9d6ff36c6c32bae8d9cddf60bdaa0f36b5f1f266 (diff)
downloadforums-8b8e09f4d52cfa2d9d951d827114b2ae510dbfc8.tar
forums-8b8e09f4d52cfa2d9d951d827114b2ae510dbfc8.tar.gz
forums-8b8e09f4d52cfa2d9d951d827114b2ae510dbfc8.tar.bz2
forums-8b8e09f4d52cfa2d9d951d827114b2ae510dbfc8.tar.xz
forums-8b8e09f4d52cfa2d9d951d827114b2ae510dbfc8.zip
[ticket/12870] Create the migrations table in db:migrate
PHPBB3-12870
Diffstat (limited to 'phpBB/phpbb/console/command')
-rw-r--r--phpBB/phpbb/console/command/db/migrate.php27
1 files changed, 26 insertions, 1 deletions
diff --git a/phpBB/phpbb/console/command/db/migrate.php b/phpBB/phpbb/console/command/db/migrate.php
index 758b125b13..29f0fe7c16 100644
--- a/phpBB/phpbb/console/command/db/migrate.php
+++ b/phpBB/phpbb/console/command/db/migrate.php
@@ -32,13 +32,21 @@ class migrate extends \phpbb\console\command\command
/** @var \phpbb\log\log */
protected $log;
- function __construct(\phpbb\user $user, \phpbb\db\migrator $migrator, \phpbb\extension\manager $extension_manager, \phpbb\config\config $config, \phpbb\cache\service $cache, \phpbb\log\log $log)
+ /** @var \phpbb\db\tools */
+ protected $db_tools;
+
+ /** @var string */
+ protected $table_prefix;
+
+ function __construct(\phpbb\user $user, \phpbb\db\migrator $migrator, \phpbb\extension\manager $extension_manager, \phpbb\config\config $config, \phpbb\cache\service $cache, \phpbb\log\log $log, \phpbb\db\tools $db_tools, $table_prefix)
{
$this->migrator = $migrator;
$this->extension_manager = $extension_manager;
$this->config = $config;
$this->cache = $cache;
$this->log = $log;
+ $this->db_tools = $db_tools;
+ $this->table_prefix = $table_prefix;
parent::__construct($user);
$this->user->add_lang(array('common', 'install', 'migrator'));
}
@@ -53,6 +61,23 @@ class migrate extends \phpbb\console\command\command
protected function execute(InputInterface $input, OutputInterface $output)
{
+ // Make sure migrations have been installed.
+ if (!$this->db_tools->sql_table_exists($this->table_prefix . 'migrations'))
+ {
+ $this->db_tools->sql_create_table($this->table_prefix . 'migrations', array(
+ 'COLUMNS' => array(
+ 'migration_name' => array('VCHAR', ''),
+ 'migration_depends_on' => array('TEXT', ''),
+ 'migration_schema_done' => array('BOOL', 0),
+ 'migration_data_done' => array('BOOL', 0),
+ 'migration_data_state' => array('TEXT', ''),
+ 'migration_start_time' => array('TIMESTAMP', 0),
+ 'migration_end_time' => array('TIMESTAMP', 0),
+ ),
+ 'PRIMARY_KEY' => 'migration_name',
+ ));
+ }
+
$this->load_migrations();
$orig_version = $this->config['version'];
while (!$this->migrator->finished())