client de Criando o cliente. app_id é o id de uma das suas aplicações: client.account.me() lista todas.
Entradas aceitas
apps.create() e apps.commit() aceitam:
Os uploads são limitados a 100 MB. Um arquivo maior falha localmente com
FILE_TOO_LARGE (status 0) antes que qualquer coisa seja enviada. Os uploads são transmitidos em stream e não têm timeout depois de conectados (veja Timeouts).
Criando uma aplicação
apps.create(file) faz o deploy de um .zip que contém um arquivo de configuração squarecloud.app na raiz. bytes e objetos de arquivo sem nome são enviados como app.zip.
Fazendo commit em uma aplicação
apps.commit(app_id, file, path=None, filename=None) envia um arquivo para uma aplicação existente. path e filename são keyword-only.
- Um
.zipé descompactado empath(a raiz da aplicação por padrão). - Qualquer outro arquivo vai para
path/<filename>.
filename, senão o próprio nome do arquivo (caminho ou objeto de arquivo), senão commit.zip.
apps.restart() para aplicá-lo.
Cancelando um upload
Uploads em Python não podem ser cancelados depois de enviados:apps.create() e apps.commit() não têm argumento signal nem de cancelamento, e não têm timeout depois de conectados. A conexão em si é limitada por timeout.
Para manter o resto do seu programa responsivo durante um upload longo, execute-o com o AsyncSquareCloud (ele roda em uma thread de trabalho) ou em uma thread sua:
Erros
Um caminho local que não pode ser aberto (ou um arquivo que se torna ilegível no meio do upload) lança um
OSError, não um SquareCloudAPIError. Um caminho inexistente falha antes que qualquer coisa seja enviada. Veja Erros para a lista completa.
Próximos passos
Gerenciando arquivos
Liste, leia, escreva, mova e exclua arquivos da aplicação.
Referência da API de upload
Os endpoints REST por trás destes métodos.
Upload pela CLI
As mesmas ações pelo terminal.

