Skip to content

project member {remove, update-role} should support usernames #84

Description

@pederhan

Currently you need to fetch the member ID for a user via project member list and then filter those results by username. This is an inconvenient API for users.

Signatures:

> project member remove --help
                                                                                           
 Usage: harbor  project member remove [OPTIONS] PROJECT_NAME_OR_ID MEMBER_ID               
                                                                                           
╭─ Arguments ─────────────────────────────────────────────────────────────────────────────╮
│ *    project_name_or_id      TEXT     Name or ID of the project to use. Prefix with     │
│                                       'id:' to specify an ID.                           │
│                                       [default: None]                                   │
│                                       [required]                                        │
│ *    member_id               INTEGER  The ID of the member to remove. [default: None]   │
│                                       [required]                                        │
╰─────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Options ───────────────────────────────────────────────────────────────────────────────╮
│ --help          Show this message and exit.                                             │
╰─────────────────────────────────────────────────────────────────────────────────────────╯

> project member update-role --help

 Usage: harbor  project member update-role [OPTIONS] PROJECT_NAME_OR_ID                    
                                           MEMBER_ID ROLE:{admin|developer|gues            
                                           t|maintainer}                                   
                                                                                           
 Add a user as a member of a project.                                                      
                                                                                           
╭─ Arguments ─────────────────────────────────────────────────────────────────────────────╮
│ *    project_name_or_id      TEXT                         Name or ID of the project to  │
│                                                           use. Prefix with 'id:' to     │
│                                                           specify an ID.                │
│                                                           [default: None]               │
│                                                           [required]                    │
│ *    member_id               INTEGER                      The ID of the member to       │
│                                                           update.                       │
│                                                           [default: None]               │
│                                                           [required]                    │
│ *    role                    ROLE:{admin|developer|guest  The type of role to give the  │
│                              |maintainer}                 user.                         │
│                                                           [default: None]               │
│                                                           [required]                    │
╰─────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Options ───────────────────────────────────────────────────────────────────────────────╮
│ --help          Show this message and exit.                                             │
╰─────────────────────────────────────────────────────────────────────────────────────────╯

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions