Questo più che un articolo è un mio personale promemoria per tenere traccia di alcuni comandi utilissimi per creare script automatizzati con operazioni relative a Google Storage.
Il comando forse più utile è quello per scaricare nella directory corrente un file da un Bucket:
gsutil cp gs://<nome_bucket>/<percorso>/<nome_file> . (da notare il punto in fondo, preceduto da uno spazio. che indica la directory locale corrente).
Più utile forse il comando che permette di scaricare una intera directory, visto che l'interfaccia di Storage non sembra ad oggi permetterlo:
gsutil cp -R -m gs://<nome_bucket>/>directory . (l'opzione -m si può omettere ma rende più veloce la copia)
Altro interessante comando non fornito dalla console attualmente è quello per rinominare un file o una directory direttamente su Storage:
gsutil mv <nome_bucket>/<percorso>/<nome_file_corrente> <nome_bucket>/<percorso>/<nuovo_nome_file>
Così come la cancellazione di una intera directory:
gsutil rm -r gs://<nome_bucket>/<percorso>/<directory>
Più interessante per produrre degli script è il metodo per effettuare operazioni con gsutil passando la chiave in formato json di un account di servizio (che deve avere i permessi di accesso a Storage ovviamente), scaricata dalla sezione IAM della console:
gsutil -o "Credentials:gs_service_key_file=<percorso_file_json>" ls -d gs://<nome_bucket>/<percorso>/<nome_directory>/*
tra l'altro il precedente comando elenca i file contenuti in una directory su Storage ma è ovvio che l'opzione -o può essere utilizzata anche in tutti i comandi precedentemente elencati.
Ecco, così ho un bel riferimento per il prossimo script che spero possa tornare utile anche a voi!
Alla prossima,
Marco Brenna