Skip to main content
Join the Agentforce Hackathon on Nov. 18-19 to compete for a $20,000 Grand Prize. Sign up now. Terms apply.

Criar e monitorar uma sandbox sob demanda

Objetivos de aprendizagem

Após concluir esta unidade, você estará apto a:

  • Descrever as ferramentas usadas para criar, iniciar e parar sandboxes sob demanda.
  • Listar três etapas que um desenvolvedor pode incluir em seu processo automatizado.
  • Listar os três tipos de ações da API REST.
  • Explicar as definições de configuração do Business Manager necessárias para o acesso do cliente da API às instâncias.

Introdução

Linda Rosenberg, a administradora da Cloud Kicks, quer configurar tudo para que seus desenvolvedores possam trabalhar imediatamente. Depois de configurar usuários e IDs de clientes, ela quer criar uma sandbox. Vijay Lahiri, um dos principais desenvolvedores, está ansioso para criar um novo processo para acelerar a distribuição de recursos. Quando ele e a equipe de desenvolvimento estiverem prontos para começar a trabalhar, Linda acompanhará o consumo de crédito e tomará medidas se ocorrerem problemas.

Administradores e desenvolvedores de sandboxes sob demanda como Linda e Vijay usam essas ferramentas para criar, iniciar, parar, remover e gerenciar sandboxes em seu domínio.

  • API REST: exposta em uma interface de usuário (IU) do Swagger
  • Interface de linha de comando (CLI) baseada na comunidade: parte do conjunto da Commerce Cloud Community no GitHub. (Você deve ter credenciais do GitHub).

Linda quer explorar a API REST primeiro. Em seguida, ela ajudará Vijay a se preparar para usar a CLI. Ele quer usar a CLI para criar um processo de desenvolvimento automatizado semelhante ao seguinte:

  1. Adquira uma sandbox.
  2. Implantar o código na sandbox.
  3. Implante dados de teste na sandbox.
  4. Execute testes automatizados.
  5. Exclua a sandbox.

A API REST

Linda usa as APIs REST para criar uma sandbox sob demanda. Para começar, ela garante que:

  • Poderá acessar um domínio que foi habilitado para sandboxes sob demanda
  • Recebe as funções de Usuário e Administrador do Business Manager da API da sandbox
  • Terá uma ID de cliente

Veja as etapas que ela segue para acessar as APIs REST.

  1. Abrir o navegador.
  2. Inserir esta URL: https://admin.dx.commercecloud.salesforce.com/
  3. Clique em Autorizar para fazer login com a ID de cliente da API que ela configurou usando o Account Manager. Página Autorizar API REST.
  4. Clique em Autorizar.
  5. Inserir a ID de cliente.
  6. Clique em Autorizar novamente.
  7. Clique em Fechar. O ícone de cadeado da opção Autorizar muda para bloqueado. O ícone da opção Autorizar API REST está bloqueado.

Ações

As APIs REST controlam o consumo de crédito. Linda as usa para criar, iniciar, parar e remover sandboxes. A página principal tem duas seções, com comandos na parte superior e modelos na parte inferior.

Comandos da API REST.

Ela pode executar ações:

  • Para pontos de extremidade da API de uso geral
  • No nível de domínio
  • No nível de sandbox

Ela usa ações de domínio para obter informações sobre seu domínio ou para corrigir seus domínios.

Acesse um domínio de sandboxes sob demanda.

Ela pode usar várias ações da sandbox, como criar uma sandbox, executar uma operação da sandbox, excluir uma sandbox ou mostrar o uso da sandbox.

Operações de sandboxes sob demanda.

Linda começa listando sandboxes e, em seguida, criando uma nova. Quando receber uma ID de sandbox, ela pode gerenciar sandboxes individuais.

Modelos

Linda estuda os detalhes do modelo para que ela possa entender seus resultados e especificar os pedidos corretamente. Veja o modelo StatusResponse, por exemplo.

Modelos da API REST.

Criar uma sandbox sob demanda

Agora que Linda está familiarizada com as APIs REST, ela cria uma sandbox sob demanda. Veja as etapas que ela vai seguir.

  1. Abrir o navegador.
  2. Inserir esta URL: https://admin.us01.dx.commercecloud.salesforce.com/
  3. Autorizar por meio da ID de cliente.
  4. Clique em POST ao lado de /sandboxes Create sandbox. Criar uma nova sandbox sob demanda.
  5. Inserir os detalhes nos campos <your realm id> e <your client id>. Na API REST, inserir a ID do domínio e a ID de cliente.
  6. Clique em Executar.
  7. Veja os resultados na seção Respostas.

Neste exemplo, o valor de vida útil (TTL) está definido como 24. Esse valor define quantas horas a sandbox precisa existir. Se TTL estiver definido como 0 ou menos, a sandbox existirá para sempre.

Monitorar sandboxes

Para manter as coisas funcionando sem problemas, Linda analisa mensagens de registro de sandboxes sob demanda que são coletadas em um log center dedicado. Ela clica em um link como este para ver os registros para seu domínio: https://logcenter.us01.dx.commercecloud.salesforce.com/

Uso de crédito

O sistema de sandboxes sob demanda notifica seu gerente de conta do Salesforce quando a Cloud Kicks atinge 85% de seu consumo de uso. Cabe ao gerente de conta comunicar essa situação à respetiva gerência. Se o consumo exceder o valor que sua empresa comprou, as sandboxes continuam funcionando e consumindo créditos, mas com cobranças de excedentes.

É fácil para Linda acompanhar o uso do crédito. Ela usa a API de solicitações de uso GET nas APIs REST para dados de uso de domínio (1) e sandbox (2).

O número 1 mostra o uso de GET da API REST para um domínio e o número 2 mostra o uso de GET da API REST para uma sandbox.

Ela pode analisar os modelos para ver os detalhes. Veja o modelo de uso do domínio. Informações importantes de monitoramento incluem sandboxSeconds, minutesUp e minutesDown em relação ao que a gerência comprou.

RealmUsageModel nas APIs REST.

Veja o modelo de uso da sandbox. Ele mostra a Linda por quantos segundos a sandbox foi executada e, nessa vez, quantos minutos ela estava ativa (em execução) e quantos minutos ele estava inativa (não está em execução). Lembre-se, o custo é maior quando a instância é executada do que quando não é.

SandboxUsageModel nas APIs REST.

Excluir uma sandbox

As sandboxes sob demanda consomem créditos até serem excluídas. Então, Linda é rápida a excluir sandboxes assim que ela ou os desenvolvedores não precisam mais delas.

Em alguns casos, ela ou Vijay criam uma sandbox sob demanda usando POST/sandboxes e definem uma configuração opcional de valor de vida útil (TTL) para o número de horas que a sandbox existirá. Quando eles só precisam de uma sandbox por um curto período de tempo, eles especificam um TTL que cobre apenas o tempo necessário.

Quando Linda precisa de uma sandbox para um projeto com um cronograma final incerto, ela não configura o TTL ou então especifica um TTL realmente grande, como 2.100 horas, e depois exclui a sandbox assim que o projeto é concluído. O valor máximo para TTL é de 2.160 horas. Após criar uma sandbox, ela poderá alterar o valor de TTL usando o comando PATCH/sandboxes.

Preparar-se para a interface de linha de comando (CLI)

Vijay está pronto para criar um processo de desenvolvimento (CI/CD) usando a CLI. Embora esta ferramenta não seja um produto oficial do Salesforce, é uma ferramenta popular para o desenvolvimento de processos automatizados. Ela economiza tempo e elimina problemas normalmente causados por processos manuais propensos a erros. Com esse tipo de processo, ela pode automatizar a validação e entrega de códigos do Salesforce B2C Commerce em sua sandbox sob demanda.

Vijay Lahiri, desenvolvedor da Cloud Kicks

Ele pode usar a CLI de qualquer computador, localmente ou a partir de ferramentas de criação como Jenkins, Travis CI, Bitbucket Pipelines e Heroku CI. A CLI vem com uma API JavaScript básica que ele pode usar para se integrar com aplicativos de nível mais alto no Node.js.

Veja algumas das funções que ele pode executar.

  • Autenticação OAuth2 interativa e headless (não exige usuários do Business Manager)
  • Criar, iniciar, interromper e remover sandboxes sob demanda
  • Configurar várias instâncias, incluindo a criação de alias
  • Implantar código e dados com gerenciamento de versões de código
  • Executar e monitorar trabalhos no sistema
  • Executar e monitorar trabalhos personalizados
  • Conectar-se via WebDAV

Linda já configurou a ID de cliente da API para Vijay usar. Ela também configurou URIs de redirecionamento, escopo padrão, e deu a ele acesso de nível de administrador à CLI. Agora ele precisa conceder acesso à ID de cliente da API às instâncias.

Conceder acesso ao cliente da API

Para alguns comandos da CLI, Vijay precisa fazer chamadas de API para outras instâncias do B2C Commerce. Isso significa que Linda deve conceder acesso global ao Business Manager. Vejamos como ela vai fazer isso.

  1. Abra o Business Manager.
  2. Clique em Administração > Desenvolvimento do site > Configurações da Open Commerce API.
  3. Selecionar API de dados e Global.
  4. Adicionar o conjunto de autorizações para a ID de cliente às configurações.
  5. Você pode copiar este trecho e colá-lo no campo de configurações. Substitua my_client_id pela sua ID de cliente. Se você já tiver configurações da OCAPI (para outras IDs de cliente da API), mescle esse conjunto de autorizações na lista existente.
    { "_v": "19.5",
     "clients":
     [
       {
          "client_id": "my_client_id",
          "resources":
         [
            {
              "resource_id": "/code_versions",
              "methods": ["get"],
              "read_attributes": "(**)",
              "write_attributes": "(**)"
            },
            {
              "resource_id": "/code_versions/*",
              "methods": ["patch"],
              "read_attributes": "(**)",
              "write_attributes": "(**)"
            },
            {
              "resource_id": "/jobs/*/executions",
              "methods": ["post"],
              "read_attributes": "(**)",
              "write_attributes": "(**)"
            },
            {
              "resource_id": "/jobs/*/executions/*",
              "methods": ["get"],
              "read_attributes": "(**)",
              "write_attributes": "(**)"
            },
            {
              "resource_id":"/role_search",
              "methods":["post"],
              "read_attributes":"(**)",
              "write_attributes":"(**)"
            },
            {
              "resource_id":"/roles/*",
              "methods":["get"],
              "read_attributes":"(**)",
              "write_attributes":"(**)"
            },
            {
              "resource_id":"/roles/*/user_search",
              "methods":["post"],
              "read_attributes":"(**)",
              "write_attributes":"(**)"
            },
            {
              "resource_id":"/roles/*/users/*",
              "methods":["put","delete"],
              "read_attributes":"(**)",
               "write_attributes":"(**)"
            },
            {
              "resource_id":"/user_search",
              "methods":["post"],
              "read_attributes":"(**)",
              "write_attributes":"(**)"
            },
            {
              "resource_id":"/users",
              "methods":["get"],
              "read_attributes":"(**)",
              "write_attributes":"(**)"
            },
            {
              "resource_id":"/users/*",
              "methods":["put","get","patch","delete"],
              "read_attributes":"(**)",
              "write_attributes":"(**)"
            }
          ]
        }
      ]
    }
  6. Clique em Administração > Organização > Autorizações do cliente WebDAV.
  7. Adicionar o conjunto de autorizações para sua ID de cliente às configurações de permissão. Você pode copiar este trecho e colá-lo no campo de configurações. Substitua my_client_id pela sua ID de cliente. Se você já tiver autorizações de cliente WebDAV configuradas (para outras IDs de cliente da API), mescle esse conjuntos de autorizações na lista existente.
    {
     "clients":
     [
       {
         "client_id": "my_client_id",
         "permissions":
         [
           {
             "path": "/impex",
             "operations": [
                "read_write"
             ]
         },
         {
             "path": "/cartridges",
             "operations": [
                "read_write"
             ]
            }
          ]
        }
      ]
    }

Vijay está pronto para criar um processo automatizado usando sandboxes sob demanda. As instruções para configurar e usar o SFCC-CLI estão nos repositórios do GitHub do B2C Commerce. Ele segue as instruções no módulo do Trailhead Ferramentas e recursos para desenvolvedores do Salesforce B2C Commerce para aprender a acessar este repositório.

Vamos concluir

Você aprendeu a usar a API REST para criar e excluir uma sandbox sob demanda. Você também aprendeu a monitorar as sandboxes e o uso do crédito. Você se preparou para usar uma CLI aprendendo sobre seus pré-requisitos e como conceder acesso ao cliente da API para outras instâncias. Esse nível de controle e acesso pode tornar você super eficiente no lançamento de novos recursos incríveis em sua loja do B2C Commerce.

Agora, teste seus conhecimentos e conquiste um emblema incrível.

Compartilhe seu feedback do Trailhead usando a Ajuda do Salesforce.

Queremos saber sobre sua experiência com o Trailhead. Agora você pode acessar o novo formulário de feedback, a qualquer momento, no site Ajuda do Salesforce.

Saiba mais Continue compartilhando feedback