Saltar al contenido

Cree una solución .NET utilizando GitLab CI Pipeline

Investigamos en todo el mundo on line para traerte la solución para tu duda, si tienes alguna inquietud puedes dejarnos tu duda y contestamos sin falta.

Solución:

Debería poder configurar su propio corredor compartido en una máquina con las herramientas de compilación de Framework 4 (ya sea usando una imagen de Docker, como microsoft/dotnet-framework-build, o simplemente su máquina nativa).

El caso más simple para comenzar es usar su propio escritorio, donde sabe que su solución ya está compilada. (Dado que usar imágenes de Docker para la compilación es absolutamente posible, pero implica todos los pasos adicionales para asegurarse de que Docker funcione en su máquina).

  • Descargue gitlab-runner en su computadora desde https://docs.gitlab.com/runner/install/windows.html

    • Cree un directorio en la computadora (C:gitlab-runner)
    • Descargue el último binario x86 o x64 a esa carpeta
    • Cambie el nombre del binario a “gitlab-runner.exe”
  • Obtenga un token de gitlab-ci para su corredor
    • Probablemente la forma más fácil de hacer esto es ir a su proyecto en gitlab.com e ir a Configuración -> CI/CD y expandir Configuración general de canalización.
    • En la sección Ficha de corredor, haga clic en el botón Revelar valor para mostrar el valor de la ficha. Lo necesitará durante el paso de registro del corredor.
  • Registre el corredor de gitlab según Registro de corredores – Windows
    • Abra un símbolo del sistema elevado (ejecutar como administrador)
    • cd a c:gitlab-runner
    • escribe gitlab-runner register
    • Las indicaciones de registro lo llevarán a través de los pasos para registrar al corredor, pero en pocas palabras, estará ingresando
    • gitlab.com como su URL de coordinador, ingresando el token de su proyecto
    • dándole un nombre a tu corredor
    • etiquetando su corredor (para que pueda asociarlo con proyectos que es capaz de construir, probar, etc., para simplificar, puede omitir las etiquetas ahora)
    • permitiéndole ejecutar trabajos sin etiquetar (nuevamente, simplicidad, digamos true)
    • bloquear el corredor al proyecto actual (simplicidad, digamos true)
    • y elegir el ejecutor (ingresar shell, que básicamente dice usar la línea de comandos de Windows)
  • Instale gitlab-runner como un servicio, de modo que en su mayoría siempre esté verificando si hay trabajo por hacer
    • En su símbolo del sistema, escriba gitlab-runner install
    • Luego escribe gitlab-runner start
    • (Ahora, si va a Servicios, verá gitlab-runner en la lista, y debería estar ejecutándose. Justo cuando/si el corredor falla, debe ir a Servicios para reiniciarlo)

Uf. Ahora que el corredor está configurado, debe activarse cuando presiona una confirmación o se solicita una fusión.

Si aún tiene problemas con la creación adecuada del archivo .gitlab-ci.yml, puede depurarlo localmente (sin tener que seguir activándolo a través de gitlab.com) yendo a la carpeta de su solución en la línea de comando y luego ejecutando c:gitlab-runnergitlab-runner build (Para probar el paso de compilación, por ejemplo).

Si el paso de compilación tiene problemas para encontrar su archivo de solución, puede intentar cambiarlo de ‘msbuild.exe Bizio.sln’ a ‘msbuild.exe .Bizio.sln’

Para complementar la respuesta de reallyrae, la otra opción para las aplicaciones .Net Core es incluir una llamada al contenedor como primera línea en su archivo .gitlab-ci.yml. Esto permitirá que la compilación se realice en un corredor compartido de GitLab.com.

image: microsoft/dotnet

Si está creando una aplicación .Net tradicional, puede probar la imagen mono docker. Si eso no te funciona, el corredor local es, que yo sepa, tu única opción.

image: mono:latest

O construcciones de varias etapas:

stages:
  - build-dotnet
  - test-dotnet
  - build-mono
  - test-mono

build-dotnet:
  stage: build-dotnet
  image: microsoft/dotnet:latest
  before_script:
    - "cd source"
    - "dotnet restore"
    - "cd .."
    - "cd samples"
    - "dotnet restore"
    - "cd .."
  script:
      - "cd source"
      - "dotnet build"
      - "cd .."
      - "cd samples"
      - "dotnet build"
      - "cd .."

build-mono:
  stage: build-mono
  image: mono:latest
  before_script:
  script:
    - nuget restore ./source/Source.sln
    - msbuild 
        /p:Configuration="Release"
        /p:Platform="Any CPU" 
        "./source/Source.sln"

Aquí tienes las reseñas y puntuaciones

Agradecemos que quieras asentar nuestra publicación mostrando un comentario o dejando una valoración te damos la bienvenida.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *