Solución:
Puede ejecutar ssh-keygen desde donde desee siempre que utilice las claves adecuadas en el servidor adecuado.
Esto es lo que necesita:
- Genera un par de claves
- Copia el privado clave para una variable CI de gitlab (llamémosla
SSH_PRIVATE_KEY
) - Copia el público la clave del servidor al que se conectará gitlab y la agregará a su
~/.ssh/authorized_keys
expediente - Dígale a su canalización de CI que use la clave privada que está almacenada en la variable CI de Gitlab
Para hacer ese último paso, simplemente agregue lo siguiente a su .gitlab-ci.yml
en la sección script o before_script del trabajo de interés:
- 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
# Run ssh-agent (inside the build environment)
- eval $(ssh-agent -s)
# Add the SSH key stored in SSH_PRIVATE_KEY variable to the agent store
- ssh-add <(echo "$SSH_PRIVATE_KEY")
- mkdir -p ~/.ssh
- '[[ -f /.dockerenv ]] && echo -e "Host *ntStrictHostKeyChecking nonn" > ~/.ssh/config'
Entonces haz tus conexiones SSH y ¡voilà!
EDITAR: No pude recordar dónde encontré esta información la primera vez, pero aquí está: https://docs.gitlab.com/ee/ci/ssh_keys/README.html
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)