Travis提供一个非常重要的功能就是持续部署,而这当然包括发布github release。我们可以通过设置.travis.yml
的deploy设置来启用自动发布。
更详细的信息可到GitHub Releases Uploading查阅,本文只做一个指引性的介绍。
配置deploy
最简单地配置deploy,是直接使用travis的命令行程序:
travis setup releases
它能指引我们设置github releases的内容,包括加密。至于travis的安装,大家可以到这里travis.rb查阅。
当然你也可以直接编辑.travis.yml
来设置。
一个栗子
一段deploy配置很可能长这样:
deploy:
provider: releases
api_key:
secure: [生成的token]
file: your/path/file.zip
skip_cleanup: true
on:
tags: true
-
provider
指明这次build里面要使用的部署方式,releases
意味着是github release -
api_key
,这里放置验证token -
skip_cleanup
,是否跳过script步骤的cleanup;一般是要为true
的,不然script过程中生成的文件会被清空掉
生成验证Token
建议直接使用travis命令来生成:travis setup releases
。除了用加密token外还有其他的验证方法,大家可到官网查阅。
Push Tag时才发布release
通常我们只会在发布版本时才发布release。可以通过下面这个设置可以只在Push Tag时才触发deploy流程:
on:
tags: true
使用文件匹配符
每个版本的release文件名肯能都会不同,如myapp-v0.1.0.tar.gz
,myapp-v0.2.0.tar.gz
,而我们当然不希望每次都修改travis来指定对应的文件名,所以可以使用通配符:
file: *.tar.gz
file_glob: true