Estoy tratando de ejecutar un git push
de cron. Cuando hago el comando interactivamente en el caparazón, está pasando bien. Cuando se ejecuta el comando desde crontab de mi usuario, cron entrega el mensaje de errorgit push a través de cron
Permission denied (publickey).
supongo que no tiene que ver con encontrar o leer mi ~/.ssh/id_rsa, como pueda gato el archivo desde cron bien . UID y EUID están bien definidos en el trabajo cron. - ¿Algunas ideas?
ACTUALIZACIÓN
Lo tengo trabajo cuando se suministra el medio ambiente SSH_AUTH_SOCK clave de mi trabajo cron, pero me preocupa que esto sólo es válida siempre y cuando estoy conectado. Estoy en busca de una solución que funciona independientemente de los inicios de sesión interactivos.
¿Qué terminaste haciendo para resolver esto? Para mí no era la variable SSH_AUTH_SOCK (intenté pasar esto en la línea de crontab). Me sale un error que git credential-osxkeychain no es un comando válido de git. –
@StephenTurner Me conecto a la máquina sin reenvío de agente. Comienzo el agente ssh, capturando su salida a un archivo. I (shell) 'fuente' este archivo en el shell y llame a ssh-add (todo esto en un script de shell). El último comando requerirá la entrada de la frase de contraseña. Mientras el ssh-agent continúe ejecutándose, el trabajo cron solo tiene que obtener el archivo dicho, y luego los comandos git push se ejecutan muy bien. - No puedo comentar sobre 'git credential-osxkeychain', sin embargo (el mío se ejecuta en Linux). – ThomasH