GitLab CI / CD - 更改工作目录

时间:2018-04-23 18:39:25

标签: continuous-integration gitlab terraform

我正在尝试为Terraform实现CI / CD管道,但是我需要在运行任何进一步的命令之前更改pwd。

Terraform容器似乎只接受Terraform命令,因此无法识别cd / ls / echo $ PATH。我是否需要构建支持此功能的图像并使用它,或者我可以使用维护的Terraform图像吗?

我尝试更改ENTRYPOINT,但由于Alpine图像,只显示最小安装量。

2 个答案:

答案 0 :(得分:0)

您可以在alpine中使用.gitlab-ci.yml等通用图片,并在脚本中获取Terraform,如:

wget https://releases.hashicorp.com/terraform/${TERRAFORM_VERSION}/terraform_${TERRAFORM_VERSION}_linux_386.zip
unzip terraform*

并使用它:

./terraform [...]

答案 1 :(得分:0)

您可以将入口点更改为/usr/bin/env以便运行cd命令。 gitlab-ci的示例:

validate_terraform:
  image:
    name: hashicorp/terraform:light
    entrypoint: "/usr/bin/env"
  stage: test

  script:
    - cd infrastructure/
    - terraform init
    - terraform validate