Salesforce CLI: Participe da evolução

A interface de linha de comando (CLI) do Salesforce continua a evoluir, com mais recursos e comandos com suporte para os modelos de desenvolvimento do Salesforce DX. Use-a para criar facilmente ambientes para desenvolvimento e teste, sincronizar o código-fonte, executar testes e controlar o ciclo de vida completo do aplicativo. Esses recursos novos e alterados estarão disponíveis quando a Salesforce CLI v44 for lançado em sábado, 13 de outubro de 2018.

Onde: Essa alteração se aplica ao Lightning Experience, ao Salesforce Classic e a todas as versões do aplicativo Salesforce em todas as edições.

Liberamos alterações à Salesforce CLI regularmente. Leia as notas de versão semanais para saber mais sobre atualizações recentes na versão 44 da CLI. Esses comandos e parâmetros mudaram na versão 44 ou durante atualizações semanais da versão 43. Para obter mais informações, consulte a versão 44 da Referência de comandos da CLI do Salesforce.

Desinstalar a versão de pré-lançamento da CLI

Se você tiver instalado a versão 44 pré-lançamento da CLI, desinstale-a e execute o comando update.
sfdx plugins:uninstall salesforcedx
sfdx update

Novos comandos

Estes novos comandos estão disponíveis na Salesforce CLI v44.

force:source:delete (beta)
Exclui metadados de uma organização sem rastreamento de origem, como um sandbox, e do seu projeto local. Você pode indicar uma lista delimitada por vírgula de caminhos locais ou componentes de metadados individuais.
force:source:deploy (beta)
Implanta a origem do seu projeto para uma organização não rastreada para origem. Diferentemente do comando force:source:push para organizações teste (organizações rastreadas para origem), você indica o conjunto específico de metadados a implantar. Esse comando substitui todos os metadados correspondentes na organização com os arquivos locais implantados.
force:source:retrieve (beta)
Recupera a origem de uma organização não rastreada para origem para o seu projeto. Diferentemente do comando force:source:pull para organizações teste (organizações rastreadas para origem), com force:source:retrieve você indica o conjunto específico de metadados a recuperar. Esse comando substitui todos os arquivos locais pelos metadados recuperados da organização.
Nota

Nota

Por se tratar de um recurso beta, os comandos da organização sem rastreamento de origem estão em visualização prévia e não fazem parte dos "Serviços" estipulados em seu contrato de assinatura mestre com a Salesforce. Use esse recurso a seu exclusivo critério e tome suas decisões de compra com base apenas nos produtos e recursos disponíveis ao público em geral. A Salesforce não garante a disponibilidade geral desse recurso em nenhum período ou data e ele poderá ser descontinuado a qualquer momento. Esse recurso é somente para fins de avaliação, não para uso em produção. É oferecido no estado em que se encontra, não recebe suporte, e a Salesforce não é responsável por qualquer dano ou prejuízo resultante ou relacionado a ele. Todas as restrições, reservas de direitos da Salesforce, obrigações relacionadas aos Serviços e termos relativos a aplicativos e conteúdos não originários da Salesforce aplicam-se igualmente ao seu uso desse recurso. Você pode fornecer feedback e sugestões para os comandos da organização sem rastreamento de origem na Trailblazer Community Salesforce DX.

Os comandos de Instantâneo na organização teste estão disponíveis como parte de um piloto somente convite no fim de outubro de 2018.

force:org:snapshot:create (piloto)
Cria um instantâneo de uma organização teste existente a ser usada como base para criações de organizações teste. Um instantâneo reflete o estado de uma organização teste quando o instantâneo é criado. Contém informações de formato da organização teste (edição, recursos e licenças), pacotes instalados, metadados e dados de teste.
force:org:snapshot:delete (piloto)
Exclui um instantâneo.
force:org:snapshot:get (piloto)
Retorna informações para um instantâneo específico.
force:org:snapshot:list (piloto)
Lista todos os instantâneos associados a um Dev Hub.
Nota

Nota

Fornecemos o Instantâneo da organização teste a clientes selecionados por meio de um programa piloto que requer a concordância com condições e termos específicos. Para ser indicado para participar do programa, entre em contato com a Salesforce. Programas piloto estão sujeitos a alterações e não podemos garantir a aceitação. O Instantâneo da organização teste geralmente não está disponível ao público em geral, a menos ou até que a Salesforce anuncie sua disponibilidade geral na documentação, em comunicados à imprensa ou em declarações públicas. Não podemos garantir a disponibilidade geral dentro de qualquer prazo específico, ou mesmo independentemente de qualquer condição. Tome suas decisões de compra com base apenas nos produtos e recursos disponíveis ao público em geral. Para obter informações sobre a ativação desse recurso na sua organização, entre em contato com a Salesforce.

Comandos alterados

A funcionalidade para esses comandos mudou na Salesforce CLI v44.

force:mdapi:convert
Esse comando ignora aspas duplas ao converter do formato da API de metadados para o formato de origem.
force:package:install, force:package:uninstall
Se você executar esses comandos usando o codinome da versão do pacote, deverá executá-los de uma pasta de projeto do Salesforce DX. Se você especificar a ID da versão do pacote (que começa com 04t), poderá executá-los fora de um projeto DX.
force:package:version:list
A saída inclui uma nova coluna que indica se a versão do pacote é protegida por uma chave de instalação.
force:source:push
Erros de implantação mostram o caminho do projeto.
force:source:pull
Se um nome de metadado tiver caracteres especiais (como barras, contrabarras, aspas), codificaremos o nome do arquivo no sistema de arquivos local para todos os sistemas operacionais. Por exemplo, se você obtiver um perfil personalizado chamado Custom: Marketing Profile, os dois pontos são codificados no nome de arquivo resultante.
Custom%3A Marketing Profile.profile-meta.xml
Se você fizer referência a um nome de arquivo com caracteres especiais em .forceignore, use o nome de arquivo codificado.

Se você usa IDs de versão do pacote, em vez de aliases, poderá agora usar IDs de pacote 04t para todos os comandos force:package:version, em vez de uma combinação de IDs 04t (versão de pacote do assinante) e 05i (versão de pacote). Porém, recomendamos fortemente usar alias para todos os comandos do force:package e no arquivo sfdx-project.json.

  • A saída exibe apenas as IDs 04t para package:version:create, package:version:update, package:version:list e package:version:report.
  • Você pode usar IDs 04t ou 05i ao executar package:version:updatepackage:version:promote ou package:version:report.
  • Você pode usar IDs 04t ou 05i como a ID ancestral no arquivo sfdx-project.json.
  • Você poderá visualizar IDs 05i para package:version:list e package:version:report se usar o parâmetro --verbose.

Novos parâmetros

Esse comando tem um novo parâmetro no Salesforce CLI v44.

force:project:create
Use o parâmetro --manifest | -x para gerar um manifesto padrão (package.xml) a fim de buscar componentes do Apex, do Visualforce e do Lightning e recursos estáticos.

Parâmetros alterados

Esses parâmetros mudaram no Salesforce CLI v44.

force:package:create --path | -r
O parâmetro --path | -r é necessário. Esse parâmetro ignora barras à direita. Por exemplo, a CLI trata force-app e force-app/ da mesma maneira.
force:package:version:update
Nós renomeamos vários parâmetros para torná-los consistentes com os parâmetros para force:package:version:create.
Parâmetro anterior Parâmetro atual
--name | -n --versionname | -a
--description | -d --versiondescription | -e
--package2versionid | -i --package | -p

Versão do pacote no arquivo de projeto do Salesforce DX

Você pode indicar uma versão de pacote com um número de compilação ao definir um pacote dependente no arquivo sfdx-project.json. Anteriormente, era preciso indicar a palavra-chave LATEST como o número de compilação.

"dependencies": [
   {
       "package": "0Hoxxx",
       "versionNumber": "1.1.0.3"
   }
]

Nova variável de ambiente

Normalmente, quando você executa alguns comandos da CLI, um diretório temporário com todos os metadados é criado e então excluído mediante a conclusão bem-sucedida do comando. Porém, reter esses arquivos pode ser útil por vários motivos. Você pode depurar problemas que ocorrem durante a execução do comando. Você pode usar o package.xml gerado ao executar comandos subsequentes, ou como um ponto de partida para criar um manifesto que inclua todos os metadados relevantes para você.

Para reter todos os metadados em um caminho de diretório especificado quando você executa esses comandos, defina a variável de ambiente SFDX_MDAPI_TEMP_DIR:

  • force:source:deploy
  • force:source:retrieve
  • force:source:delete
  • force:source:push
  • force:source:pull
  • force:source:convert
  • force:org:create (se a sua definição de organização teste contiver configurações da organização teste, não preferências da organização)

Exemplo:

SFDX_MDAPI_TEMP_DIR=/users/myName/myDXProject/metadata