Skip to content

Commit

Permalink
Merge pull request #169 from CodeKaio/readme
Browse files Browse the repository at this point in the history
πŸ“ : improve README.md
  • Loading branch information
cdubuisson committed Nov 15, 2019
2 parents d6c79f9 + 7831b0b commit 6ce85b7
Show file tree
Hide file tree
Showing 5 changed files with 34 additions and 35 deletions.
69 changes: 34 additions & 35 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,57 +1,56 @@
# gaia

A terraform 🌍 ui
<p align="center">
<img width="200" src="assets/gaia_logo_with_title.png">
</p>

Gaia is a Terraform UI for your Terraform modules, and self-service infrastructure.

[![Build Status](https://travis-ci.org/CodeKaio/gaia.svg?branch=master)](https://travis-ci.org/CodeKaio/gaia)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=io.codeka%3Agaia&metric=alert_status)](https://sonarcloud.io/dashboard?id=io.codeka%3Agaia)
[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=io.codeka%3Agaia&metric=coverage)](https://sonarcloud.io/dashboard?id=io.codeka%3Agaia)
![Docker Pulls](https://img.shields.io/docker/pulls/codekaio/gaia)
[![Dependabot Status](https://api.dependabot.com/badges/status?host=github&repo=CodeKaio/gaia)](https://dependabot.com)

## using state mgmt

gaia serves terraform state mgmt as an API, and can be used as a backend for `terraform`.

To use it, configure your terraform module using this snippet :
## What is it?

```
terraform {
backend "http" {
address="http://localhost:8080/api/state/12"
}
}
```
Gaia is a web application to import and run your Terraform modules.
It features :
* importing modules from source code (Github/Gitlab)
* validation of Terraform variables values (mandatory variables, regex-based validation)
* setting up default values or masking variables for your users
* running modules (plan/apply/destroy) in one click and managing Terraform state
* team management

## configuring gaia
## Screenshots

Gaia can be configured using :
The module edition view allows you to edit module details, such as variables and their validation.

* environment variables
* java JVM options
* in app settings
![module edition view](./assets/screenshot-gaia-module.png)

### environment variables
The stack view helps you to input your variable values, and shows job results and latest output values.

* `GAIA_DOCKER_DAEMON_URL` / `gaia.dockerDaemonUrl` (default `unix:///var/run/docker.sock`) : configure docker daemon url for Gaia runner
* `GAIA_EXTERNAL_URL` / `gaia.externalUrl` (default `http://localhost:8080`) : configure Gaia url for embedded terraform backend support
* `GAIA_MONGODB_URI` / `gaia.mongodb.uri` (default `mongodb://localhost/gaia`) : configure Gaia database access
![stack edition view](./assets/screenshot-gaia-stack.png)

## building and running with docker
The job view shows you the Terraform workflow, and the logs of the `plan` and `apply` logs

Building Gaia with docker is simple :
![job view](./assets/screenshot-gaia-job.png)

```bash
docker build -t gaia .
```
## Requirements

To build mongo database with initiated data :
Gaia needs :
* a docker daemon (used to run Terraform itself)
* and a MongoDb database (to store its data)
* we currently support MongoDb 4.0 only

```bash
docker build -f Dockerfile-db -t gaia-db .
```
## Quick start

Either, we provide a simple `docker-compose.yml` to allow you to start gaia with the mongo database.
Start Gaia with `docker-compose` quickly !

Just run `docker-compose up -d`
Clone this repository, and just run `docker-compose up -d`.

The docker-compose will start a Gaia server, listening on http://localhost:8080, and a MongoDb database.

## healthcheck
## Contributors

healthcheck is available at the `/admin/health` URI.
Gaia is made with ❀️ in πŸ‡«πŸ‡· by [Cyril DUBUISSON](https://github.com/cdubuisson) and [Julien WITTOUCK](https://github.com/juwit)
Binary file added assets/gaia_logo_with_title.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/screenshot-gaia-job.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/screenshot-gaia-module.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/screenshot-gaia-stack.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 6ce85b7

Please sign in to comment.