Skip to content

Commit

Permalink
CRDs helm subchart
Browse files Browse the repository at this point in the history
  • Loading branch information
cheina97 committed Sep 20, 2023
1 parent 8ac593e commit 742a55d
Show file tree
Hide file tree
Showing 32 changed files with 42,563 additions and 13 deletions.
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ purge: manifests ctl
# Generate manifests e.g. CRD, RBAC etc.
manifests: controller-gen
rm -f deployments/liqo/crds/*
$(CONTROLLER_GEN) paths="./apis/..." crd:generateEmbeddedObjectMeta=true output:crd:artifacts:config=deployments/liqo/crds
$(CONTROLLER_GEN) paths="./apis/..." crd:generateEmbeddedObjectMeta=true output:crd:artifacts:config=deployments/liqo/charts/liqo-crds/crds

#Generate RBAC for each controller
rbacs: controller-gen
Expand Down
1 change: 0 additions & 1 deletion apis/ipam/v1alpha1/zz_generated.deepcopy.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 2 additions & 6 deletions deployments/liqo/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,5 @@ type: application

# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
version: "0.1"

# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application.
# AppVersion is commented by default. Uncomment it or add it as extra-args to helm package if you want to release a new Liqo version
# appVersion:
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.1.0
23 changes: 23 additions & 0 deletions deployments/liqo/charts/liqo-crds/.helmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
18 changes: 18 additions & 0 deletions deployments/liqo/charts/liqo-crds/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
apiVersion: v2
name: liqo-crds
description: A Helm chart for Liqo, contains the CRDs

# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application

# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.1.0
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.9.2
creationTimestamp: null
controller-gen.kubebuilder.io/version: v0.13.0
name: ips.ipam.liqo.io
spec:
group: ipam.liqo.io
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.9.2
creationTimestamp: null
controller-gen.kubebuilder.io/version: v0.13.0
name: networks.ipam.liqo.io
spec:
group: ipam.liqo.io
Expand Down
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.13.0
name: configurations.networking.liqo.io
spec:
group: networking.liqo.io
names:
categories:
- liqo
kind: Configuration
listKind: ConfigurationList
plural: configurations
singular: configuration
scope: Namespaced
versions:
- name: v1alpha1
schema:
openAPIV3Schema:
description: Configuration is the Schema for the configuration 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: ConfigurationSpec defines the desired state of Configuration.
properties:
local:
description: Local configuration.
properties:
cidr:
description: CIDR of the cluster.
properties:
external:
description: External CIDR of the cluster.
type: string
pod:
description: Pod CIDR of the cluster.
type: string
type: object
type: object
remote:
description: Remote configuration.
properties:
cidr:
description: CIDR of the cluster.
properties:
external:
description: External CIDR of the cluster.
type: string
pod:
description: Pod CIDR of the cluster.
type: string
type: object
type: object
type: object
status:
description: ConfigurationStatus defines the observed state of Configuration.
properties:
remote:
description: Remote remapped configuration.
properties:
cidr:
description: CIDR of the cluster.
properties:
external:
description: External CIDR of the cluster.
type: string
pod:
description: Pod CIDR of the cluster.
type: string
type: object
type: object
type: object
type: object
served: true
storage: true
subresources:
status: {}
Original file line number Diff line number Diff line change
@@ -0,0 +1,163 @@
---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.13.0
name: connections.networking.liqo.io
spec:
group: networking.liqo.io
names:
categories:
- liqo
kind: Connection
listKind: ConnectionList
plural: connections
singular: connection
scope: Namespaced
versions:
- name: v1alpha1
schema:
openAPIV3Schema:
description: Connection is the Schema for the connection 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: ConnectionSpec defines the desired state of Connection.
properties:
gatewayRef:
description: GatewayRef specifies the reference to the gateway.
properties:
apiVersion:
description: API version of the referent.
type: string
fieldPath:
description: 'If referring to a piece of an object instead of
an entire object, this string should contain a valid JSON/Go
field access statement, such as desiredState.manifest.containers[2].
For example, if the object reference is to a container within
a pod, this would take on a value like: "spec.containers{name}"
(where "name" refers to the name of the container that triggered
the event) or if no container name is specified "spec.containers[2]"
(container with index 2 in this pod). This syntax is chosen
only to have some well-defined way of referencing a part of
an object. TODO: this design is not final and this field is
subject to change in the future.'
type: string
kind:
description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
namespace:
description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
type: string
resourceVersion:
description: 'Specific resourceVersion to which this reference
is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
type: string
uid:
description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids'
type: string
type: object
x-kubernetes-map-type: atomic
ping:
description: Ping specifies the ping configuration.
properties:
enabled:
default: true
description: Enabled specifies whether the ping is enabled or
not.
type: boolean
endpoint:
description: Endpoint specifies the endpoint to ping.
properties:
addresses:
description: Addresses specifies the addresses of the endpoint.
items:
type: string
type: array
port:
description: Port specifies the port of the endpoint.
format: int32
type: integer
protocol:
default: TCP
description: Protocol specifies the protocol of the endpoint.
enum:
- TCP
- UDP
type: string
type: object
type: object
type:
description: Type of the connection.
enum:
- Server
- Client
type: string
required:
- gatewayRef
- type
type: object
status:
description: ConnectionStatus defines the observed state of Connection.
properties:
conditions:
description: Conditions contains the conditions of the connection.
items:
description: ConnectionCondition contains details about state of
the connection.
properties:
lastTransitionTime:
description: LastTransitionTime -> timestamp for when the condition
last transitioned from one status to another.
format: date-time
type: string
message:
description: Message -> Human-readable message indicating details
about the last status transition.
type: string
reason:
description: Reason -> Machine-readable, UpperCamelCase text
indicating the reason for the condition's last transition.
type: string
status:
default: Unknown
description: Status of the condition.
enum:
- "True"
- "False"
- Unknown
type: string
type:
description: Type of the connection condition.
enum:
- Established
- Pending
- Denied
- Error
type: string
required:
- status
- type
type: object
type: array
type: object
type: object
served: true
storage: true
subresources:
status: {}
Loading

0 comments on commit 742a55d

Please sign in to comment.