Move runtime to core/runtime
Signed-off-by: Derek McGowan <derek@mcg.dev>
This commit is contained in:
		
							
								
								
									
										77
									
								
								core/runtime/events.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										77
									
								
								core/runtime/events.go
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,77 @@ | ||||
| /* | ||||
|    Copyright The containerd Authors. | ||||
|  | ||||
|    Licensed under the Apache License, Version 2.0 (the "License"); | ||||
|    you may not use this file except in compliance with the License. | ||||
|    You may obtain a copy of the License at | ||||
|  | ||||
|        http://www.apache.org/licenses/LICENSE-2.0 | ||||
|  | ||||
|    Unless required by applicable law or agreed to in writing, software | ||||
|    distributed under the License is distributed on an "AS IS" BASIS, | ||||
|    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
|    See the License for the specific language governing permissions and | ||||
|    limitations under the License. | ||||
| */ | ||||
|  | ||||
| package runtime | ||||
|  | ||||
| import ( | ||||
| 	"github.com/containerd/containerd/v2/api/events" | ||||
| 	"github.com/containerd/log" | ||||
| ) | ||||
|  | ||||
| const ( | ||||
| 	// TaskCreateEventTopic for task create | ||||
| 	TaskCreateEventTopic = "/tasks/create" | ||||
| 	// TaskStartEventTopic for task start | ||||
| 	TaskStartEventTopic = "/tasks/start" | ||||
| 	// TaskOOMEventTopic for task oom | ||||
| 	TaskOOMEventTopic = "/tasks/oom" | ||||
| 	// TaskExitEventTopic for task exit | ||||
| 	TaskExitEventTopic = "/tasks/exit" | ||||
| 	// TaskDeleteEventTopic for task delete | ||||
| 	TaskDeleteEventTopic = "/tasks/delete" | ||||
| 	// TaskExecAddedEventTopic for task exec create | ||||
| 	TaskExecAddedEventTopic = "/tasks/exec-added" | ||||
| 	// TaskExecStartedEventTopic for task exec start | ||||
| 	TaskExecStartedEventTopic = "/tasks/exec-started" | ||||
| 	// TaskPausedEventTopic for task pause | ||||
| 	TaskPausedEventTopic = "/tasks/paused" | ||||
| 	// TaskResumedEventTopic for task resume | ||||
| 	TaskResumedEventTopic = "/tasks/resumed" | ||||
| 	// TaskCheckpointedEventTopic for task checkpoint | ||||
| 	TaskCheckpointedEventTopic = "/tasks/checkpointed" | ||||
| 	// TaskUnknownTopic for unknown task events | ||||
| 	TaskUnknownTopic = "/tasks/?" | ||||
| ) | ||||
|  | ||||
| // GetTopic converts an event from an interface type to the specific | ||||
| // event topic id | ||||
| func GetTopic(e interface{}) string { | ||||
| 	switch e.(type) { | ||||
| 	case *events.TaskCreate: | ||||
| 		return TaskCreateEventTopic | ||||
| 	case *events.TaskStart: | ||||
| 		return TaskStartEventTopic | ||||
| 	case *events.TaskOOM: | ||||
| 		return TaskOOMEventTopic | ||||
| 	case *events.TaskExit: | ||||
| 		return TaskExitEventTopic | ||||
| 	case *events.TaskDelete: | ||||
| 		return TaskDeleteEventTopic | ||||
| 	case *events.TaskExecAdded: | ||||
| 		return TaskExecAddedEventTopic | ||||
| 	case *events.TaskExecStarted: | ||||
| 		return TaskExecStartedEventTopic | ||||
| 	case *events.TaskPaused: | ||||
| 		return TaskPausedEventTopic | ||||
| 	case *events.TaskResumed: | ||||
| 		return TaskResumedEventTopic | ||||
| 	case *events.TaskCheckpointed: | ||||
| 		return TaskCheckpointedEventTopic | ||||
| 	default: | ||||
| 		log.L.Warnf("no topic for type %#v", e) | ||||
| 	} | ||||
| 	return TaskUnknownTopic | ||||
| } | ||||
		Reference in New Issue
	
	Block a user
	 Derek McGowan
					Derek McGowan