Skip to content

Commit 43611c2

Browse files
committed
ReadMe
1 parent c287a81 commit 43611c2

File tree

1 file changed

+22
-42
lines changed
  • registry/melmathari/templates/hetzner-cloud

1 file changed

+22
-42
lines changed

registry/melmathari/templates/hetzner-cloud/README.md

Lines changed: 22 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,11 @@ This template provides a comprehensive Hetzner Cloud setup with:
1414

1515
- **Dynamic Configuration**: Server types, locations, and images loaded from JSON
1616
- **Location-Aware Filtering**: Available server types automatically filter based on selected location
17-
- **Multiple Server Types**: Shared, dedicated, and CPU-optimized instances
18-
- **Global Locations**: Germany, Finland, and USA datacenters
17+
- **Multiple Server Types**: ARM, Intel, AMD shared, and dedicated instances
18+
- **Global Locations**: Europe, USA, and Asia datacenters
1919
- **Persistent Storage**: Home volumes that survive workspace restarts
2020
- **Secure Networking**: Private networks with firewall rules
21-
- **Clean Architecture**: Minimal JSON configuration for easy maintenance
21+
- **Clean Architecture**: Region-based availability in JSON for easy maintenance
2222

2323
## Prerequisites
2424

@@ -72,38 +72,14 @@ This means that when the workspace restarts, any tools or files outside of the h
7272

7373
## Server Types
7474

75-
The template supports current Hetzner Cloud server types:
75+
The template supports multiple Hetzner Cloud server types across four categories:
7676

77-
### ARM-based (Energy Efficient)
77+
- **ARM-based (CAX)**: Energy-efficient ARM architecture instances
78+
- **Intel CPU-Optimized (CPX)**: High-performance Intel processors
79+
- **AMD Shared (CX)**: Cost-effective AMD shared instances
80+
- **Dedicated vCPU (CCX)**: Dedicated CPU resources for consistent performance
7881

79-
- **CAX11**: 2 vCPU, 4 GB RAM
80-
- **CAX21**: 4 vCPU, 8 GB RAM
81-
- **CAX31**: 8 vCPU, 16 GB RAM
82-
- **CAX41**: 16 vCPU, 32 GB RAM
83-
84-
### Shared AMD (Cost-effective)
85-
86-
- **CX22**: 2 vCPU, 4 GB RAM
87-
- **CX32**: 4 vCPU, 8 GB RAM
88-
- **CX42**: 8 vCPU, 16 GB RAM
89-
- **CX52**: 16 vCPU, 32 GB RAM
90-
91-
### Intel CPU-Optimized
92-
93-
- **CPX11**: 2 vCPU, 2 GB RAM
94-
- **CPX21**: 3 vCPU, 4 GB RAM
95-
- **CPX31**: 4 vCPU, 8 GB RAM
96-
- **CPX41**: 8 vCPU, 16 GB RAM
97-
- **CPX51**: 16 vCPU, 32 GB RAM
98-
99-
### Dedicated vCPU (High Performance)
100-
101-
- **CCX13**: 2 vCPU, 8 GB RAM
102-
- **CCX23**: 4 vCPU, 16 GB RAM
103-
- **CCX33**: 8 vCPU, 32 GB RAM
104-
- **CCX43**: 16 vCPU, 64 GB RAM
105-
- **CCX53**: 32 vCPU, 128 GB RAM
106-
- **CCX63**: 48 vCPU, 192 GB RAM
82+
Server types are automatically filtered based on your selected location. The specific availability is managed in `hetzner-config.json`.
10783

10884
## Locations
10985

@@ -154,12 +130,13 @@ The template uses `hetzner-config.json` for dynamic configuration:
154130
"cx62": { "name": "CX62 (16 vCPU, 64 GB RAM, AMD)", "vcpus": 16, "memory": 64 }
155131
```
156132

157-
If a server type has limited availability, add it to the `availability` section:
133+
The `availability_by_location` section maps which server types are available in each region:
158134

159135
```json
160-
"availability": {
161-
"ccx63": ["fsn1", "nbg1"], // Only available in these locations
162-
"*": ["fsn1", "nbg1", "hel1", "ash", "hil"] // Default for all other types
136+
"availability_by_location": {
137+
"fsn1": ["cax11", "cpx11", "cx22", "ccx13", ...], // Europe: All types
138+
"ash": ["cpx11", "ccx13", ...], // USA: Intel + Dedicated only
139+
"sin": ["cpx11", "ccx13", ...] // Asia: Intel + Dedicated only
163140
}
164141
```
165142

@@ -207,7 +184,12 @@ The template includes:
207184

208185
### Server Type Options Change When Selecting Location
209186

210-
The template dynamically filters server types based on the selected location. For example, if you select a location where certain dedicated server types aren't available, those options won't appear in the server type dropdown. This prevents configuration errors before they happen.
187+
This is expected behavior! The template dynamically filters server types based on regional availability:
188+
189+
- **Europe (fsn1, nbg1, hel1)**: Shows all server types including ARM (CAX) and AMD (CX)
190+
- **USA/Asia (ash, hil, sin)**: Shows only Intel (CPX) and Dedicated (CCX) servers
191+
192+
This prevents configuration errors by only showing what's actually available in your selected region.
211193

212194
### Image Not Found Errors
213195

@@ -279,12 +261,10 @@ To test this template locally before deployment:
279261

280262
4. **Test dynamic filtering**: Try planning with different locations to verify server types filter correctly:
281263
```bash
282-
terraform plan -var="location=fsn1" # Should show CCX63
283-
terraform plan -var="location=ash" # Should NOT show CCX63
264+
terraform plan -var="location=fsn1" # Europe: Shows ARM (CAX), AMD (CX), Intel (CPX), Dedicated (CCX)
265+
terraform plan -var="location=ash" # USA: Shows only Intel (CPX) and Dedicated (CCX) - no ARM/AMD
284266
```
285267

286-
See `TEST_GUIDE.md` for detailed testing instructions.
287-
288268
## Notes
289269

290270
> [!NOTE]

0 commit comments

Comments
 (0)