spacetab-io/jira-sdk-php

异步PHP Jira SDK。

1.0.0-beta1 2021-01-12 11:27 UTC

This package is auto-updated.

Last update: 2024-09-12 20:44:35 UTC


README

注意:直到1.0.0版本,SDK不稳定,可能需要完全重写。

安装

composer require spacetab-io/jira-sdk

使用示例

返回Promise的简单方法

use Amp\Loop;
use Psr\Log\LogLevel;
use Spacetab\Logger\Logger;
use Spacetab\SDK\Jira\Cache;
use Spacetab\SDK\Jira\Client;
use Spacetab\SDK\Jira\Configurator;
use Spacetab\SDK\Jira\Exception;

Loop::run(function () {
    $logger = Logger::default('Client', LogLevel::DEBUG);

    $configurator = Configurator::fromBasicAuth('https://jira.server.com', 'username', 'jiraTokenStringOrPassword');
    $configurator->setLogger($logger);
    $configurator->setCache(Cache::enabled());
    $configurator->configurate();

    $jira = new Client($configurator);

    try {
        $issue = yield $jira->issue()->get('KEY-1');
    } catch (Exception\Main $e) {
        //$e->getMessage();
        //$e->getErrorMessages();
    }

    dump($issue);
});

带有分页的返回迭代器的的方法

use Amp\Loop;
use Spacetab\SDK\Jira\Client;
use Spacetab\SDK\Jira\Configurator;

Loop::run(function () {
    $configurator = Configurator::fromBasicAuth('https://jira.server.com', 'username', 'jiraTokenStringOrPassword');
    $configurator->configurate();

    $jira = new Client($configurator);
    $iterator = $jira->search()->query('project = KEY', ['summary'], 20);

    $results = [];
    while (yield $iterator->advance()) {
        $results[] = $iterator->getCurrent();
    }

    dump($results);
});

支持的方法

Jira REST API 文档:https://docs.atlassian.com/software/jira/docs/api/REST/8.5.4/https://docs.atlassian.com/jira-software/REST/7.0.4

  • 获取问题
  • 按问题获取工作日志
  • JQL搜索(支持分页)
  • 通过JQL请求加载工作日志
  • 获取所有项目
  • 获取一个项目
  • 获取所有看板(敏捷)
  • 获取一个看板(敏捷)
  • 获取看板迭代(敏捷)
  • 获取一个迭代(敏捷)

许可证

MIT许可证

版权所有 © 2021 spacetab.io, Inc. https://spacetab.io

在此前提下,任何人获得本软件及其相关文档(以下简称“软件”)的副本,均可免费使用该软件,不受限制,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许软件提供方根据以下条件进行操作:

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

本软件按“原样”提供,不提供任何形式的保证,无论是明示的、暗示的,还是关于适销性、特定用途适用性和非侵权的保证。在任何情况下,作者或版权所有者不应对任何索赔、损害或其他责任负责,无论此类索赔、损害或其他责任源于合同、侵权或其他方式,无论是否与软件或其使用有关。