Adds a custom Renovate manager that reads the pinned Flutter version from .fvmrc
Uses ghcr.io/cirruslabs/flutter as the Docker datasource so Renovate only proposes a bump when the corresponding image tag exists in the registry
The CI pipeline (ci/main.go) already derives the Docker image tag from .fvmrc at runtime — .fvmrc is the single source of truth; no other files need grouping
How it works
Renovate checks ghcr.io/cirruslabs/flutter for available tags. If 3.44.1 doesn't exist yet, no PR is opened. Once the image is published, Renovate opens a PR to bump .fvmrc — the only file that needs to change.
Verification
renovate.json schema validated
Reviewed ci/main.go: FlutterVersion is read exclusively from .fvmrc; no hardcoded version strings elsewhere require additional grouping rules
## Summary
- Adds a custom Renovate manager that reads the pinned Flutter version from `.fvmrc`
- Uses `ghcr.io/cirruslabs/flutter` as the Docker datasource so Renovate only proposes a bump when the corresponding image tag exists in the registry
- The CI pipeline (`ci/main.go`) already derives the Docker image tag from `.fvmrc` at runtime — `.fvmrc` is the single source of truth; no other files need grouping
## How it works
Renovate checks `ghcr.io/cirruslabs/flutter` for available tags. If `3.44.1` doesn't exist yet, no PR is opened. Once the image is published, Renovate opens a PR to bump `.fvmrc` — the only file that needs to change.
## Verification
- `renovate.json` schema validated
- Reviewed `ci/main.go`: `FlutterVersion` is read exclusively from `.fvmrc`; no hardcoded version strings elsewhere require additional grouping rules
Closes #447
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
.fvmrcghcr.io/cirruslabs/flutteras the Docker datasource so Renovate only proposes a bump when the corresponding image tag exists in the registryci/main.go) already derives the Docker image tag from.fvmrcat runtime —.fvmrcis the single source of truth; no other files need groupingHow it works
Renovate checks
ghcr.io/cirruslabs/flutterfor available tags. If3.44.1doesn't exist yet, no PR is opened. Once the image is published, Renovate opens a PR to bump.fvmrc— the only file that needs to change.Verification
renovate.jsonschema validatedci/main.go:FlutterVersionis read exclusively from.fvmrc; no hardcoded version strings elsewhere require additional grouping rulesCloses #447