【发布时间】:2017-03-25 08:06:14
【问题描述】:
我正在对开源 GitHub 存储库进行研究,我想了解有关存储库的以下特定信息:它当前是否使用 CI 服务。
为了做到这一点,我找到*.yml 配置文件,识别 CI 提供者并查询其 API 以获取最新的构建历史。然后我可以验证master 分支的最新提交是否具有关联的 CI-build。
例如,如果项目使用 Travis,那么查询 https://api.travis-ci.org/repos/{owner}/{repo}/builds 会为我提供最新 50 个构建的信息,这正是我所需要的。
但我在使用 AppVeyor 时遇到了一些问题。根据他们的documentation,构建历史可以通过:https://ci.appveyor.com/api/projects/{accountName}/{projectSlug}/history?recordsNumber={records-per-page} 获取。相应地,API 服务请求带有强制性标题(Accept 和 Authorization)。但是,当我尝试获取项目的构建历史记录(例如Octokit/Octokit.net)时,我总是收到"Project not found or access denied."。
因此,我认为 AppVeyor 将构建信息的访问权限仅限于已注册的项目合作者的假设是否正确?
谢谢!
【问题讨论】: