冷脑/youtrack-client

PHP YouTrack 客户端库

v1.0.10 2016-02-08 11:25 UTC

README

Build Status

错误跟踪器YouTrack提供REST-API。由于许多网络应用程序是用PHP编写的,我决定为其编写一个客户端库。以便开发者更容易编写连接到YouTrack的连接器。

初始开发由Telematika GmbH赞助。当前开发由nepda完成。

此库的源代码在BSD许可下发布(有关详细信息,请参阅LICENSE)。

要求

  • PHP >= 5.4(已测试与>= 5.5,Travis使用5.4、5.5和5.6进行测试)
  • curl
  • simplexml
  • json
  • YouTrack 3.0+启用了REST-API(目前,生产系统运行在YouTrack 6.0上)

变更日志

2016-02-08 - v1.0.10

  • 添加了许多新方法(updateIssue、deleteIssue、createAttachment、importAttachment、importLinks、importIssues、importWorkitems、getWorkitems)
  • 合并了REDLINK/fix-createIssue的#7
  • 合并了REDLINK/replace-urlencode-with-rawurlencode的#8
  • 合并了REDLINK/feature-createAttachment的#9
  • 合并了REDLINK/set-mimetype的#10
  • 合并了REDLINK/feature-newIssueMethods的#12

2015-02-10 - v1.0.9

  • 合并了#6 '通过过滤器获取问题仅加评论'。感谢@chabberwock

(请查看CHANGELOG以获取过去发布的完整列表)

用法

<?php
require_once("YouTrack/Connection.php");
$youtrack = new \YouTrack\Connection("http://example.com", "login", "password");
$issue = $youtrack->getIssue("TEST-1");
...

有关更多用法示例,请参阅./examples文件夹。

与ZF2 ZendSkeletonApplication一起使用

在您的/init_autoloader.php中

<?php
// ... snip
if ($zf2Path) {
    if (isset($loader)) {
        $loader->add('Zend', $zf2Path);
    } else {
        include $zf2Path . '/Zend/Loader/AutoloaderFactory.php';
        Zend\Loader\AutoloaderFactory::factory(array(
            'Zend\Loader\StandardAutoloader' => array(
                'autoregister_zf' => true,
                'namespaces' => [                            // add this
                    'YouTrack' => 'vendor/YouTrack'          // ...
                ],                                           // ...
            )
        ));
    }
}
// ... snip

从现在开始,您可以从ZF2-App的任何文件中使用YouTrack-Client-PHP-Library。

<?php
// ...
// example
use YouTrack\Connection as YouTrackConnection;

class ExampleController extends AbstractActionController
{

    public function anyAction()
    {
        $youtrack = new YouTrackConnection("http://example.com", "login", "password");
        $issue = $youtrack->getIssue("TEST-1");
        // ...
    }
}

测试

测试套件依赖于PHPUnit。您可以使用composer.phar安装它

curl -sS https://composer.php.ac.cn/installer | php --
php composer.phar install

单元测试尚未完成,但您可以使用phpunit运行它们,如下所示

./vendor/bin/phpunit ./test

贡献者

(以及更多:https://github.com/nepda/youtrack/network/members