Drone Dart
Dart 是一种多客户端编程语言,允许您在多个平台上编译和运行代码。因此,我们决定为 Drone CI 创建一个包,这是一个自助式持续集成平台。此包使您能够使用 Dart 语言轻松地在任何平台上集成 Drone API,并构建自己的界面以及更多功能。
示例
第一步,您需要初始化您的 DroneClient 实例,它需要服务器(Drone 接口主机,例如 https://drone.example.com)和令牌(访问令牌)。您可以通过导航到您的用户配置文件来检索令牌。
final instance = DroneClient.init(
server: '<Your Drone Server Address>',
token: '<Your Token>',
);
注意:完整的代码示例可在 example 文件夹中找到。
所有方法
DroneClient 中提供了以下方法。参数的名称和类型与 Drone API 请求数据相同。
构建
文档:https://docs.drone.io/api/builds/
instance.buildApprove(owner,repo,build);
instance.buildCreate(namespace,name,commit,branch,parameters);
instance.buildDecline(owner,repo,build);
instance.buildInfo(owner,build,repo);
instance.buildList(owner,repo);
instance.buildLog(owner,repo,build,stage,step);
instance.buildPromote(owner,repo,build,target,parameters);
instance.buildRestart(owner,repo,build);
instance.buildStop(owner,repo,build);
Cron
文档:https://docs.drone.io/api/cron/
instance.cronCreate(owner,repo,cronRequestBody);
instance.cronDelete(owner,repo,name);
instance.cronInfo(owner,repo,name);
instance.cronList(owner,repo);
instance.cronTrigger(owner,repo,name);
instance.cronUpdate(owner,repo,name,requestBody);
存储库
文档:https://docs.drone.io/api/repos/
instance.repoChown(owner,repo);
instance.repoDisable(owner,repo);
instance.repoEnable(owner,name);
instance.repoInfo(owner,repo);
instance.repoList();
instance.repoRepair(owner,repo);
instance.repoUpdate(owner,repo,requestBody);
Secrets
文档:https://docs.drone.io/api/secrets/
instance.secretCreate(owner,repo,requestBody);
instance.secretDelete(owner,repo,secret);
instance.secretInfo(owner,repo,secret);
instance.secretList(owner,repo);
instance.secretUpdate(owner,repo,secret,requestBody);
模板
文档:https://docs.drone.io/api/templates/
instance.templateCreate(requestBody);
instance.templateDelete(namespace,name);
instance.templateInfo(namespace,name);
instance.templateList(namespace);
instance.templateUpdate(namespace,name);
用户
文档:https://docs.drone.io/api/user/
instance.userFeed();
instance.userRepos(latest);
instance.userInfo();
instance.userSync();
Users(用户)
文档:https://docs.drone.io/api/users/
instance.usersCreate(requestBody);
instance.usersDelete(login);
instance.usersInfo(login);
instance.usersList();
instance.usersUpdate(login,requestBody);