initial commit
Signed-off-by: Jason Hall <imjasonh@gmail.com>
This commit is contained in:
commit
4dc1b58f2f
20 changed files with 1398 additions and 0 deletions
62
terraform/main.tf
Normal file
62
terraform/main.tf
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
resource "google_compute_disk" "forgejo_data" {
|
||||
name = "forgejo-data"
|
||||
type = "pd-standard"
|
||||
size = 20
|
||||
zone = var.zone
|
||||
|
||||
lifecycle {
|
||||
prevent_destroy = true
|
||||
}
|
||||
}
|
||||
|
||||
resource "google_compute_instance" "forgejo" {
|
||||
name = "forgejo"
|
||||
machine_type = "e2-micro"
|
||||
zone = var.zone
|
||||
tags = ["forgejo"]
|
||||
|
||||
boot_disk {
|
||||
initialize_params {
|
||||
image = "cos-cloud/cos-stable"
|
||||
size = 10
|
||||
type = "pd-standard"
|
||||
}
|
||||
}
|
||||
|
||||
attached_disk {
|
||||
source = google_compute_disk.forgejo_data.id
|
||||
device_name = "forgejo-data"
|
||||
}
|
||||
|
||||
network_interface {
|
||||
network = "default"
|
||||
access_config {
|
||||
nat_ip = google_compute_address.forgejo.address
|
||||
}
|
||||
}
|
||||
|
||||
metadata = {
|
||||
user-data = templatefile("${path.module}/../cloud-init/user-data.yaml.tpl", {
|
||||
domain = var.domain
|
||||
forgejo_image = var.forgejo_image
|
||||
caddy_image = var.caddy_image
|
||||
gcs_backup_bucket = google_storage_bucket.backups.name
|
||||
project_id = var.project_id
|
||||
})
|
||||
google-logging-enabled = "true"
|
||||
cos-update-strategy = "update_enabled"
|
||||
enable-oslogin = "TRUE"
|
||||
}
|
||||
|
||||
service_account {
|
||||
email = google_service_account.forgejo.email
|
||||
scopes = ["cloud-platform"]
|
||||
}
|
||||
|
||||
allow_stopping_for_update = true
|
||||
|
||||
depends_on = [
|
||||
google_secret_manager_secret_iam_member.forgejo_secrets,
|
||||
google_storage_bucket_iam_member.backups_writer,
|
||||
]
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue