Changed dns configuration to use conditional assignment to avoid
setting empty DNS list which Docker might ignore.
Changes:
- dns = length(var.dns_servers) > 0 ? var.dns_servers : null
This ensures that:
- If dns_servers is empty, dns is set to null (Docker uses defaults)
- If dns_servers has values, they are properly applied to container
Added dns_servers variable to allow configuring custom DNS servers for
the container to resolve internal hostnames.
Changes:
- Added dns_servers variable (list of strings, default empty)
- Added dns configuration to docker_container resource in main.tf
- Allows container to resolve internal domains like gitea.bsdserver.nl
This fixes the ENOTFOUND DNS resolution error where the container
couldn't resolve internal Gitea hostname, which was being reported
as an "Authentication failure" but was actually a network/DNS issue.
The error was:
getaddrinfo ENOTFOUND gitea.bsdserver.nl
Usage:
dns_servers = ["192.168.x.x", "192.168.x.y"]
If not specified (default), container uses Docker's default DNS.
The renovate_username value was stored in Vault but not being passed
as an environment variable to the container, causing authentication
failures with Gitea.
Changes:
- Added RENOVATE_USERNAME to the environment variables list in main.tf
- Value is retrieved from Vault at secret/renovate with key renovate_username
This should resolve the "Authentication failure" error in the Renovate
container logs, as the username is required for proper Gitea authentication.
Complete rewrite of the module to deploy a Renovate bot for automated
dependency management with Gitea integration.
Breaking Changes:
- Module purpose changed from Ansible EDA to Renovate bot
- All variables restructured for Renovate configuration
- State file path updated to home/docker/renovate/renovate.tfstate
- Volumes changed from EDA rulebooks/logs to config/cache
- Container image now uses renovate/renovate:latest
Added:
- Gitea platform integration with token authentication
- Renovate configuration template (config.js.tpl)
- Repository configuration examples
- Gitea Actions workflow examples
- SonarQube integration examples
- Comprehensive documentation (README, QUICKSTART, MIGRATION_GUIDE)
- CHANGELOG.md for version tracking
- Security best practices
Removed:
- All Ansible EDA-specific configuration
- Traefik labels (not needed for Renovate)
- Old EDA documentation files
- example-rulebook.yml
Updated:
- Complete README with Gitea setup instructions
- terraform.tfvars with Renovate configuration
- All resource names from ansible_eda to renovate
- Backend state path
This is version 2.0.0 - not backward compatible with previous EDA version.
See MIGRATION_GUIDE.md for detailed migration instructions.