Travis CI for terraform使用terraform lint进行语法检查

时间:2017-06-13 22:09:17

标签: travis-ci terraform

我有一个Terraform模板和两个tfvars文件。我们想要控制Terraform代码,并希望在合并代码之前在Travis-CI中运行terraform lint。

我是Travis的初学者,是否有人有.travis.yml文件的示例我可以使用它来下载Terraform并运行terraform lint以在合并拉取请求之前检查语法错误?

1 个答案:

答案 0 :(得分:3)

这将检查分支和目标分支之间更改的所有文件。

travis.yml:

my_object[obj_key].new_prop = 'this_new_prop';

check_fmt.sh

sudo: false
cache:
  directories:
  - "${HOME}/bin"
env:
  global:
  - PATH="${HOME}/bin
  - TMPDIR="${TMPDIR:-/tmp}"
  - VERSION="0.11.0"
before_install:
  - if ! terraform version ; then
      mkdir -p "${HOME}/bin"
      pushd "${TMPDIR}" ;
      curl -sSL
        -o terraform.zip
        "https://releases.hashicorp.com/terraform/${VERSION}/terraform_${VERSION}_linux_amd64.zip" ;
      unzip terraform.zip ;
      mv -v terraform "${HOME}/bin/terraform" ;
      chmod +x "${HOME}/bin/terraform" ;
      popd ;
      terraform version ;
    fi
script:
  - test/check-fmt.sh