Skip to content

insight-w3f/terraform-polkadot-azure-asg

Repository files navigation

terraform-polkadot-azure-asg

open-issues open-pr build-status

Features

This module...

Terraform Versions

For Terraform v0.12.0+

Usage

module "this" {
    source = "github.com/insight-w3f/terraform-polkadot-azure-asg"

}

Examples

Known Issues

No issue is creating limit on this module.

Providers

Name Version
azurerm n/a

Inputs

Name Description Type Default Required
application_security_group_id The id of the application security group to run in string n/a yes
azure_resource_group_name Name of Azure Resource Group string n/a yes
chain Which Polkadot chain to join string "kusama" no
client_id Azure SP for Packer ID string n/a yes
client_secret Azure SP for Packer secret string n/a yes
cluster_name The name of the k8s cluster string "" no
consul_enabled Bool to use when Consul is enabled bool false no
create Bool to create the resources bool true no
desired_capacity The desired capacity of asg string 2 no
environment The environment string "" no
instance_type Instance type string "Standard_A2_v2" no
k8s_resource_group Name of resource group where kubernetes cluster resources are string "" no
k8s_scale_set Name of kubernetes worker scale set string "" no
key_name The name of the preexisting key to be used instead of the local public_key_path string "" no
logging_filter String for polkadot logging filter string "sync=trace,afg=trace,babe=debug" no
max_size The max size of asg string 10 no
min_size The min size of asg string 0 no
namespace The namespace to deploy into string "" no
network_name The network name, ie kusama / mainnet string "" no
network_security_group_id The id of the network security group to run in string n/a yes
node_exporter_hash SHA256 hash of Node Exporter binary string "b2503fd932f85f4e5baf161268854bf5d22001869b84f00fd2d1f57b51b72424" no
node_exporter_password Password for node exporter string "node_exporter_password" no
node_exporter_url URL to Node Exporter binary string "https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-amd64.tar.gz" no
node_exporter_user User for node exporter string "node_exporter_user" no
owner Owner of the infrastructure string "" no
num_instances Number of instances for ASG number 1 no
polkadot_client_hash SHA256 hash of Polkadot client binary string "c34d63e5d80994b2123a3a0b7c5a81ce8dc0f257ee72064bf06654c2b93e31c9" no
polkadot_client_url URL to Polkadot client binary string "https://github.com/w3f/polkadot/releases/download/v0.7.32/polkadot" no
private_subnet_id The id of the subnet. string n/a yes
project Name of the project for node name string "project" no
prometheus_enabled Bool to use when Prometheus is enabled bool false no
public_key The public ssh key string n/a yes
public_subnet_id The id of the subnet. string n/a yes
region The Azure region to deploy in string "eastus" no
relay_node_ip Internal IP of Polkadot relay node string "" no
relay_node_p2p_address P2P address of Polkadot relay node string "" no
ssh_user Username for SSH string "ubuntu" no
subscription_id Azure subscription ID string n/a yes
tags Tags in the form of key value pairs to associate with resources map(string) {} no
telemetry_url WSS URL for telemetry string "" no
tenant_id Azure Tenant ID string n/a yes
use_external_lb Bool to switch between public (true) or private (false) bool true no
use_lb Bool to enable use of load balancer bool true no

Outputs

Name Description
cmd n/a
lb_backend_pool_id n/a
lb_endpoint_ip n/a
lb_frontend_ip_config_name n/a
lb_health_probe_id n/a
lb_id n/a
lb_rpc_rule_id n/a
scale_set_name n/a

Testing

This module has been packaged with terratest tests

To run them:

  1. Install Go
  2. Run make test-init from the root of this repo
  3. Run make test again from root

Authors

Module managed by Richard Mah

Credits

License

Apache 2 Licensed. See LICENSE for full details.