From a4e9c11ef9cdf304c40035888d8bc88766a4f5ba Mon Sep 17 00:00:00 2001 From: Mahmood Ali Date: Mon, 26 Jul 2021 11:25:28 -0400 Subject: [PATCH] hcl: add new cores resources field --- jobspec/parse_task.go | 1 + jobspec/parse_test.go | 24 +++++++++++++++++++++++ jobspec/test-fixtures/resources-cores.hcl | 14 +++++++++++++ 3 files changed, 39 insertions(+) create mode 100644 jobspec/test-fixtures/resources-cores.hcl diff --git a/jobspec/parse_task.go b/jobspec/parse_task.go index 71e6af26b448..ff81b6ba66a8 100644 --- a/jobspec/parse_task.go +++ b/jobspec/parse_task.go @@ -551,6 +551,7 @@ func parseResources(result *api.Resources, list *ast.ObjectList) error { "memory_max", "network", "device", + "cores", } if err := checkHCLKeys(listVal, valid); err != nil { return multierror.Prefix(err, "resources ->") diff --git a/jobspec/parse_test.go b/jobspec/parse_test.go index 852a4f669aa9..0f563045cfda 100644 --- a/jobspec/parse_test.go +++ b/jobspec/parse_test.go @@ -1699,6 +1699,30 @@ func TestParse(t *testing.T) { }, false, }, + { + "resources-cores.hcl", + &api.Job{ + ID: stringToPtr("cores-test"), + Name: stringToPtr("cores-test"), + TaskGroups: []*api.TaskGroup{ + { + Count: intToPtr(5), + Name: stringToPtr("group"), + Tasks: []*api.Task{ + { + Name: "task", + Driver: "docker", + Resources: &api.Resources{ + Cores: intToPtr(4), + MemoryMB: intToPtr(128), + }, + }, + }, + }, + }, + }, + false, + }, } for _, tc := range cases { diff --git a/jobspec/test-fixtures/resources-cores.hcl b/jobspec/test-fixtures/resources-cores.hcl new file mode 100644 index 000000000000..f3e11e93e1f7 --- /dev/null +++ b/jobspec/test-fixtures/resources-cores.hcl @@ -0,0 +1,14 @@ +job "cores-test" { + group "group" { + count = 5 + + task "task" { + driver = "docker" + + resources { + cores = 4 + memory = 128 + } + } + } +}