Perguntas frequentes sobre o Cloud Manager cloud-manager-faqs

Este documento fornece respostas para as perguntas mais frequentes sobre o Cloud Manager no AEM as a Cloud Service.

É possível usar o Java™ 11 com compilações do Cloud Manager? java-11-cloud-manager

Sim. Adicione o maven-toolchains-plugin com configurações adequadas para Java™ 11.

O processo está documentado. Consulte o Assistente de Criação do Projeto.

Por exemplo, consulte o código do projeto de amostra do WKND.

Minha build falha com um erro sobre o maven-scr-plugin após alternar do Java™ 8 para o Java™ 11. O que posso fazer? build-fails-maven-scr-plugin

A build do AEM Cloud Manager pode falhar ao tentar mudar do Java™ 8 para o 11. Se você encontrar o seguinte erro, deverá remover o maven-scr-plugin e converter todas as anotações OSGi em anotações OSGi R6.

[main] [ERROR] Failed to execute goal org.apache.felix:maven-scr-plugin:1.26.4:scr (generate-scr-scrdescriptor) on project helloworld.core: /build_root/build/testsite/src/main/java/com/adobe/HelloWorldServiceImpl.java : Unable to load compiled class: com.adobe.HelloWorldServiceImpl: com/adobe/HelloWorldServiceImpl has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0 > [Help 1]

Para obter instruções sobre como remover este plug-in, consulte De anotações SCR para anotações OSGI.

Minha build falha com um erro sobre RequireJavaVersion após mudar do Java™ 8 para o Java™ 11. O que posso fazer? build-fails-requirejavaversion

Para compilações do Cloud Manager, maven-enforcer-plugin pode falhar com esse erro.

"[main] [WARNING] Rule 1: org.apache.maven.plugins.enforcer.RequireJavaVersion".

Esse erro é um problema conhecido porque a Cloud Manager usa uma versão diferente do Java™ para executar o comando Maven em comparação ao código de compilação. Omita o requireJavaVersion das configurações do maven-enforcer-plugin.

Falha na verificação de qualidade do código, bloqueando a implantação. Existe uma maneira de ignorar essa verificação? deployment-stuck

Sim. Todas as falhas de verificação de qualidade do código, exceto a classificação de segurança, são métricas não críticas. Como resultado, eles podem ser ignorados como parte de um pipeline de implantação expandindo os itens na interface do usuário de resultados.

Um usuário com a função Gerente de Implantação, Gerente de Projeto ou Proprietário da Empresa pode substituir os problemas. Nesse caso, o pipeline continua ou eles podem aceitar os problemas, caso em que o pipeline é interrompido com uma falha.

Veja os documentos Testes de qualidade do código e Configuração de pipelines de não produção para obter mais detalhes.

Posso usar o SNAPSHOT para a versão do projeto Maven? use-snapshot

Sim. Para implantações de desenvolvedores, os arquivos pom.xml da ramificação Git devem conter -SNAPSHOT no final do valor <version>.

Esse valor permite que a implantação subsequente seja instalada mesmo quando a versão não foi alterada. Em implantações de desenvolvedores, nenhuma versão automática é adicionada ou gerada para a compilação maven.

Você também pode definir a versão como -SNAPSHOT para compilações ou implantações de preparo ou de produção. O Cloud Manager define automaticamente um número de versão adequado e cria uma tag para você no Git. Se necessário, essa tag pode ser consultada posteriormente.

Para obter mais detalhes sobre o manuseio de versão, consulte Manuseio de versão de projeto Maven.

Como funciona o controle de versão dos pacotes para implantações de preparo e produção? snapshot-version

Em implantações de preparo e produção, uma versão automática é gerada. Consulte Manuseio de Versão de Projeto Maven.

Para o controle de versão personalizado em implantações de preparo e produção, defina uma versão Maven adequada com três partes como 1.0.0. Aumente a versão sempre que implantar na produção.

O Cloud Manager adicionará automaticamente a versão às compilações de preparo e produção e criará uma ramificação Git. Nenhuma configuração especial é necessária. Se você não definir uma versão do Maven, a implantação ainda será bem-sucedida e uma versão será definida automaticamente.

Minha compilação maven falha para implantações do Cloud Manager, mas é criada localmente sem erros. Qual é a causa? maven-build-fail

Consulte este recurso do Git para obter mais detalhes.

O que devo fazer se uma implantação do Cloud Manager falhar na etapa de implantação do AEM as a Cloud Service? cloud-manager-deployment-cloud-service

O motivo mais comum para uma implantação falhar são permissões insuficientes para o usuário sling-distribution-importer. Nesse caso, a etapa de implantação falha durante uma implantação do Cloud Manager e erros como os mostrados a seguir são gerados.

[Queue Processor for Subscriber agent forwardPublisherSubscriber] org.apache.jackrabbit.vault.fs.io.Importer Error while committing changes. Retrying import from checkpoint at /. Retries 4/10
[Queue Processor for Subscriber agent forwardPublisherSubscriber] org.apache.sling.distribution.journal.impl.subscriber DistributionSubscriber Error processing queue item
org.apache.sling.distribution.common.DistributionException: Error processing distribution package
dstrpck-1583514457813-c81e7751-2da6-4d00-9814-434187f08d32. Retry attempts 162/infinite.
Caused by: org.apache.sling.api.resource.PersistenceException: Unable to commit changes to session.
Caused by: javax.jcr.AccessDeniedException: OakAccess0000: Access denied [EventAdminAsyncThread #7] org.apache.sling.distribution.journal.impl.publisher.DistributionPublisher [null] Error processing distribution package` `dstrpck-1583514457813-c81e7751-2da6-4d00-9814-434187f08d32. Retry attempts 344/infinite. Message: Error trying to extract package at path /etc/packages/com.myapp/myapp-base.ui.content-5.1.0-SNAPSHOT.

O usuário sling-distribution-importer precisa de permissões adicionais para os caminhos de conteúdo definidos em ui.content package. Esta configuração geralmente requer a adição de permissões para /conf e /var.

A solução é adicionar um script de Configuração OSGi de RepositoryInitializer ao pacote de implantação de aplicativos para adicionar ACLs para o usuário sling-distribution-importer.

No erro do exemplo anterior, o pacote myapp-base.ui.content-*.zip inclui conteúdo em /conf e /var/workflow. Para que a implantação seja bem-sucedida, as permissões de sling-distribution-importer nesses caminhos são necessárias.

Veja este exemplo de uma configuração OSGi org.apache.sling.jcr.repoinit.RepositoryInitializer-DistributionService.config que adiciona mais permissões ao usuário sling-distribution-importer. A configuração adiciona permissões em /var. Essa configuração deve ser adicionada ao pacote do aplicativo em /apps/myapp/config (onde myapp é a pasta onde o código do aplicativo está armazenado).

A implantação do My Cloud Manager falha na etapa de implantação do AEM as a Cloud Service e já adicionei uma configuração OSGi de RepositoryInitializer. O que mais posso fazer? build-failures

Se adicionar uma configuração OSGi de RepositoryInitializer não resolver o erro, talvez seja devido a um dos seguintes motivos:

  • A implantação falha devido a uma configuração OSGi inválida que interrompe um serviço padrão.

    • Verifique os logs durante a implantação para ver se há erros óbvios.
  • A implantação falha devido a configurações inválidas do Dispatcher ou Apache.

    • Teste as configurações do Apache e do Dispatcher localmente utilizando a imagem do Docker incluída no SDK.
    • Consulte Dispatcher na nuvem para saber como configurar o contêiner do Dispatcher Docker para facilitar o teste local.
  • A implantação falha devido a alguma outra falha durante a replicação dos pacotes de conteúdo (distribuição Sling) do autor para publicar as instâncias.

    • Siga estas etapas para simular o problema em uma configuração local.

      1. Instale um Autor e uma instância de Publicação localmente usando os jars mais recentes do AEM SDK.
      2. Faça logon na instância de criação.
      3. Vá para Ferramentas > Implantação > Distribuição.
      4. Distribua os pacotes de conteúdo que fazem parte da base de código e veja se a fila é bloqueada com um erro.

Não consigo definir uma variável usando um comando aio. O que posso fazer? set-variable

Você recebe um erro 403 como o seguinte ao tentar listar ou definir variáveis de pipeline usando comandos aio.

$ aio cloudmanager:list-pipeline-variables 222

Cannot get variables: https://cloudmanager.adobe.io/api/program/111/pipeline/222/variables (403 Forbidden)

$ aio cloudmanager:set-pipeline-variables 222 --variable TEST 1

Cannot get variables: https://cloudmanager.adobe.io/api/program/111/pipeline/222/variables (403 Forbidden)

$ aio cloudmanager:set-environment-variables 1755 --variable TEST 1

setting variables... !

Cannot set variables: https://cloudmanager.adobe.io/api/program/111/environment/222/variables (403 Forbidden)

Nesse caso, o usuário que executa esses comandos precisa ser adicionado à função Gerente de implantação no Admin Console.

Consulte Permissões da API para obter mais detalhes.

recommendation-more-help
experience-manager-cloud-service-help-main-toc