mirror of
https://github.com/kemko/nomad.git
synced 2026-01-06 18:35:44 +03:00
validate that tasks don't contain slashes
This commit is contained in:
@@ -1741,6 +1741,9 @@ func (t *Task) Validate() error {
|
||||
if t.Name == "" {
|
||||
mErr.Errors = append(mErr.Errors, errors.New("Missing task name"))
|
||||
}
|
||||
if strings.ContainsAny(t.Name, `/\`) {
|
||||
mErr.Errors = append(mErr.Errors, errors.New("Task name can not include slashes"))
|
||||
}
|
||||
if t.Driver == "" {
|
||||
mErr.Errors = append(mErr.Errors, errors.New("Missing task driver"))
|
||||
}
|
||||
|
||||
@@ -258,6 +258,13 @@ func TestTask_Validate(t *testing.T) {
|
||||
t.Fatalf("err: %s", err)
|
||||
}
|
||||
|
||||
task = &Task{Name: "web/foo"}
|
||||
err = task.Validate()
|
||||
mErr = err.(*multierror.Error)
|
||||
if !strings.Contains(mErr.Errors[0].Error(), "slashes") {
|
||||
t.Fatalf("err: %s", err)
|
||||
}
|
||||
|
||||
task = &Task{
|
||||
Name: "web",
|
||||
Driver: "docker",
|
||||
|
||||
Reference in New Issue
Block a user