Пример #1
0
    def update_resource(self):
        update_details = self.get_update_model()
        return oci_common_utils.call_with_backoff(
            self.client.update_cpe,
            cpe_id=self.module.params.get("cpe_id"),
            update_cpe_details=update_details,
        )

    def delete_resource(self):
        return oci_common_utils.call_with_backoff(
            self.client.delete_cpe, cpe_id=self.module.params.get("cpe_id")
        )


CpeHelperCustom = get_custom_class("CpeHelperCustom")


class ResourceHelper(CpeHelperCustom, CpeHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec(
        supports_create=True, supports_wait=False
    )
    module_args.update(
        dict(
            compartment_id=dict(type="str"),
            defined_tags=dict(type="dict"),
            display_name=dict(aliases=["name"], type="str"),
    def get_resource(self):
        return oci_common_utils.call_with_backoff(
            self.client.get_volume_backup_policy,
            policy_id=self.module.params.get("policy_id"),
        )

    def list_resources(self):
        optional_list_method_params = ["display_name"]
        optional_kwargs = dict((param, self.module.params[param])
                               for param in optional_list_method_params
                               if self.module.params.get(param) is not None)
        return oci_common_utils.list_all_resources(
            self.client.list_volume_backup_policies, **optional_kwargs)


VolumeBackupPolicyFactsHelperCustom = get_custom_class(
    "VolumeBackupPolicyFactsHelperCustom")


class ResourceFactsHelper(VolumeBackupPolicyFactsHelperCustom,
                          VolumeBackupPolicyFactsHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec()
    module_args.update(
        dict(policy_id=dict(aliases=["id"], type="str"),
             display_name=dict(type="str")))

    module = AnsibleModule(argument_spec=module_args)
Пример #3
0
        return oci_wait_utils.call_and_wait(
            call_fn=self.client.terminate_autonomous_exadata_infrastructure,
            call_fn_args=(),
            call_fn_kwargs=dict(
                autonomous_exadata_infrastructure_id=self.module.params.get(
                    "autonomous_exadata_infrastructure_id")),
            waiter_type=oci_wait_utils.LIFECYCLE_STATE_WAITER_KEY,
            operation=oci_common_utils.DELETE_OPERATION_KEY,
            waiter_client=self.client,
            resource_helper=self,
            wait_for_states=self.module.params.get("wait_until")
            or oci_common_utils.get_resource_terminated_states(),
        )


AutonomousExadataInfrastructureHelperCustom = get_custom_class(
    "AutonomousExadataInfrastructureHelperCustom")


class ResourceHelper(
        AutonomousExadataInfrastructureHelperCustom,
        AutonomousExadataInfrastructureHelperGen,
):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec(supports_create=True,
                                                       supports_wait=True)
    module_args.update(
        dict(
            compartment_id=dict(type="str"),
    def delete_resource(self):
        return oci_wait_utils.call_and_wait(
            call_fn=self.client.delete_drg_attachment,
            call_fn_args=(),
            call_fn_kwargs=dict(
                drg_attachment_id=self.module.params.get("drg_attachment_id")),
            waiter_type=oci_wait_utils.LIFECYCLE_STATE_WAITER_KEY,
            operation=oci_common_utils.DELETE_OPERATION_KEY,
            waiter_client=self.client,
            resource_helper=self,
            wait_for_states=self.module.params.get("wait_until")
            or oci_common_utils.get_resource_terminated_states(),
        )


DrgAttachmentHelperCustom = get_custom_class("DrgAttachmentHelperCustom")


class ResourceHelper(DrgAttachmentHelperCustom, DrgAttachmentHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec(supports_create=True,
                                                       supports_wait=True)
    module_args.update(
        dict(
            display_name=dict(aliases=["name"], type="str"),
            drg_id=dict(type="str"),
            route_table_id=dict(type="str"),
            vcn_id=dict(type="str"),
Пример #5
0
    def delete_resource(self):
        return oci_wait_utils.call_and_wait(
            call_fn=self.client.delete_budget,
            call_fn_args=(),
            call_fn_kwargs=dict(budget_id=self.module.params.get("budget_id")),
            waiter_type=oci_wait_utils.LIFECYCLE_STATE_WAITER_KEY,
            operation=oci_common_utils.DELETE_OPERATION_KEY,
            waiter_client=self.client,
            resource_helper=self,
            wait_for_states=self.module.params.get("wait_until")
            or oci_common_utils.get_resource_terminated_states(),
        )


BudgetHelperCustom = get_custom_class("BudgetHelperCustom")


class ResourceHelper(BudgetHelperCustom, BudgetHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec(supports_create=True,
                                                       supports_wait=True)
    module_args.update(
        dict(
            compartment_id=dict(type="str"),
            target_compartment_id=dict(type="str"),
            display_name=dict(aliases=["name"], type="str"),
            description=dict(type="str"),
            rename_object_details=action_details,
        )

    def restore_objects(self):
        action_details = convert_input_data_to_model_class(
            self.module.params, RestoreObjectsDetails
        )
        return oci_common_utils.call_with_backoff(
            self.client.restore_objects,
            namespace_name=self.module.params.get("namespace_name"),
            bucket_name=self.module.params.get("bucket_name"),
            restore_objects_details=action_details,
        )


BucketActionsHelperCustom = get_custom_class("BucketActionsHelperCustom")


class ResourceHelper(BucketActionsHelperCustom, BucketActionsHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec(
        supports_create=False, supports_wait=True
    )
    module_args.update(
        dict(
            namespace_name=dict(type="str", required=True),
            bucket_name=dict(type="str", required=True),
            source_object_name=dict(type="str"),
        return oci_common_utils.call_with_backoff(
            self.client.put_object_lifecycle_policy,
            namespace_name=self.module.params.get("namespace_name"),
            bucket_name=self.module.params.get("bucket_name"),
            put_object_lifecycle_policy_details=update_details,
        )

    def delete_resource(self):
        return oci_common_utils.call_with_backoff(
            self.client.delete_object_lifecycle_policy,
            namespace_name=self.module.params.get("namespace_name"),
            bucket_name=self.module.params.get("bucket_name"),
        )


ObjectLifecyclePolicyHelperCustom = get_custom_class(
    "ObjectLifecyclePolicyHelperCustom")


class ResourceHelper(ObjectLifecyclePolicyHelperCustom,
                     ObjectLifecyclePolicyHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec(supports_create=False,
                                                       supports_wait=False)
    module_args.update(
        dict(
            namespace_name=dict(type="str", required=True),
            bucket_name=dict(type="str", required=True),
            items=dict(
            "sort_order",
            "lifecycle_state",
        ]
        optional_kwargs = dict(
            (param, self.module.params[param])
            for param in optional_list_method_params
            if self.module.params.get(param) is not None
        )
        return oci_common_utils.list_all_resources(
            self.client.list_vcns,
            compartment_id=self.module.params.get("compartment_id"),
            **optional_kwargs
        )


VcnFactsHelperCustom = get_custom_class("VcnFactsHelperCustom")


class ResourceFactsHelper(VcnFactsHelperCustom, VcnFactsHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec()
    module_args.update(
        dict(
            vcn_id=dict(aliases=["id"], type="str"),
            compartment_id=dict(type="str"),
            display_name=dict(aliases=["name"], type="str"),
            sort_by=dict(type="str", choices=["TIMECREATED", "DISPLAYNAME"]),
            sort_order=dict(type="str", choices=["ASC", "DESC"]),
Пример #9
0
                "auto_scaling_policy_id"),
        )

    def list_resources(self):
        optional_list_method_params = ["display_name", "sort_by", "sort_order"]
        optional_kwargs = dict((param, self.module.params[param])
                               for param in optional_list_method_params
                               if self.module.params.get(param) is not None)
        return oci_common_utils.list_all_resources(
            self.client.list_auto_scaling_policies,
            auto_scaling_configuration_id=self.module.params.get(
                "auto_scaling_configuration_id"),
            **optional_kwargs)


AutoScalingConfigurationPolicyFactsHelperCustom = get_custom_class(
    "AutoScalingConfigurationPolicyFactsHelperCustom")


class ResourceFactsHelper(
        AutoScalingConfigurationPolicyFactsHelperCustom,
        AutoScalingConfigurationPolicyFactsHelperGen,
):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec()
    module_args.update(
        dict(
            auto_scaling_configuration_id=dict(type="str", required=True),
            auto_scaling_policy_id=dict(aliases=["id"], type="str"),
Пример #10
0
class NamespaceFactsHelperGen(OCIResourceFactsHelperBase):
    """Supported operations: get"""
    def get_required_params_for_get(self):
        return []

    def get_resource(self):
        optional_get_method_params = ["compartment_id"]
        optional_kwargs = dict((param, self.module.params[param])
                               for param in optional_get_method_params
                               if self.module.params.get(param) is not None)
        return oci_common_utils.call_with_backoff(self.client.get_namespace,
                                                  **optional_kwargs)


NamespaceFactsHelperCustom = get_custom_class("NamespaceFactsHelperCustom")


class ResourceFactsHelper(NamespaceFactsHelperCustom, NamespaceFactsHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec()
    module_args.update(dict(compartment_id=dict(type="str")))

    module = AnsibleModule(argument_spec=module_args)

    if not HAS_OCI_PY_SDK:
        module.fail_json(msg="oci python sdk required for this module.")
Пример #11
0
        return update_vcn_details

    def update_resource(self):
        update_vcn_details = self.get_update_model()
        return oci_common_utils.call_with_backoff(
            self.client.update_vcn,
            vcn_id=self.module.params.get("vcn_id"),
            update_vcn_details=update_vcn_details,
        )

    def delete_resource(self):
        return oci_common_utils.call_with_backoff(
            self.client.delete_vcn, vcn_id=self.module.params.get("vcn_id"))


VcnHelperCustom = get_custom_class("VcnHelperCustom")


class ResourceHelper(VcnHelperCustom, VcnHelperGen):
    pass


def main():
    module_args = oci_utils.get_taggable_arg_spec(supports_create=True,
                                                  supports_wait=True)
    module_args.update(
        dict(
            cidr_block=dict(type="str", required=False),
            compartment_id=dict(type="str", required=False),
            display_name=dict(type="str", required=False, aliases=["name"]),
            dns_label=dict(type="str", required=False),
        optional_list_method_params = []
        optional_kwargs = dict(
            (param, self.module.params[param])
            for param in optional_list_method_params
            if self.module.params.get(param) is not None
        )
        return oci_common_utils.list_all_resources(
            self.client.list_events,
            compartment_id=self.module.params.get("compartment_id"),
            start_time=self.module.params.get("start_time"),
            end_time=self.module.params.get("end_time"),
            **optional_kwargs
        )


AuditEventFactsHelperCustom = get_custom_class("AuditEventFactsHelperCustom")


class ResourceFactsHelper(AuditEventFactsHelperCustom, AuditEventFactsHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec()
    module_args.update(
        dict(
            compartment_id=dict(type="str", required=True),
            start_time=dict(type="str", required=True),
            end_time=dict(type="str", required=True),
        )
    )
Пример #13
0
        optional_list_method_params = [
            "sort_order",
            "sort_by",
            "lifecycle_state",
            "display_name",
        ]
        optional_kwargs = dict((param, self.module.params[param])
                               for param in optional_list_method_params
                               if self.module.params.get(param) is not None)
        return oci_common_utils.list_all_resources(
            self.client.list_alert_rules,
            budget_id=self.module.params.get("budget_id"),
            **optional_kwargs)


BudgetAlertRuleFactsHelperCustom = get_custom_class(
    "BudgetAlertRuleFactsHelperCustom")


class ResourceFactsHelper(BudgetAlertRuleFactsHelperCustom,
                          BudgetAlertRuleFactsHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec()
    module_args.update(
        dict(
            budget_id=dict(type="str", required=True),
            alert_rule_id=dict(aliases=["id"], type="str"),
            sort_order=dict(type="str", choices=["ASC", "DESC"]),
            sort_by=dict(type="str"),
        optional_list_method_params = ["direction", "sort_by", "sort_order"]
        optional_kwargs = dict(
            (param, self.module.params[param])
            for param in optional_list_method_params
            if self.module.params.get(param) is not None
        )
        return oci_common_utils.list_all_resources(
            self.client.list_network_security_group_security_rules,
            network_security_group_id=self.module.params.get(
                "network_security_group_id"
            ),
            **optional_kwargs
        )


SecurityRuleFactsHelperCustom = get_custom_class("SecurityRuleFactsHelperCustom")


class ResourceFactsHelper(SecurityRuleFactsHelperCustom, SecurityRuleFactsHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec()
    module_args.update(
        dict(
            network_security_group_id=dict(type="str", required=True),
            direction=dict(type="str", choices=["EGRESS", "INGRESS"]),
            sort_by=dict(type="str", choices=["TIMECREATED"]),
            sort_order=dict(type="str", choices=["ASC", "DESC"]),
        )
                image_id=self.module.params.get("image_id"),
                export_image_details=action_details,
            ),
            waiter_type=oci_wait_utils.LIFECYCLE_STATE_WAITER_KEY,
            operation="{0}_{1}".format(
                self.module.params.get("action").upper(),
                oci_common_utils.ACTION_OPERATION_KEY,
            ),
            waiter_client=self.client,
            resource_helper=self,
            wait_for_states=self.module.params.get("wait_until")
            or self.get_action_desired_states(self.module.params.get("action")),
        )


ImageActionsHelperCustom = get_custom_class("ImageActionsHelperCustom")


class ResourceHelper(ImageActionsHelperCustom, ImageActionsHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec(
        supports_create=False, supports_wait=True
    )
    module_args.update(
        dict(
            image_id=dict(aliases=["id"], type="str", required=True),
            destination_type=dict(
                type="str",
        return oci_common_utils.call_with_backoff(
            self.client.get_volume_backup,
            volume_backup_id=self.module.params.get("volume_backup_id"),
        )

    def copy(self):
        action_details = convert_input_data_to_model_class(
            self.module.params, CopyVolumeBackupDetails)
        return oci_common_utils.call_with_backoff(
            self.client.copy_volume_backup,
            volume_backup_id=self.module.params.get("volume_backup_id"),
            copy_volume_backup_details=action_details,
        )


VolumeBackupActionsHelperCustom = get_custom_class(
    "VolumeBackupActionsHelperCustom")


class ResourceHelper(VolumeBackupActionsHelperCustom,
                     VolumeBackupActionsHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec(supports_create=False,
                                                       supports_wait=True)
    module_args.update(
        dict(
            volume_backup_id=dict(aliases=["id"], type="str", required=True),
            destination_region=dict(type="str", required=True),
            display_name=dict(aliases=["name"], type="str"),
Пример #17
0
            "operating_system_version",
            "shape",
            "sort_by",
            "sort_order",
            "lifecycle_state",
        ]
        optional_kwargs = dict((param, self.module.params[param])
                               for param in optional_list_method_params
                               if self.module.params.get(param) is not None)
        return oci_common_utils.list_all_resources(
            self.client.list_images,
            compartment_id=self.module.params.get("compartment_id"),
            **optional_kwargs)


ImageFactsHelperCustom = get_custom_class("ImageFactsHelperCustom")


class ResourceFactsHelper(ImageFactsHelperCustom, ImageFactsHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec()
    module_args.update(
        dict(
            image_id=dict(aliases=["id"], type="str"),
            compartment_id=dict(type="str"),
            display_name=dict(aliases=["name"], type="str"),
            operating_system=dict(type="str"),
            operating_system_version=dict(type="str"),
    def list_resources(self):
        optional_list_method_params = []
        optional_kwargs = dict(
            (param, self.module.params[param])
            for param in optional_list_method_params
            if self.module.params.get(param) is not None
        )
        return oci_common_utils.list_all_resources(
            self.client.list_auth_tokens,
            user_id=self.module.params.get("user_id"),
            **optional_kwargs
        )


AuthTokenFactsHelperCustom = get_custom_class("AuthTokenFactsHelperCustom")


class ResourceFactsHelper(AuthTokenFactsHelperCustom, AuthTokenFactsHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec()
    module_args.update(dict(user_id=dict(type="str", required=True)))

    module = AnsibleModule(argument_spec=module_args)

    if not HAS_OCI_PY_SDK:
        module.fail_json(msg="oci python sdk required for this module.")
    def update_resource(self):
        update_details = self.get_update_model()
        return oci_common_utils.call_with_backoff(
            self.client.update_tag_default,
            tag_default_id=self.module.params.get("tag_default_id"),
            update_tag_default_details=update_details,
        )

    def delete_resource(self):
        return oci_common_utils.call_with_backoff(
            self.client.delete_tag_default,
            tag_default_id=self.module.params.get("tag_default_id"),
        )


TagDefaultHelperCustom = get_custom_class("TagDefaultHelperCustom")


class ResourceHelper(TagDefaultHelperCustom, TagDefaultHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec(supports_create=True,
                                                       supports_wait=True)
    module_args.update(
        dict(
            compartment_id=dict(type="str"),
            tag_definition_id=dict(type="str"),
            value=dict(type="str"),
            tag_default_id=dict(aliases=["id"], type="str"),
    def get_resource(self):
        return oci_common_utils.call_with_backoff(
            self.client.get_identity_provider,
            identity_provider_id=self.module.params.get(
                "identity_provider_id"),
        )

    def reset_idp_scim_client(self):
        return oci_common_utils.call_with_backoff(
            self.client.reset_idp_scim_client,
            identity_provider_id=self.module.params.get(
                "identity_provider_id"),
        )


IdentityProviderActionsHelperCustom = get_custom_class(
    "IdentityProviderActionsHelperCustom")


class ResourceHelper(IdentityProviderActionsHelperCustom,
                     IdentityProviderActionsHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec(supports_create=False,
                                                       supports_wait=False)
    module_args.update(
        dict(
            identity_provider_id=dict(aliases=["id"],
                                      type="str",
                                      required=True),
Пример #21
0
            compartment_id=self.module.params.get("compartment_id"),
        )

    def get_update_model_class(self):
        return UpdateConfigurationDetails

    def update_resource(self):
        update_details = self.get_update_model()
        return oci_common_utils.call_with_backoff(
            self.client.update_configuration,
            compartment_id=self.module.params.get("compartment_id"),
            update_configuration_details=update_details,
        )


ConfigurationHelperCustom = get_custom_class("ConfigurationHelperCustom")


class ResourceHelper(ConfigurationHelperCustom, ConfigurationHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec(supports_create=False,
                                                       supports_wait=True)
    module_args.update(
        dict(
            compartment_id=dict(type="str", required=True),
            retention_period_days=dict(type="int"),
            state=dict(type="str", default="present", choices=["present"]),
        ))
Пример #22
0
        return oci_common_utils.call_with_backoff(
            self.client.update_auto_scaling_configuration,
            auto_scaling_configuration_id=self.module.params.get(
                "auto_scaling_configuration_id"),
            update_auto_scaling_configuration_details=update_details,
        )

    def delete_resource(self):
        return oci_common_utils.call_with_backoff(
            self.client.delete_auto_scaling_configuration,
            auto_scaling_configuration_id=self.module.params.get(
                "auto_scaling_configuration_id"),
        )


AutoScalingConfigurationHelperCustom = get_custom_class(
    "AutoScalingConfigurationHelperCustom")


class ResourceHelper(AutoScalingConfigurationHelperCustom,
                     AutoScalingConfigurationHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec(supports_create=True,
                                                       supports_wait=False)
    module_args.update(
        dict(
            compartment_id=dict(type="str"),
            defined_tags=dict(type="dict"),
            display_name=dict(aliases=["name"], type="str"),
                continue
            setattr(
                restore_autonomous_data_warehouse_details,
                attr,
                self.module.params.get(attr),
            )
        return oci_common_utils.call_with_backoff(
            self.client.generate_autonomous_data_warehouse_wallet,
            autonomous_data_warehouse_id=self.module.params.get(
                "autonomous_data_warehouse_id"),
            restore_autonomous_data_warehouse_details=
            restore_autonomous_data_warehouse_details,
        )


AutonomousDataWarehouseHelperCustom = get_custom_class(
    "AutonomousDataWarehouseHelperCustom")


class ResourceHelper(AutonomousDataWarehouseHelperCustom,
                     AutonomousDataWarehouseHelperGen):
    pass


def main():
    module_args = oci_utils.get_taggable_arg_spec(supports_create=True,
                                                  supports_wait=True)
    module_args.update(
        dict(
            compartment_id=dict(type="str", required=False),
            admin_password=dict(type="str", required=False, no_log=True),
            password=dict(type="str", required=False, no_log=True),
    HAS_OCI_PY_SDK = False


class NamespaceMetadataFactsHelperGen(OCIResourceFactsHelperBase):
    """Supported operations: get"""
    def get_required_params_for_get(self):
        return ["namespace_name"]

    def get_resource(self):
        return oci_common_utils.call_with_backoff(
            self.client.get_namespace_metadata,
            namespace_name=self.module.params.get("namespace_name"),
        )


NamespaceMetadataFactsHelperCustom = get_custom_class(
    "NamespaceMetadataFactsHelperCustom")


class ResourceFactsHelper(NamespaceMetadataFactsHelperCustom,
                          NamespaceMetadataFactsHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec()
    module_args.update(dict(namespace_name=dict(type="str", required=True)))

    module = AnsibleModule(argument_spec=module_args)

    if not HAS_OCI_PY_SDK:
        module.fail_json(msg="oci python sdk required for this module.")
            network_security_group_id=self.module.params.get(
                "network_security_group_id"
            ),
            update_network_security_group_details=update_details,
        )

    def delete_resource(self):
        return oci_common_utils.call_with_backoff(
            self.client.delete_network_security_group,
            network_security_group_id=self.module.params.get(
                "network_security_group_id"
            ),
        )


NetworkSecurityGroupHelperCustom = get_custom_class("NetworkSecurityGroupHelperCustom")


class ResourceHelper(NetworkSecurityGroupHelperCustom, NetworkSecurityGroupHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec(
        supports_create=True, supports_wait=True
    )
    module_args.update(
        dict(
            compartment_id=dict(type="str"),
            defined_tags=dict(type="dict"),
            display_name=dict(aliases=["name"], type="str"),
Пример #26
0
    def delete_resource(self):
        return oci_wait_utils.call_and_wait(
            call_fn=self.client.delete_drg,
            call_fn_args=(),
            call_fn_kwargs=dict(drg_id=self.module.params.get("drg_id")),
            waiter_type=oci_wait_utils.LIFECYCLE_STATE_WAITER_KEY,
            operation=oci_common_utils.DELETE_OPERATION_KEY,
            waiter_client=self.client,
            resource_helper=self,
            wait_for_states=self.module.params.get("wait_until")
            or oci_common_utils.get_resource_terminated_states(),
        )


DrgHelperCustom = get_custom_class("DrgHelperCustom")


class ResourceHelper(DrgHelperCustom, DrgHelperGen):
    pass


def main():
    module_args = oci_common_utils.get_common_arg_spec(supports_create=True,
                                                       supports_wait=True)
    module_args.update(
        dict(
            compartment_id=dict(type="str"),
            defined_tags=dict(type="dict"),
            display_name=dict(aliases=["name"], type="str"),
            freeform_tags=dict(type="dict"),