Skip to content

Commit 07be69e

Browse files
committed
Updated Provider to Crossplane V2
1 parent 6262cdb commit 07be69e

File tree

5 files changed

+281
-0
lines changed

5 files changed

+281
-0
lines changed

packs/crossplane-2.0.2/README.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Crossplane
2+
3+
Crossplane is an open source Kubernetes extension that transforms your Kubernetes cluster into a universal control plane.
4+
5+
Crossplane lets you manage anything, anywhere, all through standard Kubernetes APIs. Crossplane can even let you order a pizza directly from Kubernetes. If it has an API, Crossplane can connect to it.
6+
7+
With Crossplane, platform teams can create new abstractions and custom APIs with the full power of Kubernetes policies, namespaces, role based access controls and more. Crossplane brings all your non-Kubernetes resources under one roof.
8+
9+
Custom APIs, created by platform teams, allow security and compliance enforcement across resources or clouds, without exposing any complexity to the developers. A single API call can create multiple resources, in multiple clouds and use Kubernetes as the control plane for everything.
10+
11+
## Prerequisites
12+
13+
Kubernetes >= 1.27.0
14+
15+
## Usage
16+
17+
Installing a provider creates new Kubernetes resources representing the Provider’s APIs. Installing a provider also creates a Provider pod that’s responsible for reconciling the Provider’s APIs into the Kubernetes cluster. Providers constantly watch the state of the desired managed resources and create any external resources that are missing.
18+
19+
Install a Provider with a Crossplane Provider object setting the spec.package value to the location of the provider package. Additional providers can be found in the [Upboud Marketplace](https://marketplace.upbound.io/)
20+
21+
*For Example*
22+
Install the [Palette Provider](https://marketplace.upbound.io/providers/crossplane-contrib/provider-palette/v0.19.2)
23+
24+
```yaml
25+
apiVersion: pkg.crossplane.io/v1
26+
kind: Provider
27+
metadata:
28+
name: provider-palette
29+
spec:
30+
package: xpkg.upbound.io/crossplane-contrib/provider-palette:v0.23.5
31+
```
32+
33+
## References
34+
35+
Crossplane Provider Guide - <https://docs.crossplane.io/latest/concepts/providers/>
36+
Crossplane Concepts - <https://docs.crossplane.io/latest/concepts/>
37+
Upbound Marketplace - <https://marketplace.upbound.io/>
12.4 KB
Binary file not shown.

packs/crossplane-2.0.2/logo.png

89 KB
Loading

packs/crossplane-2.0.2/pack.json

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
{
2+
"addonType": "system app",
3+
"annotations": {
4+
"source": "community",
5+
"contributor" : "spectrocloud"
6+
},
7+
"cloudTypes": [
8+
"all"
9+
],
10+
"displayName": "Crossplane",
11+
"charts": [
12+
"charts/crossplane-2.0.2.tgz"
13+
],
14+
"layer":"addon",
15+
"name": "crossplane",
16+
"version": "2.0.2"
17+
}
18+

packs/crossplane-2.0.2/values.yaml

Lines changed: 226 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,226 @@
1+
pack:
2+
#The namespace (on the target cluster) to install this chart
3+
#When not found, a new namespace will be created
4+
namespace: "crossplane-system"
5+
content:
6+
images:
7+
- image: xpkg.upbound.io/crossplane/crossplane:v2.0.2
8+
9+
10+
charts:
11+
crossplane:
12+
# helm-docs renders these comments into markdown. Use markdown formatting where
13+
# appropiate.
14+
#
15+
# -- The number of Crossplane pod `replicas` to deploy.
16+
replicas: 1
17+
18+
# -- The number of Crossplane ReplicaSets to retain.
19+
revisionHistoryLimit: null
20+
21+
# -- The deployment strategy for the Crossplane and RBAC Manager pods.
22+
deploymentStrategy: RollingUpdate
23+
24+
image:
25+
# -- Repository for the Crossplane pod image.
26+
repository: xpkg.crossplane.io/crossplane/crossplane
27+
# -- The Crossplane image tag. Defaults to the value of `appVersion` in `Chart.yaml`.
28+
tag: ""
29+
# -- The image pull policy used for Crossplane and RBAC Manager pods.
30+
pullPolicy: IfNotPresent
31+
# -- Do not use the {{ .image.tag }} value to compute the image uri.
32+
ignoreTag: false
33+
34+
# -- Add `nodeSelectors` to the Crossplane pod deployment.
35+
nodeSelector: {}
36+
# -- Add `tolerations` to the Crossplane pod deployment.
37+
tolerations: []
38+
# -- Add `affinities` to the Crossplane pod deployment.
39+
affinity: {}
40+
# -- Add `topologySpreadConstraints` to the Crossplane pod deployment.
41+
topologySpreadConstraints: []
42+
43+
# -- Enable `hostNetwork` for the Crossplane deployment. Caution: enabling `hostNetwork` grants the Crossplane Pod access to the host network namespace. Consider setting `dnsPolicy` to `ClusterFirstWithHostNet`.
44+
hostNetwork: false
45+
46+
# -- Specify the `dnsPolicy` to be used by the Crossplane pod.
47+
dnsPolicy: ""
48+
49+
# -- Add custom `labels` to the Crossplane pod deployment.
50+
customLabels: {}
51+
52+
# -- Add custom `annotations` to the Crossplane pod deployment.
53+
customAnnotations: {}
54+
55+
serviceAccount:
56+
# -- Specifies whether Crossplane ServiceAccount should be created
57+
create: true
58+
# -- Provide the name of an already created Crossplane ServiceAccount. Required when `serviceAccount.create` is `false`
59+
name: ""
60+
# -- Add custom `annotations` to the Crossplane ServiceAccount.
61+
customAnnotations: {}
62+
63+
# -- Enable [leader election](https://docs.crossplane.io/latest/concepts/pods/#leader-election) for the Crossplane pod.
64+
leaderElection: true
65+
# -- Add custom arguments to the Crossplane pod.
66+
args: []
67+
68+
provider:
69+
# -- A list of Provider packages to install.
70+
packages: []
71+
# -- Define entries for the default managed resource activation policy. If defined, a default MRAP will contain these activations.
72+
defaultActivations: ["*"]
73+
74+
configuration:
75+
# -- A list of Configuration packages to install.
76+
packages: []
77+
78+
function:
79+
# -- A list of Function packages to install
80+
packages: []
81+
82+
# -- The imagePullSecret names to add to the Crossplane ServiceAccount.
83+
imagePullSecrets: []
84+
85+
registryCaBundleConfig:
86+
# -- The ConfigMap name containing a custom CA bundle to enable fetching packages from registries with unknown or untrusted certificates.
87+
name: ""
88+
# -- The ConfigMap key containing a custom CA bundle to enable fetching packages from registries with unknown or untrusted certificates.
89+
key: ""
90+
91+
service:
92+
# -- Configure annotations on the service object. Only enabled when webhooks.enabled = true
93+
customAnnotations: {}
94+
95+
webhooks:
96+
# -- Enable webhooks for Crossplane and installed Provider packages.
97+
enabled: true
98+
# -- The port the webhook server listens on.
99+
port: ""
100+
101+
rbacManager:
102+
# -- Deploy the RBAC Manager pod and its required roles.
103+
deploy: true
104+
# -- Don't install aggregated Crossplane ClusterRoles.
105+
skipAggregatedClusterRoles: false
106+
# -- The number of RBAC Manager pod `replicas` to deploy.
107+
replicas: 1
108+
# -- The number of RBAC Manager ReplicaSets to retain.
109+
revisionHistoryLimit: null
110+
# -- Enable [leader election](https://docs.crossplane.io/latest/concepts/pods/#leader-election) for the RBAC Manager pod.
111+
leaderElection: true
112+
# -- Add custom arguments to the RBAC Manager pod.
113+
args: []
114+
# -- Add `nodeSelectors` to the RBAC Manager pod deployment.
115+
nodeSelector: {}
116+
# -- Add `tolerations` to the RBAC Manager pod deployment.
117+
tolerations: []
118+
# -- Add `affinities` to the RBAC Manager pod deployment.
119+
affinity: {}
120+
# -- Add `topologySpreadConstraints` to the RBAC Manager pod deployment.
121+
topologySpreadConstraints: []
122+
123+
# -- The PriorityClass name to apply to the Crossplane and RBAC Manager pods.
124+
priorityClassName: ""
125+
126+
# -- The runtimeClassName name to apply to the Crossplane and RBAC Manager pods.
127+
runtimeClassName: ""
128+
129+
resourcesCrossplane:
130+
limits:
131+
# -- CPU resource limits for the Crossplane pod.
132+
cpu: 500m
133+
# -- Memory resource limits for the Crossplane pod.
134+
memory: 1024Mi
135+
requests:
136+
# -- CPU resource requests for the Crossplane pod.
137+
cpu: 100m
138+
# -- Memory resource requests for the Crossplane pod.
139+
memory: 256Mi
140+
141+
securityContextCrossplane:
142+
# -- The user ID used by the Crossplane pod.
143+
runAsUser: 65532
144+
# -- The group ID used by the Crossplane pod.
145+
runAsGroup: 65532
146+
# -- Enable `allowPrivilegeEscalation` for the Crossplane pod.
147+
allowPrivilegeEscalation: false
148+
# -- Set the Crossplane pod root file system as read-only.
149+
readOnlyRootFilesystem: true
150+
151+
packageCache:
152+
# -- Set to `Memory` to hold the package cache in a RAM backed file system. Useful for Crossplane development.
153+
medium: ""
154+
# -- The size limit for the package cache. If medium is `Memory` the `sizeLimit` can't exceed Node memory.
155+
sizeLimit: 20Mi
156+
# -- The name of a PersistentVolumeClaim to use as the package cache. Disables the default package cache `emptyDir` Volume.
157+
pvc: ""
158+
# -- The name of a ConfigMap to use as the package cache. Disables the default package cache `emptyDir` Volume.
159+
configMap: ""
160+
161+
functionCache:
162+
# -- Set to `Memory` to hold the function cache in a RAM backed file system. Useful for Crossplane development.
163+
medium: ""
164+
# -- The size limit for the function cache. If medium is `Memory` the `sizeLimit` can't exceed Node memory.
165+
sizeLimit: 512Mi
166+
# -- The name of a PersistentVolumeClaim to use as the function cache. Disables the default function cache `emptyDir` Volume.
167+
pvc: ""
168+
169+
resourcesRBACManager:
170+
limits:
171+
# -- CPU resource limits for the RBAC Manager pod.
172+
cpu: 100m
173+
# -- Memory resource limits for the RBAC Manager pod.
174+
memory: 512Mi
175+
requests:
176+
# -- CPU resource requests for the RBAC Manager pod.
177+
cpu: 100m
178+
# -- Memory resource requests for the RBAC Manager pod.
179+
memory: 256Mi
180+
181+
securityContextRBACManager:
182+
# -- The user ID used by the RBAC Manager pod.
183+
runAsUser: 65532
184+
# -- The group ID used by the RBAC Manager pod.
185+
runAsGroup: 65532
186+
# -- Enable `allowPrivilegeEscalation` for the RBAC Manager pod.
187+
allowPrivilegeEscalation: false
188+
# -- Set the RBAC Manager pod root file system as read-only.
189+
readOnlyRootFilesystem: true
190+
191+
metrics:
192+
# -- Enable Prometheus path, port and scrape annotations and expose port 8080 for both the Crossplane and RBAC Manager pods.
193+
enabled: false
194+
# -- The port the metrics server listens on.
195+
port: ""
196+
197+
readiness:
198+
# -- The port the readyz server listens on.
199+
port: ""
200+
201+
# -- Add custom environmental variables to the Crossplane pod deployment init container.
202+
# Replaces any `.` in a variable name with `_`. For example, `SAMPLE.KEY=value1` becomes `SAMPLE_KEY=value1`.
203+
extraEnvVarsCrossplaneInit: {}
204+
205+
# -- Add custom environmental variables to the Crossplane pod deployment application container.
206+
# Replaces any `.` in a variable name with `_`. For example, `SAMPLE.KEY=value1` becomes `SAMPLE_KEY=value1`.
207+
extraEnvVarsCrossplane: {}
208+
209+
# -- Add custom environmental variables to the RBAC Manager pod deployment.
210+
# Replaces any `.` in a variable name with `_`. For example, `SAMPLE.KEY=value1` becomes `SAMPLE_KEY=value1`.
211+
extraEnvVarsRBACManager: {}
212+
213+
# -- Add a custom `securityContext` to the Crossplane pod.
214+
podSecurityContextCrossplane: {}
215+
216+
# -- Add a custom `securityContext` to the RBAC Manager pod.
217+
podSecurityContextRBACManager: {}
218+
219+
# -- Add custom `volumes` to the Crossplane pod.
220+
extraVolumesCrossplane: {}
221+
222+
# -- Add custom `volumeMounts` to the Crossplane pod.
223+
extraVolumeMountsCrossplane: {}
224+
225+
# -- To add arbitrary Kubernetes Objects during a Helm Install
226+
extraObjects: []

0 commit comments

Comments
 (0)