Commit 1c6e7ef7 authored by Petras, Randy's avatar Petras, Randy
Browse files

Update 4 files

- /terraform/main.tf
- /terraform/outputs.tf
- /terraform/variables.tf
- /main.tf
parent e0b1feaa
Loading
Loading
Loading
Loading
Loading
+11 −11
Original line number Diff line number Diff line
@@ -78,14 +78,14 @@ module "drtsans_lfs_runners_blue" {
EOF
}

#resource "ansible_host" "runner" {
#    inventory_hostname = module.drtsans_lfs_runners_green.ip
#    groups = ["runner_node"]
#    vars = {
#        ansible_user = var.user
#        ansible_host = module.drtsans_lfs_runners_green.ip
#        access_ip_v4 = module.drtsans_lfs_runners_green.ip
#        access_ip    = module.drtsans_lfs_runners_green.ip
#        ip           = module.drtsans_lfs_runners_green.ip
#    }
#}
resource "ansible_host" "runner" {
    inventory_hostname = module.drtsans_lfs_runners_green[0].ip
    groups = ["runner_node"]
    vars = {
        ansible_user = var.user
        ansible_host = module.drtsans_lfs_runners_green[0].ip
        access_ip_v4 = module.drtsans_lfs_runners_green[0].ip
        access_ip    = module.drtsans_lfs_runners_green[0].ip
        ip           = module.drtsans_lfs_runners_green[0].ip
    }
}

terraform/main.tf

deleted100644 → 0
+0 −75
Original line number Diff line number Diff line
terraform {
  required_version = ">= 1.0"
  required_providers {
    openstack = {
      source = "terraform-provider-openstack/openstack"
    }
  }
  backend "http" {} 
}

locals {
  runner_projects_green = var.runner_projects_list
  runner_projects_blue  = var.runner_projects_list
  runner_tokens_green = [
    for name in local.runner_projects_green : var.projects_token_map[name]
  ]
  runner_tokens_blue = [
    for name in local.runner_projects_blue : var.projects_token_map[name]
  ]
}

resource "openstack_networking_secgroup_v2" "secgroup" {
  name        = var.security_group_name
  description = var.security_group_description
}

resource "openstack_networking_secgroup_rule_v2" "allow_prometheus_metrics" {
  direction         = "ingress"
  ethertype         = "IPv4"
  protocol          = "tcp"
  port_range_min    = 9252
  port_range_max    = 9252
  remote_ip_prefix  = "0.0.0.0/0"
  security_group_id = openstack_networking_secgroup_v2.secgroup.id 
}

module "drtsans_lfs_runners_green" {
  source        = "git::https://code.ornl.gov/rse-terraform-modules/ornl-cloud-gitlab-runners//modules/ornl-cloud-gitlab-runners?ref=v0.13"

  prefix                = "drtsans-lfs-runner-green"
  runner_count          = 1
  flavor                = var.flavor
  image_uuid            = var.image_uuid
  ssh_key_file          = var.ssh_key_file  
  volume_size           = 10
  ssh_username          = var.user
  network_name          = var.network_name
  runner_tokens         = local.runner_tokens_green
  runner_tags           = var.runner_multi_builder_tags
  runner_listen_address = ":9252"
  security_groups       = ["default", var.security_group_name]
  user_data             = <<EOF
    echo "TODO: Add monitoring here!"
EOF
}

module "drtsans_lfs_runners_blue" {
  source        = "git::https://code.ornl.gov/rse-terraform-modules/ornl-cloud-gitlab-runners//modules/ornl-cloud-gitlab-runners?ref=v0.13"

  prefix                = "drtsans-lfs-runner-blue"
  runner_count          = 0
  flavor                = var.flavor
  image_uuid            = var.image_uuid
  ssh_key_file          = var.ssh_key_file  
  volume_size           = 40
  ssh_username          = var.user
  network_name          = var.network_name
  runner_tokens         = local.runner_tokens_blue
  runner_tags           = var.runner_multi_builder_tags
  runner_listen_address = ":9252"
  security_groups       = ["default", var.security_group_name]
  user_data             = <<EOF
    echo "TODO: Add monitoring here!"
EOF
}

terraform/outputs.tf

deleted100644 → 0
+0 −7
Original line number Diff line number Diff line
output "ip_runners" {
  value = module.drtsans_lfs_runners_green.ip
}

#output "ip_runners_blue" {
#  value = module.drtsans_lfs_runners_blue.ip
#}

terraform/variables.tf

deleted100644 → 0
+0 −46
Original line number Diff line number Diff line
# -----------------------------------------------------------------------------
# Node Parameters
# These parameters are for modifying the Nodes
# -----------------------------------------------------------------------------

# These will be defined during CI (or a terraform.tfvars file locally)
variable "projects_token_map" {}
variable "ssh_key_file" {}

variable "image" {
  default = "ORC_Ubuntu-20.04_v20220819_1"
}

variable "security_group_name" {
  default = "drtsans-lfs-sg"
}

variable "security_group_description" {
  default = "Security group for drtsans-lfs GitLab Runners"
}

variable "flavor" {
  default = "m2.xlarge"
}

variable "image_uuid" {
  default = "de28c086-edf6-4fe9-8363-5d58e8dd5a71"
}

variable "user" {
  default = "cloud"
}

variable "network_name" {
  default = "OPENRESEARCH.SYSTEMS"
}

variable "runner_multi_builder_tags" {
    default = "drtsans_lfs"
}

variable "runner_projects_list" {
    default = [
        "code.ornl.gov/sns-hfir-scse"
        ]
}