diff --git a/environment/job.go b/environment/job.go index c45659f..1850b4c 100644 --- a/environment/job.go +++ b/environment/job.go @@ -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{} } } diff --git a/environment/job_test.go b/environment/job_test.go index 35f2a67..ab01ad7 100644 --- a/environment/job_test.go +++ b/environment/job_test.go @@ -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),