Skip to content

Add ASP scaling commands for bulk tier management#89

Draft
Copilot wants to merge 5 commits into
mainfrom
copilot/implement-scaleup-scaledown-methods
Draft

Add ASP scaling commands for bulk tier management#89
Copilot wants to merge 5 commits into
mainfrom
copilot/implement-scaleup-scaledown-methods

Conversation

Copilot AI commented Dec 2, 2025

Copy link
Copy Markdown
Contributor

Enables bulk scaling of Azure App Service Plans via CLI with pattern matching. Users can configure default scale-up/down tiers once, then scale multiple ASPs matching glob patterns (prod-*, *, etc.) with single commands.

Changes

Core Implementation

  • AppServicePlanManager: New Azure utility class wrapping Web SDK
    • List ASPs with optional pattern filtering (fnmatch)
    • Get/validate SKU tiers, scale operations
    • 17 hardcoded SKU tiers (Free → Isolated v2)

CLI Commands

acido asp config              # Interactive tier selection, persists to config
acido asp ls                  # List all ASPs with SKU/location/status
acido asp scale * --scaleup   # Bulk scale all ASPs
acido asp scale prod-* --scaledown  # Pattern-based scaling

Configuration

Added to .acido/config.json:

{
  "asp_scale_up_tier": "PremiumV2",
  "asp_scale_up_sku": "P1v2",
  "asp_scale_down_tier": "Basic",
  "asp_scale_down_sku": "B1"
}

Testing

  • 10 unit tests covering SKU validation, pattern matching, config handling
  • No changes to existing functionality (41 prior tests still passing)

Dependencies

  • Added azure-mgmt-web for Web SDK access
  • Uses Resource Manager scope (instance) for credentials
Original prompt

I want to implement methods in acido CLI like 'acido asp * --scaledown' and 'acido asp * --scaleup' and 'acido asp --scaleup / --scaledown (this should filter only asp that matches)'.

So we need a azure_utils to actually list all asp from the user and then another one that from the matches, checks its current SKU tier and decides to scale up or scale down.

Before everything else, we need another method that lists all asp tiers (this can be a hardcoded list of valid ASP SKU values now) and lets the user save inside .acido/config.json the default up tier and down tier.

the main goal is that we have a easy way from the cli to scale up and down from multiple asp in bulk with a simple operation.


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot AI self-assigned this Dec 2, 2025
@kn0wm4d

kn0wm4d commented Dec 2, 2025

Copy link
Copy Markdown
Contributor

Snyk checks have passed. No issues have been found so far.

Status Scanner Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

Copilot AI and others added 4 commits December 2, 2025 00:38
Co-authored-by: kn0wm4d <15344287+kn0wm4d@users.noreply.github.com>
Co-authored-by: kn0wm4d <15344287+kn0wm4d@users.noreply.github.com>
Co-authored-by: kn0wm4d <15344287+kn0wm4d@users.noreply.github.com>
…d SKU helper

Co-authored-by: kn0wm4d <15344287+kn0wm4d@users.noreply.github.com>
Copilot AI changed the title [WIP] Add methods for scaling ASP in acido CLI Add ASP scaling commands for bulk tier management Dec 2, 2025
Copilot AI requested a review from kn0wm4d December 2, 2025 00:52
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.

2 participants