Skip to main content

os_policy_assignments

Creates, updates, deletes, gets or lists a os_policy_assignments resource.

Overview

Nameos_policy_assignments
TypeResource
Idgoogle.osconfig.os_policy_assignments

Fields

NameDatatypeDescription
namestringResource name. Format: projects/{project_number}/locations/{location}/osPolicyAssignments/{os_policy_assignment_id} This field is ignored when you create an OS policy assignment.
descriptionstringOS policy assignment description. Length of the description is limited to 1024 characters.
baselinebooleanOutput only. Indicates that this revision has been successfully rolled out in this zone and new VMs will be assigned OS policies from this revision. For a given OS policy assignment, there is only one revision with a value of true for this field.
deletedbooleanOutput only. Indicates that this revision deletes the OS policy assignment.
etagstringThe etag for this OS policy assignment. If this is provided on update, it must match the server's etag.
instanceFilterobjectFilters to select target VMs for an assignment. If more than one filter criteria is specified below, a VM will be selected if and only if it satisfies all of them.
osPoliciesarrayRequired. List of OS policies to be applied to the VMs.
reconcilingbooleanOutput only. Indicates that reconciliation is in progress for the revision. This value is true when the rollout_state is one of: IN_PROGRESS CANCELLING
revisionCreateTimestringOutput only. The timestamp that the revision was created.
revisionIdstringOutput only. The assignment revision ID A new revision is committed whenever a rollout is triggered for a OS policy assignment
rolloutobjectMessage to configure the rollout at the zonal level for the OS policy assignment.
rolloutStatestringOutput only. OS policy assignment rollout state
uidstringOutput only. Server generated unique id for the OS policy assignment resource.

Methods

NameAccessible byRequired ParamsDescription
getSELECTlocationsId, osPolicyAssignmentsId, projectsIdRetrieve an existing OS policy assignment. This method always returns the latest revision. In order to retrieve a previous revision of the assignment, also provide the revision ID in the name parameter.
listSELECTlocationsId, projectsIdList the OS policy assignments under the parent resource. For each OS policy assignment, the latest revision is returned.
createINSERTlocationsId, projectsIdCreate an OS policy assignment. This method also creates the first revision of the OS policy assignment. This method returns a long running operation (LRO) that contains the rollout details. The rollout can be cancelled by cancelling the LRO. For more information, see Method: projects.locations.osPolicyAssignments.operations.cancel.
deleteDELETElocationsId, osPolicyAssignmentsId, projectsIdDelete the OS policy assignment. This method creates a new revision of the OS policy assignment. This method returns a long running operation (LRO) that contains the rollout details. The rollout can be cancelled by cancelling the LRO. If the LRO completes and is not cancelled, all revisions associated with the OS policy assignment are deleted. For more information, see Method: projects.locations.osPolicyAssignments.operations.cancel.
patchUPDATElocationsId, osPolicyAssignmentsId, projectsIdUpdate an existing OS policy assignment. This method creates a new revision of the OS policy assignment. This method returns a long running operation (LRO) that contains the rollout details. The rollout can be cancelled by cancelling the LRO. For more information, see Method: projects.locations.osPolicyAssignments.operations.cancel.

SELECT examples

List the OS policy assignments under the parent resource. For each OS policy assignment, the latest revision is returned.

SELECT
name,
description,
baseline,
deleted,
etag,
instanceFilter,
osPolicies,
reconciling,
revisionCreateTime,
revisionId,
rollout,
rolloutState,
uid
FROM google.osconfig.os_policy_assignments
WHERE locationsId = '{{ locationsId }}'
AND projectsId = '{{ projectsId }}';

INSERT example

Use the following StackQL query and manifest file to create a new os_policy_assignments resource.

/*+ create */
INSERT INTO google.osconfig.os_policy_assignments (
locationsId,
projectsId,
name,
description,
osPolicies,
instanceFilter,
rollout,
etag
)
SELECT
'{{ locationsId }}',
'{{ projectsId }}',
'{{ name }}',
'{{ description }}',
'{{ osPolicies }}',
'{{ instanceFilter }}',
'{{ rollout }}',
'{{ etag }}'
;

UPDATE example

Updates a os_policy_assignments resource.

/*+ update */
UPDATE google.osconfig.os_policy_assignments
SET
name = '{{ name }}',
description = '{{ description }}',
osPolicies = '{{ osPolicies }}',
instanceFilter = '{{ instanceFilter }}',
rollout = '{{ rollout }}',
etag = '{{ etag }}'
WHERE
locationsId = '{{ locationsId }}'
AND osPolicyAssignmentsId = '{{ osPolicyAssignmentsId }}'
AND projectsId = '{{ projectsId }}';

DELETE example

Deletes the specified os_policy_assignments resource.

/*+ delete */
DELETE FROM google.osconfig.os_policy_assignments
WHERE locationsId = '{{ locationsId }}'
AND osPolicyAssignmentsId = '{{ osPolicyAssignmentsId }}'
AND projectsId = '{{ projectsId }}';