Eventos
Compilación de Intelligent Apps
17 mar, 21 - 21 mar, 10
Únase a la serie de reuniones para crear soluciones de inteligencia artificial escalables basadas en casos de uso reales con compañeros desarrolladores y expertos.
Regístrese ahoraEste explorador ya no se admite.
Actualice a Microsoft Edge para aprovechar las características y actualizaciones de seguridad más recientes, y disponer de soporte técnico.
En este resumen, aprenderá qué rol GitHub Actions desempeñan en el desarrollo de aplicaciones .NET. Las Acciones de GitHub permiten que los repositorios de código fuente automaticen la integración continua (CI) y la entrega continua (CD). Además, las Acciones de GitHub exponen escenarios más avanzados, lo que proporciona enlaces para la automatización con revisiones de código, administración de ramas y evaluación de prioridades de problemas. Con el código fuente de .NET en GitHub, puede aprovechar las Acciones de GitHub de muchas maneras.
Las Acciones de GitHub representan comandos independientes, como:
$GITHUB_WORKSPACE
, para que el flujo de trabajo pueda acceder a él.Aunque estos comandos están aislados en una sola acción, son eficaces a través de la composición del flujo de trabajo. En la composición del flujo de trabajo, se definen los eventos que desencadenan el flujo de trabajo. Una vez que un flujo de trabajo está en ejecución, hay varios trabajos que se le indica realizar. Cada trabajo define cualquier número de pasos. Los pasos delegan para Acciones de GitHub o, como alternativa, llamar a scripts de línea de comandos.
Para obtener más información, consulte Introducción a Acciones de GitHub. En este caso, se debe pensar en un archivo de flujo de trabajo como una composición que representa los distintos pasos para compilar una aplicación. Hay muchos comandos de la CLI de .NET disponibles, la mayoría de los cuales se pueden usar en el contexto de una acción de GitHub.
Aunque hay una gran cantidad de GitHub Actions disponibles en Marketplace, es posible que quieras crear las tuyas propias. Puede crear Acciones de GitHub que ejecutan aplicaciones .NET. Para obtener más información, consulte Tutorial: Creación de una acción de GitHub con .NET.
Las Acciones de GitHub se usan a través de un archivo de flujo de trabajo. El archivo de flujo de trabajo debe encontrarse en el directorio .github/workflows del repositorio y se espera que sea YAML (*.yml o *.yaml). Los archivos de flujo de trabajo definen la composición del flujo de trabajo. Un flujo de trabajo es un proceso automatizado configurable formado por uno o más trabajos. Para más información, consulte Sintaxis de flujo de trabajo para Acciones de GitHub.
Hay muchos ejemplos de archivos de flujo de trabajo de .NET proporcionados como tutoriales e inicios rápidos. Estos son varios buenos ejemplos de nombres de archivo de flujo de trabajo:
Archivo de flujo de trabajo
Descripción
Compila (o construye) el código fuente. Si el código fuente no se compila, se producirá un error.
Realiza ejercicios de las pruebas unitarias dentro del repositorio. Para ejecutar pruebas, el código fuente debe compilarse primero; esto es realmente un flujo de trabajo de compilación y prueba (reemplazaría el flujo de trabajo build-validation.yml). Las pruebas unitarias con errores provocarán un error de flujo de trabajo.
Empaqueta y publica el código fuente en un destino.
Analiza el código para detectar vulnerabilidades de seguridad y errores de codificación. Cualquier vulnerabilidad detectada podría provocar un error.
Para usar secretos cifrados en los archivos de flujo de trabajo, haga referencia a los secretos mediante la sintaxis de expresión de flujo de trabajo del objeto de contexto secrets
.
${{ secrets.MY_SECRET_VALUE }} # The MY_SECRET_VALUE must exist in the repository as a secret
Los valores secretos nunca se imprimen en los registros. En su lugar, sus nombres se imprimen con un asterisco que representa sus valores. Por ejemplo, a medida que cada paso se ejecuta dentro de un trabajo, todos los valores que utiliza se registran en el log de acciones. Los valores secretos se representan de forma similar a la siguiente:
MY_SECRET_VALUE: ***
Importante
El contexto secrets
proporciona el token de autenticación de GitHub que tiene como ámbito el repositorio, la rama y la acción. Lo proporciona GitHub sin intervención del usuario:
${{ secrets.GITHUB_TOKEN }}
Para más información, consulte Uso de secretos cifrados en un flujo de trabajo.
Los flujos de trabajo se desencadenan mediante muchos tipos diferentes de eventos. Además de los eventos de Webhook, que son los más comunes, también hay eventos programados y eventos manuales.
En el ejemplo siguiente se muestra cómo especificar un desencadenador de eventos de webhook para un flujo de trabajo:
name: code coverage
on:
push:
branches:
- main
pull_request:
branches:
- main, staging
jobs:
coverage:
runs-on: ubuntu-latest
# steps omitted for brevity
En el flujo de trabajo anterior, los eventos push
y pull_request
desencadenarán la ejecución del flujo de trabajo.
En el ejemplo siguiente se muestra cómo especificar un desencadenador de eventos de webhook para un flujo de trabajo:
name: scan
on:
schedule:
- cron: '0 0 1 * *'
# additional events omitted for brevity
jobs:
build:
runs-on: ubuntu-latest
# steps omitted for brevity
En el flujo de trabajo anterior, el evento schedule
especifica el cron
de '0 0 1 * *'
de los cuales desencadenará el flujo de trabajo que se ejecutará el primer día de cada mes. La ejecución de flujos de trabajo según una programación es excelente para los flujos de trabajo que tardan mucho tiempo en ejecutarse o realizar acciones que requieren menos atención.
En el ejemplo siguiente se muestra cómo especificar un desencadenador de eventos de manual para un flujo de trabajo:
name: build
on:
workflow_dispatch:
inputs:
reason:
description: 'The reason for running the workflow'
required: true
default: 'Manual run'
# additional events omitted for brevity
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: 'Print manual run reason'
if: ${{ github.event_name == 'workflow_dispatch' }}
run: |
echo 'Reason: ${{ github.event.inputs.reason }}'
# additional steps omitted for brevity
En el flujo de trabajo anterior, el evento workflow_dispatch
requiere un reason
como entrada. GitHub ve esto y su interfaz de usuario cambia dinámicamente para solicitar al usuario proporcionar el motivo para realizar el flujo de trabajo manualmente. steps
imprimirá el motivo proporcionado por el usuario.
Para obtener más información, consulte Eventos que desencadenan flujos de trabajo.
La interfaz de la línea de comandos (CLI) de .NET es una cadena de herramientas multiplataforma que sirve para desarrollar, compilar, ejecutar y publicar aplicaciones .NET. La CLI de .NET se usa en run
como parte de una persona steps
dentro de un archivo de flujo de trabajo. Identificadores de comando comunes:
Para obtener más información, vea Información general sobre el CLI de .NET.
Para obtener una visión más detallada de Acciones de GitHub con .NET, tenga en cuenta los siguientes recursos:
Inicio(s) rápido(s):
Tutorial(es):
Comentarios de .NET
.NET es un proyecto de código abierto. Seleccione un vínculo para proporcionar comentarios:
Eventos
Compilación de Intelligent Apps
17 mar, 21 - 21 mar, 10
Únase a la serie de reuniones para crear soluciones de inteligencia artificial escalables basadas en casos de uso reales con compañeros desarrolladores y expertos.
Regístrese ahoraCursos
Módulo
Creación de flujos de trabajo de integración continua (CI) mediante Acciones de GitHub - Training
Aprenda a crear flujos de trabajo que le permitan usar la integración continua (CI) para sus proyectos.
Certificación
Microsoft Certified: Power Automate RPA Developer Associate - Certifications
Demostración sobre cómo mejorar y automatizar flujos de trabajo con el desarrollador de RPA con Microsoft Power Automate.