Skip to content

Commit

Permalink
Update for 1.13.0 release
Browse files Browse the repository at this point in the history
  • Loading branch information
bscarbrough authored and rickkoliser committed May 2, 2023
1 parent faed31c commit 89703df
Show file tree
Hide file tree
Showing 15 changed files with 59 additions and 59 deletions.
2 changes: 1 addition & 1 deletion aws/multi_region/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ Create a user via the IAM console that will be used for the terraform deployment
| `admin_password` | The Kasm Administrative user login password. String from 12-30 characters in length with no special characters. | String | `"1qaz2wsx3EDC4RFV"` |
| `user_password` | A Kasm standard (non-administrator) user password. String from 12-30 characters in length with no special characters. | String | `"1qaz2wsx3EDC4RFV"` |
| `manager_token` | The manager token value used by Kasm agents to authenticate to the Kasm WebApps. String from 12-30 characters in length with no special characters. | String | `"1qaz2wsx3EDC4RFV"` |
| `kasm_build` | The download URL for the desired Kasm Workspaces version. | String | `"https://kasm-static-content.s3.amazonaws.com/kasm_release_1.12.0.d4fd8a.tar.gz"` |
| `kasm_build` | The download URL for the desired Kasm Workspaces version. | String | `"https://kasm-static-content.s3.amazonaws.com/kasm_release_1.13.0.002947.tar.gz"` |
| `aws_default_tags` | A Map of all tags you wish to apply to all TF created resources in this deployment. | Map(Any) | <pre>{<br/>&nbsp;&nbsp;Service_name = "Kasm Workspaces"<br/>&nbsp;&nbsp;Kasm_version = "1.12"<br/>}</pre> |


Expand Down
2 changes: 1 addition & 1 deletion aws/multi_region/settings.tfvars
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ user_password = "changeme"
admin_password = "changeme"
manager_token = "changeme"

kasm_build = "https://kasm-static-content.s3.amazonaws.com/kasm_release_1.12.0.d4fd8a.tar.gz"
kasm_build = "https://kasm-static-content.s3.amazonaws.com/kasm_release_1.13.0.002947.tar.gz"
ssh_access_cidrs = ["0.0.0.0/0"]
web_access_cidrs = ["0.0.0.0/0"]

Expand Down
14 changes: 7 additions & 7 deletions aws/multi_region/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -162,23 +162,23 @@ variable "secondary_regions_settings" {
type = map(any)

validation {
condition = can([for region in var.secondary_regions_settings : regex("^([a-z]{2}-[a-z]{4,}-[\\d]{1})$", region.agent_region)])
condition = alltrue([for region in var.secondary_regions_settings : can(regex("^([a-z]{2}-[a-z]{4,}-[\\d]{1})$", region.agent_region))])
error_message = "Verify the regions in the secondary_regions_settings variable and ensure they are valid AWS regions in a valid format (e.g. us-east-1)."
}
validation {
condition = can([for ami_id in var.secondary_regions_settings : regex("^(ami-[a-f0-9]{17})", ami_id.agent_ec2_ami_id)])
condition = alltrue([for ami_id in var.secondary_regions_settings : can(regex("^(ami-[a-f0-9]{17})", ami_id.agent_ec2_ami_id))])
error_message = "Please verify that all of your Region's AMI IDs are in the correct format for AWS (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/finding-an-ami.html)."
}
validation {
condition = can([for instance_type in var.secondary_regions_settings : regex("^(([a-z-]{1,3})(\\d{1,2})?(\\w{1,4})?)\\.(nano|micro|small|medium|metal|large|(2|3|4|6|8|9|10|12|16|18|24|32|48|56|112)?xlarge)", instance_type.agent_instance_type)])
condition = alltrue([for instance_type in var.secondary_regions_settings : can(regex("^(([a-z-]{1,3})(\\d{1,2})?(\\w{1,4})?)\\.(nano|micro|small|medium|metal|large|(2|3|4|6|8|9|10|12|16|18|24|32|48|56|112)?xlarge)", instance_type.agent_instance_type))])
error_message = "Check the Instance types used in your secondary_regions_settings and ensure they are valid AWS Instance types (https://aws.amazon.com/ec2/instance-types/)."
}
validation {
condition = can([for number_of_agents in var.secondary_regions_settings : number_of_agents.num_agents >= 0 && number_of_agents.num_agents <= 100 && floor(number_of_agents.num_agents) == number_of_agents.num_agents])
condition = alltrue([for number_of_agents in var.secondary_regions_settings : number_of_agents.num_agents >= 0 && number_of_agents.num_agents <= 100 && floor(number_of_agents.num_agents) == number_of_agents.num_agents])
error_message = "Check the number of agents in the secondary_regions_settings variable. Acceptable number of Kasm Agents range between 0-100."
}
validation {
condition = can([for subnet in var.secondary_regions_settings : cidrhost(subnet.agent_vpc_cidr, 0)])
condition = alltrue([for subnet in var.secondary_regions_settings : can(cidrhost(subnet.agent_vpc_cidr, 0))])
error_message = "Verify the VPC subnet in your secondary_regions_settings. They must all be valid IPv4 CIDRs."
}
}
Expand Down Expand Up @@ -265,7 +265,7 @@ variable "ssh_access_cidrs" {
default = ["0.0.0.0/0"]

validation {
condition = can([for subnet in var.ssh_access_cidrs : cidrhost(subnet, 0)])
condition = alltrue([for subnet in var.ssh_access_cidrs : can(cidrhost(subnet, 0))])
error_message = "One of the subnets provided in the ssh_access_cidr variable is invalid."
}
}
Expand All @@ -276,7 +276,7 @@ variable "web_access_cidrs" {
default = ["0.0.0.0/0"]

validation {
condition = can([for subnet in var.web_access_cidrs : cidrhost(subnet, 0)])
condition = alltrue([for subnet in var.web_access_cidrs : can(cidrhost(subnet, 0))])
error_message = "One of the subnets provided in the web_access_cidrs variable is invalid."
}
}
Expand Down
2 changes: 1 addition & 1 deletion aws/standard/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ Create a user via the IAM console that will be used for the terraform deployment
| `user_password` | A Kasm standard (non-administrator) user password. String from 12-30 characters in length with no special characters. | String | `"1qaz2wsx3EDC4RFV"` |
| `manager_token` | The manager token value used by Kasm agents to authenticate to the Kasm WebApps. String from 12-30 characters in length with no special characters. | String | `"1qaz2wsx3EDC4RFV"` |
| `service_registration_token` | The service registration token value used by Guac RDP servers to authenticate to the Kasm Webapps. String from 12-30 characters in length with no special characters. | String | `"1qaz2wsx3EDC4RFV"` |
| `kasm_build` | The download URL for the desired Kasm Workspaces version. | String | `"https://kasm-static-content.s3.amazonaws.com/kasm_release_1.12.0.d4fd8a.tar.gz"` |
| `kasm_build` | The download URL for the desired Kasm Workspaces version. | String | `"https://kasm-static-content.s3.amazonaws.com/kasm_release_1.13.0.002947.tar.gz"` |
| `aws_default_tags` | A Map of all tags you wish to apply to all TF created resources in this deployment. | Map(Any) | <pre align=left>{<br/>&nbsp;&nbsp;Service_name = "Kasm Workspaces"<br/>&nbsp;&nbsp;Kasm_version = "1.12"<br/>}</pre> |


Expand Down
2 changes: 1 addition & 1 deletion aws/standard/settings.tfvars
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ manager_token = "changeme"
service_registration_token = "changeme"

## Kasm download URL
kasm_build = "https://kasm-static-content.s3.amazonaws.com/kasm_release_1.12.0.d4fd8a.tar.gz"
kasm_build = "https://kasm-static-content.s3.amazonaws.com/kasm_release_1.13.0.002947.tar.gz"

## Default tags for all AWS resources
aws_default_tags = {
Expand Down
4 changes: 2 additions & 2 deletions aws/standard/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@ variable "ssh_access_cidrs" {
default = ["0.0.0.0/0"]

validation {
condition = can([for subnet in var.ssh_access_cidrs : cidrhost(subnet, 0)])
condition = alltrue([for subnet in var.ssh_access_cidrs : can(cidrhost(subnet, 0))])
error_message = "One of the subnets provided in the ssh_access_cidr variable is invalid."
}
}
Expand All @@ -187,7 +187,7 @@ variable "web_access_cidrs" {
default = ["0.0.0.0/0"]

validation {
condition = can([for subnet in var.web_access_cidrs : cidrhost(subnet, 0)])
condition = alltrue([for subnet in var.web_access_cidrs : can(cidrhost(subnet, 0))])
error_message = "One of the subnets provided in the load_balancer_public_access variable is invalid."
}
}
Expand Down
2 changes: 1 addition & 1 deletion digitalocean/single_server/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ This project will launch a droplet and allow connections using the ssh keys defi
| `vpc_subnet_cidr` | The VPC Subnet CIDR where you wish to deploy Kasm | String | `"10.0.0.0/24"` |
| `digital_ocean_droplet_slug` | The Default Digital Ocean Droplet Slug: https://slugs.do-api.dev/ | String | `"s-2vcpu-4gb-intel"` |
| `digital_ocean_image` | Default Image for Ubuntu 20.04 LTS with Docker | String | `"docker-20-04"` |
| `kasm_build_url` | The download URL for the desired Kasm Workspaces version. | String | `"https://kasm-static-content.s3.amazonaws.com/kasm_release_1.12.0.d4fd8a.tar.gz"` |
| `kasm_build_url` | The download URL for the desired Kasm Workspaces version. | String | `"https://kasm-static-content.s3.amazonaws.com/kasm_release_1.13.0.002947.tar.gz"` |
| `admin_password` | The Kasm Administrative user login password. String from 12-30 characters in length with no special characters. | String | `"1qaz2wsx3EDC4RFV"` |
| `user_password` | A Kasm standard (non-administrator) user password. String from 12-30 characters in length with no special characters. | String | `"1qaz2wsx3EDC4RFV"` |
| `allow_ssh_cidrs` | A list of subnets in CIDR notation allowed to SSH into your kasm servers | List(String) | `["10.0.0.0/16","172.217.22.14/32"]` |
Expand Down
2 changes: 1 addition & 1 deletion digitalocean/single_server/settings.tfvars
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,4 @@ allow_ssh_cidrs = ["0.0.0.0/0"]
allow_kasm_web_cidrs = ["0.0.0.0/0"]

## Kasm download URL
kasm_build_url = "https://kasm-static-content.s3.amazonaws.com/kasm_release_1.12.0.d4fd8a.tar.gz"
kasm_build_url = "https://kasm-static-content.s3.amazonaws.com/kasm_release_1.13.0.002947.tar.gz"
6 changes: 3 additions & 3 deletions digitalocean/single_server/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ variable "ssh_key_fingerprints" {
type = list(string)

validation {
condition = can([for fingerprint in var.ssh_key_fingerprints : regex("^([a-f0-9]{2}:?){16}$", fingerprint)])
condition = alltrue([for fingerprint in var.ssh_key_fingerprints : can(regex("^([a-f0-9]{2}:?){16}$", fingerprint))])
error_message = "One of the SSH Key fingerprints is incorrectly formatted. It should be 16 colon-delimited hex bytes (e.g. 12:34:56:78:90:ab:cd:ef:12:34:56:78:90:ab:cd:ef)."
}
}
Expand Down Expand Up @@ -108,7 +108,7 @@ variable "allow_ssh_cidrs" {
default = ["0.0.0.0/0"]

validation {
condition = can([for subnet in var.allow_ssh_cidrs : cidrhost(subnet, 0)])
condition = alltrue([for subnet in var.allow_ssh_cidrs : can(cidrhost(subnet, 0))])
error_message = "One of the subnets provided in the allow_ssh_cidrs list is invalid."
}
}
Expand All @@ -119,7 +119,7 @@ variable "allow_kasm_web_cidrs" {
default = ["0.0.0.0/0"]

validation {
condition = can([for subnet in var.allow_kasm_web_cidrs : cidrhost(subnet, 0)])
condition = alltrue([for subnet in var.allow_kasm_web_cidrs : can(cidrhost(subnet, 0))])
error_message = "One of the subnets provided in the allow_ssh_cidrs list is invalid."
}
}
Expand Down
2 changes: 1 addition & 1 deletion oci/single_server/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ Create an SSL certificate that matches the desired domain for the deployment. e.
| `allow_web_cidrs` | A list of subnets in CIDR notation allowed Web access to your kasm servers | List(String) | `["0.0.0.0/0"]` |
| `admin_password` | The Kasm Administrative user login password. String from 12-30 characters in length with no special characters. | String | `"1qaz2wsx3EDC4RFV"` |
| `user_password` | A Kasm standard (non-administrator) user password. String from 12-30 characters in length with no special characters. | String | `"1qaz2wsx3EDC4RFV"` |
| `kasm_build_url` | The download URL for the desired Kasm Workspaces version. | String | `"https://kasm-static-content.s3.amazonaws.com/kasm_release_1.12.0.d4fd8a.tar.gz"` |
| `kasm_build_url` | The download URL for the desired Kasm Workspaces version. | String | `"https://kasm-static-content.s3.amazonaws.com/kasm_release_1.13.0.002947.tar.gz"` |
| `swap_size` | The amount of swap (in MB) to configure inside the Kasm servers. | Number | `2048` |
| `instance_shape` | The OCI instance shape to use for Kasm deployment. Kasm recommends using a Flex instance type. | String | `"VM.Standard.E4.Flex"` |
| `kasm_server_cpus` | The number of CPUs, memory in GB, and HDD size to use for Kasm WebApps. | Number | `4` |
Expand Down
2 changes: 1 addition & 1 deletion oci/single_server/settings.tfvars
Original file line number Diff line number Diff line change
Expand Up @@ -40,4 +40,4 @@ kasm_server_memory = 2
kasm_server_hdd_size = 120

## Kasm download URL
kasm_build_url = "https://kasm-static-content.s3.amazonaws.com/kasm_release_1.12.0.d4fd8a.tar.gz"
kasm_build_url = "https://kasm-static-content.s3.amazonaws.com/kasm_release_1.13.0.002947.tar.gz"
24 changes: 12 additions & 12 deletions oci/single_server/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ variable "private_key_path" {
sensitive = true

validation {
condition = can(fileexists(var.private_key_path))
condition = fileexists(var.private_key_path)
error_message = "The variable private_key_path must point to a valid OCI API Key file."
}

Expand Down Expand Up @@ -119,7 +119,7 @@ variable "allow_ssh_cidrs" {
type = list(string)

validation {
condition = can([for subnet in var.allow_ssh_cidrs : cidrhost(subnet, 0)])
condition = alltrue([for subnet in var.allow_ssh_cidrs : can(cidrhost(subnet, 0))])
error_message = "One of the subnets provided in the allow_ssh_cidrs list is invalid."
}
}
Expand All @@ -129,7 +129,7 @@ variable "allow_web_cidrs" {
type = list(string)

validation {
condition = can([for subnet in var.allow_web_cidrs : cidrhost(subnet, 0)])
condition = alltrue([for subnet in var.allow_web_cidrs : can(cidrhost(subnet, 0))])
error_message = "One of the subnets provided in the allow_web_cidrs list is invalid."
}
}
Expand All @@ -140,7 +140,7 @@ variable "letsencrypt_cert_support_email" {
default = ""

validation {
condition = can(var.letsencrypt_cert_support_email == "" ? true : can(regex("^[\\w-\\.]+@([\\w-]+\\.)+[\\w-]{2,4}$", var.letsencrypt_cert_support_email)))
condition = var.letsencrypt_cert_support_email == "" ? true : can(regex("^[\\w-\\.]+@([\\w-]+\\.)+[\\w-]{2,4}$", var.letsencrypt_cert_support_email))
error_message = "The ssl_cert_support_email must be a valid email address format."
}
}
Expand All @@ -151,7 +151,7 @@ variable "letsencrypt_server_type" {
default = ""

validation {
condition = can(contains(["staging", "prod", ""], var.letsencrypt_server_type))
condition = contains(["staging", "prod", ""], var.letsencrypt_server_type)
error_message = "Allowed values for the letsencrypt_server_type variable are: staging, prod, and empty string. For reference: Staging generates certificates that a browser will not trust, but are formatted correctly to apply to resources; while Prod generates valid, useable, trusted certificates. NOTE: Prod certificate generation is limited to 5 times per week, so if you are testing Kasm or intend to possibly re-deploy multiple times, it is recommended to use Staging (which has a much higher generation limit since it is intended for testing) until you are ready to deploy your 'final' version. If you have your own CA and are bringing your own certificates, then copy/paste then set this value to an empty string."
}
}
Expand All @@ -162,12 +162,12 @@ variable "kasm_ssl_crt_path" {
default = ""

validation {
condition = can(var.kasm_ssl_crt_path == "" ? true : can(fileexists(var.kasm_ssl_crt_path)))
condition = var.kasm_ssl_crt_path == "" ? true : fileexists(var.kasm_ssl_crt_path)
error_message = "The variable kasm_ssl_crt_path must point to a valid OCI API Key file or be left empty (using Terraform-generated Lets Encrypt certificates)."
}

validation {
condition = can(var.kasm_ssl_crt_path == "" ? true : !can(regex("replaceme", file(var.kasm_ssl_crt_path))))
condition = var.kasm_ssl_crt_path == "" ? true : !can(regex("replaceme", file(var.kasm_ssl_crt_path)))
error_message = "You must enter a valid SSL Cert in the file located at the kasm_ssl_crt_path or be left empty (using Terraform-generated Lets Encrypt certificates)."
}
}
Expand All @@ -179,12 +179,12 @@ variable "kasm_ssl_key_path" {
default = ""

validation {
condition = can(var.kasm_ssl_key_path == "" ? true : can(fileexists(var.kasm_ssl_key_path)))
condition = var.kasm_ssl_key_path == "" ? true : fileexists(var.kasm_ssl_key_path)
error_message = "The variable kasm_ssl_key_path must point to a valid OCI API Key file or be left empty (using Terraform-generated Lets Encrypt certificates)."
}

validation {
condition = can(var.kasm_ssl_key_path == "" ? true : !can(regex("replaceme", file(var.kasm_ssl_key_path))))
condition = var.kasm_ssl_key_path == "" ? true : !can(regex("replaceme", file(var.kasm_ssl_key_path)))
error_message = "You must enter a valid SSL Cert in the file located at the kasm_ssl_key_path or be left empty (using Terraform-generated Lets Encrypt certificates)."
}
}
Expand Down Expand Up @@ -226,7 +226,7 @@ variable "kasm_server_cpus" {
type = number

validation {
condition = can(var.kasm_server_cpus >= 2)
condition = var.kasm_server_cpus >= 2
error_message = "Kasm Webapps should have at least 2 CPUs to ensure enough resources for Kasm services."
}
}
Expand All @@ -236,7 +236,7 @@ variable "kasm_server_memory" {
type = number

validation {
condition = can(var.kasm_server_memory >= 2)
condition = var.kasm_server_memory >= 2
error_message = "Kasm Webapps should have at least 2 GB Memory to ensure enough resources for Kasm services."
}
}
Expand All @@ -246,7 +246,7 @@ variable "kasm_server_hdd_size" {
type = number

validation {
condition = can(var.kasm_server_hdd_size >= 120)
condition = var.kasm_server_hdd_size >= 120
error_message = "Kasm Webapps should have at least a 120 GB HDD to ensure enough space Kasm Workspaces images."
}
}
Expand Down
2 changes: 1 addition & 1 deletion oci/standard/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ Create an SSL certificate that matches the desired domain for the deployment. e.
| `user_password` | A Kasm standard (non-administrator) user password. String from 12-30 characters in length with no special characters. | String | `"1qaz2wsx3EDC4RFV"` |
| `manager_token` | The manager token value used by Kasm agents to authenticate to the Kasm WebApps. String from 12-30 characters in length with no special characters. | String | `"1qaz2wsx3EDC4RFV"` |
| `service_registration_token` | The service registration token value used by Guac RDP servers to authenticate to the Kasm Webapps. String from 12-30 characters in length with no special characters. | String | `"1qaz2wsx3EDC4RFV"` |
| `kasm_build_url` | The download URL for the desired Kasm Workspaces version. | String | `"https://kasm-static-content.s3.amazonaws.com/kasm_release_1.12.0.d4fd8a.tar.gz"` |
| `kasm_build_url` | The download URL for the desired Kasm Workspaces version. | String | `"https://kasm-static-content.s3.amazonaws.com/kasm_release_1.13.0.002947.tar.gz"` |
| `swap_size` | The amount of swap (in MB) to configure inside the Kasm servers. | Number | `2048` |
| `instance_shape` | The OCI instance shape to use for Kasm deployment. Kasm recommends using a Flex instance type. | String | `"VM.Standard.E4.Flex"` |
| `kasm_webapp_vm_settings` | The number of CPUs, memory in GB, and HDD size to use for Kasm WebApps. | Map(Any) | <pre align=left>{<br/>&nbsp;&nbsp;cpus = 2<br/>&nbsp;&nbsp;memory = 2<br/>&nbsp;&nbsp;hdd_size_gb = 50<br/>}</pre> |
Expand Down
2 changes: 1 addition & 1 deletion oci/standard/settings.tfvars
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
## Kasm deployment settings
oci_domain_name = "kasm.contoso.com"
project_name = "contoso"
kasm_build_url = "https://kasm-static-content.s3.amazonaws.com/kasm_release_1.12.0.d4fd8a.tar.gz"
kasm_build_url = "https://kasm-static-content.s3.amazonaws.com/kasm_release_1.13.0.002947.tar.gz"
vcn_subnet_cidr = "10.0.0.0/16"

## OCI Authentication variables
Expand Down
Loading

0 comments on commit 89703df

Please sign in to comment.