Skip to content

Commit 0bea9da

Browse files
committed
feat: add Upbound Crossplane 2.0.2 pack
- Introduced new pack for Upbound Crossplane version 2.0.1-up.1 - Added logo image, README documentation, and pack.json configuration - Included values.yaml for customizable deployment settings - Added crossplane chart package for installation
1 parent dc82564 commit 0bea9da

File tree

5 files changed

+247
-0
lines changed

5 files changed

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

0 commit comments

Comments
 (0)