0

我正在研究在 Travis 中自动构建和部署我的谷歌应用程序引擎应用程序,到目前为止,它允许我在.travis.yml部署期间拥有静态或预定义的版本名称。

有没有办法让它在运行时动态生成?例如,在我的 .travis.yml 文件中,我部署了应用程序的生产和暂存版本,两者都被命名或标记为productionqa-staging,我想在版本名称后加上时间戳或任何内容只要每次成功的构建和部署都是独一无二的。

language: node_js
node_js:
- "10"

before_install:
- openssl aes-256-cbc -K $encrypted_c423808ed406_key -iv $encrypted_c423808ed406_iv
  -in gae-creds.json.enc -out gae-creds.json -d
- chmod +x test.sh
- cat gae-creds.json

install:
- npm install

script:
- "./test.sh"

deploy:
  - provider: gae
    skip_cleanup: true
    keyfile: gae-creds.json
    project: traviscicd
    no_promote: true
    version: qa-staging
    on:
      branch: staging
  - provider: gae
    skip_cleanup: true
    keyfile: gae-creds.json
    project: traviscicd
    version: production
    on:
      branch: master
4

2 回答 2

0

您是否尝试过https://yaml.org/type/timestamp.html

我不确定上下文是否正确,但对于您的 yaml 文件来说似乎是一个不错的选择。

于 2019-08-13T19:17:48.370 回答
0

也许您可以使用go generate来生成可以包含的版本字符串?但是,您需要go generate作为构建过程的一部分运行它才能工作。

于 2019-08-21T10:58:54.110 回答