Ho un'applicazione nodo su github in un repository privato. Questa applicazione nodo ha anche moduli personalizzati che ho creato e si trovano in un repository privato separato.Repository npm privati multipli github su un server
Questo è l'esempio applicativo nodo url:
[email protected]:thomas/node-application.git
Questi sono entrambi i moduli nodi che utilizza un'applicazione nodo.
[email protected]:thomas/node-module1.git
[email protected]:thomas/node-module2.git
È possibile utilizzare quanto segue per installare un modulo privato npm su github.
npm install git+ssh://[email protected]:thomas/node_module1.git
Affinché questo funzioni, la macchina deve avere l'impostazione delle chiavi ssh.
La mia macchina locale ha le mie chiavi utente github impostate e accesso a tutti i miei repository.
Sul mio server, tuttavia sto usando le chiavi di distribuzione. L'unico modo in cui so come utilizzare più chiavi di distribuzione è il seguente.
Host na.github.com
HostName github.com
User git
IdentityFile ~/.ssh/gh_node-application
ForwardAgent yes
Host nm1.github.com
HostName github.com
User git
IdentityFile ~/.ssh/gh_node-module1
ForwardAgent yes
Host nm2.github.com
HostName github.com
User git
IdentityFile ~/.ssh/gh_node-module2
ForwardAgent yes
Quindi avrei bisogno di installare i moduli sul server con
npm install git+ssh://[email protected]:thomas/node_module1.git
^^^
Il che significa che le dipendenze di produzione e sviluppo sarebbero diverse
"node-module": "git+ssh://[email protected]:thomas/node-module1.git"
vs
"node-module": "git+ssh://[email protected]:thomas/node-module1.git"
^^^
Questo potrebbe funzionare se avrei potuto fare qualcosa di simile ...
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/gh_node-application
IdentityFile ~/.ssh/gh_node-module1
IdentityFile ~/.ssh/gh_node-module2
ForwardAgent yes
sono andato il percorso di [Utenti macchina] (https://help.github.com/articles/managing-deploy-keys). Che odio davvero XD – ThomasReggi
Hai provato ad aggiungere le chiavi di distribuzione al tuo account github? Tutte le chiavi aggiunte al tuo account ti permetteranno di accedere ai tuoi pacchetti privati. Questa soluzione è efficace solo se non si hanno troppe chiavi e non cambiano troppo frequentemente. – vmx