main ed esegui goimports (vedi Eseguire gli esempi).
Input accettati
Apps.Create e Apps.Commit accettano qualsiasi io.Reader e lo trasmettono in streaming come multipart/form-data, senza mai caricarlo in memoria:
Gli upload sono limitati a 100 MB. Un file più grande fallisce localmente con
FILE_TOO_LARGE (status 0): prima che venga inviato qualsiasi cosa quando la dimensione è nota, altrimenti non appena il flusso supera i 100 MB. Gli upload non hanno una scadenza predefinita: annullali con ctx.
Creare un’applicazione
Apps.Create(ctx, zip) effettua il deploy di un .zip che contiene un file di configurazione squarecloud.app nella sua radice.
Fare il commit su un’applicazione
Apps.Commit(ctx, appID, r, path, filename) carica un file in un’app esistente:
- Un
.zipviene estratto inpath(""per la radice dell’app). - Qualsiasi altro file finisce in
path/<filename>.
filename, altrimenti il nome proprio del reader (il nome base di un *os.File), altrimenti commit.zip. Passa "" per usare il valore predefinito.
Apps.Restart per applicarlo.
Annullare un upload
*APIError (NETWORK_ERROR quando ctx è stato annullato, TIMEOUT quando la sua scadenza è passata) che fa l’unwrap a context.Canceled o context.DeadlineExceeded.
Errori
L’apertura del file spetta al tuo codice, quindi un errore di
os.Open non raggiunge mai l’SDK. Un reader nil restituisce un errore semplice, non un *APIError. Vedi Errori per l’elenco completo.
Prossimi passi
Gestire i file
Elenca, leggi, scrivi, sposta ed elimina i file di un’app.
Riferimento API dell'upload
Gli endpoint REST dietro questi metodi.
Upload dalla CLI
Le stesse azioni dal terminale.

