2016-11-09 9 views
2

私はgitlab-ci.yml(簡体字)、次いますユーザー定義の変数に空

variables: 
    APP_NAME: "hello-gitlab-ci" 
deploy: 
    stage: deploy 
    script: some-script 
environment: 
    name: staging 
    url: http://hostname/$APP_NAME/$CI_BUILD_REF_NAME 

Gitlab UIで結果のURLは、例えばある:http://hostname//master。 は空のStringに解決されるようですが、ランナー変数$CI_BUILD_REF_NAMEは正しく解決します。

GitLab Community Edition 8.13.0、gitlab-runner 1.7.1。 私は何が欠けていますか?

答えて

0

GitLab docから、YAML定義の変数はGitLab Runner 0.5.0以上とGitLab CI 7.14以上でサポートされていますので、まずGitLabコンポーネントのバージョンを確認してください。

この変数が解決されない理由の詳細手がかりを持って、デバッグを有効にするにも試してみてください:

job1: 
    variables: 
    CI_DEBUG_TRACE: "true" 
+0

GitLab Community Edition 8.13.0、gitlab-runner 1.7.1 – Fabian

+0

@ user449326 OK。どのOSを実行していますか? CI_DEBUG_TRACEはinterrestingの詳細を生成しますか? – VonC

+0

'WARNING:環境は選択されたエグゼキュータとシェルによってサポートされていません。 'を除いて、デバッグ出力には' environment'または 'url'の出現はありませんが、速い研究により、これは一般的な警告であると見なされます。環境変数がどこで発生したかは '++ export APP_NAME = hello-gitlab-ci ++ APP_NAME = hello-gitlab-ci'のように正しく解決されました – Fabian

0

これが最も可能性が高いのenv変数は環境の後でスクリプトの前に定義されていGitLabランナーのバグです。問題を開くことを検討しましたか? https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/issues

+0

https://gitlab.com/gitlab-org/gitlab-ci-multi -runner/issues/1937 – Fabian

0

GitLab変数は、特に.gitlab-ci.ymlの環境セクションでは翻訳されません。これに関するいくつかの問題がオープンしています(これに関する文書の不足など)。 https://gitlab.com/gitlab-org/gitlab-ce/issues/27921

関連する問題