feat(terraform): Migrating old structures
[csit.git] / fdio.infra.terraform / terraform-nomad-vpp-device / conf / nomad / vpp-device.hcl.tftpl
@@ -12,51 +12,68 @@ job "${job_name}" {
   # "service". For a full list of job types and their differences, please see
   # the online documentation.
   #
-  # For more information, please see the online documentation at:
-  #
-  #     https://www.nomadproject.io/docs/jobspec/schedulers.html
-  #
   type        = "system"
 
   # The "group" stanza defines a series of tasks that should be co-located on
   # the same Nomad client. Any task within a group will be placed on the same
   # client.
   #
-  # For more information and examples on the "group" stanza, please see
-  # the online documentation at:
+  # https://www.nomadproject.io/docs/job-specification/group
   #
-  #     https://www.nomadproject.io/docs/job-specification/group.html
-  #
-  group "prod-group1-csit-shim-amd" {
+  group "csit-shim-amd-group-1" {
     # The "count" parameter specifies the number of the task groups that should
-    # be running under this group. This value must be non-negative and defaults
-    # to 1.
-    count            = ${group_count}
+    # be running under this group. This value must be non-negative.
+    count = ${group_count}
 
+    # The constraint allows restricting the set of eligible nodes. Constraints
+    # may filter on attributes or client metadata.
+    #
+    # https://www.nomadproject.io/docs/job-specification/constraint
+    #
     constraint {
-      attribute      = "$${node.class}"
-      value          = "csit"
+      attribute = "$${node.class}"
+      value     = "csit"
     }
 
+    # The restart stanza configures a tasks's behavior on task failure. Restarts
+    # happen on the client that is running the task.
+    #
+    # https://www.nomadproject.io/docs/job-specification/restart
+    #
     restart {
-      interval       = "1m"
-      attempts       = 3
-      delay          = "15s"
-      mode           = "delay"
+      interval = "1m"
+      attempts = 3
+      delay    = "15s"
+      mode     = "delay"
+    }
+
+    # The network stanza specifies the networking requirements for the task
+    # group, including the network mode and port allocations. When scheduling
+    # jobs in Nomad they are provisioned across your fleet of machines along
+    # with other jobs and services. Because you don't know in advance what host
+    # your job will be provisioned on, Nomad will provide your tasks with
+    # network configuration when they start up.
+    #
+    # https://www.nomadproject.io/docs/job-specification/network
+    #
+    network {
+      port "ssh" {
+          static = 6022
+      }
+      port "ssh2" {
+          static = 6023
+      }
     }
 
     # The "task" stanza creates an individual unit of work, such as a Docker
     # container, web application, or batch processing.
     #
-    # For more information and examples on the "task" stanza, please see
-    # the online documentation at:
-    #
-    #     https://www.nomadproject.io/docs/job-specification/task.html
+    # https://www.nomadproject.io/docs/job-specification/task
     #
-    task "prod-task1-csit-shim-amd" {
+    task "csit-shim-amd-task-1" {
       # The "driver" parameter specifies the task driver that should be used to
       # run the task.
-      driver         = "docker"
+      driver = "docker"
 
       # The "config" stanza specifies the driver configuration, which is passed
       # directly to the driver to start the task. The details of configurations
@@ -77,56 +94,69 @@ job "${job_name}" {
       # This ensures the task will execute on a machine that contains enough
       # resource capacity.
       #
-      # For more information and examples on the "resources" stanza, please see
-      # the online documentation at:
-      #
-      #     https://www.nomadproject.io/docs/job-specification/resources.html
+      # https://www.nomadproject.io/docs/job-specification/resources
       #
       resources {
-        cpu          = ${cpu}
-        memory       = ${mem}
-        network {
-          port "ssh" {
-              static = 6022
-          }
-          port "ssh2" {
-              static = 6023
-          }
-        }
+        cpu    = ${cpu}
+        memory = ${memory}
       }
     }
   }
 
-  group "prod-group1-csit-shim-arm" {
+  group "csit-shim-arm-group-1" {
     # The "count" parameter specifies the number of the task groups that should
-    # be running under this group. This value must be non-negative and defaults
-    # to 1.
-    count            = ${group_count}
+    # be running under this group. This value must be non-negative.
+    count = ${group_count}
 
+    # The constraint allows restricting the set of eligible nodes. Constraints
+    # may filter on attributes or client metadata.
+    #
+    # https://www.nomadproject.io/docs/job-specification/constraint
+    #
     constraint {
-      attribute      = "$${node.class}"
-      value          = "csitarm"
+      attribute = "$${node.class}"
+      value     = "csitarm"
     }
 
+    # The restart stanza configures a tasks's behavior on task failure. Restarts
+    # happen on the client that is running the task.
+    #
+    # https://www.nomadproject.io/docs/job-specification/restart
+    #
     restart {
-      interval       = "1m"
-      attempts       = 3
-      delay          = "15s"
-      mode           = "delay"
+      interval = "1m"
+      attempts = 3
+      delay    = "15s"
+      mode     = "delay"
+    }
+
+    # The network stanza specifies the networking requirements for the task
+    # group, including the network mode and port allocations. When scheduling
+    # jobs in Nomad they are provisioned across your fleet of machines along
+    # with other jobs and services. Because you don't know in advance what host
+    # your job will be provisioned on, Nomad will provide your tasks with
+    # network configuration when they start up.
+    #
+    # https://www.nomadproject.io/docs/job-specification/network
+    #
+    network {
+      port "ssh" {
+          static = 6022
+      }
+      port "ssh2" {
+          static = 6023
+      }
     }
 
     # The "task" stanza creates an individual unit of work, such as a Docker
     # container, web application, or batch processing.
     #
-    # For more information and examples on the "task" stanza, please see
-    # the online documentation at:
-    #
-    #     https://www.nomadproject.io/docs/job-specification/task.html
+    # https://www.nomadproject.io/docs/job-specification/task
     #
-    task "prod-task1-csit-shim-arm" {
+    task "csit-shim-arm-task-1" {
       # The "driver" parameter specifies the task driver that should be used to
       # run the task.
-      driver         = "docker"
+      driver = "docker"
 
       # The "config" stanza specifies the driver configuration, which is passed
       # directly to the driver to start the task. The details of configurations
@@ -147,22 +177,11 @@ job "${job_name}" {
       # This ensures the task will execute on a machine that contains enough
       # resource capacity.
       #
-      # For more information and examples on the "resources" stanza, please see
-      # the online documentation at:
-      #
-      #     https://www.nomadproject.io/docs/job-specification/resources.html
+      # https://www.nomadproject.io/docs/job-specification/resources
       #
       resources {
-        cpu          = ${cpu}
-        memory       = ${mem}
-        network {
-          port "ssh" {
-              static = 6022
-          }
-          port "ssh2" {
-              static = 6023
-          }
-        }
+        cpu    = ${cpu}
+        memory = ${memory}
       }
     }
   }