Giter Site home page Giter Site logo

terraform-oci-cloudbricks-streams-pool's Introduction

OCI Cloud Bricks: Streaming Pool

License: UPL Quality gate

Introduction

The following cloud brick enables you to create a streams pool insice OCI

Reference Architecture

The following is the reference architecture associated to this brick Reference Architecture

Prerequisites

  • Pre-existent VCN and Compartment Structure
  • Pre-existent NSG (if required)

Sample tfvar file

########## SAMPLE TFVAR FILE ##########
########## PROVIDER SPECIFIC VARIABLES ##########
region           = "foo-region-1"
tenancy_ocid     = "ocid1.tenancy.oc1..abcdefg"
user_ocid        = "ocid1.user.oc1..aaaaaaabcdefg"
fingerprint      = "fo:oo:ba:ar:ba:ar"
private_key_path = "/absolute/path/to/api/key/your_api_key.pem"
########## PROVIDER SPECIFIC VARIABLES ##########
########## ARTIFACT SPECIFIC VARIABLES ##########
stream_pool_display_name               = "My_Stream_Pool"
streams_pool_instance_compartment_name = "MY_ARTIFACT_COMPARTMENT"
streams_pool_network_compartment_name  = "MY_NETWORK_COMPARTMENT"
vcn_display_name                       = "MY_VCN"
network_subnet_name                    = "My_Subnet"
streams_pool_nsg_name                  = "My_NSG"
auto_create_topics_enable              = true
spool_log_retention_hours              = "24"
spool_num_partitions                   = "1"
########## ARTIFACT SPECIFIC VARIABLES ##########
########## SAMPLE TFVAR FILE ##########

Variable specific considerations

  • If NSG is required, provide the name of a pre-created one under variable streams_pool_nsg_name. In any other case, drop the usage of this variable from configuration or pass it on as ""
  • This module only supports private endpoint. Further support for public endpoint will be enabled, once this bug is resolved

Sample provider

The following is the base provider definition to be used with this module

terraform {
  required_version = ">= 0.13.5"
}
provider "oci" {
  region       = var.region
  tenancy_ocid = var.tenancy_ocid
  user_ocid        = var.user_ocid
  fingerprint      = var.fingerprint
  private_key_path = var.private_key_path
  disable_auto_retries = "true"
}

provider "oci" {
  alias        = "home"
  region       = data.oci_identity_region_subscriptions.home_region_subscriptions.region_subscriptions[0].region_name
  tenancy_ocid = var.tenancy_ocid  
  user_ocid        = var.user_ocid
  fingerprint      = var.fingerprint
  private_key_path = var.private_key_path
  disable_auto_retries = "true"
}

Variable documentation

Requirements

Name Version
terraform >= 0.13.5

Providers

Name Version
oci 4.40.0

Modules

No modules.

Resources

Name Type
oci_streaming_stream_pool.StreamingPool resource
oci_core_network_security_groups.NSG data source
oci_core_subnets.SUBNET data source
oci_core_vcns.VCN data source
oci_identity_compartments.COMPARTMENTS data source
oci_identity_compartments.NWCOMPARTMENTS data source

Inputs

Name Description Type Default Required
auto_create_topics_enable Enable auto creation of topic on the server. bool true no
fingerprint API Key Fingerprint for user_ocid derived from public API Key imported in OCI User config any n/a yes
network_subnet_name Subnet where artifact is created any n/a yes
private_key_path Private Key Absolute path location where terraform is executed any n/a yes
region Target region where artifacts are going to be created any n/a yes
spool_log_retention_hours The number of hours to keep a log file before deleting it (in hours) string "24" no
spool_num_partitions The default number of log partitions per topic. string "1" no
stream_pool_display_name Display name of Stream Pool any n/a yes
streams_pool_instance_compartment_name Compartment where artifact is created any n/a yes
streams_pool_network_compartment_name Compartment where VCN is located at any n/a yes
streams_pool_nsg_name NSG Display name of associated NSG string "" no
tenancy_ocid OCID of tenancy any n/a yes
user_ocid User OCID in tenancy. any n/a yes
vcn_display_name Display name of VCN any n/a yes

Outputs

Name Description
streampool StreamPool Object

Contributing

This project is open source. Please submit your contributions by forking this repository and submitting a pull request! Oracle appreciates any contributions that are made by the open source community.

License

Copyright (c) 2021 Oracle and/or its affiliates.

Licensed under the Universal Permissive License (UPL), Version 1.0.

See LICENSE for more details.

terraform-oci-cloudbricks-streams-pool's People

Contributors

timclegg avatar ttscoff avatar dralquinta avatar djukickosta avatar

Watchers

 avatar  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.