Administración del control de código fuente de soluciones de Azure Data Factory

Completado

De forma predeterminada, la creación en la experiencia de la interfaz de usuario de Azure Data Factory tiene lugar directamente con los datos de factoría de datos. Esta experiencia tiene las siguientes limitaciones:

  • El servicio Data Factory no incluye un repositorio que permita almacenar las entidades JSON para los cambios. La única manera de guardar los cambios es mediante el botón Publicar todo y todos los cambios se publican directamente en el servicio Data Factory.
  • El servicio Data Factory no está optimizado para la colaboración ni el control de versiones.

Para proporcionar una mejor experiencia de creación, Azure Data Factory le permite configurar un repositorio de Git con Azure Repos o GitHub. Git es un sistema de control de versiones que facilita la colaboración y el seguimiento de cambios. En este artículo se describe cómo configurar y trabajar en un repositorio de Git junto con los procedimientos recomendados de resaltado y una guía de solución de problemas.

Nota

La creación directa con el servicio Data Factory está deshabilitada en la experiencia de usuario de Azure Data Factory cuando se configura un repositorio de Git. Los cambios realizados a través de PowerShell o un SDK se publican directamente en el servicio Data Factory y no se escriben en Git.

Ventajas de la integración de Git

La siguiente es una lista de algunas de las ventajas que ofrece la integración de Git a la experiencia de creación:

  • Control de código fuente:a medida que las cargas de trabajo de la factoría de datos se vuelven cruciales, le convendría integrar la factoría con Git para aprovechar varias ventajas del control de código fuente como las siguientes:
    • Capacidad para realizar el seguimiento y la auditoría de los cambios.
    • Capacidad para revertir los cambios que presentaron errores.
  • Operaciones de guardado parcial: al crear en el servicio Data Factory, no se pueden guardar los cambios como borrador y todas las publicaciones deben superar la validación de Data Factory. Tanto si las canalizaciones no están terminadas como si simplemente no desea perder los cambios en caso de que se bloquee el equipo, la integración de Git permite cambios incrementales de los recursos de Data Factory, con independencia del estado en el que se encuentren. La configuración de un repositorio de Git le permite guardar los cambios, de forma que solo realiza una publicación cuando ha probado los cambios y está satisfecho con ellos.
  • Colaboración y control: si varios miembros del equipo colaboran en la misma factoría, puede que le convenga permitir que sus compañeros de equipo colaboren entre sí mediante un proceso de revisión de código. También puede configurar la factoría de modo que no todos los colaboradores tengan los mismos permisos. Es posible que algunos miembros del equipo solo puedan hacer cambios a través de Git, pero que solo algunas personas del equipo puedan publicar los cambios en la factoría.
  • Mejor proceso de CI/CD: si va a realizar implementaciones en varios entornos con un proceso de entrega continua, la integración de Git facilita ciertas acciones. Algunas de estas acciones incluyen:
    • Configurar la canalización de versión para que se desencadene automáticamente en cuanto se realicen cambios en la factoría de desarrollo.
    • Personalizar las propiedades de la factoría que están disponibles como parámetros en la plantilla de Resource Manager. Puede ser útil mantener solo el conjunto requerido de propiedades como parámetros, y tener todo lo demás codificado.
  • Mejor rendimiento: por término medio, una factoría con la integración de Git realiza cargas 10 veces más rápido que una creación en el servicio Data Factory. Esta mejora del rendimiento se debe a que los recursos se descargan mediante Git.

Conexión a un repositorio de Git

Hay tres maneras diferentes de conectar un repositorio de Git a la factoría de datos tanto para Azure Repos como para GitHub. Después de conectarse a un repositorio de Git, puede ver y administrar la configuración en el centro de administración, en la configuración de Git, que se encuentra en la sección de control de código fuente.

Método de configuración 1: Página de inicio

En la página principal de Azure Data Factory, seleccione Set up Code Repository (Configurar el repositorio de código).

Configure a code repository from home page

Método de configuración 2: Lienzo de creación

En el lienzo de creación de la experiencia de usuario de Azure Data Factory, seleccione el menú desplegable Data Factory y, luego, Set up Code Repository (Configurar el repositorio de código).

Configure the code repository settings from authoring

Método de configuración 3: Centro de administración

Vaya al centro de administración en la experiencia del usuario de Azure Data Factory. Seleccione Configuración de Git en la sección Control de código fuente. Si no tiene ningún repositorio conectado, haga clic en Set up Code Repository (Configurar el repositorio de código).

Configure the code repository settings from management hub

Control de versiones

Los sistemas de control de versiones, conocidos también como de control de código fuente, permiten a los desarrolladores colaborar en el código y llevar a cabo el seguimiento de los cambios realizados en la base de código. El control del código fuente es una herramienta esencial para proyectos de varios desarrolladores.

Creación de ramas de características

Tan pronto como cada repositorio Git de Azure Repos se asocia a una factoría de datos, tiene una rama de colaboración. (main es la rama de colaboración predeterminada). Los usuarios también pueden crear ramas de características; para ello, pueden hacer clic en + New Branch (+ Nueva rama) en la lista desplegable de ramas. Cuando aparezca el panel de nueva rama, escriba el nombre de la rama de características.

Create a new branch

Cuando esté listo para combinar los cambios de su rama de características con la rama de colaboración, haga clic en la lista desplegable de ramas y seleccione Create pull request (Crear solicitud de incorporación de cambios). Esto le llevará al Git de Azure Repos, donde podrá generar la solicitud de incorporación de cambios, revisar el código y combinar los cambios en su rama de colaboración. Solo tiene permitido publicar en el servicio Data Factory de la rama de colaboración.

Create a new pull request

Configurar los valores de publicación

De forma predeterminada, Data Factory genera las plantillas de Resource Manager de la factoría publicada y las guarda en una rama llamada adf_publish. Para configurar una rama de publicación personalizada, agregue un archivo publish_config.json a la carpeta raíz de la rama de colaboración. Durante la publicación, Azure Data Factory lee este archivo, busca el campo publishBranch y guarda todas las plantillas de Resource Manager en la ubicación especificada. Si no existe la rama, Data Factory la crea automáticamente. A continuación, se muestra un ejemplo de cuál es el aspecto de este archivo:

{
    "publishBranch": "factory/adf_publish"
}

Azure Data Factory solo puede tener una rama de publicación cada vez. Al especificar una nueva rama de publicación, Data Factory no elimina la rama de publicación anterior. Si quiere quitar la rama de publicación anterior, tiene que hacerlo manualmente.

Nota

Data Factory solo lee el archivo publish_config.json cuando se carga la factoría. Si ya tiene la factoría cargada en el portal, actualice el explorador para que los cambios surtan efecto.

Cambios de código publicando

Después de haber combinado los cambios en la rama de colaboración, haga clic en Publicar para publicar manualmente los cambios de código realizados en la rama de colaboración del servicio Data Factory.

Publish changes to the Data Factory service

Se abrirá un panel lateral en el que se confirma que la rama de publicación y los cambios pendientes son correctos. Cuando haya comprobado los cambios, haga clic en OK (Aceptar) para confirmar la publicación.

Confirm the correct publish branch

Importante

La rama de colaboración no es representativa de lo que se implementa en el servicio Data Factory. La rama de colaboración se debe publicar manualmente en el servicio Data Factory.

Procedimientos recomendados para la integración de Git

Permisos

Lo normal es que no quiera que todos los miembros del equipo tengan permisos para actualizar Data Factory. Se recomienda la siguiente configuración de permisos:

  • Todos los miembros del equipo deberían tener permisos de lectura en la instancia de Data Factory.
  • Solo se debe permitir que un conjunto seleccionado de personas publique en Data Factory. Para ello, deben tener el rol colaborador de Data Factory en el grupo de recursos que contiene la instancia de Data Factory.

Se recomienda no permitir inserciones directas en el repositorio en la rama de colaboración. Esta restricción puede ayudarle a evitar errores, ya que cada inserción en el repositorio pasará por un proceso de solicitud de incorporación de cambios.

Uso de contraseñas de Azure Key Vault

Se recomienda usar Azure Key Vault para almacenar las cadenas de conexión o las contraseñas para la autenticación de identidad administrada en los servicios vinculados de Data Factory. Por motivos de seguridad, Data Factory no almacena secretos en Git. Los cambios en los servicios vinculados que contienen secretos, como contraseñas, se publican inmediatamente en el servicio Azure Data Factory.

El uso de Key Vault o de la autenticación MSI también facilita la integración y la implementación continuas, ya que no tendrá que proporcionar estos secretos durante la implementación de plantillas de Resource Manager.

Cambio a un repositorio de Git diferente

Para cambiar a un repositorio de Git diferente, vaya a la página de configuración de Git en el centro de administración en Control de código fuente. Seleccione Desconectar.

Git icon

Escriba el nombre de la factoría de datos y haga clic en Confirm (Confirmar) para quitar el repositorio de Git asociado a la factoría de datos.

Remove the association with the current Git repo

Después de quitar la asociación con el repositorio actual, puede configurar las opciones de Git para usar un repositorio diferente y, luego, importar los recursos existentes de Data Factory en el nuevo repositorio.

Importante

La eliminación de la configuración de Git de una factoría de datos no elimina nada del repositorio. La factoría contendrá todos los recursos publicados. Puede seguir editando la factoría directamente en el servicio.