pub struct OsConfigZonalService { /* private fields */ }Expand description
Implements a client for the OS Config API.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
let client = OsConfigZonalService::builder().build().await?;
let parent = "parent_value";
let mut list = client.list_os_policy_assignments()
.set_parent(parent)
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}§Service Description
Zonal OS Config API
The OS Config service is the server-side component that allows users to manage package installations and patch jobs for Compute Engine VM instances.
§Configuration
To configure OsConfigZonalService use the with_* methods in the type returned
by builder(). The default configuration should
work for most applications. Common configuration changes include
- with_endpoint(): by default this client uses the global default endpoint
(
https://osconfig.googleapis.com). Applications using regional endpoints or running in restricted networks (e.g. a network configured override this default. - with_credentials(): by default this client uses Application Default Credentials. Applications using custom authentication may need to override this default.
§Pooling and Cloning
OsConfigZonalService holds a connection pool internally, it is advised to
create one and reuse it. You do not need to wrap OsConfigZonalService in
an Rc or Arc to reuse it, because it
already uses an Arc internally.
Implementations§
Source§impl OsConfigZonalService
impl OsConfigZonalService
Sourcepub fn builder() -> ClientBuilder
pub fn builder() -> ClientBuilder
Returns a builder for OsConfigZonalService.
let client = OsConfigZonalService::builder().build().await?;Sourcepub fn from_stub<T>(stub: T) -> Selfwhere
T: OsConfigZonalService + 'static,
pub fn from_stub<T>(stub: T) -> Selfwhere
T: OsConfigZonalService + 'static,
Creates a new client from the provided stub.
The most common case for calling this function is in tests mocking the client’s behavior.
Sourcepub fn create_os_policy_assignment(&self) -> CreateOSPolicyAssignment
pub fn create_os_policy_assignment(&self) -> CreateOSPolicyAssignment
Create 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.
§Long running operations
This method is used to start, and/or poll a long-running Operation. The Working with long-running operations chapter in the user guide covers these operations in detail.
§Example
use google_cloud_lro::Poller;
use google_cloud_osconfig_v1::model::OSPolicyAssignment;
use google_cloud_osconfig_v1::Result;
async fn sample(
client: &OsConfigZonalService, parent: &str
) -> Result<()> {
let response = client.create_os_policy_assignment()
.set_parent(parent)
.set_os_policy_assignment(
OSPolicyAssignment::new()/* set fields */
)
.poller().until_done().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn update_os_policy_assignment(&self) -> UpdateOSPolicyAssignment
pub fn update_os_policy_assignment(&self) -> UpdateOSPolicyAssignment
Update 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.
§Long running operations
This method is used to start, and/or poll a long-running Operation. The Working with long-running operations chapter in the user guide covers these operations in detail.
§Example
use google_cloud_lro::Poller;
use google_cloud_wkt::FieldMask;
use google_cloud_osconfig_v1::model::OSPolicyAssignment;
use google_cloud_osconfig_v1::Result;
async fn sample(
client: &OsConfigZonalService, name: &str
) -> Result<()> {
let response = client.update_os_policy_assignment()
.set_os_policy_assignment(
OSPolicyAssignment::new().set_name(name)/* set fields */
)
.set_update_mask(FieldMask::default().set_paths(["updated.field.path1", "updated.field.path2"]))
.poller().until_done().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn get_os_policy_assignment(&self) -> GetOSPolicyAssignment
pub fn get_os_policy_assignment(&self) -> GetOSPolicyAssignment
Retrieve 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.
§Example
use google_cloud_osconfig_v1::Result;
async fn sample(
client: &OsConfigZonalService, name: &str
) -> Result<()> {
let response = client.get_os_policy_assignment()
.set_name(name)
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn list_os_policy_assignments(&self) -> ListOSPolicyAssignments
pub fn list_os_policy_assignments(&self) -> ListOSPolicyAssignments
List the OS policy assignments under the parent resource.
For each OS policy assignment, the latest revision is returned.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
use google_cloud_osconfig_v1::Result;
async fn sample(
client: &OsConfigZonalService, parent: &str
) -> Result<()> {
let mut list = client.list_os_policy_assignments()
.set_parent(parent)
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}
Ok(())
}Sourcepub fn list_os_policy_assignment_revisions(
&self,
) -> ListOSPolicyAssignmentRevisions
pub fn list_os_policy_assignment_revisions( &self, ) -> ListOSPolicyAssignmentRevisions
List the OS policy assignment revisions for a given OS policy assignment.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
use google_cloud_osconfig_v1::Result;
async fn sample(
client: &OsConfigZonalService
) -> Result<()> {
let mut list = client.list_os_policy_assignment_revisions()
/* set fields */
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}
Ok(())
}Sourcepub fn delete_os_policy_assignment(&self) -> DeleteOSPolicyAssignment
pub fn delete_os_policy_assignment(&self) -> DeleteOSPolicyAssignment
Delete 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.
§Long running operations
This method is used to start, and/or poll a long-running Operation. The Working with long-running operations chapter in the user guide covers these operations in detail.
§Example
use google_cloud_lro::Poller;
use google_cloud_osconfig_v1::Result;
async fn sample(
client: &OsConfigZonalService, name: &str
) -> Result<()> {
client.delete_os_policy_assignment()
.set_name(name)
.poller().until_done().await?;
Ok(())
}Sourcepub fn get_os_policy_assignment_report(&self) -> GetOSPolicyAssignmentReport
pub fn get_os_policy_assignment_report(&self) -> GetOSPolicyAssignmentReport
Get the OS policy asssignment report for the specified Compute Engine VM instance.
§Example
use google_cloud_osconfig_v1::Result;
async fn sample(
client: &OsConfigZonalService, name: &str
) -> Result<()> {
let response = client.get_os_policy_assignment_report()
.set_name(name)
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn list_os_policy_assignment_reports(&self) -> ListOSPolicyAssignmentReports
pub fn list_os_policy_assignment_reports(&self) -> ListOSPolicyAssignmentReports
List OS policy asssignment reports for all Compute Engine VM instances in the specified zone.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
use google_cloud_osconfig_v1::Result;
async fn sample(
client: &OsConfigZonalService, parent: &str
) -> Result<()> {
let mut list = client.list_os_policy_assignment_reports()
.set_parent(parent)
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}
Ok(())
}Sourcepub fn get_inventory(&self) -> GetInventory
pub fn get_inventory(&self) -> GetInventory
Get inventory data for the specified VM instance. If the VM has no
associated inventory, the message NOT_FOUND is returned.
§Example
use google_cloud_osconfig_v1::Result;
async fn sample(
client: &OsConfigZonalService, name: &str
) -> Result<()> {
let response = client.get_inventory()
.set_name(name)
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn list_inventories(&self) -> ListInventories
pub fn list_inventories(&self) -> ListInventories
List inventory data for all VM instances in the specified zone.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
use google_cloud_osconfig_v1::Result;
async fn sample(
client: &OsConfigZonalService, parent: &str
) -> Result<()> {
let mut list = client.list_inventories()
.set_parent(parent)
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}
Ok(())
}Sourcepub fn get_vulnerability_report(&self) -> GetVulnerabilityReport
pub fn get_vulnerability_report(&self) -> GetVulnerabilityReport
Gets the vulnerability report for the specified VM instance. Only VMs with inventory data have vulnerability reports associated with them.
§Example
use google_cloud_osconfig_v1::Result;
async fn sample(
client: &OsConfigZonalService, name: &str
) -> Result<()> {
let response = client.get_vulnerability_report()
.set_name(name)
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn list_vulnerability_reports(&self) -> ListVulnerabilityReports
pub fn list_vulnerability_reports(&self) -> ListVulnerabilityReports
List vulnerability reports for all VM instances in the specified zone.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
use google_cloud_osconfig_v1::Result;
async fn sample(
client: &OsConfigZonalService, parent: &str
) -> Result<()> {
let mut list = client.list_vulnerability_reports()
.set_parent(parent)
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}
Ok(())
}Sourcepub fn get_operation(&self) -> GetOperation
pub fn get_operation(&self) -> GetOperation
Provides the Operations service functionality in this service.
§Example
use google_cloud_osconfig_v1::Result;
async fn sample(
client: &OsConfigZonalService
) -> Result<()> {
let response = client.get_operation()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn cancel_operation(&self) -> CancelOperation
pub fn cancel_operation(&self) -> CancelOperation
Provides the Operations service functionality in this service.
§Example
use google_cloud_osconfig_v1::Result;
async fn sample(
client: &OsConfigZonalService
) -> Result<()> {
client.cancel_operation()
/* set fields */
.send().await?;
Ok(())
}Trait Implementations§
Source§impl Clone for OsConfigZonalService
impl Clone for OsConfigZonalService
Source§fn clone(&self) -> OsConfigZonalService
fn clone(&self) -> OsConfigZonalService
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more