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 (python-gitlab v2.0.0 dropped support for older Pythons). 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
File details
Details for the file concierge-cli-1.2.0.tar.gz
.
File metadata
- Download URL: concierge-cli-1.2.0.tar.gz
- Upload date:
- Size: 7.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e75137b0895a94e70cf52cbde4be2af786d08bad1df22f5d00f142572c6e3a36 |
|
MD5 | 743755842a6df802fb6a59672d5985ac |
|
BLAKE2b-256 | 3ff91afde16ca67fe13ef652e9e9dac7d6c0cd2bb83178acc06e1cc803a1ccac |
Provenance
File details
Details for the file concierge_cli-1.2.0-py3-none-any.whl
.
File metadata
- Download URL: concierge_cli-1.2.0-py3-none-any.whl
- Upload date:
- Size: 9.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 27abe171fe304e42db9c18040c450638074b57fd850884b80314795a37672a75 |
|
MD5 | 2b20aefa0029901d10e67598eded5af7 |
|
BLAKE2b-256 | 874513b6cf266f4b79a11171078377a8bbf72774c193b2215ac73d0e7fc2a5e8 |