Truco: Como recuperar tu aplicación UI5 de una instancia en CF
Imaginaros que no podemos recuperar de nuestro BAS una aplicación ya borrada, por si fuera poco, no hemos usado un GIT de soporte de versiones pero tenemos la aplicación deployada en nuestra cuenta CF.
Si solo has borrado tu carpeta por accidente esta entrada te puede sacar de un apuro:
Si no es tu caso y necesitas la aplicación que tienes desplegada en tu subcuenta de CF puedes seguir estos sencillos pasos:
- Abrimos un nuevo terminal en nuestro BAS
- Instalamos el plugin «CF HTML5 Applications Repository CLI Plugin» con el siguiente comando:
cf install-plugin -r CF-Community "html5-plugin"

- Lo siguiente es obtener el ID de la aplicación, como la hemos borrado el plugin nos permite listar todas las aplicaciones disponibles:
cf html5-list

- Ya tenemos la lista de aplicaciones disponibles, seleccionamos de la columna «name» la aplicación a recuperar y ejecutamos el siguiente comando:
cf html5-get <nombre de la aplicación> -o .

Una vez ejecutado veremos que aparece una nueva carpeta con nuestra aplicación:

- Nos queda recuperar los ficheros no comprimiros. Cuando generamos nuestra aplicación para hacer deploy, se genera una carpeta dist con una estructura de ficheros un poco distinta a la de nuestra aplicación original:
- Por un lado se crea una copia de nuestro fichero js con el extra «-dbg»
- Los ficheros originales js se «minifican», esto significa que las variables se convierten en unidades mínimas, todo el fichero en una sola línia y se eliminan los comentarios.
- Se genera un fichero llamado «component-preload» que contiene toda nuestra aplicación comprimida en un solo fichero donde cada línia es uno de los ficheros.
- Por lo que deberemos eliminar los ficheros comprimidos, es decir, aquellos que tienen una copia con la coletilla «-dbg».
- Renombramos los ficheros «-bdg» para quitar la parte de debug.
Con esto tendremos nuestros ficheros recuperados. Estos se ubican en la carpeta webapp. Lo mas rápido para recuperar la aplicación es generar una nueva aplicación y mover los ficheros anteriores a la carpeta webapp.
Por último, movemos el fichero xs-app.json a la carpeta del nivel superior, es decir, en la raíz del proyecto.
En esta entrada hemos visto un nuevo método de recuperación de aplicaciones en caso de desastre. Aunque, para evitar estos sustos, lo mejor es tener un buen gestor de código y tenerlo al dia (con los commits y push cuando toca 😉 )
Como siempre suscribete, dale a la campanita de notificaciones y comparte en redes para estar a la última.
A mí que me da que alguna vez te ha pasado…
¡Gracias por compartir!
Por suerte no, pero tengo algún conocido de un conocido que le paso alguna cosa parecida 😉