Estou trabalhando com Heroku, Node e GitHub.
Criei um PAT (Personal Access Token) no GitHub. E gostaria de usá-lo para instalar um repositório privado no GitHub.
O arquivo Node package.json tem uma referência ao repositório e atualmente estou usando HTTPS como protocolo.
Por exemplo, o repositório GitHub remoto privado que desejo instalar é: https://myname:[email protected]/myname/project.git
.
No entanto, o GitHub revogou o uso do token
, porque era visível no meu commit do Git.
O Heroku não fornece isso pronto para uso e
package.json
não oferece suporte nativo a variáveis de ambiente .Uma opção é criar sua dependência como um pacote NPM e publicá-lo em um repositório de pacotes privado, por exemplo , Gemfury , cujo complemento Heroku tem um plano gratuito com suporte a um único módulo privado.
Resumidamente, você pode publicar seu módulo no Gemfury com
https://npm-proxy.fury.io/APPID/
, seguido pornpm login
enpm publish
. Em seguida, no aplicativo Heroku que depende do seu módulo privado, adicione um.npmrc
arquivo contendoe defina uma var de configuração Heroku
FURY_AUTH
contendo seu token de autenticação Gemfury.Isso significa que você terá que atualizar sua biblioteca publicada no Gemfury antes que o aplicativo dependente veja as alterações feitas por você. Esta é provavelmente uma boa ideia de qualquer maneira; depender de lançamentos marcados específicos é mais seguro do que depender de ramificações mutáveis.
Há também esta solução alternativa que pode permitir que você efetivamente injete variáveis de ambiente em seu
package.json
, mas eu não tentei.Para adicionar a esta resposta
1) Criar link de variáveis de ambiente .
2) Grave variáveis de ambiente no arquivo package.json usando um link de gancho de pré-instalação .