1
0
mirror of https://github.com/rancher/quickstart.git synced 2026-02-05 12:45:15 +01:00

Automatically generate README and tfvars examples from input variables with terraform-docs

This commit is contained in:
Bastian Hofmann
2022-01-21 19:44:33 +01:00
parent 193b7a2433
commit 0223489d38
21 changed files with 751 additions and 633 deletions

View File

@@ -41,3 +41,17 @@ jobs:
# Validates the Terraform configuration files
- name: Terraform Validate
run: terraform validate
- name: Setup go
uses: actions/setup-go@v2
with:
go-version: 1.17.6
- name: Setup terraform-docs
run: go install github.com/terraform-docs/terraform-docs@v0.16.0
- name: Validate if terraform-docs generated README.md is up to date
run: terraform-docs -c ../.terraform-docs-readme.yml . --output-check
- name: Validate if terraform-docs generated terraform.tfvars.example is up to date
run: terraform-docs -c ../.terraform-docs-tfvars.yml . --output-check

View File

@@ -0,0 +1,11 @@
formatter: markdown table
output:
file: README.md
mode: inject
sort:
by: required
settings:
description: true

View File

@@ -0,0 +1,13 @@
formatter: tfvars hcl
output:
file: terraform.tfvars.example
mode: replace
template: |-
{{ .Content }}
sort:
by: required
settings:
description: true

View File

@@ -1,15 +1,32 @@
PROVIDERS = aws azure do gcp hcloud linode scw
PROVIDERS = rancher-common aws azure do gcp hcloud linode scw
upgrade-targets = $(addprefix upgrade-, $(PROVIDERS))
docs-targets = $(addprefix docs-, $(PROVIDERS))
tfvars-targets = $(addprefix tfvars-, $(PROVIDERS))
fmt-targets = $(addprefix fmt-, $(PROVIDERS))
validate-targets = $(addprefix validate-, $(PROVIDERS))
upgrade: $(upgrade-targets)
$(upgrade-targets): upgrade-%: %
cd $< && terraform init -upgrade
docs: $(docs-targets)
$(docs-targets): docs-%: %
cd $< && terraform-docs -c ../.terraform-docs-readme.yml .
tfvars: $(tfvars-targets)
$(tfvars-targets): tfvars-%: %
cd $< && terraform-docs -c ../.terraform-docs-tfvars.yml .
fmt: $(fmt-targets)
$(fmt-targets): fmt-%: %
cd $< && terraform fmt
validate: $(validate-targets)
$(validate-targets): validate-%: %
cd $< && terraform validate
.PHONY: test
test:
cd test/ && go test -v -timeout 45m
.PHONY: fmt
fmt:
terraform fmt -recursive

View File

@@ -4,59 +4,71 @@ Two single-node RKE Kubernetes clusters will be created from two EC2 instances r
Both instances will have wide-open security groups and will be accessible over SSH using the SSH keys
`id_rsa` and `id_rsa.pub`.
## Variables
<!-- BEGIN_TF_DOCS -->
## Requirements
###### `aws_access_key`
- **Required**
AWS access key used to create infrastructure
| Name | Version |
|------|---------|
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0.0 |
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | 3.68.0 |
| <a name="requirement_local"></a> [local](#requirement\_local) | 2.1.0 |
| <a name="requirement_tls"></a> [tls](#requirement\_tls) | 3.1.0 |
###### `aws_secret_key`
- **Required**
AWS secret key used to create AWS infrastructure
## Providers
###### `aws_region`
- Default: **`"us-east-1"`**
AWS region used for all resources
| Name | Version |
|------|---------|
| <a name="provider_aws"></a> [aws](#provider\_aws) | 3.68.0 |
| <a name="provider_local"></a> [local](#provider\_local) | 2.1.0 |
| <a name="provider_tls"></a> [tls](#provider\_tls) | 3.1.0 |
###### `prefix`
- Default: **`"quickstart"`**
Prefix added to names of all resources
## Modules
###### `instance_type`
- Default: **`"t3a.medium"`**
Instance type used for all EC2 instances
| Name | Source | Version |
|------|--------|---------|
| <a name="module_rancher_common"></a> [rancher\_common](#module\_rancher\_common) | ../rancher-common | n/a |
###### `docker_version`
- Default: **`"19.03"`**
Docker version to install on nodes
## Resources
###### `rancher_kubernetes_version`
- Default: **`"v1.21.8+k3s1"`**
Kubernetes version to use for Rancher server cluster
| Name | Type |
|------|------|
| [aws_instance.quickstart_node](https://registry.terraform.io/providers/hashicorp/aws/3.68.0/docs/resources/instance) | resource |
| [aws_instance.quickstart_node_win](https://registry.terraform.io/providers/hashicorp/aws/3.68.0/docs/resources/instance) | resource |
| [aws_instance.rancher_server](https://registry.terraform.io/providers/hashicorp/aws/3.68.0/docs/resources/instance) | resource |
| [aws_key_pair.quickstart_key_pair](https://registry.terraform.io/providers/hashicorp/aws/3.68.0/docs/resources/key_pair) | resource |
| [aws_security_group.rancher_sg_allowall](https://registry.terraform.io/providers/hashicorp/aws/3.68.0/docs/resources/security_group) | resource |
| [local_file.ssh_private_key_pem](https://registry.terraform.io/providers/hashicorp/local/2.1.0/docs/resources/file) | resource |
| [local_file.ssh_public_key_openssh](https://registry.terraform.io/providers/hashicorp/local/2.1.0/docs/resources/file) | resource |
| [tls_private_key.global_key](https://registry.terraform.io/providers/hashicorp/tls/3.1.0/docs/resources/private_key) | resource |
| [aws_ami.sles](https://registry.terraform.io/providers/hashicorp/aws/3.68.0/docs/data-sources/ami) | data source |
| [aws_ami.windows](https://registry.terraform.io/providers/hashicorp/aws/3.68.0/docs/data-sources/ami) | data source |
See `rancher-common` module variable `rancher_kubernetes_version` for more details.
## Inputs
###### `workload_kubernetes_version`
- Default: **`"v1.20.6-rancher1-1"`**
Kubernetes version to use for managed workload cluster
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| <a name="input_aws_access_key"></a> [aws\_access\_key](#input\_aws\_access\_key) | AWS access key used to create infrastructure | `string` | n/a | yes |
| <a name="input_aws_secret_key"></a> [aws\_secret\_key](#input\_aws\_secret\_key) | AWS secret key used to create AWS infrastructure | `string` | n/a | yes |
| <a name="input_rancher_server_admin_password"></a> [rancher\_server\_admin\_password](#input\_rancher\_server\_admin\_password) | Admin password to use for Rancher server bootstrap | `string` | n/a | yes |
| <a name="input_add_windows_node"></a> [add\_windows\_node](#input\_add\_windows\_node) | Add a windows node to the workload cluster | `bool` | `false` | no |
| <a name="input_aws_region"></a> [aws\_region](#input\_aws\_region) | AWS region used for all resources | `string` | `"us-east-1"` | no |
| <a name="input_aws_session_token"></a> [aws\_session\_token](#input\_aws\_session\_token) | AWS session token used to create AWS infrastructure | `string` | `""` | no |
| <a name="input_cert_manager_version"></a> [cert\_manager\_version](#input\_cert\_manager\_version) | Version of cert-manager to install alongside Rancher (format: 0.0.0) | `string` | `"1.5.3"` | no |
| <a name="input_docker_version"></a> [docker\_version](#input\_docker\_version) | Docker version to install on nodes | `string` | `"19.03"` | no |
| <a name="input_instance_type"></a> [instance\_type](#input\_instance\_type) | Instance type used for all EC2 instances | `string` | `"t3a.medium"` | no |
| <a name="input_prefix"></a> [prefix](#input\_prefix) | Prefix added to names of all resources | `string` | `"quickstart"` | no |
| <a name="input_rancher_kubernetes_version"></a> [rancher\_kubernetes\_version](#input\_rancher\_kubernetes\_version) | Kubernetes version to use for Rancher server cluster | `string` | `"v1.21.8+k3s1"` | no |
| <a name="input_rancher_version"></a> [rancher\_version](#input\_rancher\_version) | Rancher server version (format: v0.0.0) | `string` | `"v2.6.3"` | no |
| <a name="input_windows_instance_type"></a> [windows\_instance\_type](#input\_windows\_instance\_type) | Instance type used for all EC2 windows instances | `string` | `"t3a.large"` | no |
| <a name="input_workload_kubernetes_version"></a> [workload\_kubernetes\_version](#input\_workload\_kubernetes\_version) | Kubernetes version to use for managed workload cluster | `string` | `"v1.20.6-rancher1-1"` | no |
See `rancher-common` module variable `workload_kubernetes_version` for more details.
###### `cert_manager_version`
- Default: **`"1.5.3"`**
Version of cert-manager to install alongside Rancher (format: 0.0.0)
See `rancher-common` module variable `cert_manager_version` for more details.
###### `rancher_version`
- Default: **`"v2.6.3"`**
Rancher server version (format v0.0.0)
See `rancher-common` module variable `rancher_version` for more details.
###### `rancher_server_admin_password`
- **Required**
Admin password to use for Rancher server bootstrap
See `rancher-common` module variable `admin_password` for more details.
## Outputs
| Name | Description |
|------|-------------|
| <a name="output_rancher_node_ip"></a> [rancher\_node\_ip](#output\_rancher\_node\_ip) | n/a |
| <a name="output_rancher_server_url"></a> [rancher\_server\_url](#output\_rancher\_server\_url) | n/a |
| <a name="output_windows-workload-ips"></a> [windows-workload-ips](#output\_windows-workload-ips) | n/a |
| <a name="output_windows_password"></a> [windows\_password](#output\_windows\_password) | Returns the decrypted AWS generated windows password |
| <a name="output_workload_node_ip"></a> [workload\_node\_ip](#output\_workload\_node\_ip) | n/a |
<!-- END_TF_DOCS -->

View File

@@ -1,50 +1,42 @@
# Required variables
# - Fill in before beginning quickstart
# ==========================================================
# AWS Access Key
# AWS access key used to create infrastructure
aws_access_key = ""
# AWS Secret Key
# AWS secret key used to create AWS infrastructure
aws_secret_key = ""
# AWS Session Key
# aws_session_token = ""
# Password used to log in to the `admin` account on the new Rancher server
# - Must be at least 12 characters
# Admin password to use for Rancher server bootstrap
rancher_server_admin_password = ""
# Add a windows node to the workload cluster
add_windows_node = false
# Optional variables, uncomment to customize the quickstart
# ----------------------------------------------------------
# AWS region used for all resources
aws_region = "us-east-1"
# AWS region for all resources
# aws_region = ""
# AWS session token used to create AWS infrastructure
aws_session_token = ""
# Prefix for all resources created by quickstart
# prefix = ""
# Version of cert-manager to install alongside Rancher (format: 0.0.0)
cert_manager_version = "1.5.3"
# EC2 instance size of all created instances
# instance_type = ""
# Docker version to install on nodes
docker_version = "19.03"
# Docker version installed on target hosts
# - Must be a version supported by the Rancher install scripts
# docker_version = ""
# Instance type used for all EC2 instances
instance_type = "t3a.medium"
# Kubernetes version used for creating management server cluster
# - Must be supported by RKE terraform provider 1.0.1
# rancher_kubernetes_version = ""
# Prefix added to names of all resources
prefix = "quickstart"
# Kubernetes version used for creating workload cluster
# - Must be supported by RKE terraform provider 1.0.1
# workload_kubernetes_version = ""
# Kubernetes version to use for Rancher server cluster
rancher_kubernetes_version = "v1.21.8+k3s1"
# Version of cert-manager to install, used in case of older Rancher versions
# cert_manager_version = ""
# Rancher server version (format: v0.0.0)
rancher_version = "v2.6.3"
# Version of Rancher to install
# rancher_version = ""
# Instance type used for all EC2 windows instances
windows_instance_type = "t3a.large"
# Kubernetes version to use for managed workload cluster
workload_kubernetes_version = "v1.20.6-rancher1-1"

View File

@@ -4,67 +4,77 @@ Two single-node RKE Kubernetes clusters will be created from two linux virtual i
Both instances will have wide-open security groups and will be accessible over SSH using the SSH keys
`id_rsa` and `id_rsa.pub`.
## Variables
<!-- BEGIN_TF_DOCS -->
## Requirements
###### `azure_subscription_id`
- **Required**
Azure subscription id to which the resources are billed
| Name | Version |
|------|---------|
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0.0 |
| <a name="requirement_azurerm"></a> [azurerm](#requirement\_azurerm) | 2.88.1 |
| <a name="requirement_local"></a> [local](#requirement\_local) | 2.1.0 |
| <a name="requirement_tls"></a> [tls](#requirement\_tls) | 3.1.0 |
###### `azure_client_id`
- **Required**
Azure client id associated with the provisioned resources
## Providers
##### `azure_client_secret`
- **Required**
Azure client secret used to authenticate the azure client id
| Name | Version |
|------|---------|
| <a name="provider_azurerm"></a> [azurerm](#provider\_azurerm) | 2.88.1 |
| <a name="provider_local"></a> [local](#provider\_local) | 2.1.0 |
| <a name="provider_tls"></a> [tls](#provider\_tls) | 3.1.0 |
##### `azure_tenant_id`
- **Required**
Azure tenant id (active directory instance) under which the resources will exist
## Modules
###### `azure_location`
- Default: **`"East US"`**
Azure location used for all resources
| Name | Source | Version |
|------|--------|---------|
| <a name="module_rancher_common"></a> [rancher\_common](#module\_rancher\_common) | ../rancher-common | n/a |
###### `prefix`
- Default: **`"quickstart"`**
Prefix added to names of all resources
## Resources
###### `instance_type`
- Default: **`"Standard_DS2_v2"`**
Instance type used for all linux virtual instances
| Name | Type |
|------|------|
| [azurerm_linux_virtual_machine.quickstart-node](https://registry.terraform.io/providers/hashicorp/azurerm/2.88.1/docs/resources/linux_virtual_machine) | resource |
| [azurerm_linux_virtual_machine.rancher_server](https://registry.terraform.io/providers/hashicorp/azurerm/2.88.1/docs/resources/linux_virtual_machine) | resource |
| [azurerm_network_interface.quickstart-node-interface](https://registry.terraform.io/providers/hashicorp/azurerm/2.88.1/docs/resources/network_interface) | resource |
| [azurerm_network_interface.quickstart-windows-node-interface](https://registry.terraform.io/providers/hashicorp/azurerm/2.88.1/docs/resources/network_interface) | resource |
| [azurerm_network_interface.rancher-server-interface](https://registry.terraform.io/providers/hashicorp/azurerm/2.88.1/docs/resources/network_interface) | resource |
| [azurerm_public_ip.quickstart-node-pip](https://registry.terraform.io/providers/hashicorp/azurerm/2.88.1/docs/resources/public_ip) | resource |
| [azurerm_public_ip.quickstart-windows-node-pip](https://registry.terraform.io/providers/hashicorp/azurerm/2.88.1/docs/resources/public_ip) | resource |
| [azurerm_public_ip.rancher-server-pip](https://registry.terraform.io/providers/hashicorp/azurerm/2.88.1/docs/resources/public_ip) | resource |
| [azurerm_resource_group.rancher-quickstart](https://registry.terraform.io/providers/hashicorp/azurerm/2.88.1/docs/resources/resource_group) | resource |
| [azurerm_subnet.rancher-quickstart-internal](https://registry.terraform.io/providers/hashicorp/azurerm/2.88.1/docs/resources/subnet) | resource |
| [azurerm_virtual_machine_extension.join-rancher](https://registry.terraform.io/providers/hashicorp/azurerm/2.88.1/docs/resources/virtual_machine_extension) | resource |
| [azurerm_virtual_network.rancher-quickstart](https://registry.terraform.io/providers/hashicorp/azurerm/2.88.1/docs/resources/virtual_network) | resource |
| [azurerm_windows_virtual_machine.quickstart-windows-node](https://registry.terraform.io/providers/hashicorp/azurerm/2.88.1/docs/resources/windows_virtual_machine) | resource |
| [local_file.ssh_private_key_pem](https://registry.terraform.io/providers/hashicorp/local/2.1.0/docs/resources/file) | resource |
| [local_file.ssh_public_key_openssh](https://registry.terraform.io/providers/hashicorp/local/2.1.0/docs/resources/file) | resource |
| [tls_private_key.global_key](https://registry.terraform.io/providers/hashicorp/tls/3.1.0/docs/resources/private_key) | resource |
###### `docker_version`
- Default: **`"19.03"`**
Docker version to install on nodes
## Inputs
###### `rancher_kubernetes_version`
- Default: **`"v1.21.8+k3s1"`**
Kubernetes version to use for Rancher server cluster
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| <a name="input_azure_client_id"></a> [azure\_client\_id](#input\_azure\_client\_id) | Azure client id used to create resources | `string` | n/a | yes |
| <a name="input_azure_client_secret"></a> [azure\_client\_secret](#input\_azure\_client\_secret) | Client secret used to authenticate with Azure apis | `string` | n/a | yes |
| <a name="input_azure_subscription_id"></a> [azure\_subscription\_id](#input\_azure\_subscription\_id) | Azure subscription id under which resources will be provisioned | `string` | n/a | yes |
| <a name="input_azure_tenant_id"></a> [azure\_tenant\_id](#input\_azure\_tenant\_id) | Azure tenant id used to create resources | `string` | n/a | yes |
| <a name="input_rancher_server_admin_password"></a> [rancher\_server\_admin\_password](#input\_rancher\_server\_admin\_password) | Admin password to use for Rancher server bootstrap | `string` | n/a | yes |
| <a name="input_windows_admin_password"></a> [windows\_admin\_password](#input\_windows\_admin\_password) | Admin password to use for the Windows VM | `string` | n/a | yes |
| <a name="input_add_windows_node"></a> [add\_windows\_node](#input\_add\_windows\_node) | Add a windows node to the workload cluster | `bool` | `false` | no |
| <a name="input_azure_location"></a> [azure\_location](#input\_azure\_location) | Azure location used for all resources | `string` | `"East US"` | no |
| <a name="input_cert_manager_version"></a> [cert\_manager\_version](#input\_cert\_manager\_version) | Version of cert-manager to install alongside Rancher (format: 0.0.0) | `string` | `"1.5.3"` | no |
| <a name="input_docker_version"></a> [docker\_version](#input\_docker\_version) | Docker version to install on nodes | `string` | `"19.03"` | no |
| <a name="input_instance_type"></a> [instance\_type](#input\_instance\_type) | Instance type used for all linux virtual machines | `string` | `"Standard_DS2_v2"` | no |
| <a name="input_prefix"></a> [prefix](#input\_prefix) | Prefix added to names of all resources | `string` | `"quickstart"` | no |
| <a name="input_rancher_kubernetes_version"></a> [rancher\_kubernetes\_version](#input\_rancher\_kubernetes\_version) | Kubernetes version to use for Rancher server cluster | `string` | `"v1.21.8+k3s1"` | no |
| <a name="input_rancher_version"></a> [rancher\_version](#input\_rancher\_version) | Rancher server version (format: v0.0.0) | `string` | `"v2.6.3"` | no |
| <a name="input_workload_kubernetes_version"></a> [workload\_kubernetes\_version](#input\_workload\_kubernetes\_version) | Kubernetes version to use for managed workload cluster | `string` | `"v1.20.6-rancher1-1"` | no |
See `rancher-common` module variable `rancher_kubernetes_version` for more details.
###### `workload_kubernetes_version`
- Default: **`"v1.20.6-rancher1-1"`**
Kubernetes version to use for managed workload cluster
See `rancher-common` module variable `workload_kubernetes_version` for more details.
###### `cert_manager_version`
- Default: **`"1.5.3"`**
Version of cert-manager to install alongside Rancher (format: 0.0.0)
See `rancher-common` module variable `cert_manager_version` for more details.
###### `rancher_version`
- Default: **`"v2.6.3"`**
Rancher server version (format v0.0.0)
See `rancher-common` module variable `rancher_version` for more details.
###### `rancher_server_admin_password`
- **Required**
Admin password to use for Rancher server bootstrap
See `rancher-common` module variable `admin_password` for more details.
## Outputs
| Name | Description |
|------|-------------|
| <a name="output_rancher_node_ip"></a> [rancher\_node\_ip](#output\_rancher\_node\_ip) | n/a |
| <a name="output_rancher_server_url"></a> [rancher\_server\_url](#output\_rancher\_server\_url) | n/a |
| <a name="output_windows-workload-ips"></a> [windows-workload-ips](#output\_windows-workload-ips) | n/a |
| <a name="output_workload_node_ip"></a> [workload\_node\_ip](#output\_workload\_node\_ip) | n/a |
<!-- END_TF_DOCS -->

View File

@@ -1,56 +1,45 @@
# Required variables
# - Fill in before beginning quickstart
# ==========================================================
# Azure Subscription ID
azure_subscription_id = ""
# Azure Client ID
# Azure client id used to create resources
azure_client_id = ""
# Azure Client Secret
# Client secret used to authenticate with Azure apis
azure_client_secret = ""
# Azure Tenant ID
# Azure subscription id under which resources will be provisioned
azure_subscription_id = ""
# Azure tenant id used to create resources
azure_tenant_id = ""
# Password used to log in to the `admin` account on the new Rancher server
# - Must be at least 12 characters
# Admin password to use for Rancher server bootstrap
rancher_server_admin_password = ""
# Add a windows node to the workload cluster
add_windows_node = false
# Admin password to use for the Windows VM
windows_admin_password = ""
# Optional variables, uncomment to customize the quickstart
# ----------------------------------------------------------
# Add a windows node to the workload cluster
add_windows_node = false
# Azure location for all resources
# azure_location = ""
# Azure location used for all resources
azure_location = "East US"
# Prefix for all resources created by quickstart
# prefix = ""
# Version of cert-manager to install alongside Rancher (format: 0.0.0)
cert_manager_version = "1.5.3"
# Azure virtual machine instance size of all created instances
# instance_type = ""
# Docker version to install on nodes
docker_version = "19.03"
# Docker version installed on target hosts
# - Must be a version supported by the Rancher install scripts
# docker_version = ""
# Instance type used for all linux virtual machines
instance_type = "Standard_DS2_v2"
# Kubernetes version used for creating management server cluster
# - Must be supported by RKE terraform provider 1.0.1
# rancher_kubernetes_version = ""
# Prefix added to names of all resources
prefix = "quickstart"
# Kubernetes version used for creating workload cluster
# - Must be supported by RKE terraform provider 1.0.1
# workload_kubernetes_version = ""
# Kubernetes version to use for Rancher server cluster
rancher_kubernetes_version = "v1.21.8+k3s1"
# Version of cert-manager to install, used in case of older Rancher versions
# cert_manager_version = ""
# Version of Rancher to install
# rancher_version = ""
# Rancher server version (format: v0.0.0)
rancher_version = "v2.6.3"
# Kubernetes version to use for managed workload cluster
workload_kubernetes_version = "v1.20.6-rancher1-1"

View File

@@ -3,55 +3,61 @@
Two single-node RKE Kubernetes clusters will be created from two droplets running Ubuntu 20.04 and Docker.
Both instances will be accessible over SSH using the SSH keys `id_rsa` and `id_rsa.pub`.
## Variables
<!-- BEGIN_TF_DOCS -->
## Requirements
###### `do_token`
- **Required**
DigitalOcean API token used to create infrastructure
| Name | Version |
|------|---------|
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0.0 |
| <a name="requirement_digitalocean"></a> [digitalocean](#requirement\_digitalocean) | 2.16.0 |
| <a name="requirement_local"></a> [local](#requirement\_local) | 2.1.0 |
| <a name="requirement_tls"></a> [tls](#requirement\_tls) | 3.1.0 |
###### `do_region`
- Default: **`"nyc1"`**
DigitalOcean region used for all resources
## Providers
###### `prefix`
- Default: **`"quickstart"`**
Prefix added to names of all resources
| Name | Version |
|------|---------|
| <a name="provider_digitalocean"></a> [digitalocean](#provider\_digitalocean) | 2.16.0 |
| <a name="provider_local"></a> [local](#provider\_local) | 2.1.0 |
| <a name="provider_tls"></a> [tls](#provider\_tls) | 3.1.0 |
###### `droplet_size`
- Default: **`"s-2vcpu-4gb"`**
Droplet size used for all droplets
## Modules
###### `docker_version`
- Default: **`"19.03"`**
Docker version to install on nodes
| Name | Source | Version |
|------|--------|---------|
| <a name="module_rancher_common"></a> [rancher\_common](#module\_rancher\_common) | ../rancher-common | n/a |
###### `rancher_kubernetes_version`
- Default: **`"v1.21.8+k3s1"`**
Kubernetes version to use for Rancher server cluster
## Resources
See `rancher-common` module variable `rancher_kubernetes_version` for more details.
| Name | Type |
|------|------|
| [digitalocean_droplet.quickstart_node](https://registry.terraform.io/providers/digitalocean/digitalocean/2.16.0/docs/resources/droplet) | resource |
| [digitalocean_droplet.rancher_server](https://registry.terraform.io/providers/digitalocean/digitalocean/2.16.0/docs/resources/droplet) | resource |
| [digitalocean_ssh_key.quickstart_ssh_key](https://registry.terraform.io/providers/digitalocean/digitalocean/2.16.0/docs/resources/ssh_key) | resource |
| [local_file.ssh_private_key_pem](https://registry.terraform.io/providers/hashicorp/local/2.1.0/docs/resources/file) | resource |
| [local_file.ssh_public_key_openssh](https://registry.terraform.io/providers/hashicorp/local/2.1.0/docs/resources/file) | resource |
| [tls_private_key.global_key](https://registry.terraform.io/providers/hashicorp/tls/3.1.0/docs/resources/private_key) | resource |
###### `workload_kubernetes_version`
- Default: **`"v1.20.6-rancher1-1"`**
Kubernetes version to use for managed workload cluster
## Inputs
See `rancher-common` module variable `workload_kubernetes_version` for more details.
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| <a name="input_do_token"></a> [do\_token](#input\_do\_token) | DigitalOcean API token used to create infrastructure | `string` | n/a | yes |
| <a name="input_rancher_server_admin_password"></a> [rancher\_server\_admin\_password](#input\_rancher\_server\_admin\_password) | Admin password to use for Rancher server bootstrap | `string` | n/a | yes |
| <a name="input_cert_manager_version"></a> [cert\_manager\_version](#input\_cert\_manager\_version) | Version of cert-manager to install alongside Rancher (format: 0.0.0) | `string` | `"1.5.3"` | no |
| <a name="input_do_region"></a> [do\_region](#input\_do\_region) | DigitalOcean region used for all resources | `string` | `"nyc1"` | no |
| <a name="input_docker_version"></a> [docker\_version](#input\_docker\_version) | Docker version to install on nodes | `string` | `"19.03"` | no |
| <a name="input_droplet_size"></a> [droplet\_size](#input\_droplet\_size) | Droplet size used for all droplets | `string` | `"s-2vcpu-4gb"` | no |
| <a name="input_prefix"></a> [prefix](#input\_prefix) | Prefix added to names of all resources | `string` | `"quickstart"` | no |
| <a name="input_rancher_kubernetes_version"></a> [rancher\_kubernetes\_version](#input\_rancher\_kubernetes\_version) | Kubernetes version to use for Rancher server cluster | `string` | `"v1.21.8+k3s1"` | no |
| <a name="input_rancher_version"></a> [rancher\_version](#input\_rancher\_version) | Rancher server version (format: v0.0.0) | `string` | `"v2.6.3"` | no |
| <a name="input_workload_kubernetes_version"></a> [workload\_kubernetes\_version](#input\_workload\_kubernetes\_version) | Kubernetes version to use for managed workload cluster | `string` | `"v1.20.6-rancher1-1"` | no |
###### `cert_manager_version`
- Default: **`"1.5.3"`**
Version of cert-manager to install alongside Rancher (format: 0.0.0)
See `rancher-common` module variable `cert_manager_version` for more details.
###### `rancher_version`
- Default: **`"v2.6.3"`**
Rancher server version (format v0.0.0)
See `rancher-common` module variable `rancher_version` for more details.
###### `rancher_server_admin_password`
- **Required**
Admin password to use for Rancher server bootstrap
See `rancher-common` module variable `admin_password` for more details.
## Outputs
| Name | Description |
|------|-------------|
| <a name="output_rancher_node_ip"></a> [rancher\_node\_ip](#output\_rancher\_node\_ip) | n/a |
| <a name="output_rancher_server_url"></a> [rancher\_server\_url](#output\_rancher\_server\_url) | n/a |
| <a name="output_workload_node_ip"></a> [workload\_node\_ip](#output\_workload\_node\_ip) | n/a |
<!-- END_TF_DOCS -->

View File

@@ -1,42 +1,30 @@
# Required variables
# - Fill in before beginning quickstart
# ==========================================================
# DigitalOcean API token
# DigitalOcean API token used to create infrastructure
do_token = ""
# Password used to log in to the `admin` account on the new Rancher server
# - Must be at least 12 characters
# Admin password to use for Rancher server bootstrap
rancher_server_admin_password = ""
# Version of cert-manager to install alongside Rancher (format: 0.0.0)
cert_manager_version = "1.5.3"
# Optional variables
# - Uncomment variables to customize quickstart
# ----------------------------------------------------------
# DigitalOcean region used for all resources
do_region = "nyc1"
# DigitalOcean region for all resources
# do_region = ""
# Docker version to install on nodes
docker_version = "19.03"
# Prefix for all resources created by quickstart
# prefix = ""
# Droplet size used for all droplets
droplet_size = "s-2vcpu-4gb"
# Size of all created droplets
# droplet_size = ""
# Prefix added to names of all resources
prefix = "quickstart"
# Docker version installed on target hosts
# - Must be a version supported by the Rancher install scripts
# docker_version = ""
# Kubernetes version to use for Rancher server cluster
rancher_kubernetes_version = "v1.21.8+k3s1"
# Kubernetes version used for creating management server cluster
# - Must be supported by RKE terraform provider 1.0.1
# rancher_kubernetes_version = ""
# Rancher server version (format: v0.0.0)
rancher_version = "v2.6.3"
# Kubernetes version used for creating workload cluster
# - Must be supported by RKE terraform provider 1.0.1
# workload_kubernetes_version = ""
# Version of cert-manager to install, used in case of older Rancher versions
# cert_manager_version = ""
# Version of Rancher to install
# rancher_version = ""
# Kubernetes version to use for managed workload cluster
workload_kubernetes_version = "v1.20.6-rancher1-1"

View File

@@ -4,59 +4,66 @@ Two single-node RKE Kubernetes clusters will be created from two Compute Engine
Both instances will have wide-open security groups and will be accessible over SSH using the SSH keys
`id_rsa` and `id_rsa.pub`.
## Variables
<!-- BEGIN_TF_DOCS -->
## Requirements
###### `gcp_account_json`
- **Required**
File path and name of the service account file used by which GCP resources are provisioned
| Name | Version |
|------|---------|
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0.0 |
| <a name="requirement_google"></a> [google](#requirement\_google) | 4.3.0 |
| <a name="requirement_local"></a> [local](#requirement\_local) | 2.1.0 |
| <a name="requirement_tls"></a> [tls](#requirement\_tls) | 3.1.0 |
###### `gcp_project`
- **Required**
GCP project under which all resources will be deployed
## Providers
###### `gcp_region`
- Default: **`"us-east4"`**
GCP region used for all resources
| Name | Version |
|------|---------|
| <a name="provider_google"></a> [google](#provider\_google) | 4.3.0 |
| <a name="provider_local"></a> [local](#provider\_local) | 2.1.0 |
| <a name="provider_tls"></a> [tls](#provider\_tls) | 3.1.0 |
###### `prefix`
- Default: **`"quickstart"`**
Prefix added to names of all resources
## Modules
###### `machine_type`
- Default: **`"n1-standard-2"`**
Machine type used for all compute instances
| Name | Source | Version |
|------|--------|---------|
| <a name="module_rancher_common"></a> [rancher\_common](#module\_rancher\_common) | ../rancher-common | n/a |
###### `docker_version`
- Default: **`"19.03"`**
Docker version to install on nodes
## Resources
###### `rancher_kubernetes_version`
- Default: **`"v1.21.8+k3s1"`**
Kubernetes version to use for Rancher server cluster
| Name | Type |
|------|------|
| [google_compute_address.quickstart_node_address](https://registry.terraform.io/providers/hashicorp/google/4.3.0/docs/resources/compute_address) | resource |
| [google_compute_address.rancher_server_address](https://registry.terraform.io/providers/hashicorp/google/4.3.0/docs/resources/compute_address) | resource |
| [google_compute_firewall.rancher_fw_allowall](https://registry.terraform.io/providers/hashicorp/google/4.3.0/docs/resources/compute_firewall) | resource |
| [google_compute_instance.quickstart_node](https://registry.terraform.io/providers/hashicorp/google/4.3.0/docs/resources/compute_instance) | resource |
| [google_compute_instance.rancher_server](https://registry.terraform.io/providers/hashicorp/google/4.3.0/docs/resources/compute_instance) | resource |
| [local_file.ssh_private_key_pem](https://registry.terraform.io/providers/hashicorp/local/2.1.0/docs/resources/file) | resource |
| [local_file.ssh_public_key_openssh](https://registry.terraform.io/providers/hashicorp/local/2.1.0/docs/resources/file) | resource |
| [tls_private_key.global_key](https://registry.terraform.io/providers/hashicorp/tls/3.1.0/docs/resources/private_key) | resource |
| [google_compute_image.sles](https://registry.terraform.io/providers/hashicorp/google/4.3.0/docs/data-sources/compute_image) | data source |
See `rancher-common` module variable `rancher_kubernetes_version` for more details.
## Inputs
###### `workload_kubernetes_version`
- Default: **`"v1.20.6-rancher1-1"`**
Kubernetes version to use for managed workload cluster
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| <a name="input_gcp_account_json"></a> [gcp\_account\_json](#input\_gcp\_account\_json) | File path and name of service account access token file. | `string` | n/a | yes |
| <a name="input_gcp_project"></a> [gcp\_project](#input\_gcp\_project) | GCP project in which the quickstart will be deployed. | `string` | n/a | yes |
| <a name="input_rancher_server_admin_password"></a> [rancher\_server\_admin\_password](#input\_rancher\_server\_admin\_password) | Admin password to use for Rancher server bootstrap | `string` | n/a | yes |
| <a name="input_cert_manager_version"></a> [cert\_manager\_version](#input\_cert\_manager\_version) | Version of cert-manager to install alongside Rancher (format: 0.0.0) | `string` | `"1.5.3"` | no |
| <a name="input_docker_version"></a> [docker\_version](#input\_docker\_version) | Docker version to install on nodes | `string` | `"19.03"` | no |
| <a name="input_gcp_region"></a> [gcp\_region](#input\_gcp\_region) | GCP region used for all resources. | `string` | `"us-east4"` | no |
| <a name="input_gcp_zone"></a> [gcp\_zone](#input\_gcp\_zone) | GCP zone used for all resources. | `string` | `"us-east4-a"` | no |
| <a name="input_machine_type"></a> [machine\_type](#input\_machine\_type) | Machine type used for all compute instances | `string` | `"n1-standard-2"` | no |
| <a name="input_prefix"></a> [prefix](#input\_prefix) | Prefix added to names of all resources | `string` | `"quickstart"` | no |
| <a name="input_rancher_kubernetes_version"></a> [rancher\_kubernetes\_version](#input\_rancher\_kubernetes\_version) | Kubernetes version to use for Rancher server cluster | `string` | `"v1.21.8+k3s1"` | no |
| <a name="input_rancher_version"></a> [rancher\_version](#input\_rancher\_version) | Rancher server version (format: v0.0.0) | `string` | `"v2.6.3"` | no |
| <a name="input_workload_kubernetes_version"></a> [workload\_kubernetes\_version](#input\_workload\_kubernetes\_version) | Kubernetes version to use for managed workload cluster | `string` | `"v1.20.6-rancher1-1"` | no |
See `rancher-common` module variable `workload_kubernetes_version` for more details.
###### `cert_manager_version`
- Default: **`"1.5.3"`**
Version of cert-manager to install alongside Rancher (format: 0.0.0)
See `rancher-common` module variable `cert_manager_version` for more details.
###### `rancher_version`
- Default: **`"v2.6.3"`**
Rancher server version (format v0.0.0)
See `rancher-common` module variable `rancher_version` for more details.
###### `rancher_server_admin_password`
- **Required**
Admin password to use for Rancher server bootstrap
See `rancher-common` module variable `admin_password` for more details.
## Outputs
| Name | Description |
|------|-------------|
| <a name="output_rancher_node_ip"></a> [rancher\_node\_ip](#output\_rancher\_node\_ip) | n/a |
| <a name="output_rancher_server_url"></a> [rancher\_server\_url](#output\_rancher\_server\_url) | n/a |
| <a name="output_workload_node_ip"></a> [workload\_node\_ip](#output\_workload\_node\_ip) | n/a |
<!-- END_TF_DOCS -->

View File

@@ -1,48 +1,36 @@
# Required variables
# - Fill in before beginning quickstart
# ==========================================================
# Account JSON used to access GCP services
# - Specify full path and name (e.g. ~/.gcp/account.json)
# File path and name of service account access token file.
gcp_account_json = ""
# Project to deploy resources into
# GCP project in which the quickstart will be deployed.
gcp_project = ""
# Password used to log in to the `admin` account on the new Rancher server
# - Must be at least 12 characters
# Admin password to use for Rancher server bootstrap
rancher_server_admin_password = ""
# Optional variables, uncomment to customize the quickstart
# ----------------------------------------------------------
# Version of cert-manager to install alongside Rancher (format: 0.0.0)
cert_manager_version = "1.5.3"
# GCP region for all resources
# gcp_region = ""
# Docker version to install on nodes
docker_version = "19.03"
# GCP zone for all resources
# gcp_zone = ""
# GCP region used for all resources.
gcp_region = "us-east4"
# Prefix for all resources created by quickstart
# prefix = ""
# GCP zone used for all resources.
gcp_zone = "us-east4-a"
# Compute instance size of all created instances
# machine_type = ""
# Machine type used for all compute instances
machine_type = "n1-standard-2"
# Docker version installed on target hosts
# - Must be a version supported by the Rancher install scripts
# docker_version = ""
# Prefix added to names of all resources
prefix = "quickstart"
# Kubernetes version used for creating management server cluster
# - Must be supported by RKE terraform provider 1.0.1
# rancher_kubernetes_version = ""
# Kubernetes version to use for Rancher server cluster
rancher_kubernetes_version = "v1.21.8+k3s1"
# Kubernetes version used for creating workload cluster
# - Must be supported by RKE terraform provider 1.0.1
# workload_kubernetes_version = ""
# Version of cert-manager to install, used in case of older Rancher versions
# cert_manager_version = ""
# Version of Rancher to install
# rancher_version = ""
# Rancher server version (format: v0.0.0)
rancher_version = "v2.6.3"
# Kubernetes version to use for managed workload cluster
workload_kubernetes_version = "v1.20.6-rancher1-1"

View File

@@ -3,67 +3,66 @@
Two single-node RKE Kubernetes clusters will be created from two instances running Ubuntu 20.04 and Docker.
Both instances will be accessible over SSH using the auto-generated SSH keys `id_rsa` and `id_rsa.pub`.
## Variables
<!-- BEGIN_TF_DOCS -->
## Requirements
###### `hcloud_token`
- **Required**
Hetzner Cloud API token used to create infrastructure
| Name | Version |
|------|---------|
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0.0 |
| <a name="requirement_hcloud"></a> [hcloud](#requirement\_hcloud) | 1.32.1 |
| <a name="requirement_local"></a> [local](#requirement\_local) | 2.1.0 |
| <a name="requirement_tls"></a> [tls](#requirement\_tls) | 3.1.0 |
###### `hcloud_location`
- Default: **`"fsn1"`**
Hetzner Location used for all resources
## Providers
###### `network_zone`
- Default: **`"eu-central"`**
Zone to create the network in
| Name | Version |
|------|---------|
| <a name="provider_hcloud"></a> [hcloud](#provider\_hcloud) | 1.32.1 |
| <a name="provider_local"></a> [local](#provider\_local) | 2.1.0 |
| <a name="provider_tls"></a> [tls](#provider\_tls) | 3.1.0 |
###### `network_cidr`
- Default: **`"10.0.0.0/16"`**
Network to create for private communication
## Modules
###### `network_cidr`
- Default: **`"10.0.1.0/24"`**
Subnet to create for private communication. Must be part of the CIDR defined in `network_cidr`.
| Name | Source | Version |
|------|--------|---------|
| <a name="module_rancher_common"></a> [rancher\_common](#module\_rancher\_common) | ../rancher-common | n/a |
###### `prefix`
- Default: **`"quickstart"`**
Prefix added to names of all resources
## Resources
###### `instance_type`
- Default: **`"cx21"`**
Type of instance to be used for all instances
| Name | Type |
|------|------|
| [hcloud_network.private](https://registry.terraform.io/providers/hetznercloud/hcloud/1.32.1/docs/resources/network) | resource |
| [hcloud_network_subnet.private](https://registry.terraform.io/providers/hetznercloud/hcloud/1.32.1/docs/resources/network_subnet) | resource |
| [hcloud_server.quickstart_node](https://registry.terraform.io/providers/hetznercloud/hcloud/1.32.1/docs/resources/server) | resource |
| [hcloud_server.rancher_server](https://registry.terraform.io/providers/hetznercloud/hcloud/1.32.1/docs/resources/server) | resource |
| [hcloud_ssh_key.quickstart_ssh_key](https://registry.terraform.io/providers/hetznercloud/hcloud/1.32.1/docs/resources/ssh_key) | resource |
| [local_file.ssh_private_key_pem](https://registry.terraform.io/providers/hashicorp/local/2.1.0/docs/resources/file) | resource |
| [local_file.ssh_public_key_openssh](https://registry.terraform.io/providers/hashicorp/local/2.1.0/docs/resources/file) | resource |
| [tls_private_key.global_key](https://registry.terraform.io/providers/hashicorp/tls/3.1.0/docs/resources/private_key) | resource |
###### `docker_version`
- Default: **`"19.03"`**
Docker version to install on nodes
## Inputs
###### `rancher_kubernetes_version`
- Default: **`"v1.21.8+k3s1"`**
Kubernetes version to use for Rancher server cluster
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| <a name="input_hcloud_token"></a> [hcloud\_token](#input\_hcloud\_token) | Hetzner Cloud API token used to create infrastructure | `string` | n/a | yes |
| <a name="input_rancher_server_admin_password"></a> [rancher\_server\_admin\_password](#input\_rancher\_server\_admin\_password) | Admin password to use for Rancher server bootstrap | `string` | n/a | yes |
| <a name="input_cert_manager_version"></a> [cert\_manager\_version](#input\_cert\_manager\_version) | Version of cert-manager to install alongside Rancher (format: 0.0.0) | `string` | `"1.5.3"` | no |
| <a name="input_docker_version"></a> [docker\_version](#input\_docker\_version) | Docker version to install on nodes | `string` | `"19.03"` | no |
| <a name="input_hcloud_location"></a> [hcloud\_location](#input\_hcloud\_location) | Hetzner location used for all resources | `string` | `"fsn1"` | no |
| <a name="input_instance_type"></a> [instance\_type](#input\_instance\_type) | Type of instance to be used for all instances | `string` | `"cx21"` | no |
| <a name="input_network_cidr"></a> [network\_cidr](#input\_network\_cidr) | Network to create for private communication | `string` | `"10.0.0.0/8"` | no |
| <a name="input_network_ip_range"></a> [network\_ip\_range](#input\_network\_ip\_range) | Subnet to create for private communication. Must be part of the CIDR defined in `network_cidr`. | `string` | `"10.0.1.0/24"` | no |
| <a name="input_network_zone"></a> [network\_zone](#input\_network\_zone) | Zone to create the network in | `string` | `"eu-central"` | no |
| <a name="input_prefix"></a> [prefix](#input\_prefix) | Prefix added to names of all resources | `string` | `"quickstart"` | no |
| <a name="input_rancher_kubernetes_version"></a> [rancher\_kubernetes\_version](#input\_rancher\_kubernetes\_version) | Kubernetes version to use for Rancher server cluster | `string` | `"v1.21.8+k3s1"` | no |
| <a name="input_rancher_version"></a> [rancher\_version](#input\_rancher\_version) | Rancher server version (format: v0.0.0) | `string` | `"v2.6.3"` | no |
| <a name="input_workload_kubernetes_version"></a> [workload\_kubernetes\_version](#input\_workload\_kubernetes\_version) | Kubernetes version to use for managed workload cluster | `string` | `"v1.20.6-rancher1-1"` | no |
See `rancher-common` module variable `rancher_kubernetes_version` for more details.
###### `workload_kubernetes_version`
- Default: **`"v1.20.12-rancher1-1"`**
Kubernetes version to use for managed workload cluster
See `rancher-common` module variable `workload_kubernetes_version` for more details.
###### `cert_manager_version`
- Default: **`"1.5.3"`**
Version of cert-manager to install alongside Rancher (format: 0.0.0)
See `rancher-common` module variable `cert_manager_version` for more details.
###### `rancher_version`
- Default: **`"v2.6.3"`**
Rancher server version (format v0.0.0)
See `rancher-common` module variable `rancher_version` for more details.
###### `rancher_server_admin_password`
- **Required**
Admin password to use for Rancher server bootstrap
See `rancher-common` module variable `admin_password` for more details.
## Outputs
| Name | Description |
|------|-------------|
| <a name="output_rancher_node_ip"></a> [rancher\_node\_ip](#output\_rancher\_node\_ip) | n/a |
| <a name="output_rancher_server_url"></a> [rancher\_server\_url](#output\_rancher\_server\_url) | n/a |
| <a name="output_workload_node_ip"></a> [workload\_node\_ip](#output\_workload\_node\_ip) | n/a |
<!-- END_TF_DOCS -->

View File

@@ -1,52 +1,39 @@
# Required variables
# - Fill in before beginning quickstart
# ==========================================================
# Hetzner Cloud API token
# Hetzner Cloud API token used to create infrastructure
hcloud_token = ""
# Password used to log in to the `admin` account on the new Rancher server
# - Must be at least 12 characters
# Admin password to use for Rancher server bootstrap
rancher_server_admin_password = ""
# Version of cert-manager to install alongside Rancher (format: 0.0.0)
cert_manager_version = "1.5.3"
# Optional variables
# - Uncomment variables to customize quickstart
# ----------------------------------------------------------
# Docker version to install on nodes
docker_version = "19.03"
# Location to use for all resources
# hcloud_location = ""
# Hetzner location used for all resources
hcloud_location = "fsn1"
# Prefix for all resources created by quickstart
# prefix = ""
# Type of instance to be used for all instances
instance_type = "cx21"
# Type of all created instances
# instance_type = ""
# Network to create for private communication
network_cidr = "10.0.0.0/8"
# Subnet to create for private communication. Must be part of the CIDR defined in `network_cidr`.
network_ip_range = "10.0.1.0/24"
# Zone to create the network in
# network_zone = ""
network_zone = "eu-central"
# Subnet to create for private communication
# network_cidr = ""
# Prefix added to names of all resources
prefix = "quickstart"
# Range to allocate IPs from.
# - Must be a subnet of the ip_range of the Network and must not overlap with any other subnets or with any destinations in routes.
# network_ip_range = ""
# Kubernetes version to use for Rancher server cluster
rancher_kubernetes_version = "v1.21.8+k3s1"
# Docker version installed on target hosts
# - Must be a version supported by the Rancher install scripts
# docker_version = ""
# Rancher server version (format: v0.0.0)
rancher_version = "v2.6.3"
# Kubernetes version used for creating management server cluster
# - Must be supported by RKE terraform provider 1.0.1
# rancher_kubernetes_version = ""
# Kubernetes version used for creating workload cluster
# - Must be supported by RKE terraform provider 1.0.1
# workload_kubernetes_version = ""
# Version of cert-manager to install, used in case of older Rancher versions
# cert_manager_version = ""
# Version of Rancher to install
# rancher_version = ""
# Kubernetes version to use for managed workload cluster
workload_kubernetes_version = "v1.20.6-rancher1-1"

View File

@@ -3,55 +3,62 @@
Two single-node RKE Kubernetes clusters will be created from two linodes running Ubuntu 18.04 and Docker.
Both instances will be accessible over SSH using the SSH keys `id_rsa` and `id_rsa.pub`.
## Variables
<!-- BEGIN_TF_DOCS -->
## Requirements
###### `linode_token`
- **Required**
Linode API token used to create infrastructure
| Name | Version |
|------|---------|
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0.0 |
| <a name="requirement_linode"></a> [linode](#requirement\_linode) | 1.25.0 |
| <a name="requirement_local"></a> [local](#requirement\_local) | 2.1.0 |
| <a name="requirement_tls"></a> [tls](#requirement\_tls) | 3.1.0 |
###### `linode_region`
- Default: **`"eu-central"`**
Linode region used for all resources
## Providers
###### `prefix`
- Default: **`"quickstart"`**
Prefix added to names of all resources
| Name | Version |
|------|---------|
| <a name="provider_linode"></a> [linode](#provider\_linode) | 1.25.0 |
| <a name="provider_local"></a> [local](#provider\_local) | 2.1.0 |
| <a name="provider_tls"></a> [tls](#provider\_tls) | 3.1.0 |
###### `linode_size`
- Default: **`"g6-standard-2"`**
Linode size used for all linode
## Modules
###### `docker_version`
- Default: **`"19.03"`**
Docker version to install on nodes
| Name | Source | Version |
|------|--------|---------|
| <a name="module_rancher_common"></a> [rancher\_common](#module\_rancher\_common) | ../rancher-common | n/a |
###### `rancher_kubernetes_version`
- Default: **`"v1.21.8+k3s1"`**
Kubernetes version to use for Rancher server cluster
## Resources
See `rancher-common` module variable `rancher_kubernetes_version` for more details.
| Name | Type |
|------|------|
| [linode_instance.quickstart_node](https://registry.terraform.io/providers/linode/linode/1.25.0/docs/resources/instance) | resource |
| [linode_instance.rancher_server](https://registry.terraform.io/providers/linode/linode/1.25.0/docs/resources/instance) | resource |
| [linode_sshkey.quickstart_ssh_key](https://registry.terraform.io/providers/linode/linode/1.25.0/docs/resources/sshkey) | resource |
| [linode_stackscript.quickstart_node](https://registry.terraform.io/providers/linode/linode/1.25.0/docs/resources/stackscript) | resource |
| [local_file.ssh_private_key_pem](https://registry.terraform.io/providers/hashicorp/local/2.1.0/docs/resources/file) | resource |
| [local_file.ssh_public_key_openssh](https://registry.terraform.io/providers/hashicorp/local/2.1.0/docs/resources/file) | resource |
| [tls_private_key.global_key](https://registry.terraform.io/providers/hashicorp/tls/3.1.0/docs/resources/private_key) | resource |
###### `workload_kubernetes_version`
- Default: **`"v1.20.6-rancher1-1"`**
Kubernetes version to use for managed workload cluster
## Inputs
See `rancher-common` module variable `workload_kubernetes_version` for more details.
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| <a name="input_linode_token"></a> [linode\_token](#input\_linode\_token) | Linode API token used to create infrastructure | `string` | n/a | yes |
| <a name="input_rancher_server_admin_password"></a> [rancher\_server\_admin\_password](#input\_rancher\_server\_admin\_password) | Admin password to use for Rancher server bootstrap | `string` | n/a | yes |
| <a name="input_cert_manager_version"></a> [cert\_manager\_version](#input\_cert\_manager\_version) | Version of cert-manager to install alongside Rancher (format: 0.0.0) | `string` | `"1.5.3"` | no |
| <a name="input_docker_version"></a> [docker\_version](#input\_docker\_version) | Docker version to install on nodes | `string` | `"19.03"` | no |
| <a name="input_linode_region"></a> [linode\_region](#input\_linode\_region) | Linode region used for all resources | `string` | `"eu-central"` | no |
| <a name="input_linode_type"></a> [linode\_type](#input\_linode\_type) | Linode type used for all droplets | `string` | `"g6-standard-2"` | no |
| <a name="input_prefix"></a> [prefix](#input\_prefix) | Prefix added to names of all resources | `string` | `"quickstart"` | no |
| <a name="input_rancher_kubernetes_version"></a> [rancher\_kubernetes\_version](#input\_rancher\_kubernetes\_version) | Kubernetes version to use for Rancher server cluster | `string` | `"v1.21.8+k3s1"` | no |
| <a name="input_rancher_version"></a> [rancher\_version](#input\_rancher\_version) | Rancher server version (format: v0.0.0) | `string` | `"v2.6.3"` | no |
| <a name="input_workload_kubernetes_version"></a> [workload\_kubernetes\_version](#input\_workload\_kubernetes\_version) | Kubernetes version to use for managed workload cluster | `string` | `"v1.20.6-rancher1-1"` | no |
###### `cert_manager_version`
- Default: **`"1.5.3"`**
Version of cert-manager to install alongside Rancher (format: 0.0.0)
See `rancher-common` module variable `cert_manager_version` for more details.
###### `rancher_version`
- Default: **`"v2.6.3"`**
Rancher server version (format v0.0.0)
See `rancher-common` module variable `rancher_version` for more details.
###### `rancher_server_admin_password`
- **Required**
Admin password to use for Rancher server bootstrap
See `rancher-common` module variable `admin_password` for more details.
## Outputs
| Name | Description |
|------|-------------|
| <a name="output_rancher_node_ip"></a> [rancher\_node\_ip](#output\_rancher\_node\_ip) | n/a |
| <a name="output_rancher_server_url"></a> [rancher\_server\_url](#output\_rancher\_server\_url) | n/a |
| <a name="output_workload_node_ip"></a> [workload\_node\_ip](#output\_workload\_node\_ip) | n/a |
<!-- END_TF_DOCS -->

View File

@@ -1,42 +1,30 @@
# Required variables
# - Fill in before beginning quickstart
# ==========================================================
# Linode API token
# Linode API token used to create infrastructure
linode_token = ""
# Password used to log in to the `admin` account on the new Rancher server
# - Must be at least 12 characters
# Admin password to use for Rancher server bootstrap
rancher_server_admin_password = ""
# Version of cert-manager to install alongside Rancher (format: 0.0.0)
cert_manager_version = "1.5.3"
# Optional variables
# - Uncomment variables to customize quickstart
# ----------------------------------------------------------
# Docker version to install on nodes
docker_version = "19.03"
# DigitalOcean region for all resources
# linode_region = ""
# Linode region used for all resources
linode_region = "eu-central"
# Prefix for all resources created by quickstart
# prefix = ""
# Linode type used for all droplets
linode_type = "g6-standard-2"
# Size of all created linodes
# linode_type = ""
# Prefix added to names of all resources
prefix = "quickstart"
# Docker version installed on target hosts
# - Must be a version supported by the Rancher install scripts
# docker_version = ""
# Kubernetes version to use for Rancher server cluster
rancher_kubernetes_version = "v1.21.8+k3s1"
# Kubernetes version used for creating management server cluster
# - Must be supported by RKE terraform provider 1.0.1
# rancher_kubernetes_version = ""
# Rancher server version (format: v0.0.0)
rancher_version = "v2.6.3"
# Kubernetes version used for creating workload cluster
# - Must be supported by RKE terraform provider 1.0.1
# workload_kubernetes_version = ""
# Version of cert-manager to install, used in case of older Rancher versions
# cert_manager_version = ""
# Version of Rancher to install
# rancher_version = ""
# Kubernetes version to use for managed workload cluster
workload_kubernetes_version = "v1.20.6-rancher1-1"

79
rancher-common/.terraform.lock.hcl generated Normal file
View File

@@ -0,0 +1,79 @@
# This file is maintained automatically by "terraform init".
# Manual edits may be lost in future updates.
provider "registry.terraform.io/hashicorp/helm" {
version = "2.4.1"
constraints = "2.4.1"
hashes = [
"h1:CLb4n9f/hLyqqq0zbc+h5SuNOB7KnO65qOOb+ohwsKA=",
"zh:07517b24ea2ce4a1d3be3b88c3efc7fb452cd97aea8fac93ca37a08a8ec06e14",
"zh:11ef6118ed03a1b40ff66adfe21b8707ece0568dae1347ddfbcff8452c0655d5",
"zh:1ae07e9cc6b088a6a68421642c05e2fa7d00ed03e9401e78c258cf22a239f526",
"zh:1c5b4cd44033a0d7bf7546df930c55aa41db27b70b3bca6d145faf9b9a2da772",
"zh:256413132110ddcb0c3ea17c7b01123ad2d5b70565848a77c5ccc22a3f32b0dd",
"zh:4ab46fd9aadddef26604382bc9b49100586647e63ef6384e0c0c3f010ff2f66e",
"zh:5a35d23a9f08c36fceda3cef7ce2c7dc5eca32e5f36494de695e09a5007122f0",
"zh:8e9823a1e5b985b63fe283b755a821e5011a58112447d42fb969c7258ed57ed3",
"zh:8f79722eba9bf77d341edf48a1fd51a52d93ec31d9cac9ba8498a3a061ea4a7f",
"zh:b2ea782848b10a343f586ba8ee0cf4d7ff65aa2d4b144eea5bbd8f9801b54c67",
"zh:e72d1ccf8a75d8e8456c6bb4d843fd4deb0e962ad8f167fa84cf17f12c12304e",
]
}
provider "registry.terraform.io/hashicorp/local" {
version = "2.1.0"
constraints = "2.1.0"
hashes = [
"h1:KfieWtVyGWwplSoLIB5usKAUnrIkDQBkWaR5TI+4WYg=",
"zh:0f1ec65101fa35050978d483d6e8916664b7556800348456ff3d09454ac1eae2",
"zh:36e42ac19f5d68467aacf07e6adcf83c7486f2e5b5f4339e9671f68525fc87ab",
"zh:6db9db2a1819e77b1642ec3b5e95042b202aee8151a0256d289f2e141bf3ceb3",
"zh:719dfd97bb9ddce99f7d741260b8ece2682b363735c764cac83303f02386075a",
"zh:7598bb86e0378fd97eaa04638c1a4c75f960f62f69d3662e6d80ffa5a89847fe",
"zh:ad0a188b52517fec9eca393f1e2c9daea362b33ae2eb38a857b6b09949a727c1",
"zh:c46846c8df66a13fee6eff7dc5d528a7f868ae0dcf92d79deaac73cc297ed20c",
"zh:dc1a20a2eec12095d04bf6da5321f535351a594a636912361db20eb2a707ccc4",
"zh:e57ab4771a9d999401f6badd8b018558357d3cbdf3d33cc0c4f83e818ca8e94b",
"zh:ebdcde208072b4b0f8d305ebf2bfdc62c926e0717599dcf8ec2fd8c5845031c3",
"zh:ef34c52b68933bedd0868a13ccfd59ff1c820f299760b3c02e008dc95e2ece91",
]
}
provider "registry.terraform.io/loafoe/ssh" {
version = "1.0.1"
constraints = "1.0.1"
hashes = [
"h1:U39yuaapulq3oNqpU1TxOQe1zVWGmL3D6kNv6gL5NHY=",
"zh:075aefc3618270aa6f581b380c7601cb13cedb03ed117db0832e4128dab2c0f8",
"zh:0c1c58f144f8618d8a25591e83f617773b0806a488682e48ec14acea4095a8b5",
"zh:20f1f670a9314e4b6d2d8ed3b8e01b9c3e77df7b3d50a22827e6f119ddb06b5f",
"zh:40c05a7dd30731b613912c0cd9895913f7c137a75489c8c6622a35bb6d752862",
"zh:565a597fd5b6d60bbcb6093304851ee5885588d215af582598acc7e63796dc4d",
"zh:771aa19144da01b96783cfd07006c231ec96b72d403d96888222f3b7973775d8",
"zh:84e422645bceee2398d25f3412917e22ff38545a5649a4c4723ed7de4855b249",
"zh:92863ab038304907253a9467c176ec1a78ca06b79313ffa3daea8dc9e2c0fb48",
"zh:a137be3de2d6299992eb3a337f6b29325a344b86f7fb1ff317098cf9a89f659f",
"zh:abdd03c95d73f964c59575abaa51a5b0d1d90c2950911f5f6af1103d9b94b3c5",
"zh:d7dc58d2d45d3042bb674800062a2ffe1436d4574717f36aaaa4b9ded87dce60",
]
}
provider "registry.terraform.io/rancher/rancher2" {
version = "1.22.2"
constraints = "1.22.2"
hashes = [
"h1:li+b8fyJ+4DBBRE4rhAvFkm1xQ1aQEduWo2zMlHhHDQ=",
"zh:1cfe57e114f15db4bee6d5ed2f15c4712dbdd03e523ade72898fce838c849bc5",
"zh:220079903c21bbe1bccab5f166c082909b4eb9cec04554df37201ee9ec792e59",
"zh:361ef564ef748162e1f4f1d8590d1ef1ffec1d9ab11ffcda621cc2be8a49a013",
"zh:3a2f4cd19fefc7ed4bc12f41d7b206068bb797eb5be032b06f0fe5563c2783d1",
"zh:47560323ca26193dbf09f70cce2025fdfb19e06a2cf497ac2523a9fb084031ca",
"zh:4d905397320d3b9c20edad57bd87c54bbdd0c4a49298a3f3a7b69b9dfd013b2d",
"zh:a816d940ae6b6ac91e0c9fe46aca6bb76c0542fc2e160c92e4602fee92bfd91d",
"zh:b7a2c6d49f823796c5fa64e3119e39798550287c4ec89e844bdebc6b7c3b0e7a",
"zh:cc12278062a6e241dafb83d85f7bd8b26a6b08cdadd87b5489a02d2111e41319",
"zh:dc96b3e655217ae51abb88febfe840ddd3e25e26409abebc215fda5a78c23f8f",
"zh:e0ee416c2db05b0ce9e35692b685285c7cdc45fa13bb7b1063b56f188e97c717",
"zh:e1185a1d89736c8061557d9e28e391372eaf0d00f32f5efe6a9977c79c69a6c4",
]
}

View File

@@ -5,64 +5,66 @@ specific cloud provider. RKE, Kubernetes, Helm, and Rancher providers are used
given the necessary information about the infrastructure created in a cloud
provider.
## Variables
<!-- BEGIN_TF_DOCS -->
## Requirements
###### `node_public_ip`
- **Required**
Public IP of compute node for Rancher cluster
| Name | Version |
|------|---------|
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0.0 |
| <a name="requirement_helm"></a> [helm](#requirement\_helm) | 2.4.1 |
| <a name="requirement_local"></a> [local](#requirement\_local) | 2.1.0 |
| <a name="requirement_rancher2"></a> [rancher2](#requirement\_rancher2) | 1.22.2 |
| <a name="requirement_ssh"></a> [ssh](#requirement\_ssh) | 1.0.1 |
###### `node_internal_ip`
- Default: **`""`**
Internal IP of compute node for Rancher cluster
## Providers
###### `node_username`
- **Required**
Username used for SSH access to the Rancher server cluster node
| Name | Version |
|------|---------|
| <a name="provider_helm"></a> [helm](#provider\_helm) | 2.4.1 |
| <a name="provider_local"></a> [local](#provider\_local) | 2.1.0 |
| <a name="provider_rancher2.admin"></a> [rancher2.admin](#provider\_rancher2.admin) | 1.22.2 |
| <a name="provider_rancher2.bootstrap"></a> [rancher2.bootstrap](#provider\_rancher2.bootstrap) | 1.22.2 |
| <a name="provider_ssh"></a> [ssh](#provider\_ssh) | 1.0.1 |
###### `ssh_private_key_pem`
- **Required**
Private key used for SSH access to the Rancher server cluster node
## Modules
Expected to be in PEM format.
No modules.
###### `rancher_kubernetes_version`
- Default: **`"v1.21.8+k3s1"`**
Kubernetes version to use for Rancher server cluster
## Resources
###### `cert_manager_version`
- Default: **`"1.5.3"`**
Version of cert-manager to install alongside Rancher (format: `0.0.0`)
| Name | Type |
|------|------|
| [helm_release.cert_manager](https://registry.terraform.io/providers/hashicorp/helm/2.4.1/docs/resources/release) | resource |
| [helm_release.rancher_server](https://registry.terraform.io/providers/hashicorp/helm/2.4.1/docs/resources/release) | resource |
| [local_file.kube_config_server_yaml](https://registry.terraform.io/providers/hashicorp/local/2.1.0/docs/resources/file) | resource |
| [local_file.kube_config_workload_yaml](https://registry.terraform.io/providers/hashicorp/local/2.1.0/docs/resources/file) | resource |
| [rancher2_bootstrap.admin](https://registry.terraform.io/providers/rancher/rancher2/1.22.2/docs/resources/bootstrap) | resource |
| [rancher2_cluster.quickstart_workload](https://registry.terraform.io/providers/rancher/rancher2/1.22.2/docs/resources/cluster) | resource |
| [ssh_resource.install_k3s](https://registry.terraform.io/providers/loafoe/ssh/1.0.1/docs/resources/resource) | resource |
| [ssh_resource.retrieve_config](https://registry.terraform.io/providers/loafoe/ssh/1.0.1/docs/resources/resource) | resource |
Available versions are found in `files/cert-manager`, where a supported version
is indicated by the presence of `crds-${var.cert_manager_version}.yaml`.
## Inputs
###### `rancher_version`
- Default: **`"v2.6.3"`**
Rancher server version (format `v0.0.0`)
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| <a name="input_admin_password"></a> [admin\_password](#input\_admin\_password) | Admin password to use for Rancher server bootstrap | `string` | n/a | yes |
| <a name="input_node_public_ip"></a> [node\_public\_ip](#input\_node\_public\_ip) | Public IP of compute node for Rancher cluster | `string` | n/a | yes |
| <a name="input_node_username"></a> [node\_username](#input\_node\_username) | Username used for SSH access to the Rancher server cluster node | `string` | n/a | yes |
| <a name="input_rancher_server_dns"></a> [rancher\_server\_dns](#input\_rancher\_server\_dns) | DNS host name of the Rancher server | `string` | n/a | yes |
| <a name="input_ssh_private_key_pem"></a> [ssh\_private\_key\_pem](#input\_ssh\_private\_key\_pem) | Private key used for SSH access to the Rancher server cluster node | `string` | n/a | yes |
| <a name="input_workload_cluster_name"></a> [workload\_cluster\_name](#input\_workload\_cluster\_name) | Name for created custom workload cluster | `string` | n/a | yes |
| <a name="input_cert_manager_version"></a> [cert\_manager\_version](#input\_cert\_manager\_version) | Version of cert-manager to install alongside Rancher (format: 0.0.0) | `string` | `"1.5.3"` | no |
| <a name="input_node_internal_ip"></a> [node\_internal\_ip](#input\_node\_internal\_ip) | Internal IP of compute node for Rancher cluster | `string` | `""` | no |
| <a name="input_rancher_kubernetes_version"></a> [rancher\_kubernetes\_version](#input\_rancher\_kubernetes\_version) | Kubernetes version to use for Rancher server cluster | `string` | `"v1.21.8+k3s1"` | no |
| <a name="input_rancher_version"></a> [rancher\_version](#input\_rancher\_version) | Rancher server version (format v0.0.0) | `string` | `"v2.6.3"` | no |
| <a name="input_windows_prefered_cluster"></a> [windows\_prefered\_cluster](#input\_windows\_prefered\_cluster) | Activate windows supports for the custom workload cluster | `bool` | `false` | no |
| <a name="input_workload_kubernetes_version"></a> [workload\_kubernetes\_version](#input\_workload\_kubernetes\_version) | Kubernetes version to use for managed workload cluster | `string` | `"v1.20.6-rancher1-1"` | no |
###### `rancher_server_dns`
- **Required**
DNS host name of the Rancher server
A DNS name is required to allow successful SSL cert generation.
SSL certs may only be assigned to DNS names, not IP addresses.
Only an IP address could cause the Custom cluster to fail due to mismatching SSL
Subject Names.
###### `admin_password`
- **Required**
Admin password to use for Rancher server bootstrap
Log in to the Rancher server using username `admin` and this password.
###### `workload_kubernetes_version`
- Default: **`"v1.20.6-rancher1-1"`**
Kubernetes version to use for managed workload cluster
Defaulted to one version behind most recent minor release to allow experimenting
with upgrading Kubernetes versions.
###### `workload_cluster_name`
- **Required**
Name for created custom workload cluster
## Outputs
| Name | Description |
|------|-------------|
| <a name="output_custom_cluster_command"></a> [custom\_cluster\_command](#output\_custom\_cluster\_command) | Docker command used to add a node to the quickstart cluster |
| <a name="output_custom_cluster_windows_command"></a> [custom\_cluster\_windows\_command](#output\_custom\_cluster\_windows\_command) | Docker command used to add a windows node to the quickstart cluster |
| <a name="output_rancher_url"></a> [rancher\_url](#output\_rancher\_url) | n/a |
<!-- END_TF_DOCS -->

View File

@@ -0,0 +1,36 @@
# Admin password to use for Rancher server bootstrap
admin_password = ""
# Public IP of compute node for Rancher cluster
node_public_ip = ""
# Username used for SSH access to the Rancher server cluster node
node_username = ""
# DNS host name of the Rancher server
rancher_server_dns = ""
# Private key used for SSH access to the Rancher server cluster node
ssh_private_key_pem = ""
# Name for created custom workload cluster
workload_cluster_name = ""
# Version of cert-manager to install alongside Rancher (format: 0.0.0)
cert_manager_version = "1.5.3"
# Internal IP of compute node for Rancher cluster
node_internal_ip = ""
# Kubernetes version to use for Rancher server cluster
rancher_kubernetes_version = "v1.21.8+k3s1"
# Rancher server version (format v0.0.0)
rancher_version = "v2.6.3"
# Activate windows supports for the custom workload cluster
windows_prefered_cluster = false
# Kubernetes version to use for managed workload cluster
workload_kubernetes_version = "v1.20.6-rancher1-1"

View File

@@ -3,79 +3,64 @@
Two single-node RKE Kubernetes clusters will be created from two instances running Ubuntu 20.04 (Focal Fossa) and Docker.
Both instances will be accessible over SSH using the SSH keys `id_rsa` and `id_rsa.pub`.
## Variables
<!-- BEGIN_TF_DOCS -->
## Requirements
###### `scw_project_id`
| Name | Version |
|------|---------|
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0.0 |
| <a name="requirement_local"></a> [local](#requirement\_local) | 2.1.0 |
| <a name="requirement_scaleway"></a> [scaleway](#requirement\_scaleway) | 2.2.0 |
| <a name="requirement_tls"></a> [tls](#requirement\_tls) | 3.1.0 |
- **Required**
Scaleway project id used to create infrastructure
## Providers
###### `scw_access_key`
| Name | Version |
|------|---------|
| <a name="provider_local"></a> [local](#provider\_local) | 2.1.0 |
| <a name="provider_scaleway"></a> [scaleway](#provider\_scaleway) | 2.2.0 |
| <a name="provider_tls"></a> [tls](#provider\_tls) | 3.1.0 |
- **Required**
Scaleway access key used to create infrastructure
## Modules
###### `scw_secret_key`
| Name | Source | Version |
|------|--------|---------|
| <a name="module_rancher_common"></a> [rancher\_common](#module\_rancher\_common) | ../rancher-common | n/a |
- **Required**
Scaleway secret key used to create infrastructure
## Resources
###### `scw_zone`
| Name | Type |
|------|------|
| [local_file.ssh_private_key_pem](https://registry.terraform.io/providers/hashicorp/local/2.1.0/docs/resources/file) | resource |
| [local_file.ssh_public_key_openssh](https://registry.terraform.io/providers/hashicorp/local/2.1.0/docs/resources/file) | resource |
| [scaleway_account_ssh_key.quickstart_ssh_key](https://registry.terraform.io/providers/scaleway/scaleway/2.2.0/docs/resources/account_ssh_key) | resource |
| [scaleway_instance_server.quickstart_node](https://registry.terraform.io/providers/scaleway/scaleway/2.2.0/docs/resources/instance_server) | resource |
| [scaleway_instance_server.rancher_server](https://registry.terraform.io/providers/scaleway/scaleway/2.2.0/docs/resources/instance_server) | resource |
| [tls_private_key.global_key](https://registry.terraform.io/providers/hashicorp/tls/3.1.0/docs/resources/private_key) | resource |
- Default: **`"fr-par-1"`**
Scaleway zone used for all resources
## Inputs
###### `scw_region`
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| <a name="input_rancher_server_admin_password"></a> [rancher\_server\_admin\_password](#input\_rancher\_server\_admin\_password) | Admin password to use for Rancher server bootstrap | `string` | n/a | yes |
| <a name="input_scw_access_key"></a> [scw\_access\_key](#input\_scw\_access\_key) | Scaleway access key used to create infrastructure | `string` | n/a | yes |
| <a name="input_scw_project_id"></a> [scw\_project\_id](#input\_scw\_project\_id) | Scaleway project id used to create infrastructure | `string` | n/a | yes |
| <a name="input_scw_secret_key"></a> [scw\_secret\_key](#input\_scw\_secret\_key) | Scaleway secret key used to create infrastructure | `string` | n/a | yes |
| <a name="input_cert_manager_version"></a> [cert\_manager\_version](#input\_cert\_manager\_version) | Version of cert-manager to install alongside Rancher (format: 0.0.0) | `string` | `"1.5.3"` | no |
| <a name="input_docker_version"></a> [docker\_version](#input\_docker\_version) | Docker version to install on nodes | `string` | `"19.03"` | no |
| <a name="input_instance_type"></a> [instance\_type](#input\_instance\_type) | Instance type used for all instances | `string` | `"DEV1-M"` | no |
| <a name="input_prefix"></a> [prefix](#input\_prefix) | Prefix added to names of all resources | `string` | `"quickstart"` | no |
| <a name="input_rancher_kubernetes_version"></a> [rancher\_kubernetes\_version](#input\_rancher\_kubernetes\_version) | Kubernetes version to use for Rancher server cluster | `string` | `"v1.21.8+k3s1"` | no |
| <a name="input_rancher_version"></a> [rancher\_version](#input\_rancher\_version) | Rancher server version (format: v0.0.0) | `string` | `"v2.6.3"` | no |
| <a name="input_scw_region"></a> [scw\_region](#input\_scw\_region) | Scaleway region used for all resources | `string` | `"fr-par"` | no |
| <a name="input_scw_zone"></a> [scw\_zone](#input\_scw\_zone) | Scaleway zone used for all resources | `string` | `"fr-par-1"` | no |
| <a name="input_workload_kubernetes_version"></a> [workload\_kubernetes\_version](#input\_workload\_kubernetes\_version) | Kubernetes version to use for managed workload cluster | `string` | `"v1.20.6-rancher1-1"` | no |
- Default: **`"fr-par"`**
Scaleway region used for all resources
## Outputs
###### `prefix`
- Default: **`"quickstart"`**
Prefix added to names of all resources
###### `instance_type`
- Default: **`"DEV1-M"`**
Droplet size used for all droplets
###### `docker_version`
- Default: **`"19.03"`**
Docker version to install on nodes
###### `rke_kubernetes_version`
- Default: **`"v1.20.4-rancher1-1"`**
Kubernetes version to use for Rancher server RKE cluster
See `rancher-common` module variable `rke_kubernetes_version` for more details.
###### `workload_kubernetes_version`
- Default: **`"v1.19.8-rancher1-1"`**
Kubernetes version to use for managed workload cluster
See `rancher-common` module variable `workload_kubernetes_version` for more details.
###### `cert_manager_version`
- Default: **`"1.0.4"`**
Version of cert-manager to install alongside Rancher (format: 0.0.0)
See `rancher-common` module variable `cert_manager_version` for more details.
###### `rancher_version`
- Default: **`"v2.5.7"`**
Rancher server version (format v0.0.0)
See `rancher-common` module variable `rancher_version` for more details.
###### `rancher_server_admin_password`
- **Required**
Admin password to use for Rancher server bootstrap
See `rancher-common` module variable `admin_password` for more details.
| Name | Description |
|------|-------------|
| <a name="output_rancher_node_ip"></a> [rancher\_node\_ip](#output\_rancher\_node\_ip) | n/a |
| <a name="output_rancher_server_url"></a> [rancher\_server\_url](#output\_rancher\_server\_url) | n/a |
| <a name="output_workload_node_ip"></a> [workload\_node\_ip](#output\_workload\_node\_ip) | n/a |
<!-- END_TF_DOCS -->

View File

@@ -1,51 +1,39 @@
# Required variables
# - Fill in before beginning quickstart
# ==========================================================
# Scaleway project id
scw_project_id = ""
# Scaleway access key
scw_access_key = ""
# Scaleway secret key
scw_secret_key = ""
# Password used to log in to the `admin` account on the new Rancher server
# - Must be at least 12 characters
# Admin password to use for Rancher server bootstrap
rancher_server_admin_password = ""
# Scaleway access key used to create infrastructure
scw_access_key = ""
# Optional variables
# - Uncomment variables to customize quickstart
# ----------------------------------------------------------
# Scaleway project id used to create infrastructure
scw_project_id = ""
# Scaleway zone for all resources
# scw_zone = ""
# Scaleway secret key used to create infrastructure
scw_secret_key = ""
# Scaleway region for all resources
# scw_region = ""
# Version of cert-manager to install alongside Rancher (format: 0.0.0)
cert_manager_version = "1.5.3"
# Prefix for all resources created by quickstart
# prefix = ""
# Docker version to install on nodes
docker_version = "19.03"
# Type of all created instances
# instance_type = ""
# Instance type used for all instances
instance_type = "DEV1-M"
# Docker version installed on target hosts
# - Must be a version supported by the Rancher install scripts
# docker_version = ""
# Prefix added to names of all resources
prefix = "quickstart"
# Kubernetes version used for creating management server cluster
# - Must be supported by RKE terraform provider 1.0.1
# rancher_kubernetes_version = ""
# Kubernetes version to use for Rancher server cluster
rancher_kubernetes_version = "v1.21.8+k3s1"
# Kubernetes version used for creating workload cluster
# - Must be supported by RKE terraform provider 1.0.1
# workload_kubernetes_version = ""
# Rancher server version (format: v0.0.0)
rancher_version = "v2.6.3"
# Version of cert-manager to install, used in case of older Rancher versions
# cert_manager_version = ""
# Scaleway region used for all resources
scw_region = "fr-par"
# Version of Rancher to install
# rancher_version = ""
# Scaleway zone used for all resources
scw_zone = "fr-par-1"
# Kubernetes version to use for managed workload cluster
workload_kubernetes_version = "v1.20.6-rancher1-1"