cpliakas/jira

A PHP client for integrating with the JIRA issue & bug tracker software.

Installs: 3 325

Dependents: 0

Stars: 36

Watchers: 10

Forks: 19

Open Issues: 4

Language: PHP

1.1.1 2015-08-05 15:02 UTC

README

  1. Download the composer.phar executable or use the installer.

    $ curl -sS https://getcomposer.org/installer | php
  2. Create a composer.json defining your dependencies. Note that this example is a short version for applications that are not meant to be published as packages themselves. To create libraries/packages please read the guidelines.

    {
        "require": {
            "cpliakas/jira": "~1.0"
        }
    }
  3. Run Composer: php composer.phar install

Authenticating against JIRA

use Jira\JiraClient;

require_once 'vendor/autoload.php';

// Modify accordingly, note that in some installations the JIRA instance is
// in the document root and not in the "jira" subdirectory.
$host = 'http://localhost:8090/jira';
$username = 'my.username';
$password = 'my.password';

$jira = new JiraClient($host);
$jira->login($username, $password);

Fetching an issue

$issue = $jira->issue('AB-123')->get();

Creating an issue

use Jira\Remote\RemoteIssue;

$issue = new RemoteIssue();
$issue
    ->setProject('AB')
    ->setType(1) // ID can be found via $jira->issueTypes()->get().
    ->setSummary('Issue created via the API')
    ->setDescription('This is a test issue created throug the API');

$jira->create($issue);

Updating an issue

use Jira\Remote\RemoteFieldValue;

$updates = [];

$value = new RemoteFieldValue();
$updates[] = $value->setId('assignee')->setValues(['jon.doe']);

$value = new RemoteFieldValue();
$updates[] = $value->setId('due-date')->setValues(['2015-12-31']);

$jira->issue('AB-1')->update($updates);

Add user to group

use Jira\Remote\RemoteUser;
use Jira\Remote\RemoteGroup;

$user = $jira->user("id")->get();
$group = $jira->group("id")->get();

$jira->call("addUserToGroup", $group, $user);