Giter Site home page Giter Site logo

trivadis / terraform-oci-tvdlab-base Goto Github PK

View Code? Open in Web Editor NEW
1.0 8.0 3.0 918 KB

A reusable and extensible Terraform module that provisions a Trivadis LAB on Oracle Cloud Infrastructure

License: Apache License 2.0

HCL 100.00%
oci oci-terraform-modules oracle-cloud oracle-cloud-infrastructure terraform terraform-module oracle

terraform-oci-tvdlab-base's Introduction

Terraform Trivadis LAB Base for OCI

Introduction

A reusable and extensible Terraform module that provisions a Trivadis LAB on Oracle Cloud Infrastructure.

It creates the following resources:

The module can be parametrized by the number of participants. This will then create n times the environment. The following figure shows a VCN with Basion host for the compartment O-SEC. i.e. resource_name has been derivated from compartment name.

Base architecture overview

Prerequisites

  • An OCI account
  • Install Terraform
  • Create a Terraform Configuration

HINT This terraform module does use count to create multiple identical resources. Due to this at least Terraform version 0.13.0+ is required.

Quickstart

The module is available in Terraform registry. You may either us it via registry or clone terraform-oci-tvdlab-vcn from github.

Add the module to the main.tf with the mandatory parameter.

module "tvdlab-base" {
  source = "Trivadis/tvdlab-base/oci"
  #source = "../terraform-oci-tvdlab-base"
  version = ">= 1.0.0"

  # - Mandatory Parameters --------------------------------------------------
  region                = var.region
  compartment_id        = var.compartment_id
  tenancy_ocid          = var.tenancy_ocid
  ssh_public_key        = var.ssh_public_key
}

To create multiple environments just specify the tvd_participants parameter. The following example will create 3 VCN including corresponding bastion hosts.

module "tvdlab-base" {
  source = "Trivadis/tvdlab-base/oci"
  #source = "../terraform-oci-tvdlab-base"
  version = ">= 1.0.0"

  # - Mandatory Parameters --------------------------------------------------
  region                = var.region
  compartment_id        = var.compartment_id
  tenancy_ocid          = var.tenancy_ocid
  ssh_public_key        = var.ssh_public_key
  tvd_participants      = 3
}

The module can be customized by a couple of additional parameter. See variables for more information about customisation. The folder examples does contain an example files for main.tf, variables.tv and terraform.tfvars.

Related Documentation, Blog

Projects using this module

Currently none known.

Releases and Changelog

You find all releases and release information here.

Issues

Please file your bug reports, enhancement requests, questions and other support requests within Github's issue tracker.

How to Contribute

  1. Describe your idea by submitting an issue
  2. Fork this respository
  3. Create a branch, commit and publish your changes and enhancements
  4. Create a pull request

Acknowledgement

Code derived and adapted from oracle-terraform-modules/terraform-oci-vcn and Hashicorp's Terraform 0.12 examples.

License

Copyright (c) 2019, 2020 Trivadis AG and/or its associates. All rights reserved.

The Trivadis Terraform modules are licensed under the Apache License, Version 2.0. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.

terraform-oci-tvdlab-base's People

Contributors

oehrlis avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

terraform-oci-tvdlab-base's Issues

Add Module Documentation

Add respectively enhance module documentation:

  • general information and prerequisites
  • simple usage
  • examples
  • possible enhancements

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.