Gamma's toolbox used to bootstrap new projects and for all the common operations.
Full documentation: https://github.gamma.bcg.com/pages/BCG/gamma-cli/
pip3 install gamma-cli
to see the commands
To login with Github
you will be prompted your token, you need to create one on: https://github.gamma.bcg.com/settings/tokens
The token will be saved to be used with other commands
To create a new project
gamma new project
gamma new project --path /tmp/
To create a new Trello board
gamma new trello
To request a new VM
gamma new vm
You will be prompted few options for your project then if you want to init a git project and to push the first commit to Github.
to create a .gitignore file
gamma gitignore options to get the available options
gamma gitignore generate python flask > .gitignore to generate a .gitgnore file in the current directory
Gamma toolbox implements commands as loosely-coupled plugins, allowing people to extend it's functionally without central coordination. It uses pluggy as the plugin framework.
People interested in developing and packaging their own plugins for the Gamma toolbox should check the official sample plugin repository at https://github.gamma.bcg.com/BCG/gamma-cli-sample-plugin
Build && Update
Each push/PR to the project will be executed in Azure Devops, following this workflow:
- Testing the project in Windows and Mac VM
- Running code analysis with https://sonarcloud.io
- Building and publishing the doc on https://github.gamma.bcg.com/pages/BCG/gamma-cli/
- Publishing the latest release on https://pypi.org
- updating the release number on the gist https://gist.github.com/stumpyfr/b4f89c297a4e479049ff463fed790b37, allowing the tool to propose the update to the users
Update on client side
The tool is automatically checking at every run if a newer version exist and display a warning to the user about the need to update.
The version if exposed here: https://gist.github.com/stumpyfr/b4f89c297a4e479049ff463fed790b37 and automatically updated by the CI when the project version is bump and a new release is published.
The projects is using two types of test, both are combined to cover the test of the project from a technical point of view (TDD) and a functional point of view (BDD).
pytest will execute all the unit tests, display the test coverage and generate the coverage file for the CI
behave will execute all the "functional" tests.
The project is sending telemetry of two types:
- usage with event for each actions (https://azure.microsoft.com/en-us/services/monitor/)
- exception in case of crash (https://sentry.io)
The data is used to allow us to understand the usage of the tool and be able to quickly fix issues.
If you want to opt-out from the telemetry, you need to use the
--no-telemetry options or set the environement variable
The project is using
black for the code formating: https://github.com/psf/black
The project is using
punch to handle the version bumping: https://github.com/lgiordani/punch
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size gamma_cli-0.2.1-py3-none-any.whl (224.2 kB)||File type Wheel||Python version py3||Upload date||Hashes View|
|Filename, size gamma-cli-0.2.1.tar.gz (22.9 kB)||File type Source||Python version None||Upload date||Hashes View|
Hashes for gamma_cli-0.2.1-py3-none-any.whl