Files
renovate-config/config.js
Manuel cortez 6f75c9c628
All checks were successful
renovate / renovate (push) Successful in 2m3s
Update config
2025-07-30 08:47:41 -06:00

131 lines
4.9 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

module.exports = {
"endpoint": "https://code.mcvsoftware.com/api/v1", // replace it with your actual endpoint
"gitAuthor": "Renovate Bot <renovate-bot@mcvsoftware.com>",
"platform": "gitea",
"onboardingConfigFileName": "renovate.json",
"autodiscover": true,
"GITHUB_COM_TOKEN": "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",
"optimizeForDisabled": true,
"extends": [
"config:recommended",
"schedule:earlyMondays"
],
"timezone": "America/Mexico_City",
"assignees": ["manuelcortez"],
"reviewers": ["manuelcortez"],
"labels": ["renovate", "dependencies"],
// Control de concurrencia
"prConcurrentLimit": 10,
"branchConcurrentLimit": 8,
"packageRules": [
{
"description": "Flutter y Dart - agrupar updates menores",
"matchManagers": ["pub"],
"groupName": "Flutter dependencies",
"separateMinorPatch": false,
"schedule": ["before 6am on monday"]
},
{
"description": "Python requirements - agrupar patches",
"matchManagers": ["pip_requirements", "pipenv", "poetry"],
"matchUpdateTypes": ["patch"],
"groupName": "Python patches",
"automerge": true
},
{
"description": "Python minor/major - separados",
"matchManagers": ["pip_requirements", "pipenv", "poetry"],
"matchUpdateTypes": ["minor", "major"],
"separateMajorMinor": true,
"excludePackageNames": ["django", "flask"]
},
{
"description": "Django - major updates con cuidado especial",
"matchPackageNames": ["django"],
"major": {
"automerge": false,
"labels": ["breaking-change", "django-major"]
},
"minor": {
"automerge": false
}
},
{
"description": "JavaScript dev dependencies",
"matchManagers": ["npm", "yarn"],
"matchDepTypes": ["devDependencies"],
"groupName": "JS dev dependencies",
"automerge": true,
"matchUpdateTypes": ["patch", "minor"]
},
{
"description": "Docker images - weekly updates",
"matchManagers": ["docker-compose", "dockerfile"],
"schedule": ["before 6am on monday"],
"groupName": "Docker images"
},
{
"description": "Major updates - requieren review manual",
"matchUpdateTypes": ["major"],
"automerge": false,
"labels": ["major-update", "breaking-change"],
"prBody": "🚨 **MAJOR VERSION UPDATE** 🚨\n\nEste PR actualiza {{depName}} de `{{currentVersion}}` a `{{newVersion}}`.\n\n⚠ **POSIBLES BREAKING CHANGES** - Revisa:\n- [Changelog de {{depName}}]({{sourceUrl}}/releases)\n- [Documentación de migración]({{sourceUrl}})\n- Tests antes de hacer merge\n\n---\n⚡ Generado por Renovate Bot",
"addLabels": ["needs-manual-review"]
},
{
"description": "Security updates - high priority",
"matchPackagePatterns": ["*"],
"vulnerabilityAlerts": {
"enabled": true
},
"labels": ["security", "renovate"],
"automerge": false
}
],
// Configuración de automerge
"automerge": true,
"platformAutomerge": true,
"automergeType": "pr",
"automergeStrategy": "squash",
// Configuración de automerge por tipo de update
"major": {
"automerge": false,
"labels": ["major-update", "breaking-change"],
"prPriority": 10 // Alta prioridad para review manual
},
"minor": {
"automerge": false,
"labels": ["minor-update"]
},
"patch": {
"automerge": true,
"labels": ["patch-update"]
},
// Configuración de commits y PRs
"semanticCommits": "enabled",
"commitMessagePrefix": "chore(deps):",
"prTitle": "{{#if isPinDigest}}📌 Pin {{depName}} digest{{else}}{{#if isMajor}}🚨 MAJOR: {{else}}{{#if isMinor}}📈 MINOR: {{else}}🔧 PATCH: {{/if}}{{/if}}{{#if groupName}}{{{groupName}}}{{else}}{{depName}}{{/if}}{{#unless groupName}} to {{#if isSingleVersion}}v{{{newVersion}}}{{else}}{{{newValue}}}{{/if}}{{/unless}}{{/if}}",
// Mantenimiento de lockfiles
"lockFileMaintenance": {
"enabled": true,
"schedule": ["before 3am on the first day of the month"]
},
// Configuración de rebase y conflictos
"rebaseWhen": "conflicted",
"ignoreTests": false,
// Configuración de logs y notificaciones
"suppressNotifications": ["prIgnoreNotification"],
"gitIgnoredAuthors": ["renovate[bot]"],
"includeForks": false,
// Limitar a repos que tengan renovate.json
"onboarding": false,
"requireConfig": "optional"
};