docs: Add NuGet Package Management section to CLAUDE.md
- Document Central Package Management (CPM) with Package Source Mapping - Explain package source configuration (nuget.org vs musk private feed) - Describe how nuget.config is used across different environments - Add troubleshooting context for NU1507 warning resolution 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
b8ba3df310
commit
029319e7c1
31
CLAUDE.md
31
CLAUDE.md
@ -141,6 +141,37 @@ When running with docker-compose:
|
||||
- Docker & Docker Compose for containerization
|
||||
- Drone CI/CD on Kubernetes
|
||||
|
||||
## NuGet Package Management
|
||||
|
||||
The project uses **Central Package Management (CPM)** with **Package Source Mapping** to manage NuGet dependencies:
|
||||
|
||||
### Package Sources
|
||||
|
||||
- **nuget.org**: All public packages (Microsoft.*, Serilog.*, etc.)
|
||||
- **musk** (private): Internal `Nocr.*` contract packages
|
||||
|
||||
### Configuration
|
||||
|
||||
The `nuget.config` file in the project root defines package source mapping:
|
||||
```xml
|
||||
<packageSourceMapping>
|
||||
<packageSource key="musk">
|
||||
<package pattern="Nocr.*" />
|
||||
</packageSource>
|
||||
<packageSource key="nuget.org">
|
||||
<package pattern="*" />
|
||||
</packageSource>
|
||||
</packageSourceMapping>
|
||||
```
|
||||
|
||||
### How It Works
|
||||
|
||||
1. **Local Development**: Copy `nuget.config` to each submodule root when needed
|
||||
2. **CI/CD**: Drone automatically copies `nuget.config` to `/root/.nuget/NuGet/NuGet.Config`
|
||||
3. **Docker Builds**: Kaniko copies `nuget.config` to submodule root before building
|
||||
|
||||
This eliminates NuGet warning NU1507 and ensures consistent package resolution across all environments.
|
||||
|
||||
## CI/CD Pipeline
|
||||
|
||||
**📖 See [_deploy/README.md](_deploy/README.md) for full CI/CD documentation.**
|
||||
|
||||
Loading…
Reference in New Issue
Block a user