Eu tenho feito manualmente, no prompt do DOS, esse comando:
gsutil -m rsync -r gs://Base_Do_GCS/ s3://Bucket_do_S3/Dir_Destino
Ele copia os dados do Bucket do GCS para o bucket do S3/AWS. É possivel rodar esse comando por um Cloud Function?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Eu tenho feito manualmente, no prompt do DOS, esse comando:
gsutil -m rsync -r gs://Base_Do_GCS/ s3://Bucket_do_S3/Dir_Destino
Ele copia os dados do Bucket do GCS para o bucket do S3/AWS. É possivel rodar esse comando por um Cloud Function?
Olá Manoel, tudo bem? Sim, isso é possível sim, porém você precisa se atentar a questão das permissões, e outra questão será que não seria mais fácil fazer isso no AWS Lambda? E ainda existe outra questão, se a quantidade de dados for muito grande, uma função não vai suportar, talvez faça sentido criar uma máquina e o usar o gsutil para fazer a cópia e depois excluir a máquina.
A questão das permissões é só fazer as liberações (isso teria que ser feito no lado do AWS). Acredito que o AWS Lambda seja o equivalente do Cloud Function no ambiente da Amazon. Talvez seja mais fácil rodar a função gsutil (que é uma função do google) no ambiente da GoogleCloud.
Poderia subir uma maquina para fazer esse trabalho e depois baixar. Mas seria muito mais simples se eu fizesse este trabalho por uma Cloud Funtion.
Eu fiz a pergunta mais para saber se vocês tem um exemplo de função que faz esta tarefa.
Entendi perfeitamente Manoel, eu particularmente não tenho nenhum exemplo nesse sentido, e a sobre subir uma máquina para fazer esse trabalho, é que pode valer mais a pena, já que os recursos no Cloud Funtion ou AWS Lambda são limitados.
Jonilson S, você indicaria um curso onde é mostrado o processo de: 1 - Subir uma máquina 2- Rodar um gsutil 3- Desligar a maquina