es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Configuración de la variable de entorno en .Net Core Azure DevOps Pipeline para que esté disponible en Web App.

Tengo una aplicación de API web de .Net Core 3.1 que se está construyendo con una canalización de compilación de Azure utilizando MSBuild y se está implementando en sus diferentes entornos mediante la canalización de lanzamiento de Azure. Deseo que el ID de confirmación de Git esté disponible para la aplicación web para poder leerlo y adjuntarlo como un encabezado de respuesta en las respuestas salientes.

Sé que hay una variable de compilación predefinida llamada Build.SourceVersion que proporciona el ID de confirmación, así que eso no es el problema. Además, no estoy cuestionando cómo adjuntarlo como encabezado de respuesta ya que puedo encontrar esa información en línea con más investigación. Lo que me desconcierta es que no sé cómo hacer que esta información esté disponible una vez que se implementa la aplicación web para que pueda leerla o cómo leerla. ¿Debería agregar un script de PowerShell en el proceso de compilación para agregar la variable de entorno? ¿Es ese incluso el lugar correcto? ¿Debería ser parte de la canalización de lanzamiento en su lugar?

Además, sé que hay una variable de lanzamiento predefinida llamada Release.Artifacts.{alias}.SourceVersion. ¿Cómo haría que esto esté disponible como variable de entorno para ser leído en el código una vez que se implementa la aplicación? ¿Cómo lo leería en el código?

¡Cualquier ayuda es apreciada! ¡También estaría feliz de proporcionar más detalles!

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para hacer que el ID de confirmación de Git esté disponible en su aplicación web, puede agregarlo como una variable de entorno en su canalización de lanzamiento de Azure. Aquí están los pasos que puede seguir:

    1. Acceda a su canalización de lanzamiento y seleccione el entorno al que desea agregar la variable.
    2. Haga clic en la pestaña “Variables” y luego haga clic en “Agregar”.
    3. Ingrese un nombre para su variable, como “GitCommitId”, y luego pegue el valor de la variable de lanzamiento predefinida Release.Artifacts.{alias}.SourceVersion como su valor.
    4. Guarde la variable.

    Ahora que ha agregado la variable a su entorno, puede acceder a ella en su aplicación web Api .Net Core 3.1 utilizando la clase System.Environment de esta manera:

    var gitCommitId = System.Environment.GetEnvironmentVariable("GitCommitId");
    

    Luego, puede adjuntar este valor como un encabezado de respuesta en las respuestas salientes.

    Alternativamente, puede agregar un script de PowerShell en el proceso de compilación para configurar la variable de entorno. Aquí hay un ejemplo de script:

    $env:GitCommitId = "$env:BUILD_SOURCEVERSION"
    

    Puede agregar este script como un paso de compilación en su canalización de compilación de Azure. Sin embargo, este enfoque puede no funcionar si su aplicación web se implementa en varios entornos, ya que cada entorno necesitará su propio ID de confirmación de Git. En ese caso, agregar la variable en la canalización de lanzamiento como se describe anteriormente es un enfoque mejor.

Comments are closed.