Ciao Federico, intanto grazie! 1) metti la CA sulle macchine che chiamano gitlab, così validano il > certificato come trusted >
Il certificato l'ho già installato sui server (ad esempio dal server con Docker posso fare login sul Docker Registry esposto dal server di GitLab). L'esecuzione delle pipeline viene tuttavia eseguita da un demone chiamato GitLab-Runner, che per il momento (fino a quando non avrò messo Kubernetes) eseguo tramite Docker. Quindi, anche se sul server di Docker il certificato c'è, il container del GitLab-Runner Docker executor, presente sullo stesso server, non ne sa nulla. Quando creo il container, però, gli condivido un volume con il CA e vedo che lui se lo prende. Se entro nel container e controllo, il CA nuovo c'è. Per qualche motivo però, questa informazione non è trasmessa alle "istanze" che vengono "spawnate" quando viene richiamato da una pipeline... 2) per git passi a ssh invece che https, e a wget passi > --no-check-certificate per saltare la validazione > La soluzione di bypassare i criteri di sicurezza l'avevo già provata e funziona (non serve nemmeno switchare git ad ssh, basta mettere una variabile GIT_SSL_NO_VERIFY: "1" nel gitlab-ci.yml), ed anche il --no-check-certificate sul wget. Il problema del bypass è che: 1. è brutto (è fatto per i self-signed) 2. teoricamente è tutto a posto, e penso di essere ad un millimetro dalla soluzione (il che lo rende ancora più frustrante) 3. potrebbero saltare fuori presto altri servizi da usare che magari non prevedono la possibilità di *non *verificare il certificato Aspetto la fine del bounty su StackOverflow e qualche giorno per vedere se rispondono su GitLab, poi al limite uso la suddetta variabile per farmi dei ternari e mettere o meno --no-check-certificate ed altre eventuali opzioni. Grazie ancora, Andrea Il giorno mer 14 nov 2018 alle ore 10:15 Federico Fissore [email protected] [it-torino-java-jug] <[email protected]> ha scritto: > > > Conosco gitlab solo di nome quindi mi vengono in mente solo 2 work around > > 1) metti la CA sulle macchine che chiamano gitlab, così validano il > certificato come trusted > 2) per git passi a ssh invece che https, e a wget passi > --no-check-certificate per saltare la validazione > > federico > > >
