1 votes

Comment définir les détails de l'accréditation des applications dans CI ?

Comment définir les détails de l'accréditation de l'application dans buildkite afin qu'elle puisse être utilisée dans le cadre des tests ?

Une aide ?

Merci d'avance

1voto

sj26 Points 2455

La méthode la plus simple consiste à les stocker dans un fichier crochet pour l'environnement de l'agent qui est un fichier script que vous devez placer sur l'hôte qui exécute l'agent, et qui est invoqué juste avant chaque travail que l'agent exécute :

# /etc/buildkite-agent/hooks/environment

set -eu
echo "--- :house_with_garden: Setting up the environment"

export APPLICATION_PASSWORD="xxx"

et les utiliser ensuite dans les commandes de votre pipeline à partir de l'environnement :

# .buildkite/pipeline.yml

steps:
- label: Run tests
  command: ./run-tests --password="$$APPLICATION_PASSWORD"

Le double dollar échappe la variable pour le téléchargement dans le pipeline, en s'assurant que le mot de passe n'est pas interpolé dans le YAML et ensuite soumis à buildkite.com. Il sera alors interpolé une fois que l'agent exécutera la commande.

Vous pouvez également accéder à $APPLICATION_PASSWORD dans votre script pour éviter de le mentionner dans le yaml.

Le crochet d'environnement de l'agent fonctionne mieux si vous utilisez des agents de longue durée, ou si vous utilisez quelque chose comme elastic-ci-stack-for-aws qui a un crochet d'environnement partagé pour ce genre de choses :

https://github.com/buildkite/elastic-ci-stack-for-aws#build-secrets

mais il existe aussi d'autres options :

https://buildkite.com/docs/pipelines/secrets

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X