Skip to content

component rename with normalization, --all-projects and --dry-run #608

Description

@arcaven

Proposal

jr component rename OLD NEW [--project KEY | --all-projects] [--dry-run]
  • Case-insensitive match on OLD; renames every matching component (per project or instance-wide) to the single canonical NEW casing.
  • --dry-run prints the per-project rename set before touching anything.
  • Renames keep component IDs (verified: PUT /rest/api/3/component/{id} with a new name), so ID-based references survive; name-based references are the subject of the companion impact-analysis issue.

Motivation

Cross-project JQL addresses components by name string, so CloudSmith/Cloudsmith, Github/GitHub, N8N/n8n (real drift between our two projects) are operationally different components in every multi-project query. Convergence today is N hand-written PUT calls plus an eyeball diff of two project component lists. Normalizing rename makes name alignment — the thing cross-project component search depends on — a one-liner.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions