Resource: PolicyOrchestrator
A policy orchestrator manages project-level and zone-level policy resources, such as OS policy assignments. It provides methods to create, update, and delete these resources across projects and locations at scale.
The policy orchestrator operates as a continuous loop. In each iteration, the orchestrator identifies the set of resources to be modified and progressively applies changes. If the set of resources changes over time (for example, if you add new projects), subsequent iterations address those changes.
The orchestrator can either upsert or delete policy resources. For more details, see the action and orchestratedResource fields.
The policy orchestrator does not manage the lifecycle of the resources it creates. Each iteration is independent and, besides Cloud Logging, the orchestrator retains only a minimal history of past actions. Deleting the orchestrator does not affect previously created resources; these resources remain in their current state. Similarly, removing projects from the orchestrator's scope does not affect existing resources.
| JSON representation |
|---|
{ "name": string, "description": string, "etag": string, "state": string, "reconciling": boolean, "orchestrationScope": { object ( |
| Fields | |
|---|---|
name |
Immutable. Identifier. In the following format: * |
description |
Optional. Freeform text describing the purpose of the resource. |
etag |
Output only. This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. |
state |
Optional. State of the orchestrator. Can be updated to change orchestrator behaviour. Allowed values: - Note: There might be more states added in the future. We use string here instead of an enum, to avoid the need of propagating new states to all the client code. |
reconciling |
Output only. Set to true, if there are ongoing changes being applied by the orchestrator. |
orchestrationScope |
Optional. Defines scope for the orchestration, in context of the enclosing PolicyOrchestrator resource. Scope is expanded into a list of <project, zone> pairs, in which the rollout action will take place. Expansion starts with a Folder resource parenting the PolicyOrchestrator resource: - All the descendant projects are listed. - List of project is cross joined with a list of all available zones. - Resulting list of <project, zone> pairs is filtered according to the selectors. |
action |
Required. Action to be done by the orchestrator in |
orchestratedResource |
Required. Resource to be orchestrated by the policy orchestrator. |
orchestrationState |
Output only. State of the orchestration. |
createTime |
Output only. Timestamp when the policy orchestrator resource was created. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
updateTime |
Output only. Timestamp when the policy orchestrator resource was last modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
labels |
Optional. Labels as key value pairs An object containing a list of |
Methods |
|
|---|---|
|
Creates a new policy orchestrator under the given organizations resource. |
|
Deletes an existing policy orchestrator resource, parented by an organization. |
|
Retrieves an existing policy orchestrator, parented by an organization. |
|
Lists the policy orchestrators under the given parent organization resource. |
|
Updates an existing policy orchestrator, parented by an organization. |