#[allow(unused_imports, reason = "Some modules may have empty `options` field")]
use cdk_ansible::OptU;
use cdk_ansible::TaskModule;
use serde::Serialize;
#[derive(Clone, Debug, Serialize)]
pub struct Module {
#[serde(rename = "ansible.builtin.include_role")]
pub module: Args,
}
impl TaskModule for Module {}
#[derive(Clone, Debug, Serialize)]
pub struct Args {
#[serde(flatten)]
pub options: Opt,
}
#[derive(Clone, Debug, Default, Serialize)]
#[serde(rename_all = "snake_case")]
pub struct Opt {
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "allow_duplicates"
)]
pub allow_duplicates: OptU<::cdk_ansible::BoolOrString>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "apply"
)]
pub apply: OptU<String>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "defaults_from"
)]
pub defaults_from: OptU<String>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "handlers_from"
)]
pub handlers_from: OptU<String>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "name"
)]
pub name: OptU<String>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "public"
)]
pub public: OptU<::cdk_ansible::BoolOrString>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "rolespec_validate"
)]
pub rolespec_validate: OptU<::cdk_ansible::BoolOrString>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "tasks_from"
)]
pub tasks_from: OptU<String>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "vars_from"
)]
pub vars_from: OptU<String>,
}