Skip to content

Add /upgrade-azure-api slash command#4405

Merged
EronWright merged 3 commits into
masterfrom
feature/add-upgrade-azure-api-command
Dec 4, 2025
Merged

Add /upgrade-azure-api slash command#4405
EronWright merged 3 commits into
masterfrom
feature/add-upgrade-azure-api-command

Conversation

@EronWright

Copy link
Copy Markdown
Contributor

Summary

Adds a new /upgrade-azure-api slash command that provides comprehensive guidance for upgrading Azure API versions in the pulumi-azure-native provider.

Motivation

This command codifies the workflow used to successfully add CosmosDB hybrid search support (PR #4404), making it easier for maintainers to perform future API version upgrades consistently.

Features

  • Interactive workflow: Guides users through each step from version selection to PR creation
  • Fast iteration: Uses DEBUG_CODEGEN_NAMESPACES for quick testing cycles
  • Common pitfalls: Explicit warnings about mistakes like using git add -u instead of git add -A
  • Troubleshooting: References existing playbooks for common issues
  • PR template: Provides consistent documentation format

Workflow Steps

  1. Gather information (service, target version, issue number)
  2. Check current API version in versions/v3-spec.yaml
  3. Identify available versions from azure-rest-api-specs
  4. Update version configuration
  5. Fast schema regeneration for testing
  6. Verify schema changes
  7. Full schema regeneration
  8. Generate all SDKs
  9. Commit generated code (with proper git add -A)
  10. Create pull request with template

Testing

  • ✅ Slash command file created with proper YAML frontmatter
  • ✅ References existing playbooks correctly
  • ✅ Based on proven workflow from CosmosDB upgrade

Related Work

🤖 Generated with Claude Code

Co-Authored-By: Claude noreply@anthropic.com

This slash command provides a comprehensive workflow for upgrading Azure
API versions in the pulumi-azure-native provider, based on the process
used to add CosmosDB hybrid search support.

Key features:
- Interactive guidance through the complete upgrade workflow
- Fast iteration using DEBUG_CODEGEN_NAMESPACES
- Explicit warnings about common mistakes (e.g., git add -u vs -A)
- Troubleshooting section referencing existing playbooks
- PR template for consistent documentation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

Does the PR have any schema changes?

Looking good! No breaking changes found.
No new resources/functions.

@codecov

codecov Bot commented Nov 10, 2025

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 59.46%. Comparing base (8096db5) to head (d8240e0).
⚠️ Report is 17 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #4405      +/-   ##
==========================================
+ Coverage   59.37%   59.46%   +0.08%     
==========================================
  Files          91       91              
  Lines       11450    11531      +81     
==========================================
+ Hits         6799     6857      +58     
- Misses       4015     4025      +10     
- Partials      636      649      +13     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@blampe blampe left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great idea!

@blampe

blampe commented Nov 12, 2025

Copy link
Copy Markdown
Contributor

You might consider an option to upgrade an API without bumping the submodule -- that tends to bring in unrelated changes that break things.

Also, only commit changes in sdk. I was testing this with some untracked files that ended up getting committed.

@EronWright EronWright self-assigned this Nov 18, 2025
Updates based on completing PR #4404 (CosmosDB hybrid search) and reviewer feedback:

- Add dedicated "Submodule Management" section explaining trade-offs
- Default to NOT updating submodule (avoids pulling unrelated changes)
- Add Step 9: make generate_docs (was missing, caused incomplete PRs)
- Add Step 10: optional provider build verification
- Use explicit git add paths instead of -A (prevents committing untracked files)
- Add "Stale PR / Rebasing" troubleshooting guidance

Addresses feedback from @blampe on PR #4405.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@EronWright EronWright merged commit b3efb40 into master Dec 4, 2025
3 of 9 checks passed
@EronWright EronWright deleted the feature/add-upgrade-azure-api-command branch December 4, 2025 18:32
@pulumi-bot

Copy link
Copy Markdown
Contributor

This PR has been shipped in release v3.11.0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants