搜索

PythonReactSEOPDF
GitHub Skill

windows-image-updater

Automate Windows container image updates in OneBranch pipelines. Bumps ConfigurationGeneration.AdoPipelineGeneration NuGet package, resolves dependency conflicts, runs ConfigGen, and verifies old image references are removed. Use when updating LTSC container images across service repositories.

rjmurillo☆ 14 仓库 Stars3 仓库 Forks

安装与使用

请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。

查看来源 ↗使用指南

技能说明

Windows Image Updater

Automates the end-to-end workflow for updating Windows container images in OneBranch pipelines. Handles NuGet package bumps, dependency resolution, ConfigGen execution, and image reference verification.

Triggers

Trigger Phrase Operation
update windows image Full 4-phase workflow
bump configgen package Phase 1: Package update only
resolve package dependencies Phase 2: Dependency resolution only
run configgen Phase 3: ConfigGen execution only
verify image references Phase 4: Image verification only

When to Use

Use this skill when:

  • A Windows LTSC container image reaches end-of-life (e.g., ltsc2019)
  • The ConfigurationGeneration.AdoPipelineGeneration NuGet package needs upgrading
  • Pipeline YAML files contain outdated image references
  • Service repositories need bulk container image migration

Process

Phase 1: Package Update
  1. Identify the current ConfigurationGeneration.AdoPipelineGeneration version in packages.config or .csproj files
  2. Determine the target version (latest stable or specified version)
  3. Update the package reference to the target version
  4. Stage the package reference change
Phase 2: Dependency Resolution
  1. Run nuget restore or dotnet restore to detect dependency conflicts
  2. For each conflict, identify the required version range
  3. Update transitive dependencies to compatible versions
  4. Re-run restore to confirm all conflicts are resolved
  5. Repeat until restore succeeds with zero warnings
Phase 3: ConfigGen Execution
  1. Locate the ConfigGen tool (typically tools/ConfigGen/ConfigGen.exe or via NuGet)
  2. Run ConfigGen to regenerate pipeline YAML files
  3. Capture stdout/stderr for diagnostics
  4. Verify ConfigGen exits with code 0
Phase 4: Image Verification
  1. Search all .yml and .yaml files for the old image reference (e.g., ltsc2019)
  2. Confirm zero matches remain
  3. Search for the new image reference to confirm replacement
  4. Report file-level diff summary

Output

After completing all phases, create a draft PR with this structure:

## Summary

- Bumped ConfigurationGeneration.AdoPipelineGeneration from {old} to {new}
- Resolved {N} dependency conflicts
- Regenerated pipeline YAML via ConfigGen
- Verified: 0 references to {old_image} remain

## Changes

| File | Change |
|------|--------|
| packages.config | Package version bump |
| {dependency files} | Dependency version updates |
| {pipeline files} | Regenerated by ConfigGen |

## Verification

- [ ] `nuget restore` completes without warnings
- [ ] ConfigGen exits with code 0
- [ ] `grep -r --include="*.yml" -- "ltsc2019" .` returns 0 results

Composability

After this skill creates a PR, invoke the pipeline-validator skill to trigger, monitor, and validate pipeline runs. The two skills are intentionally separate: this skill handles code changes, pipeline-validator handles CI validation.

Constraints

  • Do not modify pipeline YAML files manually. ConfigGen is the single source of truth.
  • Do not skip dependency resolution. Partial updates cause build failures downstream.
  • Always verify image references after ConfigGen. ConfigGen may not update all files.

See Also

Document Content
troubleshooting.md Phase-by-phase error guide
pipeline-validator skill Post-PR pipeline validation

使用示例

查看来源仓库中的使用示例与配置说明。

查看来源 ↗

来源历史

收录时间
2026-03-11
索引更新时间
2026-03-11
Branch
main

收录与同步日期属于本站记录。源码修改历史请查看来源仓库。

GitHub ↗

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!