// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreatePatchBaseline`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`operating_system(OperatingSystem)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::operating_system) / [`set_operating_system(Option<OperatingSystem>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_operating_system): <p>Defines the operating system the patch baseline applies to. The default value is <code>WINDOWS</code>.</p>
/// - [`name(impl Into<String>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_name): <p>The name of the patch baseline.</p>
/// - [`global_filters(PatchFilterGroup)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::global_filters) / [`set_global_filters(Option<PatchFilterGroup>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_global_filters): <p>A set of global filters used to include patches in the baseline.</p>
/// - [`approval_rules(PatchRuleGroup)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::approval_rules) / [`set_approval_rules(Option<PatchRuleGroup>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_approval_rules): <p>A set of rules used to include patches in the baseline.</p>
/// - [`approved_patches(Vec<String>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::approved_patches) / [`set_approved_patches(Option<Vec<String>>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_approved_patches): <p>A list of explicitly approved patches for the baseline.</p> <p>For information about accepted formats for lists of approved patches and rejected patches, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html">About package name formats for approved and rejected patch lists</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p>
/// - [`approved_patches_compliance_level(PatchComplianceLevel)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::approved_patches_compliance_level) / [`set_approved_patches_compliance_level(Option<PatchComplianceLevel>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_approved_patches_compliance_level): <p>Defines the compliance level for approved patches. When an approved patch is reported as missing, this value describes the severity of the compliance violation. The default value is <code>UNSPECIFIED</code>.</p>
/// - [`approved_patches_enable_non_security(bool)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::approved_patches_enable_non_security) / [`set_approved_patches_enable_non_security(Option<bool>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_approved_patches_enable_non_security): <p>Indicates whether the list of approved patches includes non-security updates that should be applied to the managed nodes. The default value is <code>false</code>. Applies to Linux managed nodes only.</p>
/// - [`rejected_patches(Vec<String>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::rejected_patches) / [`set_rejected_patches(Option<Vec<String>>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_rejected_patches): <p>A list of explicitly rejected patches for the baseline.</p> <p>For information about accepted formats for lists of approved patches and rejected patches, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html">About package name formats for approved and rejected patch lists</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p>
/// - [`rejected_patches_action(PatchAction)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::rejected_patches_action) / [`set_rejected_patches_action(Option<PatchAction>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_rejected_patches_action): <p>The action for Patch Manager to take on patches included in the <code>RejectedPackages</code> list.</p> <ul> <li> <p> <b> <code>ALLOW_AS_DEPENDENCY</code> </b>: A package in the <code>Rejected</code> patches list is installed only if it is a dependency of another package. It is considered compliant with the patch baseline, and its status is reported as <code>InstalledOther</code>. This is the default action if no option is specified.</p> </li> <li> <p> <b> <code>BLOCK</code> </b>: Packages in the <code>RejectedPatches</code> list, and packages that include them as dependencies, aren't installed under any circumstances. If a package was installed before it was added to the Rejected patches list, it is considered non-compliant with the patch baseline, and its status is reported as <code>InstalledRejected</code>.</p> </li> </ul>
/// - [`description(impl Into<String>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_description): <p>A description of the patch baseline.</p>
/// - [`sources(Vec<PatchSource>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::sources) / [`set_sources(Option<Vec<PatchSource>>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_sources): <p>Information about the patches to use to update the managed nodes, including target operating systems and source repositories. Applies to Linux managed nodes only.</p>
/// - [`client_token(impl Into<String>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_client_token): <p>User-provided idempotency token.</p>
/// - [`tags(Vec<Tag>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::tags) / [`set_tags(Option<Vec<Tag>>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_tags): <p>Optional metadata that you assign to a resource. Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For example, you might want to tag a patch baseline to identify the severity level of patches it specifies and the operating system family it applies to. In this case, you could specify the following key-value pairs:</p> <ul> <li> <p> <code>Key=PatchSeverity,Value=Critical</code> </p> </li> <li> <p> <code>Key=OS,Value=Windows</code> </p> </li> </ul> <note> <p>To add tags to an existing patch baseline, use the <code>AddTagsToResource</code> operation.</p> </note>
/// - On success, responds with [`CreatePatchBaselineOutput`](crate::operation::create_patch_baseline::CreatePatchBaselineOutput) with field(s):
/// - [`baseline_id(Option<String>)`](crate::operation::create_patch_baseline::CreatePatchBaselineOutput::baseline_id): <p>The ID of the created patch baseline.</p>
/// - On failure, responds with [`SdkError<CreatePatchBaselineError>`](crate::operation::create_patch_baseline::CreatePatchBaselineError)
pub fn create_patch_baseline(
&self,
) -> crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder {
crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::new(
self.handle.clone(),
)
}
}