Skip to content

Commit bfff85f

Browse files
committed
Add ops to "What's Crossplane?"
Feels like it belongs here as a top-level tool, despite being alpha. Signed-off-by: Nic Cope <[email protected]>
1 parent 0ec68cf commit bfff85f

File tree

1 file changed

+59
-2
lines changed

1 file changed

+59
-2
lines changed

content/master/whats-crossplane/_index.md

Lines changed: 59 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,13 +46,14 @@ involved in writing a controller.
4646

4747
## Crossplane components
4848

49-
Crossplane has three major components:
49+
Crossplane has four major components:
5050

5151
* [Composition](#composition)
5252
* [Managed resources](#managed-resources)
53+
* [Operations](#operations)
5354
* [Package manager](#package-manager)
5455

55-
You can use all three components to build your control plane, or pick only the
56+
You can use all four components to build your control plane, or pick only the
5657
ones you need.
5758

5859
### Composition
@@ -223,6 +224,62 @@ GCP, Terraform, Helm, GitHub, etc to support Crossplane v2 soon.
223224
<!-- vale gitlab.FutureTense = YES -->
224225
{{</hint>}}
225226

227+
### Operations
228+
229+
Operations let you run operational tasks using function pipelines.
230+
231+
While composition and managed resources focus on creating and managing
232+
infrastructure, operations handle tasks that don't fit the typical resource
233+
creation pattern - like certificate monitoring, rolling upgrades, or scheduled
234+
maintenance.
235+
236+
**Operations run function pipelines to completion like a Kubernetes Job.**
237+
Instead of continuously managing resources, they perform specific tasks and
238+
report the results.
239+
240+
```mermaid
241+
flowchart TD
242+
user(User)
243+
244+
subgraph control [Control Plane]
245+
operation(SSL Monitor Operation API)
246+
247+
subgraph crossplane [Operation Engine]
248+
fn(Python Function)
249+
end
250+
251+
ingress(Ingress API)
252+
end
253+
254+
subgraph ext [External System]
255+
cert(SSL Certificate)
256+
end
257+
258+
user -- create --> operation
259+
crossplane watch@<-- watch --> operation
260+
crossplane -- read --> ingress
261+
crossplane -- check --> cert
262+
crossplane -- annotate --> ingress
263+
264+
watch@{animate: true}
265+
```
266+
267+
Operations support three modes:
268+
269+
* **Operation** - Run once to completion
270+
* **CronOperation** - Run on a scheduled basis
271+
* **WatchOperation** - Run when resources change
272+
273+
You can use operations alongside composition and managed resources to build
274+
complete operational workflows for your control plane.
275+
276+
Follow [Get Started with Operations]({{<ref "../get-started/get-started-with-operations">}})
277+
to see how operations work.
278+
279+
{{<hint "note">}}
280+
Operations are an alpha feature available in Crossplane v2.
281+
{{</hint>}}
282+
226283
### Package manager
227284

228285
The Crossplane package manager lets you install new managed resources and

0 commit comments

Comments
 (0)