Este proyecto tiene como objetivo poner en practica conocimiento que vamos aprendiendo sobre como desarrollar en Salesforce
Vamos a usar el concepto de Source Drive Development.
Basicamente lo que decimos es que nuestro "source of truth", fuente de verdad del codigo, estara en Github.
Cada uno que quiera desarrollar algo debera hacer un clone del repo, crear una scracth org, es decir una instancia efimera de desarrollo, donde podra probar y testear, y cuando este listo hara el pull request de la funcionalidad nueva.
Primero de todo les pedimos que cada uno tenga su DevHub, si aun no tienen uno pueden:
Crear una cuenta developer que no expira nunca. Formulario Si necesitan una guia paso a paso
Crear una cuenta Omni Studio Trial que expira a los 180 dias.Formulario
Una vez que tengan hagan un login en el browser y configuren:
Saleforce CLI es la herramienta de linea de comando que nos permite subir codigo a nuestra scracth, y bajar de la misma distinto metadatos que son creados dentro de la UI de SF.
Cualquier cosa consultar la guia de instalacion
Ahora que tienen el cli y el devhub, tenemos que autenticarnos a fin de el cli puedan conectarse al devhun y crear scratch orgs.
Con el siguiente comando nos autenticamos y a su vez lo seteamos a este devhub como default (-d). Si no lo ponemos default, ya sea porque tenemos otros DevHubs, al crear una scratch tendriamos que decirle desde que devhub la tiene que crear.
sf org login web -d -a myhuborg
si no funciona el login web, esto puede pasar en algunos windows, pueden usar el flujo de device
sf org login device -d -a myhuborg
Antes de bajar el Repo localmente fijense que tengan git en su compu. Sino pueden instalar Github Desktop o bien usar por linea de comandos instalando Git
En su directorio de trabajo hagan un clone del repo
git clone https://github.com/sebastianclaros/teatime.git
cd teatime
En la carpeta scripts/automation hay una serie de scripts que automatizan las tareas antes de empezar a desarrollar un requerimiento. Ver mas sobre scripts de automatizacion
Sino pueden hacerlo paso a paso manualmente. Vayan al directorio de teatime, y ahi con la linea de comandos va a ser crear la scracth desde nuestro DevHub
sf org create scratch --set-default --definition-file=config/project-scratch-def.json --duration-days=7 --alias=prueba
Ahora subimos el codigo
sf project deploy start
Asignamos Permisos
sf org assign permset --name=adminCatalogo
Subimos datos
sf data tree import --plan=data/plan.json
Abrimos la organizacion de desarrollo en el browser
sf open org
sino lo abre (pasa en algunos windows) se puede ejecutar asi, copian la url y la pegan en el browser
sf open org -r
Si hay error al abrir la org, hay que hacer login con user y pass. Para eso, resetear password de la scratch org con el comando
sf org generate password --target-org <username-or-alias>
Como herramienta de desarrollo usaremos VS Code.
Si no lo tienen instalado sigan trailhead o busquen en confluence la guia Visual Studio Code
Les dejo algunas extensiones utiles:
Ahora desde la carpeta de teatime abran el VSCode
code
Antes de desarrollar una story tenemos que preparar el entorno. Lo primero es bajar lo que esta en la branch remota y crear una nueva branch desde ahi para hacer el codigo nuevo. Despues tenemos que crear una scracth org con el codigo, los datos y la asignacion de permisos, a fin de poder desarrollar y testear nuestro requerimiento
Para simplificar creamos un script que hace todo esto !
./scripts/scratch/create.sh <referencia>
Si el desarrollo del requerimiento termino entonces se puede correr
./scripts/scratch/close.sh
Usamos la libreria de Docusaurus, y agregamos una carpeta en scripts/docs para automatizar o sincronizar con la metadata.
Para correr la documentacion localmente:
yarn doc:start
Para ver la documentacion online