Skip to content
This repository was archived by the owner on Jan 24, 2026. It is now read-only.
This repository was archived by the owner on Jan 24, 2026. It is now read-only.

Feature: Add --override flag for plugin installation to force re-install/update #48

Description

@mrgb7

Feature Request

Summary

Add an --override flag to the playground cluster plugin add command that allows forcing re-installation or updating of plugins even when they are already installed.

Motivation

Currently, when a plugin is already installed, the system prevents re-installation. There are scenarios where users need to:

  • Update plugin configuration with new values
  • Force a fresh installation with different settings
  • Recover from corrupted plugin installations

Proposed Solution

Command Syntax

playground cluster plugin add -n <plugin-name> --override --set <key=value> --cluster <cluster-name>

Example Usage

playground cluster plugin add -n argocd --override --set admin.password=xyz --cluster playground

Implementation Requirements

  1. Override Validation:

    • Validate that the --override flag is supported by the target plugin
    • Each plugin should implement an interface method to indicate override support
  2. Re-installation Logic:

    • When --override is specified, uninstall the existing plugin first
    • Then proceed with fresh installation using new configuration values
  3. Safety Checks:

    • Warn users about potential data loss during re-installation
    • Provide confirmation prompt unless --force is also specified
  4. Plugin Interface Extension:

    • Add a method like SupportsOverride() bool to the plugin interface
    • Update existing plugins to implement this method

Acceptance Criteria

  • --override flag is recognized by the CLI
  • Plugin interface includes override support validation
  • ArgoCD plugin supports override functionality
  • Proper error handling when override is not supported
  • User confirmation prompts for destructive operations
  • Integration tests covering override scenarios
  • Documentation updated with new flag usage

Related Files

  • internal/plugins/argocd.go - Example plugin that should support override
  • CLI command handlers for plugin installation

Additional Context

This feature will improve the developer experience by allowing easy plugin reconfiguration and recovery from installation issues.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions