Azion CLI storage
Comandos da Azion CLI que criam, listam, descrevem, atualizam e excluem buckets e objetos do Object Storage, com cada flag, seu tipo e seu padrão.
Os comandos storage da Azion CLI criam, listam, descrevem, atualizam e excluem os buckets e os objetos do Object Storage. Todo verbo recebe um subcomando: bucket atua sobre um bucket, identificado com --name, e object atua sobre um arquivo dentro de um bucket, identificado com --bucket-name e --object-key. As opções que todo comando aceita, como --format, --out e -y, estão em Opções globais.
Criar
azion create storage recebe o subcomando bucket ou o subcomando object.
Bucket
azion create storage bucket cria um bucket com o nome e o nível de acesso que você passa:
| Flag | Curta | Tipo | Padrão | Descrição |
|---|---|---|---|---|
--file | — | string | — | Caminho de um arquivo JSON com os atributos do bucket. Use - para ler o JSON da entrada padrão. |
--name | — | string | — | Nome do bucket, com letras minúsculas, números e hifens. |
--workloads-access | — | string | — | Obrigatório, a menos que --file seja definido. Tipo de permissão para ações dentro do bucket: read_only, read_write ou restricted. Sem ele, o comando pede que você escolha um. |
Um nome com letras maiúsculas é recusado com este erro:
Qualquer outro valor de --workloads-access é recusado da mesma forma, como public, com ["\"public\" is not a valid choice."].
Este comando cria um bucket chamado my-bucket com o nível de acesso read_only:
O comando confirma a criação:
Objeto
azion create storage object envia um arquivo local para um bucket como objeto:
| Flag | Curta | Tipo | Padrão | Descrição |
|---|---|---|---|---|
--bucket-name | — | string | — | Nome do bucket que recebe o objeto. |
--file | — | string | — | Caminho de um arquivo JSON com os atributos do objeto. Use - para ler o JSON da entrada padrão. O comando lê o caminho local do arquivo e ainda precisa de --bucket-name e --object-key. |
--object-key | — | string | — | Obrigatório, também com --file. Chave do objeto no bucket. Uma chave pode ser um caminho completo, como path/to/file/bucket/file.txt. |
--source | — | string | — | Caminho do arquivo local a enviar. Um caminho relativo é lido a partir do diretório atual. |
Um bucket que não existe, ou uma chamada com --file sem --object-key, falha com este erro:
Este comando envia ./upload/index.html para my-bucket com a chave site/index.html:
O comando confirma o envio:
Listar
azion list storage recebe o subcomando bucket ou o subcomando object.
Bucket
azion list storage bucket lista os buckets da sua conta com o nível de acesso de cada um, 50 por página:
| Flag | Curta | Tipo | Padrão | Descrição |
|---|---|---|---|---|
--page | — | int | 1 | Número da página a retornar. |
--page-size | — | int | 50 | Número de buckets em cada página. |
O comando não tem a flag --details e falha com Error: unknown flag: --details quando você passa uma.
Este comando retorna a primeira página de uma lista dividida em páginas de dois buckets:
O comando imprime uma linha por bucket:
Objeto
azion list storage object lista os objetos de um bucket com a chave e a última alteração de cada um, 50 por página:
| Flag | Curta | Tipo | Padrão | Descrição |
|---|---|---|---|---|
--bucket-name | — | string | — | Obrigatório. Nome do bucket cujos objetos listar. Sem ele, o comando pergunta o nome. |
--details | — | — | — | Adiciona a coluna SIZE, em bytes, às colunas KEY e LAST MODIFIED. |
--next-page | — | — | — | Retorna a próxima página da lista, depois dos primeiros --page-size objetos. |
--page-size | — | int | 50 | Número de objetos em cada página. |
Este comando lista os objetos de my-bucket com os seus tamanhos:
O comando imprime uma linha por objeto:
Descrever
azion describe storage recebe o subcomando object. A ajuda do comando não lista nenhum subcomando.
Bucket
azion describe storage bucket não recebe a flag --name e falha com Error: unknown flag: --name, então a CLI não descreve um bucket. Para ler o nível de acesso de um bucket, execute azion list storage bucket.
Objeto
azion describe storage object imprime o conteúdo de um objeto:
| Flag | Curta | Tipo | Padrão | Descrição |
|---|---|---|---|---|
--bucket-name | — | — | — | Nome do bucket que guarda o objeto. |
--object-key | — | — | — | Chave do objeto a imprimir. |
Este comando imprime o objeto site/index.html de my-bucket:
O comando imprime o conteúdo do objeto como ele está armazenado:
Com --format json, o comando imprime o mesmo conteúdo, e não um objeto JSON. Com --out, como --out object-download.html, ele grava o objeto nesse arquivo em vez de imprimi-lo.
Atualizar
azion update storage recebe o subcomando bucket ou o subcomando object.
Bucket
azion update storage bucket altera o nível de acesso de um bucket:
| Flag | Curta | Tipo | Padrão | Descrição |
|---|---|---|---|---|
--file | — | string | — | Caminho de um arquivo JSON com o nome do bucket e os atributos a alterar. Use - para ler o JSON da entrada padrão. |
--name | — | string | — | Nome do bucket a atualizar. |
--workloads-access | — | string | — | Tipo de permissão a definir para ações dentro do bucket: read_only, read_write ou restricted. |
Este comando altera o nível de acesso de my-bucket para restricted:
O comando confirma a atualização:
Depois da atualização, azion list storage bucket exibe restricted para my-bucket.
Objeto
azion update storage object substitui o conteúdo de um objeto por um arquivo local:
| Flag | Curta | Tipo | Padrão | Descrição |
|---|---|---|---|---|
--bucket-name | — | string | — | Nome do bucket que guarda o objeto. |
--file | — | string | — | Caminho de um arquivo JSON com o caminho local do conteúdo substituto. Use - para ler o JSON da entrada padrão. Passe --bucket-name e --object-key com ele. |
--object-key | — | string | — | Chave do objeto a atualizar. |
--source | — | string | — | Obrigatório, a menos que --file seja definido. Caminho do arquivo local com o conteúdo substituto. Sem ele, o comando pergunta o caminho. |
Este comando substitui o conteúdo de site/index.html em my-bucket por ./upload/index-v2.html:
O comando confirma a atualização:
Depois da atualização, azion describe storage object imprime o conteúdo substituto, <h1>hello world updated</h1>.
Excluir
azion delete storage recebe o subcomando bucket ou o subcomando object.
Bucket
azion delete storage bucket exclui um bucket e os objetos dentro dele:
| Flag | Curta | Tipo | Padrão | Descrição |
|---|---|---|---|---|
--force | — | — | — | Esvazia o bucket e depois o exclui. |
--name | — | string | — | Nome do bucket a excluir. |
Este comando exclui o bucket vazio my-other-bucket:
O comando confirma a exclusão, e o bucket sai da lista imediatamente:
Um bucket que guarda objetos é esvaziado, e a exclusão dele é agendada em vez de feita imediatamente. O comando imprime esta saída:
O bucket continua em azion list storage bucket por um tempo, sem nenhum objeto dentro dele. Para mais informações, consulte Limites do Object Storage.
Objeto
azion delete storage object exclui um objeto de um bucket:
| Flag | Curta | Tipo | Padrão | Descrição |
|---|---|---|---|---|
--bucket-name | — | string | — | Nome do bucket que guarda o objeto. |
--object-key | — | string | — | Chave do objeto a excluir. |
Este comando exclui o objeto site/two.txt de my-bucket:
O comando confirma a exclusão:
Usar um arquivo JSON
azion create storage e azion update storage leem os atributos de um bucket ou de um objeto de um arquivo JSON com --file.
Arquivo de bucket
Um arquivo de bucket traz name e workloads_access. Este arquivo cria um bucket chamado my-other-bucket com o nível de acesso read_write:
Passe o arquivo para o comando de criação:
O comando confirma a criação:
Na atualização, o comando lê o bucket a alterar de name, então --name não é necessário. Este arquivo altera o nível de acesso de my-other-bucket para read_only:
Passe o arquivo para o comando de atualização:
O comando confirma a atualização:
Arquivo de objeto
Um arquivo de objeto traz source, o caminho do arquivo local. O comando não lê a chave do arquivo, então passe --bucket-name e --object-key na linha de comando, na criação e na atualização. Este arquivo aponta para o conteúdo substituto de site/two.txt:
Passe o arquivo para o comando de atualização com o bucket e a chave:
O comando confirma a atualização: