fgrosse / gitlab-api
此包已被弃用且不再维护。未建议替代包。
使用服务描述的 gitlab API 的 guzzle 5 客户端
0.9.0
2015-09-28 17:47 UTC
Requires
- php: >= 5.5
- guzzlehttp/guzzle-services: ~0.5
- symfony/yaml: ~2.6
Requires (Dev)
- mockery/mockery: dev-master as 1.0.x-dev
- phpunit/phpunit: ~4.5
This package is not auto-updated.
Last update: 2020-10-02 20:44:38 UTC
README
PHP Gitlab API
这是一个 Gitlab API 的 PHP 客户端。此客户端基于 Guzzle 5 和服务描述。您可以在 lib/Client/ServiceDescription 中的 yml 文件中快速了解实现的 Gitlab API。
已实现的 API(Gitlab ~7.7)
依赖
Gitlab-api 需要 PHP 5.5 或更高版本,并且已成功使用 PHP 7 和 HHVM 进行测试。此外,整个客户端都基于 Michael Dowling 的出色项目 Guzzle Services 构建。
安装
安装此库的首选方法是依靠 Composer
$ composer require fgrosse/gitlab-api
用法
API 仍在开发中,实际用法可能在将来发生变化。
此 API 的稳定部分可通过 GitlabClient 接口 获取
$guzzleClient = GitlabGuzzleClient::factory([ 'base_url' => $baseUrl, 'api_token' => $token, ]); $client = new HttpGitlabClient($guzzleClient); $mergeRequests = $client->listMergeRequests($project, $state='closed', $order='updated_at', $sort='asc', $page=1, $perPage=5 );
如果您想访问更多功能,请考虑直接使用 GitlabClient
$client = GitlabClient::factory([ 'base_url' => $baseUrl, 'api_token' => $token, ]); $mergeRequests = $client->listMergeRequests([ 'project_id' => $project, 'state' => 'closed', 'order_by' => 'updated_at', 'sort' => 'asc', 'page' => 0, 'per_page' => 5, ]);
查看 lib/Client/ServiceDescription 以查看每个 API 调用的可用参数。一个可执行的示例可以在 examples/merge_requests/api.php 中找到。
尚未实现的 API
- deploy_key_multiple_projects API
- deploy_keys API
- groups API
- milestones API
- notes API
- oauth2 API
- project_snippets API
- projects API
- repositories API
- repository_files API
- services API
- session API
- system_hooks API
- users API
许可
此库在 MIT 许可证 下分发。