Skip to content

Commit 35b6700

Browse files
authored
Merge pull request #18 from stackitcloud/feature/dns-hub-spoke-sna
feat: refactor connectivity modules and add DNS zone support
2 parents ac43b09 + f8e4b48 commit 35b6700

99 files changed

Lines changed: 1899 additions & 1581 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/dependabot.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@ version: 2
22
updates:
33
- package-ecosystem: "terraform"
44
directories:
5-
- "/modules/*"
5+
- "/src"
6+
- "/src/modules/*"
7+
- "/stackit-verified-modules/*"
68
schedule:
79
interval: "weekly"
810
day: "sunday"

.github/images/stackit-logo.svg

Lines changed: 43 additions & 0 deletions
Loading

.terraform-docs.yml

Lines changed: 0 additions & 17 deletions
This file was deleted.

.tflint.hcl

Lines changed: 0 additions & 20 deletions
This file was deleted.

CODEOWNERS

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,2 @@
1-
* david.wenzel@stackit.cloud @mahauber
2-
docs/* @lweberru
3-
scripts/* @lweberru
1+
* @dweezl @mahauber @simpe00
2+
docs/* @lweberru

README.md

Lines changed: 9 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -1,91 +1,22 @@
1-
# 🚀 STACKIT Landing Zone Accelerator
1+
<div align="center">
2+
<br>
3+
<img src=".github/images/stackit-logo.svg" alt="STACKIT logo" width="50%"/>
4+
<br>
5+
<br>
6+
</div>
27

3-
**Accelerate your STACKIT cloud adoption with production-ready, modular landing zones.**
8+
# Landing Zone Accelerator
49

5-
[![Terraform](https://img.shields.io/badge/Terraform-1.14+-623CE4?logo=terraform&logoColor=white)](https://www.terraform.io/)
10+
[![Terraform](https://img.shields.io/badge/Terraform-1.15+-623CE4?logo=terraform&logoColor=white)](https://www.terraform.io/)
611
[![OpenTofu](https://img.shields.io/badge/OpenTofu-1.11+-FFDA18?logo=opentofu&logoColor=black)](https://opentofu.org/)
7-
[![STACKIT](https://img.shields.io/badge/STACKIT-Cloud-00A9E0)](https://www.stackit.de/)
12+
[![STACKIT](https://img.shields.io/badge/STACKIT-Cloud-004E5A)](https://www.stackit.de/)
813
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](LICENSE)
914

10-
---
11-
12-
## ✨ Overview
13-
1415
The STACKIT Landing Zone Accelerator provides a comprehensive Terraform-based framework for deploying secure, scalable, and well-architected cloud environments on STACKIT. Built with enterprise best practices, it enables teams to quickly establish governance, networking, and security foundations.
1516

16-
## 🎯 Key Features
17-
18-
- **🏗️ Modular Architecture** — Compose your infrastructure using reusable, tested Terraform modules
19-
- **🔐 Security First** — Pre-configured RBAC, secrets management, and network segmentation
20-
- **📐 Scalable Templates** — Start small and grow with ready-to-use deployment templates
21-
- **🌐 Multi-Environment** — Seamlessly manage production and non-production workloads
22-
- **⚡ Quick Start** — Get up and running in minutes with sensible defaults
23-
24-
## 📦 Modules
25-
26-
| Module | Description |
27-
|--------|-------------|
28-
| `connectivity-global` | Network areas and regional IP range management including transfer networks and nameservers |
29-
| `connectivity-regional` | Regional connectivity project with WAN/LAN networks, pfSense firewall appliance, public IP, and network area routing |
30-
| `devops` | DevOps project with RBAC and managed Git instance |
31-
| `governance` | Resource Manager folder hierarchy, custom roles, and organization and folder-level role assignments |
32-
| `landing-zone` | Landing zone project with RBAC, networking, Secrets Manager, Object Storage, service accounts, and SKE Kubernetes cluster |
33-
| `management` | Management project with Secrets Manager, Object Storage, service accounts, and observability |
34-
| `sandboxes` | Sandbox projects with RBAC role assignments for experimentation workloads |
35-
36-
## 🚀 Getting Started
37-
38-
```bash
39-
# Clone the repository
40-
git clone https://github.com/stackitcloud/stackit-landing-zone.git
41-
42-
# Navigate to a template
43-
cd examples/01-small-scale
44-
45-
# Fill out the values
46-
47-
# Initialize and apply
48-
terraform init
49-
terraform plan
50-
terraform apply
51-
```
52-
53-
📖 See the [Getting Started Guide](docs/getting-started.md) for detailed instructions.
54-
5517
## 📚 Documentation
5618

5719
- [Getting Started](docs/getting-started.md)
58-
- [Deployment Guide](docs/deployment-guide.md)
59-
60-
## 🔍 Linting (TFLint)
61-
62-
The repository includes automated Terraform linting with `tflint` in GitHub Actions.
63-
64-
- Workflow: `.github/workflows/tflint.yml`
65-
- Config: `.tflint.hcl`
66-
67-
Run locally:
68-
69-
```bash
70-
tflint --init
71-
tflint --recursive
72-
```
73-
74-
Additionally, Terraform variable validations enforce flavor naming patterns for:
75-
76-
- `modules/connectivity-regional` (`firewall_flavor`)
77-
- `modules/devops` (`git_flavor`)
78-
- `modules/landing-zone` (`kubernetes_clusters[*].node_pools[*].machine_type`)
79-
80-
Use `stackit server machine-type list` and the STACKIT Git API docs to verify currently available flavors.
81-
82-
For live validation against current STACKIT SKUs, CI also runs:
83-
84-
```bash
85-
python3 scripts/validate_stackit_flavors.py
86-
```
87-
88-
By default it uses `https://pim.api.stackit.cloud/v2/skus` and fails if a configured flavor is not currently available.
8920

9021
## 🤝 Contributing
9122

docs/deployment-guide.md

Whitespace-only changes.

0 commit comments

Comments
 (0)