Travis-CI:S3部署脚本不添加新文件

时间:2017-03-21 03:41:49

标签: jekyll travis-ci

我的最终目标是能够在我的Jekyll博客上安排帖子。每当我提交到Github中的主分支时,我都使用Travis-CI将/ _site /的内容部署到S3桶。

Travis-CI流程按预期工作,但是除非我在本地构建我的站点并将新的/ _site /文件夹直接推送到master,否则新页面不会构建并添加到/ _site /目录。这些帖子存在于/ _posts /中,但没有得到构建并自动添加到/ _site /,因为它们应该在每天重建网站时使用。

我的travis.yml文件位于下方。

language: ruby
rvm:
- 2.3.3

# before_script:
#  - chmod +x ./script/cibuild # or do this locally and commit

# Assume bundler is being used, therefore
# the `install` step will run `bundle install` by default.
install: gem install jekyll html-proofer jekyll-twitter-plugin
script: jekyll build && htmlproofer ./_site

# branch whitelist, only for GitHub Pages
branches:
  only:
  - master

env:
  global:
  - NOKOGIRI_USE_SYSTEM_LIBRARIES=true # speeds up installation of html-proofer

exclude: [vendor]

sudo: false # route your build to the container-based infrastructure for a faster build

deploy:
  provider: s3
  access_key_id: $AWS_ACCESS_KEY
  secret_access_key: $AWS_SECRET_KEY
  bucket: $S3_BUCKET
  local_dir: _site

2 个答案:

答案 0 :(得分:1)

我明白了这一点:Travis-CI部署宝石并没有包含构建步骤。它只是将repo的内容推送到S3。我更新了构建脚本以作为构建和验证步骤的一部分。

答案 1 :(得分:0)

您必须在部署指令上将选项skip_cleanup设置为true