Comment accéder aux variables dans gitlab-ci.YML utilisant gitlab-ci-multi-runner sur windows

Je ne peux pas trouver comment accéder aux variables dans un script de construction fourni par le gitlab-ci.yml-fichier.

j'ai essayé de déclarer des variables de deux façons:

  1. Variables privées dans L'Interface Web de GitLab CI
  2. overrides de variables / apennding in config.toml

j'essaie d'accéder à mon gitlab-ci.yml-les fichiers de commandes comme ça:

msbuild ci.msbuild [...] /p:Configuration=Release;NuGetOutputDir="$PACKAGE_SOURCE"

$PACKAGE_SOURCE est la variable désirée (PACKAGE_SOURCE) mais il ne fonctionne pas (il ne semble pas être remplacé). Exécuter manuellement la même commande fonctionne comme prévu (en remplaçant le nom de la variable par son contenu)

Est-il un autre syntaxe requise je ne suis pas au courant?

j'ai essayé:

$PACKAGE_SOURCE
$(PACKAGE_SOURCE)
${PACKAGE_SOURCE}

PS: La Vérification du coureur ne soulève aucun problème, si cela est important.

13
demandé sur nozzleman 2015-07-22 14:06:43

1 réponses

je présume que vous utilisez Windows pour votre coureur? J'ai eu le même problème moi-même et ne pouvait même pas obtenir le suivant:

script:
  - echo $MySecret

Cependant, je lisais c'Gitlab CI de la documentation sur les variables et a résolu le problème quand il a dit

les variables sont définies comme variables d'environnement dans l'environnement de construction et sont accessibles avec les méthodes normales qui sont utilisées pour accéder à de telles variables

Qui, de bien sûr, la plupart des exemples donnés sont pour bash. Pour Windows, il utilise %var%. Alors je l'ai changé en ce qui suit, ce qui a fonctionné pour moi. (Confirmé en regardant la sortie de construction.)

script:
  - echo %MySecret%

une mise en garde est que je pense que cela est probablement aussi affecté par la coquille que vous choisissez lors de la configuration de votre coureur, bien que je n'ai pas essayé ceux.

23
répondu Jim 2015-07-24 23:36:29