Skip to content

Proposal: Use a dedicated id property instead of forcing a unique name  #317

@erezrokah

Description

@erezrokah

Background

To support overwrite-delete-stale we've added a constraint for plugins names to be unique.
Also as a result we're planning to make the path required, as to allow users to change the name.

Problem

I believe it's quite hard to communicate the reason name has to be unique, and easy for users to miss that requirement (also if users split their config across multiple machines we can't really validate it either).

Additionally since we're planning to make path required due to the uniqueness of name, it adds friction for people onboarding CloudQuery.

Proposal

Instead of making name unique we can add a dedicated id configuration (it can default to name) and use that instead.
As a result we can achieve the following:

  1. Keep the meaning of name and path the same
  2. Keep path optional, as we can resolve it from name
  3. Users that don't need to run CloudQuery in parallel don't need to know anything about uniqueness
  4. Easier to understand why an id property needs to be unique

TLDR: Only users that split their configuration (e.g. run in parallel) should care about having a unique identifier.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions