Concierge repository projects management CLI.
Project description
Companion CLI for Concierge, the Configuration management & CI solution for aligning your multitude of Git repositories. Allows you to bulk-manage properties of your Git repository projects. Currently, GitLab is supported.
Why Should I Use This Tool?
Concierge-cli helps you analyze and bulk-update the repository projects you manage (e.g. set topics on projects, generate project lists for ModuleSync).
Installation
From PyPI:
$ pip install concierge-cli
Note: You need Python >= 3.6, otherwise your installation will not succeed. (We’re doing this really just for Python’s awesome f-strings!) You can use Pipenv to work around this limitation:
$ pip install pipenv
$ pipenv shell --three
$ pip install concierge-cli
Usage Patterns
Manage project topics
List projects by topic
Manage group membership and permissions
Manage topics
List all projects (for a private GitLab) that have no topics yet:
$ concierge-cli gitlab --uri https://git.vs.hn topics --empty
List all projects “foo” or similar in group “bar” or similar: (on GitLab.com)
$ concierge-cli gitlab topics bar/foo --empty
Set topics on all those projects:
$ concierge-cli gitlab topics bar/foo --empty --set-topic Puppet --set-topic Ansible
List all projects with topics now: (double-check)
$ concierge-cli gitlab topics bar/foo
List projects
Print a YAML list of all projects matching a topic:
$ concierge-cli gitlab projects --topic Puppet
Update the list of modules Concierge manages with a specific configuration:
$ concierge-cli gitlab projects --topic Puppet > configs/foo-bar/managed_modules.yml
$ git add -v configs/foo-bar/managed_modules.yml
$ git status && git commit -m 'Added ...' && git push
Group membership
Preparation: You need an access token of an administrator user to list all groups and make changes to any group membership.
List all groups where user is not yet a member of:
$ concierge-cli gitlab --token *s3cr3t* groups --no-member my.user.name
Add user to all those groups:
$ concierge-cli gitlab --token *s3cr3t* groups --no-member my.user.name \
--set-permission maintainer
List a user’s group memberships and permissions:
$ concierge-cli gitlab --token *s3cr3t* groups my.user.name
Remove a user from selected groups:
$ concierge-cli gitlab --token *s3cr3t* groups my.user.name \
--group-filter a-group-name \
--set-permission none
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for concierge_cli-1.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 81ac5536d6efc122d56f455a482dccd24afb67d0782be6281142cbd3d9c0c908 |
|
MD5 | 1af145039cf10394e20b6814ca1031cc |
|
BLAKE2b-256 | a4986f899b84791fbe6f42ccb61807c1b48c5ec9f42da2395071a092f8559f98 |