@@ -37,24 +37,34 @@ variable "droplet_image" {
37
37
description = " Which Droplet image would you like to use for your workspace?"
38
38
default = " ubuntu-22-04-x64"
39
39
validation {
40
- condition = contains ([" debian-11- x64" ," fedora-36-x64" ," ubuntu-22-04 -x64" ], var. droplet_image )
41
- error_message = " Value must bedebian-11- x64, fedora-36-x64 orubuntu-22-04 -x64."
40
+ condition = contains ([" ubuntu-22-04- x64" ," ubuntu-20-04-x64 " , " fedora-36-x64" ," fedora-35-x64 " , " debian-11-x64 " , " debian-10-x64 " , " centos-stream-9-x64 " , " centos-stream-8-x64 " , " rockylinux-8-x64 " , " rockylinux-8-4 -x64" ], var. droplet_image )
41
+ error_message = " Value must beubuntu-22-04- x64,ubuntu-20-04-x64, fedora-36-x64, fedora-35-x64, debian-11-x64, debian-10-x64, centos-stream-9-x64, centos-stream-8-x64, rockylinux-8-x64 orrockylinux-8-4 -x64."
42
42
}
43
43
}
44
44
45
45
variable "droplet_size" {
46
46
description = " Which Droplet configuration would you like to use?"
47
47
validation {
48
- condition = contains ([" s-1vcpu-1gb" ," s-1vcpu-2gb" ," s-2vcpu-2gb" ], var. droplet_size )
49
- error_message = " Value must be s-1vcpu-1gb, s-1vcpu-2gb or s-2vcpu-2gb."
48
+ condition = contains ([" s-1vcpu-1gb" ," s-1vcpu-2gb" ," s-2vcpu-2gb" ," s-2vcpu-4gb" ," s-4vcpu-8gb" ," s-8vcpu-16gb" ], var. droplet_size )
49
+ error_message = " Value must be s-1vcpu-1gb, s-1vcpu-2gb, s-2vcpu-2gb, s-2vcpu-4gb, s-4vcpu-8gb or s-8vcpu-16gb."
50
+ }
51
+ }
52
+
53
+ variable "home_volume_size" {
54
+ type = number
55
+ description = " How large would you like your home volume to be (in GB)?"
56
+ default = 20
57
+ validation {
58
+ condition = var. home_volume_size >= 1
59
+ error_message = " Value must be greather than or equal to 1."
50
60
}
51
61
}
52
62
53
63
variable "region" {
54
64
description = " Which region would you like to use?"
55
65
validation {
56
- condition = contains ([" nyc1" ," nyc3" ," ams3" ], var. region )
57
- error_message = " Value must be nyc1, nyc3,or ams3."
66
+ condition = contains ([" nyc1" ," nyc2 " , " nyc3" ," sfo1 " , " sfo2 " , " sfo3 " , " ams2 " , " ams3" , " sgp1 " , " lon1 " , " fra1 " , " tor1 " , " blr1 " ], var. region )
67
+ error_message = " Value must be nyc1,nyc2, nyc3,sfo1, sfo2, sfo3, ams2, ams3, sgp1, lon1, fra1, tor1 or blr1 ."
58
68
}
59
69
}
60
70
@@ -73,7 +83,7 @@ resource "coder_agent" "dev" {
73
83
resource "digitalocean_volume" "home_volume" {
74
84
region = var. region
75
85
name = " coder-${ data . coder_workspace . me . owner } -${ data . coder_workspace . me . name } -home"
76
- size = 20
86
+ size = var . home_volume_size
77
87
initial_filesystem_type = " ext4"
78
88
initial_filesystem_label = " coder-home"
79
89
}