Skip to main content

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:

Readme Animation

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

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

fxq-geoffrey-1.0.8.tar.gz (5.1 kB view hashes)

Uploaded Source

Built Distribution

fxq_geoffrey-1.0.8-py3-none-any.whl (8.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page