twentyfour/remaim

此包已被弃用且不再维护。未建议替代包。

Redmine到Phabricator导入器 – 使用Conduit API将问题从Redmine迁移到Maniphest

0.4.2 2017-06-19 07:32 UTC

This package is not auto-updated.

Last update: 2022-07-09 15:10:37 UTC


README

Build Status

依赖项

您需要在您的路径中有一个Phabricator的libphutil的副本。我们假设您已通过包管理器安装了它(或arcanist),并且libphutil位于/usr/share/libphutil。

如果不是这样,您将需要修改bin/remaim内部的路径。

安装

https://github.com/tentwentyfour/remaim克隆项目,然后运行

composer install --optimize-autoloader

使用

注意:所有任务和评论都将由您使用的Phabricator API密钥的用户创建。我们建议创建一个具有访问您Phabricator实例上所有项目权限的机器人账户。

当前工具还假定您已在Phabricator中为您所有协作者创建了用户账户,因为Conduit API不允许创建新账户。

用户将通过他们的全名进行查找,因此在启动迁移过程之前,请确保您的用户在Redmine和Phabricator中具有相同的全名。

  1. 将remaim.yml-dist复制到remaim.yml,并填写您的redmine和phabricator凭据
  2. 运行php bin/remaim

注意:如果您使用的是redmine的API密钥,请使用token键而不是userpassword。但请注意,如果您在redmine安装前使用Basic Auth,则只有用户名和密码才会工作。

运行测试

./vendor/bin/phpspec run

如果您已构建了带有'phpdbg_start_oplog'支持的phpdbg,您还可以用它来运行phpspec

phpdbg -qrr vendor/bin/phpspec run

注意:要查看失败的测试的完整差异,请使用带有--verbose标志的phpspec运行。

贡献

有关如何为此项目做出贡献的信息,请参阅CONTRIBUTING.md。

常见问题解答

  • 问题:但是,但是,它还没有完全完成,为什么你要把这个半成品工具公之于众?
  • 答案:“尽早发布,经常发布”。我们相信这个工具已经处于一个很多人都可以从中受益的状态,并且可以付出适度的努力来调整或扩展其行为。我们已经成功使用它迁移了包括历史和文件在内的4000多个问题。此外,完成我们所有想看到的事情将真正花费很长时间,所以我们希望社区会接管这个项目,对其进行改进,并向我们发送大量的PR;)

变更日志

  • 0.4.1 – 发布0.4版,修复了测试问题
  • 0.4.0 – 切换到maniphest.search以搜索现有票据,并删除了强制文件下载协议的需求。添加了对父_id日志条目的支持。
  • 0.3.0 – 引入了一个新的Journal类来处理每个Redmine问题的操作日志。每个条目都单独处理,然后转换为Maniphest更新。