Despliegue del proyecto angular de GitHub a Azure App Service

Tengo un sitio angular que estoy desarrollando en Visual Studio Code con GitHub para el control de código fuente. No estoy seguro de si es relevante para el problema, pero el sitio se comenzó a usar Angular CLI para crear la estructura de files, etc.

Luego, creé un nuevo service de aplicaciones de Azure y me conecté a GitHub Repo usando la hoja de Opciones de implementación en Azure Portal.

Lamentablemente, el sitio no se inicia porque todo el repository se copió en el Servicio de aplicaciones, y no solo en el contenido de /src o /dist . Efectivamente, App Service no tiene idea de dónde se encuentra main.ts , y, por lo tanto, es más un almacenamiento de files que un website en funcionamiento.

No veo ninguna opción de configuration en Azure Portal para indicarle al sitio que sirva desde la ruta /src , entonces, ¿cómo puedo hacer que este sitio funcione? ¿Hay alguna configuration que deba hacer en el nivel del proyecto en mi código angular? No parece que sea así ya que todos los files se están subiendo, /src o /dist simplemente no parecen ser considerados como el punto de partida para servir al sitio.

Actualizar Encontré la configuration en Azure Portal cuando puedo apuntar a la carpeta /src o /dist , desafortunadamente, la carpeta /dist aún no se está desplazando hacia GitHub y, por lo tanto, no está llegando a Azure. Por supuesto, lo ideal sería simplemente publicar la carpeta /dist en Azure para ahorrar espacio, ya que no necesito una copy completa del repository allí arriba. Y, aunque he cambiado la ruta a /src , en realidad no se ejecuta, porque /src contiene los files .ts mientras que la carpeta /dist contiene todo lo networkingucido a .js como se esperaba.

Actualización # 2 Después de hurgar en SO, y otros resources, decidí dar una oportunidad a la guía de Fnetworkingrik. Originalmente, no quería tener otro engranaje en la máquina (VSTS), pero realmente no parece ser de otra manera para get solo los files de distribución / distribución enviados a Azure en una forma de continuous integration.

¡No puedo agradecer a Fnetworkingrik lo suficiente por su ayuda!

Si consideraría Visual Studio Team Services (VSTS) , tengo una guía que escribí en medio para esto:

Configuración de un conducto de CI para implementar su aplicación angular en Azure usando Visual Studio Team Services y GitHub

Básicamente, necesita automatizar la ejecución de ng build --prod y desplegar solo la carpeta /dist . Posiblemente también agregue un web.config para enrutar todas las requestes que llegan a su sitio a /index.html . Todo eso está cubierto en la publicación del blog 🙂

Incluso si está utilizando otra herramienta de compilation / service que VSTS, la guía debería darle una idea de lo que se debe hacer.