Bundling Node.js chaincode for offline install
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 25/100
- Tipo de issue
- Funcionalidade
- Clareza
- Precisa de esclarecimento
- Status de atividade
- Estagnada
- Stack de tecnologia
- javascript, node.js
- Domínio
- blockchain
Direção de pesquisa
Comece pelo fluxo de empacotamento da issue: npm install, o pacote de ciclo de vida peer e o bootstrap de inicialização fabric-chaincode-node start referenciado no corpo. Compare as duas abordagens propostas — criação manual de um tarball e bundling com esbuild — e revise a discussão em #197. O trabalho estará concluído quando um caminho simples e compatível de instalação offline para chaincode Node.js for identificado e documentado.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Node.js chaincode build containers require access to the npm registry when installing chaincode.
This becomes an issue for peers that are "offline" (e.g. peers from cloud providers) and do not have access to the npm registry. Simply running "npm install" before packaging chaincode with "peer lifecycle package" does not solve the problem alone, since the package command ignores the node_modules directory.
We have identified two possible ways to solve this:
- Creating the tarball package manually without using "peer lifecycle package".
- Bundling the application (e.g. with esbuild) before packaging it with "peer lifecycle package".
While the first option works fine, it does make the process of deploying Node.js chaincode a lot more complex than deploying Go or Java chaincode. We would therefore prefer the second option, however, we are still required to add fabric-shim as a module outside the bundle, so that "fabric-chaincode-node start" is available when bootstrapping the chaincode.
Would it be possible to start the application without requiring "fabric-chaincode-node start" as an external script, e.g. by calling the bootstrap function in the chaincode's index.js instead?
Are there any other simple ways to solve this that I've missed or is manually creating the tarball the suggested approach for now?
This issue was also discussed in #197 but seems unresolved
- Linguagem predominante
- JavaScript
- Estrelas
- 262
- Forks
- 147
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Sem modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de hyperledger/fabric-chaincode-node
-
Read/write batchingTalvez livre de novo @Vineet1101 assumiu há 253 dias e não há nenhum pull request aberto. Abertaenhancement help wanted
hyperledger/fabric-chaincode-node#453 · 7 comentários ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
hyperledger/fabric-chaincode-node#422 · 4 comentários ·
Todas as issues de hyperledger/fabric-chaincode-node
Issues semelhantes
-
enhancement p2 setup
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
vercel/eve#5419 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
Mantenedores costumam responder em até 1 dia
-
Query Log shows "Upstream" for CNAME cloaking, schedule, NXDOMAIN hijack and response IP blocksAbertabug good first issue query-log web
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 85/100
ferrous-networking/ferrous-dns#326 ·
Mantenedores costumam responder em até 1 dia
-
type: typos
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 76/100
Mantenedores costumam responder em até 4 dias
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 67/100
Ylianst/MeshCentral#8294 ·
Mantenedores costumam responder em até 1 dia