Skip to content
This repository has been archived by the owner on Apr 12, 2022. It is now read-only.

Commit

Permalink
Set Firmament TaskType if pod has taskType label.
Browse files Browse the repository at this point in the history
Affected modules: pkg/k8sclient

Change-Id: I24d7f9f29882588bda30891cccc4428ee14704e6
  • Loading branch information
ICGog committed Jul 13, 2017
1 parent 5add638 commit 6fb8be5
Showing 1 changed file with 24 additions and 4 deletions.
28 changes: 24 additions & 4 deletions pkg/k8sclient/podwatcher.go
Original file line number Diff line number Diff line change
Expand Up @@ -379,10 +379,6 @@ func (this *PodWatcher) addTaskToJob(pod *Pod, jd *firmament.JobDescriptor) *fir
},
}

setTaskNetworkRequirement(task, pod.NodeSelector)

task.LabelSelectors = this.getFirmamentLabelSelectorFromNodeSelectorMap(SortNodeSelectors(pod.NodeSelector))

// Add labels.
for label, value := range pod.Labels {
task.Labels = append(task.Labels,
Expand All @@ -391,6 +387,11 @@ func (this *PodWatcher) addTaskToJob(pod *Pod, jd *firmament.JobDescriptor) *fir
Value: value,
})
}

setTaskNetworkRequirement(task, pod.NodeSelector)
task.LabelSelectors = this.getFirmamentLabelSelectorFromNodeSelectorMap(SortNodeSelectors(pod.NodeSelector))
setTaskType(task)

if jd.RootTask == nil {
task.Uid = this.generateTaskID(jd.Name, 0)
jd.RootTask = task
Expand Down Expand Up @@ -466,3 +467,22 @@ func setTaskNetworkRequirement(td *firmament.TaskDescriptor, nodeSelectors NodeS
}
}
}

func setTaskType(td *firmament.TaskDescriptor) {
for _, label := range td.Labels {
if label.Key == "taskType" {
switch label.Value {
case "Sheep":
td.TaskType = firmament.TaskDescriptor_SHEEP
case "Rabbit":
td.TaskType = firmament.TaskDescriptor_RABBIT
case "Devil":
td.TaskType = firmament.TaskDescriptor_DEVIL
case "Turtle":
td.TaskType = firmament.TaskDescriptor_TURTLE
default:
glog.Errorf("Unexpected task type %s for task %s", label.Value, td.Name)
}
}
}
}

0 comments on commit 6fb8be5

Please sign in to comment.