- iot/api/v1alpha1/device_types.go — CRD IoTDevice - iot/api/v1alpha1/groupversion_info.go — API group iot.kube5s.ru/v1alpha1 - iot/api/v1alpha1/zz_generated.deepcopy.go — deepcopy (controller-gen) - iot/config/crd/bases/iot.kube5s.ru_iotdevices.yaml — CRD манифест - iot/controllers/iotdevice_controller.go — Reconcile: Secret с MQTT credentials - main.go — регистрация IoT схемы и IoTDeviceReconciler go build ./... — ошибок нет
31 lines
1.2 KiB
Go
31 lines
1.2 KiB
Go
// Создано: 2026-04-04
|
||
// groupversion_info.go — регистрация API group iot.kube5s.ru/v1alpha1.
|
||
// ВАЖНО: группа намеренно отдельная от sless.kube5s.ru — при выносе IoT в
|
||
// отдельную репу CRD не будет конфликтовать с sless CRD.
|
||
|
||
// Package v1alpha1 содержит API Schema definitions для группы iot.kube5s.ru.
|
||
// +kubebuilder:object:generate=true
|
||
// +groupName=iot.kube5s.ru
|
||
package v1alpha1
|
||
|
||
import (
|
||
"k8s.io/apimachinery/pkg/runtime/schema"
|
||
"sigs.k8s.io/controller-runtime/pkg/scheme"
|
||
)
|
||
|
||
var (
|
||
// GroupVersion — API group/version для IoT ресурсов.
|
||
// Отдельный от sless.kube5s.ru — для изоляции и будущего разделения репозиториев.
|
||
GroupVersion = schema.GroupVersion{Group: "iot.kube5s.ru", Version: "v1alpha1"}
|
||
|
||
// SchemeBuilder регистрирует Go-типы в GroupVersionKind scheme.
|
||
SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}
|
||
|
||
// AddToScheme добавляет типы этой API группы в scheme manager'а.
|
||
AddToScheme = SchemeBuilder.AddToScheme
|
||
)
|
||
|
||
func init() {
|
||
SchemeBuilder.Register(&IoTDevice{}, &IoTDeviceList{})
|
||
}
|