최신판 |
당신의 편집 |
29번째 줄: |
29번째 줄: |
|
| |
|
| ===BootstrapTemplate 리소스=== | | ===BootstrapTemplate 리소스=== |
| Bootstrap 리소스에 대해, 해당하는 BootstrapTemplate 리소스를 추가해야 합니다:
| |
|
| |
| <syntaxhighlight lang='go'>
| |
| // PhippyBootstrapConfigTemplateSpec는 PhippyBootstrapConfigTemplate의 원하는 상태를 정의합니다.
| |
| type PhippyBootstrapConfigTemplateSpec struct {
| |
| Template PhippyBootstrapTemplateResource `json:"template"`
| |
| }
| |
|
| |
| // +kubebuilder:object:root=true
| |
| // +kubebuilder:resource:path=phippybootstrapconfigtemplates,scope=Namespaced,categories=cluster-api,shortName=pbct
| |
| // +kubebuilder:storageversion
| |
|
| |
| // PhippyBootstrapConfigTemplate는 Phippy Bootstrap API의 스키마입니다.
| |
| type PhippyBootstrapConfigTemplate struct {
| |
| metav1.TypeMeta `json:",inline"`
| |
| metav1.ObjectMeta `json:"metadata,omitempty"`
| |
|
| |
| Spec PhippyBootstrapConfigTemplateSpec `json:"spec,omitempty"`
| |
| }
| |
|
| |
| type PhippyBootstrapConfigTemplateResource struct {
| |
| // 표준 객체의 메타데이터.
| |
| // 참고 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
| |
| // +optional
| |
| ObjectMeta clusterv1.ObjectMeta `json:"metadata,omitempty"`
| |
|
| |
| Spec PhippyBootstrapConfigSpec `json:"spec"`
| |
| }
| |
| </syntaxhighlight>
| |
|
| |
| 템플릿의 CRD 이름은 <code>sigs.k8s.io/cluster-api/util/contract.CalculateCRDName(Group, Kind)</code>에서 생성된 형식을 가져야 합니다.
| |
|
| |
| ===List 리소스=== | | ===List 리소스=== |
| 리소스가 있다면, 그에 대한 리스트 리소스도 추가합니다. 예시:
| |
|
| |
| <syntaxhighlight lang='go'>
| |
| //+kubebuilder:object:root=true
| |
|
| |
| // PhippyBootstrapConfigList는 PhippyBootstrapConfig 객체 리스트를 포함합니다.
| |
| type PhippyBootstrapConfigList struct {
| |
| metav1.TypeMeta `json:",inline"`
| |
| metav1.ListMeta `json:"metadata,omitempty"`
| |
| Items []PhippyBootstrapConfig `json:"items"`
| |
| }
| |
|
| |
| //+kubebuilder:object:root=true
| |
|
| |
| // PhippyBootstrapConfigTemplateList는 PhippyBootstrapConfigTemplate 객체 리스트를 포함합니다.
| |
| type PhippyBootstrapConfigTemplateList struct {
| |
| metav1.TypeMeta `json:",inline"`
| |
| metav1.ListMeta `json:"metadata,omitempty"`
| |
| Items []PhippyBootstrapConfigTemplate `json:"items"`
| |
| }
| |
| </syntaxhighlight>
| |
|
| |
| ===부트스트랩 시크릿=== | | ===부트스트랩 시크릿=== |
| 부트스트랩 데이터가 포함된 <code>Secret</code>은 다음 조건을 충족해야 합니다: | | 부트스트랩 데이터가 포함된 <code>Secret</code>은 다음 조건을 충족해야 합니다: |