Go: x / build / cmd / coordinator: o proxy ssh deve suportar scp

Criado em 24 jul. 2017  ·  3Comentários  ·  Fonte: golang/go

A partir de https://golang.org/cl/50750, o coordenador de construção tem um servidor ssh para proxy para buildlets. (Esse foi o bug # 19956)

Mas ainda não há suporte para scp.

Este é um bug de rastreamento para descobrir isso.

Builders FeatureRequest help wanted

Comentários muito úteis

gomote put e gomote gettar são entediantes e não funcionam com ferramentas existentes como rsync .

O cliente ssh normal não é suportado diretamente.

É se você executá-lo manualmente. gomote ssh echos o comando que você pode executar por conta própria.

Tudo o que é necessário para corrigir esse bug (eu acho) é responder às solicitações de abertura do canal "sftp" em nosso servidor ssh e abrir um novo canal "sftp" para o backend e juntá-los com uma cópia io.Copy goroutines.

Todos 3 comentários

/ cc @dmitshur

Este é um dos problemas que estou examinando. Ao tentar imaginar como isso funcionaria, surgiu a seguinte pergunta.

Considerando que temos gomote put , o suporte scp será necessário e útil? gomote put já não faz o que scp deixaria você fazer? Ou existem casos de uso específicos que conhecemos que fariam isso valer a pena.

Uma observação sobre ssh vs scp . O Gomote atualmente permite que o usuário "ssh em" um buildlet executando gomote ssh <instance> , mas funciona criando um shell ssh e permitindo que o usuário o use. O cliente ssh normal não é suportado diretamente. Não acho que a mesma solução funcionaria para scp , porque não queremos reimplementar toda a sintaxe complexa que o cliente scp suporta.

gomote put e gomote gettar são entediantes e não funcionam com ferramentas existentes como rsync .

O cliente ssh normal não é suportado diretamente.

É se você executá-lo manualmente. gomote ssh echos o comando que você pode executar por conta própria.

Tudo o que é necessário para corrigir esse bug (eu acho) é responder às solicitações de abertura do canal "sftp" em nosso servidor ssh e abrir um novo canal "sftp" para o backend e juntá-los com uma cópia io.Copy goroutines.

Esta página foi útil?
0 / 5 - 0 avaliações