Nota: Los ejecutores hospedados en GitHub no son compatibles con GitHub Enterprise Server actualmente. Puedes encontrar más información sobre el soporte que se tiene planeado en el futuro en el Itinerario público de GitHub.
Introducción
Esta guía te muestra cómo crear un flujo de trabajo que realice integración contínua (IC) para tu proyecto de Xamarin. El flujo de trabajo que creas te permitirá ver cuándo las confirmaciones de una solicitud de extracción causan la construcción o las fallas de prueba en tu rama por defecto; este enfoque puede ayudar a garantizar que tu código siempre sea correcto.
Para encontrar una lista completa de versiones disponibles de Xamarin SDK en los ejecutores de macOS hospedados en GitHub Actions, consulta la documentación:
La etiqueta de flujo de trabajo de YAML macos-latest
utiliza actualmente el ambiente virtual de macOS 10.15.
Prerrequisitos
Te recomendamos tener un entendimiento básico de Xamarin, .NET Core SDK, Yaml, opciones de configuración de flujo de trabajo y cómo crear un archivo de flujo de trabajo. Para obtener más información, consulta:
Crear apps de Xamarin.iOS
El ejemplo siguiente demuestra cómo cambiar las versiones predeterminadas de Xamarin SDK y cómo compilar una aplicación de Xamarin.iOS.
name: Build Xamarin.iOS app
on: [push]
jobs:
build:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- name: Set default Xamarin SDK versions
run: |
$VM_ASSETS/select-xamarin-sdk-v2.sh --mono=6.12 --ios=14.10
- name: Set default Xcode 12.3
run: |
XCODE_ROOT=/Applications/Xcode_12.3.0.app
echo "MD_APPLE_SDK_ROOT=$XCODE_ROOT" >> $GITHUB_ENV
sudo xcode-select -s $XCODE_ROOT
- name: Setup .NET Core SDK 5.0.x
uses: actions/setup-dotnet@v1
with:
dotnet-version: '5.0.x'
- name: Install dependencies
run: nuget restore <sln_file_path>
- name: Build
run: msbuild <csproj_file_path> /p:Configuration=Debug /p:Platform=iPhoneSimulator /t:Rebuild
Crear apps de Xamarin.Android
El ejemplo siguiente demuestra cómo cambiar las versiones predeterminadas de Xamarin SDK y cómo compilar una aplicación de Xamarin.Android.
name: Build Xamarin.Android app
on: [push]
jobs:
build:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- name: Set default Xamarin SDK versions
run: |
$VM_ASSETS/select-xamarin-sdk-v2.sh --mono=6.10 --android=10.2
- name: Setup .NET Core SDK 5.0.x
uses: actions/setup-dotnet@v1
with:
dotnet-version: '5.0.x'
- name: Install dependencies
run: nuget restore <sln_file_path>
- name: Build
run: msbuild <csproj_file_path> /t:PackageForAndroid /p:Configuration=Debug
Especificar una versión de .NET
Para utilizar una versión preinstalada de .NET Core SDK en un ejecutor hospedado en GitHub, utiliza la acción setup-dotnet
. Esta acción encuentra una versión específica de .NET desde el caché de las herramientas en cada ejecutor y agrega los binarios necesarios a PATH
. Estos cambios persistirán para el recordatorio del job.
La acción setup-dotnet
es la forma recomendada de utilizar .NET con las GitHub Actions, porque garantiza el comportamiento consistente a través de diversos ejecutores y diversas versiones de .NET. Si estás utilizando un ejecutor auto-hospedado, debes instalar .NET y agregarlo a PATH
. Para obtener más información, consulta la acción setup-dotnet
.