Skip to content

Limelyte/youtrack

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

YouTrack Client PHP Library

Build Status Dependency Status

The bugtracker YouTrack provides a REST-API. Because a lot of web applications are written in PHP I decided to write a client library for it. To make it easier for developers to write connectors to YouTrack.

The initial development was sponsored by Telematika GmbH. The current development is made by nepda.

The source of this library is released under the BSD license (see LICENSE for details).

Requirements

  • PHP >= 5.4 (Tested with >= 5.5, Travis runs tests with 5.4 and 5.5)
  • curl
  • simplexml
  • YouTrack 3.0+ with REST-API enabled (currently, the production system runs with YouTrack 5.0.3)

Usage

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

See ./examples folder for more usage examples.

Usage with ZF2 ZendSkeletonApplication

In your /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

From now on you can use YouTrack-Client-PHP-Library from any file in you ZF2-App.

<?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");
        // ...
    }
}

Tests

The testsuite depends on PHPUnit. You can install it with composer.phar:

curl -sS https://getcomposer.org/installer | php --
php composer.phar install

The unit tests are incomplete but you can run them using phpunit like this:

./vendor/bin/phpunit ./test

About

A PHP client library for the popular YouTrack bugtracker.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%