-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
New Features: - Added Site CRD - Added Allocation CRD - Added Subnet CRD Improvements: - Disabling CalicoWatcher when Calico CNI not detected - Added */finalizers resource for all CRDs' RBAC Bug Fixes: - Fixed finalizers names for all CRDs - Minor fixes and linter warnings fixes Co-authored-by: Artashes Balabekyan <[email protected]>
- Loading branch information
1 parent
745a016
commit b708889
Showing
9 changed files
with
751 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
78 changes: 78 additions & 0 deletions
78
deploy/charts/netris-operator/crds/k8s.netris.ai_allocationmeta.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,78 @@ | ||
|
||
--- | ||
apiVersion: apiextensions.k8s.io/v1 | ||
kind: CustomResourceDefinition | ||
metadata: | ||
annotations: | ||
controller-gen.kubebuilder.io/version: v0.6.1 | ||
creationTimestamp: null | ||
name: allocationmeta.k8s.netris.ai | ||
spec: | ||
group: k8s.netris.ai | ||
names: | ||
kind: AllocationMeta | ||
listKind: AllocationMetaList | ||
plural: allocationmeta | ||
singular: allocationmeta | ||
scope: Namespaced | ||
versions: | ||
- name: v1alpha1 | ||
schema: | ||
openAPIV3Schema: | ||
description: AllocationMeta is the Schema for the allocationmeta API | ||
properties: | ||
apiVersion: | ||
description: 'APIVersion defines the versioned schema of this representation | ||
of an object. Servers should convert recognized schemas to the latest | ||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' | ||
type: string | ||
kind: | ||
description: 'Kind is a string value representing the REST resource this | ||
object represents. Servers may infer this from the endpoint the client | ||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' | ||
type: string | ||
metadata: | ||
type: object | ||
spec: | ||
description: AllocationMetaSpec defines the desired state of AllocationMeta | ||
properties: | ||
allocationGeneration: | ||
format: int64 | ||
type: integer | ||
allocationName: | ||
type: string | ||
id: | ||
type: integer | ||
imported: | ||
description: 'INSERT ADDITIONAL SPEC FIELDS - desired state of cluster | ||
Important: Run "make" to regenerate code after modifying this file' | ||
type: boolean | ||
prefix: | ||
type: string | ||
reclaimPolicy: | ||
type: boolean | ||
tenant: | ||
type: string | ||
required: | ||
- allocationGeneration | ||
- allocationName | ||
- id | ||
- imported | ||
- prefix | ||
- reclaimPolicy | ||
- tenant | ||
type: object | ||
status: | ||
description: AllocationMetaStatus defines the observed state of AllocationMeta | ||
type: object | ||
type: object | ||
served: true | ||
storage: true | ||
subresources: | ||
status: {} | ||
status: | ||
acceptedNames: | ||
kind: "" | ||
plural: "" | ||
conditions: [] | ||
storedVersions: [] |
82 changes: 82 additions & 0 deletions
82
deploy/charts/netris-operator/crds/k8s.netris.ai_allocations.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
|
||
--- | ||
apiVersion: apiextensions.k8s.io/v1 | ||
kind: CustomResourceDefinition | ||
metadata: | ||
annotations: | ||
controller-gen.kubebuilder.io/version: v0.6.1 | ||
creationTimestamp: null | ||
name: allocations.k8s.netris.ai | ||
spec: | ||
group: k8s.netris.ai | ||
names: | ||
kind: Allocation | ||
listKind: AllocationList | ||
plural: allocations | ||
singular: allocation | ||
scope: Namespaced | ||
versions: | ||
- additionalPrinterColumns: | ||
- jsonPath: .spec.prefix | ||
name: Prefix | ||
type: string | ||
- jsonPath: .spec.tenant | ||
name: Tenant | ||
type: string | ||
- jsonPath: .status.status | ||
name: Status | ||
type: string | ||
- jsonPath: .metadata.creationTimestamp | ||
name: Age | ||
type: date | ||
name: v1alpha1 | ||
schema: | ||
openAPIV3Schema: | ||
description: Allocation is the Schema for the allocations API | ||
properties: | ||
apiVersion: | ||
description: 'APIVersion defines the versioned schema of this representation | ||
of an object. Servers should convert recognized schemas to the latest | ||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' | ||
type: string | ||
kind: | ||
description: 'Kind is a string value representing the REST resource this | ||
object represents. Servers may infer this from the endpoint the client | ||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' | ||
type: string | ||
metadata: | ||
type: object | ||
spec: | ||
description: AllocationSpec defines the desired state of Allocation | ||
properties: | ||
prefix: | ||
pattern: (^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\/([0-9]|[12]\d|3[0-2]))?$)|(^((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?(\/([1-9]|[1-5][0-9]|6[0-4]))?$) | ||
type: string | ||
tenant: | ||
type: string | ||
required: | ||
- prefix | ||
- tenant | ||
type: object | ||
status: | ||
description: AllocationStatus defines the observed state of Allocation | ||
properties: | ||
message: | ||
type: string | ||
status: | ||
description: 'INSERT ADDITIONAL STATUS FIELD - define observed state | ||
of cluster Important: Run "make" to regenerate code after modifying | ||
this file' | ||
type: string | ||
type: object | ||
type: object | ||
served: true | ||
storage: true | ||
subresources: | ||
status: {} | ||
status: | ||
acceptedNames: | ||
kind: "" | ||
plural: "" | ||
conditions: [] | ||
storedVersions: [] |
90 changes: 90 additions & 0 deletions
90
deploy/charts/netris-operator/crds/k8s.netris.ai_sitemeta.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,90 @@ | ||
|
||
--- | ||
apiVersion: apiextensions.k8s.io/v1 | ||
kind: CustomResourceDefinition | ||
metadata: | ||
annotations: | ||
controller-gen.kubebuilder.io/version: v0.6.1 | ||
creationTimestamp: null | ||
name: sitemeta.k8s.netris.ai | ||
spec: | ||
group: k8s.netris.ai | ||
names: | ||
kind: SiteMeta | ||
listKind: SiteMetaList | ||
plural: sitemeta | ||
singular: sitemeta | ||
scope: Namespaced | ||
versions: | ||
- name: v1alpha1 | ||
schema: | ||
openAPIV3Schema: | ||
description: SiteMeta is the Schema for the sitemeta API | ||
properties: | ||
apiVersion: | ||
description: 'APIVersion defines the versioned schema of this representation | ||
of an object. Servers should convert recognized schemas to the latest | ||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' | ||
type: string | ||
kind: | ||
description: 'Kind is a string value representing the REST resource this | ||
object represents. Servers may infer this from the endpoint the client | ||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' | ||
type: string | ||
metadata: | ||
type: object | ||
spec: | ||
description: SiteMetaSpec defines the desired state of SiteMeta | ||
properties: | ||
aclDefaultPolicy: | ||
type: string | ||
id: | ||
type: integer | ||
imported: | ||
description: 'INSERT ADDITIONAL SPEC FIELDS - desired state of cluster | ||
Important: Run "make" to regenerate code after modifying this file' | ||
type: boolean | ||
publicAsn: | ||
type: integer | ||
reclaimPolicy: | ||
type: boolean | ||
rohAsn: | ||
type: integer | ||
rohRoutingProfile: | ||
type: integer | ||
siteGeneration: | ||
format: int64 | ||
type: integer | ||
siteMesh: | ||
type: string | ||
siteName: | ||
type: string | ||
vmAsn: | ||
type: integer | ||
required: | ||
- aclDefaultPolicy | ||
- id | ||
- imported | ||
- publicAsn | ||
- reclaimPolicy | ||
- rohAsn | ||
- rohRoutingProfile | ||
- siteGeneration | ||
- siteMesh | ||
- siteName | ||
- vmAsn | ||
type: object | ||
status: | ||
description: SiteMetaStatus defines the observed state of SiteMeta | ||
type: object | ||
type: object | ||
served: true | ||
storage: true | ||
subresources: | ||
status: {} | ||
status: | ||
acceptedNames: | ||
kind: "" | ||
plural: "" | ||
conditions: [] | ||
storedVersions: [] |
123 changes: 123 additions & 0 deletions
123
deploy/charts/netris-operator/crds/k8s.netris.ai_sites.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,123 @@ | ||
|
||
--- | ||
apiVersion: apiextensions.k8s.io/v1 | ||
kind: CustomResourceDefinition | ||
metadata: | ||
annotations: | ||
controller-gen.kubebuilder.io/version: v0.6.1 | ||
creationTimestamp: null | ||
name: sites.k8s.netris.ai | ||
spec: | ||
group: k8s.netris.ai | ||
names: | ||
kind: Site | ||
listKind: SiteList | ||
plural: sites | ||
singular: site | ||
scope: Namespaced | ||
versions: | ||
- additionalPrinterColumns: | ||
- jsonPath: .spec.publicAsn | ||
name: Public ASN | ||
type: integer | ||
- jsonPath: .spec.rohAsn | ||
name: ROH ASN | ||
type: integer | ||
- jsonPath: .spec.vmAsn | ||
name: VM ASN | ||
type: integer | ||
- jsonPath: .spec.rohRoutingProfile | ||
name: ROH Routing Profile | ||
type: string | ||
- jsonPath: .spec.siteMesh | ||
name: Site Mesh | ||
type: string | ||
- jsonPath: .spec.aclDefaultPolicy | ||
name: ACL Default Policy | ||
type: string | ||
- jsonPath: .status.status | ||
name: Status | ||
type: string | ||
- jsonPath: .metadata.creationTimestamp | ||
name: Age | ||
type: date | ||
name: v1alpha1 | ||
schema: | ||
openAPIV3Schema: | ||
description: Site is the Schema for the sites API | ||
properties: | ||
apiVersion: | ||
description: 'APIVersion defines the versioned schema of this representation | ||
of an object. Servers should convert recognized schemas to the latest | ||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' | ||
type: string | ||
kind: | ||
description: 'Kind is a string value representing the REST resource this | ||
object represents. Servers may infer this from the endpoint the client | ||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' | ||
type: string | ||
metadata: | ||
type: object | ||
spec: | ||
description: SiteSpec defines the desired state of Site | ||
properties: | ||
aclDefaultPolicy: | ||
enum: | ||
- permit | ||
- deny | ||
type: string | ||
publicAsn: | ||
maximum: 65534 | ||
minimum: 0 | ||
type: integer | ||
rohAsn: | ||
maximum: 65534 | ||
minimum: 0 | ||
type: integer | ||
rohRoutingProfile: | ||
enum: | ||
- default | ||
- default_agg | ||
- full | ||
type: string | ||
siteMesh: | ||
enum: | ||
- disabled | ||
- hub | ||
- spoke | ||
- dspoke | ||
type: string | ||
vmAsn: | ||
maximum: 65534 | ||
minimum: 0 | ||
type: integer | ||
required: | ||
- aclDefaultPolicy | ||
- publicAsn | ||
- rohAsn | ||
- rohRoutingProfile | ||
- siteMesh | ||
- vmAsn | ||
type: object | ||
status: | ||
description: SiteStatus defines the observed state of Site | ||
properties: | ||
message: | ||
type: string | ||
status: | ||
description: 'INSERT ADDITIONAL STATUS FIELD - define observed state | ||
of cluster Important: Run "make" to regenerate code after modifying | ||
this file' | ||
type: string | ||
type: object | ||
type: object | ||
served: true | ||
storage: true | ||
subresources: | ||
status: {} | ||
status: | ||
acceptedNames: | ||
kind: "" | ||
plural: "" | ||
conditions: [] | ||
storedVersions: [] |
Oops, something went wrong.