github.com/hernad/nomad@v1.6.112/e2e/oversubscription/testdata/exec.nomad (about)

     1  # Copyright (c) HashiCorp, Inc.
     2  # SPDX-License-Identifier: MPL-2.0
     3  
     4  job "oversubscription-exec" {
     5    datacenters = ["dc1"]
     6  
     7    constraint {
     8      attribute = "${attr.kernel.name}"
     9      value     = "linux"
    10    }
    11  
    12    group "group" {
    13      task "task" {
    14        driver = "exec"
    15  
    16        config {
    17          command = "/bin/sh"
    18          args    = ["-c", "cat /proc/self/cgroup  | grep memory | cut -d: -f3 | tee ${NOMAD_ALLOC_DIR}/tmp/cgroup_name; sleep 1000"]
    19        }
    20  
    21        resources {
    22          cpu        = 500
    23          memory     = 20
    24          memory_max = 30
    25        }
    26      }
    27  
    28      task "cgroup-fetcher" {
    29        driver = "raw_exec"
    30  
    31        config {
    32          command = "/bin/sh"
    33          args = ["-c", <<EOF
    34  until [ -s "${NOMAD_ALLOC_DIR}/tmp/cgroup_name" ]; do
    35    sleep 0.1
    36  done
    37  
    38  cat "/sys/fs/cgroup/memory/$(cat "${NOMAD_ALLOC_DIR}/tmp/cgroup_name" )/memory.limit_in_bytes" \
    39    | tee "${NOMAD_ALLOC_DIR}/tmp/memory.limit_in_bytes"
    40  
    41  sleep 1000
    42  
    43  EOF
    44          ]
    45        }
    46  
    47        resources {
    48          cpu    = 500
    49          memory = 20
    50        }
    51      }
    52    }
    53  }