diff --git a/terraform/main.tf b/terraform/main.tf new file mode 100644 index 0000000..c828a90 --- /dev/null +++ b/terraform/main.tf @@ -0,0 +1,42 @@ +resource "google_project_service" "compute" { + project = var.project_id + service = "compute.googleapis.com" + disable_on_destroy = false +} + +resource "google_compute_firewall" "gitea_allow" { + name = "allow-gitea-3000-ssh" + network = "default" + direction = "INGRESS" + allow { + protocol = "tcp" + ports = ["22", "3000"] + } + source_ranges = ["0.0.0.0/0"] + target_tags = ["gitea"] +} + +resource "google_compute_instance" "gitea" { + name = "gitea" + machine_type = "e2-micro" + tags = ["gitea"] + boot_disk { + initialize_params { + image = "projects/fedora-cloud/global/images/family/fedora-cloud-base" + size = 30 + type = "pd-standard" + } + } + network_interface { + network = "default" + access_config {} + } + metadata = { + startup-script = file("${path.module}/startup.sh") + } + depends_on = [google_project_service.compute] +} + +output "external_ip" { + value = google_compute_instance.gitea.network_interface[0].access_config[0].nat_ip +}