mirror of
https://we.phorge.it/source/phorge.git
synced 2024-12-18 11:30:55 +01:00
Probably (?) fix two very old project slug migrations
Summary: Fixes T12020. These callsites to `getPhrictionSlug()` were missed when that method was removed. They're very old (early 2014, late 2011). Test Plan: These are tricky to test because the migrations are so ancient, but `bin/storage upgrade --force --apply phabricator:20140521.projectslug.2.mig.php` gave me //plausible// results. The other migration is so ancient that it can't apply to a modern database so I'm just kind of winging that one. We probably have essentially no installs which will ever apply it again, though. Reviewers: chad, avivey Reviewed By: avivey Maniphest Tasks: T12020 Differential Revision: https://secure.phabricator.com/D17060
This commit is contained in:
parent
378387a078
commit
3d8d98bd8d
2 changed files with 11 additions and 6 deletions
|
@ -4,27 +4,30 @@ $project_table = new PhabricatorProject();
|
||||||
$table_name = $project_table->getTableName();
|
$table_name = $project_table->getTableName();
|
||||||
$conn_w = $project_table->establishConnection('w');
|
$conn_w = $project_table->establishConnection('w');
|
||||||
$slug_table_name = id(new PhabricatorProjectSlug())->getTableName();
|
$slug_table_name = id(new PhabricatorProjectSlug())->getTableName();
|
||||||
$time = time();
|
$time = PhabricatorTime::getNow();
|
||||||
|
|
||||||
echo pht('Migrating project phriction slugs...')."\n";
|
echo pht('Migrating projects to slugs...')."\n";
|
||||||
foreach (new LiskMigrationIterator($project_table) as $project) {
|
foreach (new LiskMigrationIterator($project_table) as $project) {
|
||||||
$id = $project->getID();
|
$id = $project->getID();
|
||||||
|
|
||||||
echo pht('Migrating project %d...', $id)."\n";
|
echo pht('Migrating project %d...', $id)."\n";
|
||||||
$phriction_slug = rtrim($project->getPhrictionSlug(), '/');
|
|
||||||
|
$slug_text = PhabricatorSlug::normalizeProjectSlug($project->getName());
|
||||||
$slug = id(new PhabricatorProjectSlug())
|
$slug = id(new PhabricatorProjectSlug())
|
||||||
->loadOneWhere('slug = %s', $phriction_slug);
|
->loadOneWhere('slug = %s', $slug_text);
|
||||||
|
|
||||||
if ($slug) {
|
if ($slug) {
|
||||||
echo pht('Already migrated %d... Continuing.', $id)."\n";
|
echo pht('Already migrated %d... Continuing.', $id)."\n";
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
queryfx(
|
queryfx(
|
||||||
$conn_w,
|
$conn_w,
|
||||||
'INSERT INTO %T (projectPHID, slug, dateCreated, dateModified) '.
|
'INSERT INTO %T (projectPHID, slug, dateCreated, dateModified) '.
|
||||||
'VALUES (%s, %s, %d, %d)',
|
'VALUES (%s, %s, %d, %d)',
|
||||||
$slug_table_name,
|
$slug_table_name,
|
||||||
$project->getPHID(),
|
$project->getPHID(),
|
||||||
$phriction_slug,
|
$slug_text,
|
||||||
$time,
|
$time,
|
||||||
$time);
|
$time);
|
||||||
echo pht('Migrated %d.', $id)."\n";
|
echo pht('Migrated %d.', $id)."\n";
|
||||||
|
|
|
@ -96,7 +96,9 @@ function rename_project($project, $projects) {
|
||||||
if ($other->getID() == $project->getID()) {
|
if ($other->getID() == $project->getID()) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if ($other->getPhrictionSlug() == $new_slug) {
|
|
||||||
|
$other_slug = PhabricatorSlug::normalizeProjectSlug($other->getName());
|
||||||
|
if ($other_slug == $new_slug) {
|
||||||
$okay = false;
|
$okay = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue