The Provisioning Assistant for Devops, configure snippets as YML and call them from the geoffrey CLI
Project description
Geoffrey Devops CLI
Geoffrey is a Python based CLI application which provides a GUI for installing components, it is installed using pip and can be called
simply with geoffrey
. Calling it for the first time will trigger a new config to be created and you will be asked to provide a remote
URL that contains a YML file for configuration.
A Sample YML can be seen in the FXQuants geoffrey Repository:
Getting Started
The best way to get started is to simply install Geoffrey. Once Installed start geoffrey with:
geoffrey
You will be asked to provide a config location, do so, for an example you could use the FXQuants Repo:
Installing
I Highly recommend using PIPX to install geoffrey to ensure you do not run into issues with other environments and CLI apps installed using PIP
https://packaging.python.org/guides/installing-stand-alone-command-line-tools/
Install geoffrey with pip into a Python3 Environment.
yum -y install epel-release
yum -y install gcc wget python36 python36-pip python36-devel && \
pip3 install fxq-geoffrey
The YML that is loaded by Geoffrey is composed of sections containing tasks within a choices model the following is a simple model with some examples:
As you can see it's simple Bash Lines that are called with os.system(), they can be any valid bash.
I would recommend they are not overly complex however and more complex scripts should be housed separately for better Version Control.
choices:
sections:
- section:
name: Hypervisor Tools
tasks:
- task:
name: Open VM Tools
default: y
script:
- yum -y install open-vm-tools
- section:
name: Operating System
tasks:
- task:
name: Update All Packages
default: y
script:
- yum -y update
- task:
name: Docker Host
default: n
script:
- yum -y install curl
- curl -s 'https://bitbucket.org/!api/2.0/snippets/fxquants/beGAbx/master/files/install-docker.sh' | bash
Contributing
Contributions are most welcome to the project, please raise issues first and contribute in response to the issue with a pull request.
Versioning
We use SemVer for versioning. For the versions available, see the tags on this repository.
Authors
- Jonathan Turnock - Initial work - fxquants - profile
License
This project is licensed under the MIT License - see the LICENSE.md file for details
Project details
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 fxq-geoffrey-1.0.8.tar.gz
.
File metadata
- Download URL: fxq-geoffrey-1.0.8.tar.gz
- Upload date:
- Size: 5.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5d884471d966f190326a7f2d52ece444fc41340651d152855d2c6442811173dd |
|
MD5 | 338d4f8378d562a8a3f8b941c112b7f4 |
|
BLAKE2b-256 | 768989602f7b491b8fcc579488d0170722339be2fd74d9f49eae0163560b582d |
File details
Details for the file fxq_geoffrey-1.0.8-py3-none-any.whl
.
File metadata
- Download URL: fxq_geoffrey-1.0.8-py3-none-any.whl
- Upload date:
- Size: 8.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 69b8aeb47ed1e757ebd98301717f2ffec6c46ec586c805b64ccf92b50b6c0f4a |
|
MD5 | c7dfd189ed88fc98fb091c489cdb16a0 |
|
BLAKE2b-256 | 6e5b36fd8ad93ed32aeec639a3a10de6ee8ff35ff9bb45fbd9964906a8af55b8 |