Explicitly set task groups network when networkAccess is false
Previously, updating an environment from with to without network access would leave the network resource in the task group as they were before.
This commit is contained in:

committed by
Tobias Kantusch

parent
b990df7b9d
commit
1be744f2d4
@ -125,6 +125,8 @@ func configureNetwork(taskGroup *nomadApi.TaskGroup, networkAccess bool, exposed
|
||||
// Somehow, we can't set the network mode to none in the NetworkResource on task group level.
|
||||
// See https://github.com/hashicorp/nomad/issues/10540
|
||||
task.Config["network_mode"] = "none"
|
||||
// Explicitly set Networks to signal Nomad to remove the possibly existing networkResource
|
||||
taskGroup.Networks = []*nomadApi.NetworkResource{}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -64,6 +64,7 @@ func createTestJob() (*nomadApi.Job, *nomadApi.Job) {
|
||||
taskGroupName := fmt.Sprintf(nomad.TaskGroupNameFormat, *job.ID)
|
||||
taskGroup.Name = &taskGroupName
|
||||
taskGroup.Tasks = []*nomadApi.Task{task}
|
||||
taskGroup.Networks = []*nomadApi.NetworkResource{}
|
||||
job.TaskGroups = []*nomadApi.TaskGroup{taskGroup}
|
||||
return job, base
|
||||
}
|
||||
@ -209,6 +210,7 @@ func TestConfigureTaskWhenNoTaskExists(t *testing.T) {
|
||||
expectedImage := "python:latest"
|
||||
expectedTask.Config = map[string]interface{}{"image": expectedImage, "network_mode": "none"}
|
||||
expectedTaskGroup.Tasks = []*nomadApi.Task{expectedTask}
|
||||
expectedTaskGroup.Networks = []*nomadApi.NetworkResource{}
|
||||
|
||||
configureTask(taskGroup, expectedTask.Name,
|
||||
uint(*expectedResources.CPU), uint(*expectedResources.MemoryMB),
|
||||
@ -232,6 +234,7 @@ func TestConfigureTaskWhenTaskExists(t *testing.T) {
|
||||
expectedTask.Config["image"] = expectedImage
|
||||
expectedTask.Config["network_mode"] = "none"
|
||||
expectedTaskGroup.Tasks = []*nomadApi.Task{&expectedTask}
|
||||
expectedTaskGroup.Networks = []*nomadApi.NetworkResource{}
|
||||
|
||||
configureTask(taskGroup, expectedTask.Name,
|
||||
uint(*expectedResources.CPU), uint(*expectedResources.MemoryMB),
|
||||
|
Reference in New Issue
Block a user