microsoft / microsoft/aspire

Centralized management of container image versions

Open
#10,563 0 comments 2 reactions 0 assignees View on GitHub
area-integrations
Dominant language
C#
Stars
6.3k
Forks
991
Avg merge
2d 15h
Merged PRs (30d)
196

Description

### Is there an existing issue for this?

- [x] I have searched the existing issues

### Is your feature request related to a problem? Please describe the problem.

**Is your feature request related to a problem? Please describe the problem.**
Currently, container image versions are hard-coded directly in C# code, for example:

```csharp
internal static class QdrantContainerImageTags
{
/// docker.io
public const string Registry = "docker.io";

/// qdrant/qdrant
public const string Image = "qdrant/qdrant";

/// v1.14.1
public const string Tag = "v1.14.1";
}
```

This approach creates a maintenance burden—when a new container version is released, updates require manual code changes and redeployment.

### Describe the solution you'd like

Move container image version definitions into a centralized configuration file (similar to .NET’s Central Package Management). This file could be:

- Read at runtime or build time to apply the appropriate image versions.
- Integrated with tools like Dependabot to automatically detect and propose updates when a new container image version is released.

**Benefits:**

- Easier version management without modifying source code.
- Reduced risk and code churn.
- Automatic update suggestions and version tracking.

### Additional context

- Moving version definitions into a configuration file decouples version upgrades from code changes.
- Integration with version-bumping tools (e.g. Dependabot) can streamline updates and reduce manual effort.
- Similar approaches exist in package management ecosystems; applying this pattern to container images aligns with best practices.
- Decouples version updates from code changes.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.