Operações de backup on-line RESTful

Pergunta

A partir do CQ5.5, um backup on-line não pode mais ser acionado por meio do console CRX Web. Essa funcionalidade foi movida para o plug-in JMX disponível agora no Console Web do Adobe CQ5 (anteriormente conhecido como Felix Console).

Como é possível acionar determinadas operações do Online Backup de maneira automatizada usando scripts de shell e cronjobs, por exemplo?

Resposta

É possível executar operações do Backup Online que o MBean JMX correspondente expõe usando solicitações HTTP de maneira RESTful.

Este artigo descreve como executar essas solicitações HTTP com base no cURL para enviar solicitações.

Observação:

O MBean JMX em questão é de domínio com.adobe.granite, tipo Repositório.

Solicitações

Inicie um backup com um atraso explícito (em ms):

# start backup with 1ms delay
curl -u admin:<pwd> -F"target=mybackup.zip" -F"force=true"
   -F"delay=1" http://<host>:<port>/libs/granite/backup/content/admin/backups.html

Para baixar um backup, use o seguinte comando cURL:

# download backup-zip file with GET
curl -u admin:<pwd>
    "http://<host>:<port>/libs/granite/backup/content/admin/backup.download.html?<absolute_path_to_backup_zip>

Apagar um arquivo zip de backup funciona de maneira semelhante a uma solicitação POST:

# delete backup-zip file with POST
curl -u admin:<pwd> -F"path=<absolute_path_to_backup_zip>"
    http://<host>:<port>/libs/granite/backup/content/admin/backup.delete.html

Cancelar um backup também é possível com um POST para o seguinte:

# cancel current backup with POST
curl -u admin:<pwd> -X POST
    http://<host>:<port>/libs/granite/backup/content/admin/backups.cancel.html
Observação:

O comando cURL para criar um arquivo zip de backup retorna imediatamente desde que a criação do backup tenha sido diferida para um encadeamento assíncrono.

Para determinar se um backup foi concluído e se seu arquivo zip de backup correspondente está completo, do ponto de vista de um script, monitore o diretório de destino. Um diretório temporário é criado enquanto o backup está em andamento. O nome do diretório temporário é baseado no nome do arquivo zip fornecido para o backup. Por exemplo:

  • nome do arquivo zip de backup: backup-author-120713.zip
  • nome do diretório temp: backup-author-120713.<xyz> .temp

A parte <xyz> é dinâmica. Depois que o backup é concluído, o conteúdo desse diretório temporário é compactado e removido posteriormente.

Logotipo da Adobe

Fazer logon em sua conta