Salesforce CLI: Unirse a la evolución

La interfaz de la línea de comandos de Salesforce (CLI) sigue evolucionando con más funciones y comandos que admiten los modelos de desarrollo de Salesforce DX. Utilícela para crear fácilmente entornos para el desarrollo y pruebas, sincronizar código fuente, ejecutar pruebas y controlar el ciclo de vida completo de la aplicación. Estas funciones nuevas y con cambios están disponibles con la presentación de Salesforce CLI v44 del sábado, 13 de octubre de 2018.

Dónde: Este cambio se aplica a Lightning Experience, Salesforce Classic y todas las versiones de la aplicación Salesforce en todas las ediciones.

Publicamos cambios en Salesforce CLI de forma habitual. Lea las notas de la versión semanales para conocer actualizaciones recientes en la versión 44 de la CLI. Estos comandos y parámetros cambiaron en la versión 44 o durante las actualizaciones semanales de la versión 43. Para obtener más información, consulte la versión 44 de la Referencia de comandos de la CLI de Salesforce.

Desinstalar la versión previa al lanzamiento de la CLI

Si instaló la versión 44 previa al lanzamiento de la CLI, desinstálela y, a continuación, ejecute el comando update.
sfdx plugins:uninstall salesforcedx
sfdx update

Nuevos comandos

Estos nuevos comandos están disponibles en la versión v44 de Salesforce CLI.

force:source:delete (beta)
Elimina metadatos de una organización sin seguimiento de fuente, como un sandbox, y desde su proyecto local. Puede indicar una lista separada por comas de las rutas locales o de componentes de metadatos individuales.
force:source:deploy (beta)
Implementa el origen desde proyecto en una organización seguida sin origen. A diferencia del comando force:source:push para organizaciones borrador (organizaciones seguidas con origen), indica el conjunto específico de metadatos para implementar. Este comando sobrescribe todos los metadatos correspondientes en la organización con los archivos locales implementados.
force:source:retrieve (beta)
Recupera el origen desde una organización seguida sin origen en su proyecto. A diferencia del comando force:source:pull para organizaciones borrador (organizaciones seguidas con origen), con force:source:retrieve indica el conjunto de metadatos específico para recuperar. Este comando sobrescribe todos los archivos locales con los metadatos recuperados de la organización.
Nota

Nota

Como una función beta, los comandos de organizaciones sin seguimiento de fuente son una vista previa y no forman parte de los “Servicios” bajo su acuerdo general de suscripción con Salesforce. Utilice esta función a su única discreción y tome sus decisiones de compra solo en base a funciones y productos disponibles de forma general. Salesforce no garantiza la disponibilidad general de esta función dentro de ningún plazo de tiempo y podemos interrumpirla en cualquier momento. Esta función es únicamente para fines de evaluación, no para uso de producción. Se ofrece tal cual y no es compatible, y Salesforce no tiene responsabilidad por cualquier daño emergente o en conexión con ella. Todas las restricciones, la reserva de derechos de Salesforce, las obligaciones en lo referente a los Servicios y condiciones para aplicaciones que no son de Salesforce relacionadas y Contenido se aplican por igual a su uso de esta función. Puede proporcionar comentarios y sugerencias para los comandos de organizaciones sin seguimiento de fuente en Salesforce DX de Trailblazer Community.

Los comandos de instantánea de organización borrador están disponibles como parte de un piloto solo con invitación a finales de octubre de 2018.

force:org:snapshot:create (piloto)
Crea una instantánea de una organización borrador existente para utilizarla como base para creaciones de organizaciones borrador. Una instantánea refleja el estado de una organización borrador cuando se crea la instantánea. Contiene la información de la forma de la organización borrador (edición, funciones y licencias), paquetes instalados, metadatos y datos de prueba.
force:org:snapshot:delete (piloto)
Elimina una instantánea.
force:org:snapshot:get (piloto)
Devuelve información de una instantánea especificada.
force:org:snapshot:list (piloto)
Enumera todas las instantáneas asociadas con un Dev Hub.
Nota

Nota

Proporcionamos Instantánea de organización borrador a clientes seleccionados a través de un programa piloto que requiere un acuerdo con condiciones específicas. Para estar nominado para participar en el programa, haga contacto con Salesforce. Los programas piloto están sujetos a cambios, no podemos garantizar la aceptación. La función Instantánea de organización borrador no está disponible de forma general a menos o hasta que Salesforce anuncie su disponibilidad general en la documentación, en comunicados de prensa o declaraciones públicas. No podemos garantizar la disponibilidad general dentro de ningún plazo de tiempo. Tome sus decisiones de compra solo en base a funciones y productos disponibles de forma general. Para obtener información sobre cómo activar esta función en su organización, haga contacto con Salesforce.

Comandos cambiados

La función para estos comandos cambió en Salesforce CLI v44.

force:mdapi:convert
Este comando aplica caracteres de escape a las comillas al convertir del formato API de metadatos al formato de origen.
force:package:install, force:package:uninstall
Si ejecuta estos comandos utilizando el alias de versión de paquete, debe ejecutarlos desde una carpeta de proyecto de Salesforce DX. Si especifica el Id. de versión de paquete (que comienza por 04t), debe ejecutarlos fuera de un proyecto de DX.
force:package:version:list
El resultado incluye una nueva columna que indica si la versión del paquete está protegida por una clave de instalación.
force:source:push
Los errores de implementación muestran la ruta del proyecto.
force:source:pull
Si un nombre de metadatos tiene caracteres especiales (como barras diagonales, barras invertidas, signos de interrogación), codificamos el nombre de archivo en el sistema de archivos local para todos los sistemas operativos. Por ejemplo, si extrae un perfil personalizado denominado Custom: Perfil de marketing, los dos puntos se codifican en el nombre de archivo resultante.
Custom%3A Marketing Profile.profile-meta.xml
Si hace referencia a un nombre de archivo con caracteres especiales en .forceignore, utilice el nombre de archivo codificado.

Si utiliza identificadores de versión de paquete en vez de alias, ahora puede utilizar los identificadores de paquete 04t para todos los comandos force:package:version en vez de una mezcla de identificadores 04t (versión de paquete de suscriptor) y 05i (versión de paquete). No obstante, recomendamos encarecidamente el uso de alias para todos los comandos force:package y en el archivo sfdx-project.json.

  • El resultado solo muestra los identificadores 04t para package:version:create, package:version:update, package:version:list y package:version:report.
  • Puede utilizar identificadores 04t o 05i cuando ejecute package:version:updatepackage:version:promotepackage:version:report.
  • Puede utilizar identificadores 04t o 05i como el identificador del antecesor en el archivo sfdx-project.json.
  • Puede ver identificadores 05i para package:version:list y package:version:report si utiliza el parámetro --verbose.

Parámetros nuevos

Este comando tiene un nuevo parámetro en Salesforce CLI v44.

force:project:create
Utilice el parámetro --manifest | -x para generar un manifiesto predeterminado (package.xml) para obtener componentes de Apex, Visualforce, Lightning, y recursos estáticos.

Parámetros cambiados

Estos parámetros cambiaron en Salesforce CLI v44.

force:package:create --path | -r
El parámetro --path | -r es obligatorio. Este parámetro ignora barras diagonales finales. Por ejemplo, la CLI trata force-app y force-app/ por igual.
force:package:version:update
Cambiamos el nombre de varios parámetros para hacerlos coherentes con los parámetros para force:package:version:create.
Parámetro anterior Parámetro actual
--name | -n --versionname | -a
--description | -d --versiondescription | -e
--package2versionid | -i --package | -p

Versión de paquete en el archivo de proyecto de Salesforce DX

Puede indicar una versión de paquete con un número de compilación cuando define un paquete dependiente en el archivo sfdx-project.json. Anteriormente tenía que indicar la palabra clave LATEST como número de compilación.

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

Nueva variable de entorno

Normalmente, cuando ejecuta algunos comandos de la CLI, se crea un directorio temporal con todos los metadatos que luego se elimina al terminar correctamente el comando. No obstante, la retención de esos archivos puede ser útil por varios motivos. Puede depurar problemas que se producen durante la ejecución del comando. Puede utilizar el archivo package.xml generado al ejecutar comandos posteriores, o como punto de partida para crear un manifiesto que incluya todos los metadatos que le importan.

Para retener todos los metadatos en una ruta de directorio especificada cuando ejecuta estos comandos, establezca la variable de entorno 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 (si su definición de organización borrador contiene configuraciones de organizaciones borrador, no preferencias)

Ejemplo:

SFDX_MDAPI_TEMP_DIR=/users/myName/myDXProject/metadata