You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+91Lines changed: 91 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -365,6 +365,97 @@ identity:
365
365
type: AzureWorkloadIdentityCredentials
366
366
```
367
367
368
+
## Operations support
369
+
function-msgraph support every kind of [operations](https://docs.crossplane.io/latest/operations/operation/), however CronOperations and WatchOperations are the most useful in context of graph queries.
370
+
Check [examples](./example/operations/)
371
+
372
+
### CronOperation
373
+
CronOperation may be used to forcefully update XR's status in a predefined interval.
374
+
That functionality may be especially useful for XRs that are business critical and should have the data refreshed without worrying about throttling.
375
+
Supports only singular resource reference.
376
+
377
+
```yaml
378
+
apiVersion: ops.crossplane.io/v1alpha1
379
+
kind: CronOperation
380
+
metadata:
381
+
name: update-user-validation-for-critical-xr
382
+
spec:
383
+
schedule: "*/5 * * * *" # Every 5 minutes
384
+
concurrencyPolicy: Forbid
385
+
successfulHistoryLimit: 5
386
+
failedHistoryLimit: 3
387
+
operationTemplate:
388
+
spec:
389
+
mode: Pipeline
390
+
pipeline:
391
+
- step: user-validation
392
+
functionRef:
393
+
name: function-msgraph
394
+
input:
395
+
apiVersion: msgraph.fn.crossplane.io/v1alpha1
396
+
kind: Input
397
+
queryType: UserValidation
398
+
# Replace these with actual users in your directory
399
+
users:
400
+
- "admin@example.onmicrosoft.com"
401
+
- "user@example.onmicrosoft.com"
402
+
- "yury@upbound.io"
403
+
target: "status.validatedUsers"
404
+
skipQueryWhenTargetHasData: false # Always query even if data is in status
Copy file name to clipboardExpand all lines: package/crossplane.yaml
+5-2Lines changed: 5 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
1
---
2
-
apiVersion: meta.pkg.crossplane.io/v1beta1
2
+
apiVersion: meta.pkg.crossplane.io/v1
3
3
kind: Function
4
4
metadata:
5
5
name: function-msgraph
@@ -13,4 +13,7 @@ metadata:
13
13
to validate Azure AD users, get group memberships, group object IDs, and service principal details.
14
14
15
15
The secret for Azure credentials is compatible with the [Official Azure Provider](https://marketplace.upbound.io/providers/upbound/provider-family-azure/latest).
0 commit comments