Files
zeekayandHanzo Dev 756628f3ec manifests/ and the droplet script go
manifests/{devnet,production,testnet}.yml claimed to be "source of truth for
what is deployed on lux-k8s", last edited 2026-04-20, listing tag: latest and
sha: latest per service. Nothing has read them since; the ApplicationSet reads
deploy/, and the only writer that touched them was update-image.yml, which was
sed-ing into a tree CD does not open.

manifests/safes.yaml was the one live file in there and is not a deployment
manifest at all — it is Lux's Safe topology. It moves to SAFES.yaml, beside
NETWORKS.yaml and chain.yaml, where this repo keeps its fact tables.

scripts/deploy-do.sh creates three DigitalOcean droplets, cloud-inits docker on
them and runs compose over ssh. That is the arrangement DOKS replaced.
sync-pars-universe.sh no longer copies it into the Pars bundle.

renovate.json stops matching manifests/. It still does not match deploy/, and
that is now on purpose rather than an oversight: pin.sh resolves a tag and its
digest from one registry read, and a second writer offering a bare tag would
leave the pair disagreeing — which deploys the digest.

Co-authored-by: Hanzo Dev <[email protected]>
2026-09-01 12:44:44 -07:00

60 lines
1.7 KiB
JSON

{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": ["config:recommended"],
"enabledManagers": ["kubernetes", "custom.regex"],
"kubernetes": {
"fileMatch": ["(^k8s|^infra/k8s)/.+\\.yaml$"]
},
"customManagers": [
{
"customType": "regex",
"fileMatch": ["compose.*\\.yml$", "(^k8s|^infra/k8s)/.+\\.yaml$"],
"matchStrings": [
"image:\\s*(?<depName>[\\w.\\-/]+):(?<currentValue>[\\w][\\w.\\-]+)"
],
"datasourceTemplate": "docker",
"versioningTemplate": "docker"
}
],
"packageRules": [
{
"description": "Group all image updates into a single PR",
"matchDatasources": ["docker"],
"groupName": "docker-images",
"groupSlug": "docker-images",
"automerge": false,
"labels": ["dependencies", "docker"]
},
{
"description": "Auto-merge patch updates for internal images",
"matchDatasources": ["docker"],
"matchPackagePatterns": ["ghcr.io/(hanzoai|luxfi|zooai)/.*"],
"matchUpdateTypes": ["patch"],
"automerge": true,
"automergeType": "pr"
},
{
"description": "Major versions require review",
"matchDatasources": ["docker"],
"matchUpdateTypes": ["major"],
"automerge": false,
"labels": ["major-upgrade"]
},
{
"description": "Ignore ARC runner images",
"matchPackagePatterns": ["ghcr.io/actions/actions-runner"],
"enabled": false
},
{
"description": "Pin digests for deterministic deploys",
"matchDatasources": ["docker"],
"pinDigests": true
}
],
"schedule": ["every 15 minutes"],
"prHourlyLimit": 10,
"prConcurrentLimit": 3,
"rebaseWhen": "behind-base-branch",
"labels": ["renovate", "dependencies"]
}