Skip to content
/ gcdt Public

glomex cloud deployment tools to use infrastructure as code (IaC) on AWS

License

Notifications You must be signed in to change notification settings

petsy/gcdt

Repository files navigation

Documentation License GitHub issues

glomex-cloud-deployment-tools (gcdt)

gcdt is a CLI tool to code and deploy your AWS infrastructure.

The gcdt command line tools have emerged from our experiences at glomex while working extensively with AWS services like Cloudformation, CodeDeploy, AWS Lambda, and API Gateway. gcdt is based on the same technology AWS uses to build AWS-CLI and Boto3 tools.

In 2017 glomex won the Gartner award "Best Data Management and Infrastructure". Key to our success are the gcdt automation tools we use to successfully complete >100 deployments per day to AWS. Over the course of the last 12 months we built gcdt ourselves using Python.

Gartner Award

Features include:

  • Infrastructure-as-code
  • Classic infrastructure (kumo & tenkai)
  • Serverless infrastructure (ramuda & yugen)
  • Scaffolding
  • Powerful plugin mechanism
  • Service integration (Slack, Datadog, ...)
  • Codify infrastructure best practices
  • Multi-Env support (dev, stage, prod, ...)

Why gcdt?

At glomex we love continuous-integration-as-code and infrastructure-as-code. This enables us to move fast while providing services of high quality and resilience to our partners.

We added a plugin mechanism to gcdt so we can specialize gcdt to highly optimized and opinionated environments that resonate with our usecases.

We hope gcdt will be helpful to you, too. At glomex we believe that only open source software can become truly great software.

Useful gcdt information

Installing gcdt

The easiest way to install gcdt is via pip and virtualenv.

Defining which gcdt-plugins to use

gcdt needs at least some gcdt-glugins so you should want to install these together. The easiest way is to put the dependencies into a requirements_dev.txt file:

gcdt
gcdt-say-hello
gcdt-config-reader
gcdt-slack-integration
gcdt-datadog-integration
gcdt-gen-serverless

This is also a best practice to use the requirements_dev.txt file on your build server.

Prepare virtualenv

I am sure every Python dev uses virtualenv on a day to day basis. But we also use gcdt to deploy PHP, Ruby, and NodeJs projects. So I like to cover the basics:

Prepare the venv:

$ virtualenv venv

Activate the venv for use:

$ source ./venv/bin/activate

Installing all dev dependencies in one go

Install the dependencies into venv:

$ pip install -r requirements_dev.txt

Now you can start using gcdt:

$ gcdt version

Contributing

At glomex we welcome feedback, bug reports, and pull requests!

For pull requests, please stick to the following guidelines:

  • Add tests for any new features and bug fixes. Ideally, each PR should increase the test coverage.
  • Follow the existing code style (e.g., indents). UseA PEP8 code linting.
  • Put a reasonable amount of comments into the code.
  • Separate unrelated changes into multiple pull requests.

License

Copyright (c) 2017 glomex and others. gcdt is released under the MIT License (see LICENSE).

About

glomex cloud deployment tools to use infrastructure as code (IaC) on AWS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published