如何在GitLab CI

时间:2018-03-08 13:14:22

标签: gitlab-ci

实际上我需要在GitLab CI中获取我的提交时间戳。 Alredy在这里测试了GitLab CI变量的官方文档: https://docs.gitlab.com/ee/ci/variables

但是

只有提交变量
  • CI_COMMIT_SHA构建项目的提交修订
  • CI_COMMIT_TAG提交标记名称。仅在构建标签时出现。

有没有办法实现这个目标?需要将这些值添加到变量中。我最喜欢的方法是将它添加到变量部分。

job:
  variables:
    COMMIT_TIME: $(git_timestamp)
  script: echo $COMMIT_TIME

我愿意接受任何有用的建议。

2 个答案:

答案 0 :(得分:11)

是的,您可以获得提交时间,如下所示:

job:
  script: 
    - export COMMIT_TIME=$(git show -s --format=%ct $CI_COMMIT_SHA)
    - echo $COMMIT_TIME

如果您希望在每个作业中都使用COMMIT_TIME变量,请使用before_script选项:

before_script:
  - export COMMIT_TIME=$(git show -s --format=%ct $CI_COMMIT_SHA)   

job:
  script: 
    - echo $COMMIT_TIME

如果您需要其他内容,%ct格式会为您提供unixtimestamp,请查看git showthis reference中的PRETTY_FORMATS。

答案 1 :(得分:3)

在GitLab 13.4中,您可以为此使用新的predefined variableCI_COMMIT_TIMESTAMP