Azure DevOps Pipelines para datos: CI/CD de notebooks y pipelines ADF
João Barros
01 de September de 2025
1 min de lectura
Los Azure DevOps Pipelines aplican las prácticas de CI/CD al mundo de los datos: cada commit a un notebook, pipeline ADF o informe Power BI pasa por una validación automática antes del deploy a producción.
CI Pipeline — validación de notebooks Python/PySpark
trigger:
- main
- develop
pool: { vmImage: ubuntu-latest }
stages:
- stage: CI
jobs:
- job: ValidateNotebooks
steps:
- task: UsePythonVersion@0
inputs: { versionSpec: "3.11" }
- script: pip install pytest nbconvert flake8 pyspark
displayName: Instalar dependencias
- script: flake8 notebooks/ --max-line-length=120 --ignore=E501
displayName: Lint PySpark
- script: pytest tests/ -v --tb=short
displayName: Pruebas unitarias
- task: PublishTestResults@2
inputs:
testResultsFiles: "tests/results/*.xml"
CD Pipeline — deploy de ADF ARM templates
stages:
- stage: DeployADF_Test
condition: and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/main'))
jobs:
- deployment: DeployADF
environment: test
strategy:
runOnce:
deploy:
steps:
- task: AzureResourceManagerTemplateDeployment@3
inputs:
azureResourceManagerConnection: 'AzureServiceConnection_Test'
resourceGroupName: 'rg-adf-test'
location: 'westeurope'
templateLocation: 'Linked artifact'
csmFile: '$(Pipeline.Workspace)/adf-arm/ARMTemplateForFactory.json'
overrideParameters: >
-factoryName adf-bconcepts-test
-KeyVault_properties_typeProperties_baseUrl https://kv-bconcepts-test.vault.azure.net/
Deploy de notebooks Databricks
- task: DatabricksDeployScripts@0
inputs:
authMethod: ServicePrincipal
SpId: $(DATABRICKS_SP_ID)
SpSecret: $(DATABRICKS_SP_SECRET)
TenantId: $(TENANT_ID)
DatabricksUrl: https://adb-xxx.azuredatabricks.net
LocalPath: notebooks/
RemotePath: /Shared/Production/
Conclusión
El CI/CD para datos reduce los deploys manuales propensos a errores y garantiza que el código probado llega a producción. Empiece de forma simple: lint + pruebas unitarias en el CI, deploy de ARM templates en el CD. Añada aprobaciones manuales antes del stage de producción.