结合github pages使用travis CI

写在前面

最近使用的SS中的obfs插件出了问题,也不是不能用,但是每次使用的时候,需要重新配置一下,否则启动不了。
具体问题不知道,但是翻到了github上也有人提了这个问题

应该是改好了,不过虽然修改了问题,但是没有编译版本,尝试按照项目说明编译,搞了一天,最后眼看要成功,最后打包过程好像是系统死机了。。。

估计可能是虚拟机内存不足,也没再折腾虚拟机,打起了主页上travis ci的主意。

关于travis ci

看名字可以了解到这是一个持续集成工具,而且我使用的原始项目,已经配置好了配置文件。

考虑到一般CI肯定有发布同能,于是想通过这个工具在线编译,然后发布出镜像来我再下载。

通过github pages

事实证明这并不是一个好的方法,不过是一个有用的方法

最初通过github pages来获得部署镜像。创建个人github pages,设置GitHub token等等不再赘述。

在项目配置文件中,增加这一段:

deploy:
  provider: pages
  local_dir: target/android/output
  skip_cleanup: true
  github_token: $GITHUB_TOKEN  # Set in the settings page of your repository, as a secure variable
  keep_history: false
  target_branch: master
  verbose: true
  repo: mosakashaka/mosakashaka.github.io # 这是我的github页
  on:
    branch: master

然后在配置页面配置上GITHUB_TOKEN,最终编出的apk就可以在我的 github主页仓库上看到了。

通过release功能

尝试通过github pages发布后,github通过邮件告诉我,如果想发布二进制,可以使用github的release功能(囧)。

于是按照github的链接看了一下,只得到一条消息:release与tag有关,而发布release需要手动进行创建release和上传文件。。。

在网上搜了一下,也没有找到具体github是如何使用tag的。

然后翻travis ci的文档,翻倒这一篇,讲到如何配置发布,里面同样提到需要了解github tag和release的关系,我实在是找不到这个关系在哪看,只是硬着按文档的配置修改了travis的配置:

deploy:
  provider: releases
  api_key: $GITHUB_TOKEN  # Set in the settings page of your repository, as a secure variable
  file_glob: true
  file: target/android/output/*
  skip_cleanup: true
  on:
    tags: true

然后就ok了~

这里个人猜测,应该是travis ci里的模块,调用了github的API进行了release相关操作,包括tag,上传附件等等,然后发布版本。

posted @ 2020-03-31 22:53  mosakashaka  阅读(229)  评论(0编辑  收藏  举报