【问题标题】:Track generated file sizes on github using Travis-CI使用 Travis-CI 在 github 上跟踪生成的文件大小
【发布时间】:2016-01-19 13:49:23
【问题描述】:

我想跟踪我的缩小 JavaScript 包的大小,因为它受到 GitHub 上的拉取请求的影响:

我希望在 Travis-CI 构建的每次提交时,在 GitHub 状态中查看生成文件的大小变化。这类似于 coveralls.io 和其他工具在代码更改时跟踪代码覆盖率的方式。

我该怎么做?有现成的工具吗?自己写简单吗?

【问题讨论】:

  • 如果我理解正确的话,你想拥有 javascript 的代码覆盖率吗?
  • 没有。我已经有了 JavaScript 的代码覆盖率。我想要的是一个 GitHub “检查”,它报告构建工件的大小如何变化。

标签: javascript github travis-ci


【解决方案1】:

GitHub 提供simple API 用于发布提交状态。

通过将 GitHub OAuth 令牌放入 Travis-CI environment variable,您可以运行 curl 命令来发布状态:

filesize=$(wc -c < path-to-script.min.js | sed 's/ //g')
curl -H "Authorization: token $GITHUB_TOKEN" \
  --data '{"context": "file size", "description": "'$filesize' bytes", "state": "success"}' \
  https://api.github.com/repos/$TRAVIS_REPO_SLUG/statuses/$TRAVIS_COMMIT

计算拉取请求导致的文件大小变化比较棘手。我最终创建了一个 Python 脚本来执行此操作,您可以在 travis-weigh-in 存储库中找到该脚本。有了它,您只需在 Travis 构建中运行它:

python weigh_in.py path-to-script.min.js

它会产生类似于问题截图中的提交状态。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-03-18
    • 1970-01-01
    • 1970-01-01
    • 2019-05-21
    • 1970-01-01
    • 2023-04-03
    • 2018-07-15
    相关资源
    最近更新 更多