Skip to content

Latest commit

 

History

History
162 lines (132 loc) · 5.48 KB

File metadata and controls

162 lines (132 loc) · 5.48 KB

Deploy OpenSearch Domain

Description

This GitHub Action automates the deployment of an OpenSearch domain using Terraform. It will also install Terraform and awscli. It will output the OpenSearch domain endpoint.

Inputs

name description required default
aws-region

AWS region where the cluster will be deployed

true ""
domain-name

Name of the OpenSearch domain to deploy

true ""
engine-version

Version of the OpenSearch engine to deploy

false 2.15
vpc-id

VPC ID to create the domain in

true ""
subnet-ids

List of subnet IDs to create the domain in

true ""
cidr-blocks

CIDR blocks to allow access from and to

true ""
instance-type

Instance type for the OpenSearch cluster

false t3.small.search
instance-count

Number of instances in the cluster

false 3
additional-terraform-vars

JSON object containing additional Terraform variables

false {}
s3-backend-bucket

Name of the S3 bucket to store Terraform state

true ""
s3-bucket-region

Region of the bucket containing the resources states

false ""
tf-modules-revision

Git revision of the tf modules to use

false main
tf-modules-path

Path where the tf OpenSearch modules will be cloned

false ./.action-tf-modules/opensearch/
tf-cli-config-credentials-hostname

The hostname of a HCP Terraform/Terraform Enterprise instance to place within the credentials block of the Terraform CLI configuration file. Defaults to app.terraform.io.

false app.terraform.io
tf-cli-config-credentials-token

The API token for a HCP Terraform/Terraform Enterprise instance to place within the credentials block of the Terraform CLI configuration file.

false ""
tf-terraform-version

The version of Terraform CLI to install. Defaults to latest.

false latest
tf-terraform-wrapper

Whether or not to install a wrapper to wrap subsequent calls of the terraform binary and expose its STDOUT, STDERR, and exit code as outputs named stdout, stderr, and exitcode respectively. Defaults to true.

false true
awscli-version

Version of the aws cli to use

false 2.15.52

Outputs

name description
opensearch-endpoint

The endpoint of the deployed OpenSearch domain

terraform-state-url

URL of the Terraform state file in the S3 bucket

all-terraform-outputs

All outputs from Terraform

Runs

This action is a composite action.

Usage

- uses: camunda/camunda-tf-eks-module/.github/actions/opensearch-manage-cluster@main
  with:
    aws-region:
    # AWS region where the cluster will be deployed
    #
    # Required: true
    # Default: ""

    domain-name:
    # Name of the OpenSearch domain to deploy
    #
    # Required: true
    # Default: ""

    engine-version:
    # Version of the OpenSearch engine to deploy
    #
    # Required: false
    # Default: 2.15

    vpc-id:
    # VPC ID to create the domain in
    #
    # Required: true
    # Default: ""

    subnet-ids:
    # List of subnet IDs to create the domain in
    #
    # Required: true
    # Default: ""

    cidr-blocks:
    # CIDR blocks to allow access from and to
    #
    # Required: true
    # Default: ""

    instance-type:
    # Instance type for the OpenSearch cluster
    #
    # Required: false
    # Default: t3.small.search

    instance-count:
    # Number of instances in the cluster
    #
    # Required: false
    # Default: 3

    additional-terraform-vars:
    # JSON object containing additional Terraform variables
    #
    # Required: false
    # Default: {}

    s3-backend-bucket:
    # Name of the S3 bucket to store Terraform state
    #
    # Required: true
    # Default: ""

    s3-bucket-region:
    # Region of the bucket containing the resources states
    #
    # Required: false
    # Default: ""

    tf-modules-revision:
    # Git revision of the tf modules to use
    #
    # Required: false
    # Default: main

    tf-modules-path:
    # Path where the tf OpenSearch modules will be cloned
    #
    # Required: false
    # Default: ./.action-tf-modules/opensearch/

    tf-cli-config-credentials-hostname:
    # The hostname of a HCP Terraform/Terraform Enterprise instance to place within the credentials block
    # of the Terraform CLI configuration file. Defaults to `app.terraform.io`.
    #
    # Required: false
    # Default: app.terraform.io

    tf-cli-config-credentials-token:
    # The API token for a HCP Terraform/Terraform Enterprise instance to place
    # within the credentials block of the Terraform CLI configuration file.
    #
    # Required: false
    # Default: ""

    tf-terraform-version:
    # The version of Terraform CLI to install. Defaults to `latest`.
    #
    # Required: false
    # Default: latest

    tf-terraform-wrapper:
    # Whether or not to install a wrapper to wrap subsequent calls of the `terraform` binary
    # and expose its STDOUT, STDERR, and exit code
    # as outputs named `stdout`, `stderr`, and `exitcode` respectively. Defaults to `true`.
    #
    # Required: false
    # Default: true

    awscli-version:
    # Version of the aws cli to use
    #
    # Required: false
    # Default: 2.15.52