Giter Site home page Giter Site logo

nageshreddy2706 / automation-modules Goto Github PK

View Code? Open in Web Editor NEW

This project forked from avmgithub/garage-terraform-modules

0.0 0.0 0.0 2.12 MB

A collection of automation modules that can be used to provision resources on IBM Cloud Public

Home Page: https://modules.cloudnativetoolkit.dev

License: Apache License 2.0

HCL 56.57% Shell 41.63% Mustache 1.80%

automation-modules's Introduction

IBM Garage terraform modules

This repository contains a collection of terraform modules that can be used to provision an environment in an IBM Cloud or OpenShift environment.

The modules have been organized into two major categories:

  • ibm - modules to provision and manage resources in the IBM Cloud environment (clusters, services, etc)
  • k8s - modules that are not specific to any one environment, typically working with kubernetes resources

Module listing

Modules not migrated

SRE Tools

Module name Module location Features Latest release Last build status
Prometheus Grafana generic/tools/prometheusgrafana_release
LogDNA operator cloud-managed/operator-services/logdna
SysDig operator cloud-managed/operator-services/sysdig

Middleware

Module name Module location Features Latest release Last build status
Cloudant cloud-managed/services/cloudant
PostGreSQL cloud-managed/services/postgres
AppId operator cloud-managed/operator-services/appid
Cloud Object Storage operator cloud-managed/operator-services/cloud_object_storage
Cloudant operator cloud-managed/operator-services/cloudant
PostGreSQL operator cloud-managed/operator-services/postgres

How to apply a module

In order to use one of these modules, a terraform script should be created that references the desired module(s). For example, to use the ibmcloud_cluster module to provision a cluster, the following would be required:

module "CLUSTER_NAME" {
  source = "github.com/ibm-garage-cloud/garage-terraform-modules/cluster/ibmcloud_cluster"

  resource_group_name     = "${var.resource_group_name}"
  cluster_name            = "${var.cluster_name}"
  private_vlan_id         = "${var.private_vlan_id}"
  public_vlan_id          = "${var.public_vlan_id}"
  vlan_datacenter         = "${var.vlan_datacenter}"
  cluster_region          = "${var.vlan_region}"
  kubeconfig_download_dir = "${var.user_home_dir}"
  cluster_machine_type    = "${var.cluster_machine_type}"
  cluster_worker_count    = "${var.cluster_worker_count}"
  cluster_hardware        = "${var.cluster_hardware}"
  cluster_type            = "${var.cluster_type}"
  cluster_exists          = "${var.cluster_exists}"
  ibmcloud_api_key        = "${var.ibmcloud_api_key}"
}

where:

  • CLUSTER_NAME is any name you want for your terraform script
  • source points to the module folder in this repo
  • ${var.xxx} refers to a variable in your terraform script. All of the variables defined within the module's variables.tf file need to be provided a value, either through the terraform script or through a default value in the variables.tf file itself

Note: If you want to refer to a specific version of a module identified by a branch or tag within the repo, you can add ref to the end of the repo url. E.g. github.com/ibm-garage-cloud/garage-terraform-modules/cluster/ibmcloud_cluster?ref=v1.0.0

For more information on Terraform modules see https://www.terraform.io/docs/modules/index.html

Contribution

We want the broader Garage teams to contribute to this work to help scale and grow skills and accelerate projects.

Read the following contribution guidelines to help support the work.

Current Release : 2.0.6

automation-modules's People

Contributors

seansund avatar michaelsteven avatar dgrove-oss avatar bwoolf1 avatar csantanapr avatar jmereaux avatar massimocaprinali avatar dunchych avatar avmgithub avatar jb-dk avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.