Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Terraform GUI is a web application that allows developers and DevOps begginers to learn about Terraform, an open-source, Infrastructure as Code, software tool created by HashiCorp

License

NotificationsYou must be signed in to change notification settings

Terraform-GUI/terraform-gui

Repository files navigation

LABELER [CI] WEB [CI] WEB [CD]API [CD]

I - Introduction

Terraform GUI is a web application that allowsdevelopers andDevOps begginers to learn aboutTerraform, an open-source,Infrastructure as Code, software tool created byHashiCorp.

The main goal of this is tool is tomake Terraform understandable for everyone, with adifferent approach from the original HCL file structure.

This tool provides:

  • Graphical User Interface withcell representation of web ressources of providers
  • Ressources forms for templatingHCL files
  • Terraform HCL file generation forprovider, ressources, variables, outputs [...] used for deployment
  • ZIP downloaded solution for planning and applying Terraform files

II - Table of content

III - Folder structure

The structure of this project followsthese conventions.

  • /.github: Conventions, template, labels, ci, cd, settings
  • /api: Symfony API files
  • /build: Dockerfiles
  • /deploy: Deployment-related Terraform files
  • /docs: Swagger documentation
  • /samples: Terraform samples for usecase
  • /web: ReactJS web files

IV - Project setup

The project useDocker andDocker Compose to build and run local and distant images in our workspace.

A - Stack

All the images use thesame network, more informations atdocker-compose.yml

API documentation:https://terraform-gui.github.io/terraform-gui/

CONTAINERPORTIMAGE
REACTJS3000:3000build/package/web/Dockerfile.dev
SYMFONY8080:80build/package/api/Dockerfile.dev
MONGODB27017:27017mongo:latest
MAILCATCHER1080:1080schickling/mailcatcher:latest

B - Makefile

TL;DR

make setup-env start logs

make help

Display informations about other commands.

make init

Setup the API,start containers &output logs in terminal.

make start

Up the containers withfull cache reset to avoid cache errors.

make stop

Down the containers.

make logs

Display and follow the logs.

make api-*

API-related commands

V - CI/CD, release and container registry

A - CI

 WEB [CI]

TheCI workflow is located at.github/workflows/web.ci.yml. It's triggered ateach push in /web folder onall branches.

It consist of:

  • install Node on the VM
  • get the dependanciesusing the cache of other Actions run
  • install deps
  • build the application

B - CD

 WEB [CD]API [CD]

TheCD workflow is triggered aeach push onmain branches (main/dev/ops).

It consist of:

VI - License

UnderMIT license.

About

Terraform GUI is a web application that allows developers and DevOps begginers to learn about Terraform, an open-source, Infrastructure as Code, software tool created by HashiCorp

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors8


[8]ページ先頭

©2009-2025 Movatter.jp