swagger

package
v0.0.0-...-b6b4d69 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 1, 2020 License: MIT Imports: 21 Imported by: 0

README ¶

Go API client for swagger

ONTAP 9.6 adds support for an expansive RESTful API. The documentation below provides information about the types of API calls available to you, as well as details about using each API endpoint. You can learn more about the ONTAP REST API and ONTAP in the ONTAP 9 Documentation Center: http://docs.netapp.com/ontap-9/topic/com.netapp.doc.dot-rest-api/home.html. NetApp welcomes your comments and suggestions about the ONTAP REST API and the documentation for its use.
Using the ONTAP 9.6 REST API online documentation Each API method includes usage examples, as well as a model that displays all the required and optional properties supported by the method. Click the Model link, available with each API method, to see all the required and optional properties supported by each method.

Overview

This API client was generated by the swagger-codegen project. By using the swagger-spec from a remote server, you can easily generate an API client.

  • API version: v1
  • Package version: 1.0.0
  • Build package: io.swagger.codegen.languages.GoClientCodegen For more information, please visit https://mysupport.netapp.com

Installation

Put the package under your project folder and add the following in import:

import "./swagger"

Documentation for API Endpoints

All URIs are relative to https://localhost/api

Class Method HTTP request Description
ApplicationApi ApplicationCollectionGet Get /application/applications
ApplicationApi ApplicationComponentCollectionGet Get /application/applications/{application.uuid}/components
ApplicationApi ApplicationComponentGet Get /application/applications/{application.uuid}/components/{uuid}
ApplicationApi ApplicationComponentSnapshotCollectionGet Get /application/applications/{application.uuid}/components/{component.uuid}/snapshots
ApplicationApi ApplicationComponentSnapshotCreate Post /application/applications/{application.uuid}/components/{component.uuid}/snapshots
ApplicationApi ApplicationComponentSnapshotDelete Delete /application/applications/{application.uuid}/components/{component.uuid}/snapshots/{uuid}
ApplicationApi ApplicationComponentSnapshotGet Get /application/applications/{application.uuid}/components/{component.uuid}/snapshots/{uuid}
ApplicationApi ApplicationComponentSnapshotRestore Post /application/applications/{application.uuid}/components/{component.uuid}/snapshots/{uuid}/restore
ApplicationApi ApplicationCreate Post /application/applications
ApplicationApi ApplicationDelete Delete /application/applications/{uuid}
ApplicationApi ApplicationGet Get /application/applications/{uuid}
ApplicationApi ApplicationModify Patch /application/applications/{uuid}
ApplicationApi ApplicationSnapshotCollectionGet Get /application/applications/{application.uuid}/snapshots
ApplicationApi ApplicationSnapshotCreate Post /application/applications/{application.uuid}/snapshots
ApplicationApi ApplicationSnapshotDelete Delete /application/applications/{application.uuid}/snapshots/{uuid}
ApplicationApi ApplicationSnapshotGet Get /application/applications/{application.uuid}/snapshots/{uuid}
ApplicationApi ApplicationSnapshotRestore Post /application/applications/{application.uuid}/snapshots/{uuid}/restore
ApplicationApi ApplicationTemplateCollectionGet Get /application/templates
ApplicationApi ApplicationTemplateGet Get /application/templates/{name}
CloudApi CloudTargetCollectionGet Get /cloud/targets
CloudApi CloudTargetCreate Post /cloud/targets
CloudApi CloudTargetDelete Delete /cloud/targets/{uuid}
CloudApi CloudTargetGet Get /cloud/targets/{uuid}
CloudApi CloudTargetModify Patch /cloud/targets/{uuid}
ClusterApi ChassisCollectionGet Get /cluster/chassis
ClusterApi ChassisGet Get /cluster/chassis/{id}
ClusterApi ClusterCollectionPerformanceMetricsGet Get /cluster/metrics
ClusterApi ClusterCreate Post /cluster
ClusterApi ClusterGet Get /cluster
ClusterApi ClusterModify Patch /cluster
ClusterApi ClusterPeerCreate Post /cluster/peers
ClusterApi ClusterPeerDelete Delete /cluster/peers/{uuid}
ClusterApi ClusterPeerGet Get /cluster/peers/{uuid}
ClusterApi ClusterPeerModify Patch /cluster/peers/{uuid}
ClusterApi JobCollectionGet Get /cluster/jobs
ClusterApi JobGet Get /cluster/jobs/{uuid}
ClusterApi JobModify Patch /cluster/jobs/{uuid}
ClusterApi LicenseCreate Post /cluster/licensing/licenses
ClusterApi LicenseDelete Delete /cluster/licensing/licenses/{name}
ClusterApi LicenseGet Get /cluster/licensing/licenses/{name}
ClusterApi LicensesGet Get /cluster/licensing/licenses
ClusterApi NodeGet Get /cluster/nodes/{uuid}
ClusterApi NodeModify Patch /cluster/nodes/{uuid}
ClusterApi NodesCreate Post /cluster/nodes
ClusterApi NodesGet Get /cluster/nodes
ClusterApi PeersCollectionGet Get /cluster/peers
ClusterApi ScheduleCollectionGet Get /cluster/schedules
ClusterApi ScheduleCreate Post /cluster/schedules
ClusterApi ScheduleDelete Delete /cluster/schedules/{uuid}
ClusterApi ScheduleGet Get /cluster/schedules/{uuid}
ClusterApi ScheduleModify Patch /cluster/schedules/{uuid}
ClusterApi SoftwareGet Get /cluster/software
ClusterApi SoftwareHistoryCollectionGet Get /cluster/software/history
ClusterApi SoftwareModify Patch /cluster/software
ClusterApi SoftwarePackageCreate Post /cluster/software/download
ClusterApi SoftwarePackageDelete Delete /cluster/software/packages/{version}
ClusterApi SoftwarePackageGet Get /cluster/software/packages/{version}
ClusterApi SoftwarePackagesCollectionGet Get /cluster/software/packages
NASApi AuditCollectionGet Get /protocols/audit
NASApi AuditCreate Post /protocols/audit
NASApi AuditDelete Delete /protocols/audit/{svm.uuid}
NASApi AuditGet Get /protocols/audit/{svm.uuid}
NASApi AuditModify Patch /protocols/audit/{svm.uuid}
NASApi CifsHomedirSearchPathGet Get /protocols/cifs/home-directory/search-paths/{svm.uuid}/{index}
NASApi CifsSearchPathCollectionGet Get /protocols/cifs/home-directory/search-paths
NASApi CifsSearchPathCreate Post /protocols/cifs/home-directory/search-paths
NASApi CifsSearchPathDelete Delete /protocols/cifs/home-directory/search-paths/{svm.uuid}/{index}
NASApi CifsSearchPathModify Patch /protocols/cifs/home-directory/search-paths/{svm.uuid}/{index}
NASApi CifsServiceCollectionGet Get /protocols/cifs/services
NASApi CifsServiceCreate Post /protocols/cifs/services
NASApi CifsServiceDelete Delete /protocols/cifs/services/{svm.uuid}
NASApi CifsServiceGet Get /protocols/cifs/services/{svm.uuid}
NASApi CifsServiceModify Patch /protocols/cifs/services/{svm.uuid}
NASApi CifsShareAclCollectionGet Get /protocols/cifs/shares/{svm.uuid}/{share}/acls
NASApi CifsShareAclCreate Post /protocols/cifs/shares/{svm.uuid}/{share}/acls
NASApi CifsShareAclDelete Delete /protocols/cifs/shares/{svm.uuid}/{share}/acls/{user_or_group}/{type}
NASApi CifsShareAclGet Get /protocols/cifs/shares/{svm.uuid}/{share}/acls/{user_or_group}/{type}
NASApi CifsShareAclModify Patch /protocols/cifs/shares/{svm.uuid}/{share}/acls/{user_or_group}/{type}
NASApi CifsShareCollectionGet Get /protocols/cifs/shares
NASApi CifsShareCreate Post /protocols/cifs/shares
NASApi CifsShareDelete Delete /protocols/cifs/shares/{svm.uuid}/{name}
NASApi CifsShareGet Get /protocols/cifs/shares/{svm.uuid}/{name}
NASApi CifsShareModify Patch /protocols/cifs/shares/{svm.uuid}/{name}
NASApi CifsSymlinkMappingCollectionGet Get /protocols/cifs/unix-symlink-mapping
NASApi CifsSymlinkMappingCreate Post /protocols/cifs/unix-symlink-mapping
NASApi CifsSymlinkMappingDelete Delete /protocols/cifs/unix-symlink-mapping/{svm.uuid}/{unix_path}
NASApi CifsSymlinkMappingGet Get /protocols/cifs/unix-symlink-mapping/{svm.uuid}/{unix_path}
NASApi CifsSymlinkMappingModify Patch /protocols/cifs/unix-symlink-mapping/{svm.uuid}/{unix_path}
NASApi ExportPolicyCollectionGet Get /protocols/nfs/export-policies
NASApi ExportPolicyCreate Post /protocols/nfs/export-policies
NASApi ExportPolicyDelete Delete /protocols/nfs/export-policies/{id}
NASApi ExportPolicyGet Get /protocols/nfs/export-policies/{id}
NASApi ExportPolicyModify Patch /protocols/nfs/export-policies/{id}
NASApi ExportRuleClientsCreate Post /protocols/nfs/export-policies/{policy.id}/rules/{index}/clients
NASApi ExportRuleClientsDelete Delete /protocols/nfs/export-policies/{policy.id}/rules/{index}/clients/{match}
NASApi ExportRuleClientsGet Get /protocols/nfs/export-policies/{policy.id}/rules/{index}/clients
NASApi ExportRuleCollectionGet Get /protocols/nfs/export-policies/{policy.id}/rules
NASApi ExportRuleCreate Post /protocols/nfs/export-policies/{policy.id}/rules
NASApi ExportRuleDelete Delete /protocols/nfs/export-policies/{policy.id}/rules/{index}
NASApi ExportRuleGet Get /protocols/nfs/export-policies/{policy.id}/rules/{index}
NASApi ExportRuleModify Patch /protocols/nfs/export-policies/{policy.id}/rules/{index}
NASApi FpolicyCollectionGet Get /protocols/fpolicy
NASApi FpolicyCreate Post /protocols/fpolicy
NASApi FpolicyDelete Delete /protocols/fpolicy/{svm.uuid}
NASApi FpolicyEngineCollectionGet Get /protocols/fpolicy/{svm.uuid}/engines
NASApi FpolicyEngineCreate Post /protocols/fpolicy/{svm.uuid}/engines
NASApi FpolicyEngineDelete Delete /protocols/fpolicy/{svm.uuid}/engines/{name}
NASApi FpolicyEngineGet Get /protocols/fpolicy/{svm.uuid}/engines/{name}
NASApi FpolicyEngineModify Patch /protocols/fpolicy/{svm.uuid}/engines/{name}
NASApi FpolicyEventCollectionGet Get /protocols/fpolicy/{svm.uuid}/events
NASApi FpolicyEventCreate Post /protocols/fpolicy/{svm.uuid}/events
NASApi FpolicyEventDelete Delete /protocols/fpolicy/{svm.uuid}/events/{name}
NASApi FpolicyEventModify Patch /protocols/fpolicy/{svm.uuid}/events/{name}
NASApi FpolicyEventsGet Get /protocols/fpolicy/{svm.uuid}/events/{name}
NASApi FpolicyGet Get /protocols/fpolicy/{svm.uuid}
NASApi FpolicyPolicyCollectionGet Get /protocols/fpolicy/{svm.uuid}/policies
NASApi FpolicyPolicyCreate Post /protocols/fpolicy/{svm.uuid}/policies
NASApi FpolicyPolicyDelete Delete /protocols/fpolicy/{svm.uuid}/policies/{name}
NASApi FpolicyPolicyGet Get /protocols/fpolicy/{svm.uuid}/policies/{name}
NASApi FpolicyPolicyModify Patch /protocols/fpolicy/{svm.uuid}/policies/{name}
NASApi KerberosInterfaceCollectionGet Get /protocols/nfs/kerberos/interfaces
NASApi KerberosInterfaceGet Get /protocols/nfs/kerberos/interfaces/{uuid}
NASApi KerberosInterfaceModify Patch /protocols/nfs/kerberos/interfaces/{uuid}
NASApi KerberosRealmCollectionGet Get /protocols/nfs/kerberos/realms
NASApi KerberosRealmCreate Post /protocols/nfs/kerberos/realms
NASApi KerberosRealmDelete Delete /protocols/nfs/kerberos/realms/{svm.uuid}/{name}
NASApi KerberosRealmGet Get /protocols/nfs/kerberos/realms/{svm.uuid}/{name}
NASApi KerberosRealmModify Patch /protocols/nfs/kerberos/realms/{svm.uuid}/{name}
NASApi NfsCollectionGet Get /protocols/nfs/services
NASApi NfsCreate Post /protocols/nfs/services
NASApi NfsDelete Delete /protocols/nfs/services/{svm.uuid}
NASApi NfsGet Get /protocols/nfs/services/{svm.uuid}
NASApi NfsModify Patch /protocols/nfs/services/{svm.uuid}
NASApi VscanCollectionGet Get /protocols/vscan
NASApi VscanConfigDelete Delete /protocols/vscan/{svm.uuid}
NASApi VscanCreate Post /protocols/vscan
NASApi VscanGet Get /protocols/vscan/{svm.uuid}
NASApi VscanModify Patch /protocols/vscan/{svm.uuid}
NASApi VscanOnAccessCreate Post /protocols/vscan/{svm.uuid}/on-access-policies
NASApi VscanOnAccessDelete Delete /protocols/vscan/{svm.uuid}/on-access-policies/{name}
NASApi VscanOnAccessGet Get /protocols/vscan/{svm.uuid}/on-access-policies/{name}
NASApi VscanOnAccessModify Patch /protocols/vscan/{svm.uuid}/on-access-policies/{name}
NASApi VscanOnAccessPolicyCollectionGet Get /protocols/vscan/{svm.uuid}/on-access-policies
NASApi VscanOnDemandCreate Post /protocols/vscan/{svm.uuid}/on-demand-policies
NASApi VscanOnDemandDelete Delete /protocols/vscan/{svm.uuid}/on-demand-policies/{name}
NASApi VscanOnDemandGet Get /protocols/vscan/{svm.uuid}/on-demand-policies/{name}
NASApi VscanOnDemandModify Patch /protocols/vscan/{svm.uuid}/on-demand-policies/{name}
NASApi VscanOnDemandPolicyCollectionGet Get /protocols/vscan/{svm.uuid}/on-demand-policies
NASApi VscanScannerCollectionGet Get /protocols/vscan/{svm.uuid}/scanner-pools
NASApi VscanScannerCreate Post /protocols/vscan/{svm.uuid}/scanner-pools
NASApi VscanScannerDelete Delete /protocols/vscan/{svm.uuid}/scanner-pools/{name}
NASApi VscanScannerGet Get /protocols/vscan/{svm.uuid}/scanner-pools/{name}
NASApi VscanScannerModify Patch /protocols/vscan/{svm.uuid}/scanner-pools/{name}
NASApi VscanServerStatusGet Get /protocols/vscan/server-status
NVMeApi FcLoginCollectionGet Get /network/fc/logins
NVMeApi FcLoginGet Get /network/fc/logins/{interface.uuid}/{initiator.wwpn}
NVMeApi NvmeInterfaceCollectionGet Get /protocols/nvme/interfaces
NVMeApi NvmeInterfaceGet Get /protocols/nvme/interfaces/{uuid}
NVMeApi NvmeNamespaceCollectionGet Get /storage/namespaces
NVMeApi NvmeNamespaceCreate Post /storage/namespaces
NVMeApi NvmeNamespaceDelete Delete /storage/namespaces/{uuid}
NVMeApi NvmeNamespaceGet Get /storage/namespaces/{uuid}
NVMeApi NvmeNamespaceModify Patch /storage/namespaces/{uuid}
NVMeApi NvmeServiceCollectionGet Get /protocols/nvme/services
NVMeApi NvmeServiceCreate Post /protocols/nvme/services
NVMeApi NvmeServiceDelete Delete /protocols/nvme/services/{svm.uuid}
NVMeApi NvmeServiceGet Get /protocols/nvme/services/{svm.uuid}
NVMeApi NvmeServiceModify Patch /protocols/nvme/services/{svm.uuid}
NVMeApi NvmeSubsystemCollectionGet Get /protocols/nvme/subsystems
NVMeApi NvmeSubsystemControllerCollectionGet Get /protocols/nvme/subsystem-controllers
NVMeApi NvmeSubsystemControllerGet Get /protocols/nvme/subsystem-controllers/{subsystem.uuid}/{id}
NVMeApi NvmeSubsystemCreate Post /protocols/nvme/subsystems
NVMeApi NvmeSubsystemDelete Delete /protocols/nvme/subsystems/{uuid}
NVMeApi NvmeSubsystemGet Get /protocols/nvme/subsystems/{uuid}
NVMeApi NvmeSubsystemHostCollectionGet Get /protocols/nvme/subsystems/{subsystem.uuid}/hosts
NVMeApi NvmeSubsystemHostCreate Post /protocols/nvme/subsystems/{subsystem.uuid}/hosts
NVMeApi NvmeSubsystemHostDelete Delete /protocols/nvme/subsystems/{subsystem.uuid}/hosts/{nqn}
NVMeApi NvmeSubsystemHostGet Get /protocols/nvme/subsystems/{subsystem.uuid}/hosts/{nqn}
NVMeApi NvmeSubsystemMapCollectionGet Get /protocols/nvme/subsystem-maps
NVMeApi NvmeSubsystemMapCreate Post /protocols/nvme/subsystem-maps
NVMeApi NvmeSubsystemMapDelete Delete /protocols/nvme/subsystem-maps/{subsystem.uuid}/{namespace.uuid}
NVMeApi NvmeSubsystemMapGet Get /protocols/nvme/subsystem-maps/{subsystem.uuid}/{namespace.uuid}
NVMeApi NvmeSubsystemModify Patch /protocols/nvme/subsystems/{uuid}
NameServicesApi DnsCollectionGet Get /name-services/dns
NameServicesApi DnsCreate Post /name-services/dns
NameServicesApi DnsDelete Delete /name-services/dns/{svm.uuid}
NameServicesApi DnsGet Get /name-services/dns/{svm.uuid}
NameServicesApi DnsModify Patch /name-services/dns/{svm.uuid}
NameServicesApi LdapCollectionGet Get /name-services/ldap
NameServicesApi LdapCreate Post /name-services/ldap
NameServicesApi LdapDelete Delete /name-services/ldap/{svm.uuid}
NameServicesApi LdapGet Get /name-services/ldap/{svm.uuid}
NameServicesApi LdapModify Patch /name-services/ldap/{svm.uuid}
NameServicesApi NameMappingCollectionGet Get /name-services/name-mappings
NameServicesApi NameMappingCreate Post /name-services/name-mappings
NameServicesApi NameMappingDelete Delete /name-services/name-mappings/{svm.uuid}/{direction}/{index}
NameServicesApi NameMappingModify Patch /name-services/name-mappings/{svm.uuid}/{direction}/{index}
NameServicesApi NameMappingPositionGet Get /name-services/name-mappings/{svm.uuid}/{direction}/{index}
NameServicesApi NisCollectionGet Get /name-services/nis
NameServicesApi NisCreate Post /name-services/nis
NameServicesApi NisDelete Delete /name-services/nis/{svm.uuid}
NameServicesApi NisGet Get /name-services/nis/{svm.uuid}
NameServicesApi NisModify Patch /name-services/nis/{svm.uuid}
NetworkingApi FcInterfaceCollectionGet Get /network/fc/interfaces
NetworkingApi FcInterfaceCreate Post /network/fc/interfaces
NetworkingApi FcInterfaceDelete Delete /network/fc/interfaces/{uuid}
NetworkingApi FcInterfaceGet Get /network/fc/interfaces/{uuid}
NetworkingApi FcInterfaceModify Patch /network/fc/interfaces/{uuid}
NetworkingApi FcPortCollectionGet Get /network/fc/ports
NetworkingApi FcPortGet Get /network/fc/ports/{uuid}
NetworkingApi FcPortModify Patch /network/fc/ports/{uuid}
NetworkingApi IpspaceDelete Delete /network/ipspaces/{uuid}
NetworkingApi IpspaceGet Get /network/ipspaces/{uuid}
NetworkingApi IpspaceModify Patch /network/ipspaces/{uuid}
NetworkingApi IpspacesCreate Post /network/ipspaces
NetworkingApi IpspacesGet Get /network/ipspaces
NetworkingApi NetworkEthernetBroadcastDomainDelete Delete /network/ethernet/broadcast-domains/{uuid}
NetworkingApi NetworkEthernetBroadcastDomainGet Get /network/ethernet/broadcast-domains/{uuid}
NetworkingApi NetworkEthernetBroadcastDomainModify Patch /network/ethernet/broadcast-domains/{uuid}
NetworkingApi NetworkEthernetBroadcastDomainsCreate Post /network/ethernet/broadcast-domains
NetworkingApi NetworkEthernetBroadcastDomainsGet Get /network/ethernet/broadcast-domains
NetworkingApi NetworkEthernetPortDelete Delete /network/ethernet/ports/{uuid}
NetworkingApi NetworkEthernetPortGet Get /network/ethernet/ports/{uuid}
NetworkingApi NetworkEthernetPortModify Patch /network/ethernet/ports/{uuid}
NetworkingApi NetworkEthernetPortsCreate Post /network/ethernet/ports
NetworkingApi NetworkEthernetPortsGet Get /network/ethernet/ports
NetworkingApi NetworkIpInterfaceDelete Delete /network/ip/interfaces/{uuid}
NetworkingApi NetworkIpInterfaceGet Get /network/ip/interfaces/{uuid}
NetworkingApi NetworkIpInterfaceModify Patch /network/ip/interfaces/{uuid}
NetworkingApi NetworkIpInterfacesCreate Post /network/ip/interfaces
NetworkingApi NetworkIpInterfacesGet Get /network/ip/interfaces
NetworkingApi NetworkIpRouteDelete Delete /network/ip/routes/{uuid}
NetworkingApi NetworkIpRouteGet Get /network/ip/routes/{uuid}
NetworkingApi NetworkIpRoutesCreate Post /network/ip/routes
NetworkingApi NetworkIpRoutesGet Get /network/ip/routes
NetworkingApi NetworkIpServicePoliciesGet Get /network/ip/service-policies
NetworkingApi NetworkIpServicePolicyGet Get /network/ip/service-policies/{uuid}
SANApi FcLoginCollectionGet Get /network/fc/logins
SANApi FcLoginGet Get /network/fc/logins/{interface.uuid}/{initiator.wwpn}
SANApi FcpServiceCollectionGet Get /protocols/san/fcp/services
SANApi FcpServiceCreate Post /protocols/san/fcp/services
SANApi FcpServiceDelete Delete /protocols/san/fcp/services/{svm.uuid}
SANApi FcpServiceGet Get /protocols/san/fcp/services/{svm.uuid}
SANApi FcpServiceModify Patch /protocols/san/fcp/services/{svm.uuid}
SANApi IgroupCollectionGet Get /protocols/san/igroups
SANApi IgroupCreate Post /protocols/san/igroups
SANApi IgroupDelete Delete /protocols/san/igroups/{uuid}
SANApi IgroupGet Get /protocols/san/igroups/{uuid}
SANApi IgroupInitiatorCollectionGet Get /protocols/san/igroups/{igroup.uuid}/initiators
SANApi IgroupInitiatorCreate Post /protocols/san/igroups/{igroup.uuid}/initiators
SANApi IgroupInitiatorDelete Delete /protocols/san/igroups/{igroup.uuid}/initiators/{name}
SANApi IgroupInitiatorGet Get /protocols/san/igroups/{igroup.uuid}/initiators/{name}
SANApi IgroupModify Patch /protocols/san/igroups/{uuid}
SANApi IscsiCredentialsCollectionGet Get /protocols/san/iscsi/credentials
SANApi IscsiCredentialsCreate Post /protocols/san/iscsi/credentials
SANApi IscsiCredentialsDelete Delete /protocols/san/iscsi/credentials/{svm.uuid}/{initiator}
SANApi IscsiCredentialsGet Get /protocols/san/iscsi/credentials/{svm.uuid}/{initiator}
SANApi IscsiCredentialsModify Patch /protocols/san/iscsi/credentials/{svm.uuid}/{initiator}
SANApi IscsiServiceCollectionGet Get /protocols/san/iscsi/services
SANApi IscsiServiceCreate Post /protocols/san/iscsi/services
SANApi IscsiServiceDelete Delete /protocols/san/iscsi/services/{svm.uuid}
SANApi IscsiServiceGet Get /protocols/san/iscsi/services/{svm.uuid}
SANApi IscsiServiceModify Patch /protocols/san/iscsi/services/{svm.uuid}
SANApi IscsiSessionCollectionGet Get /protocols/san/iscsi/sessions
SANApi IscsiSessionGet Get /protocols/san/iscsi/sessions/{svm.uuid}/{tpgroup}/{tsih}
SANApi LunCollectionGet Get /storage/luns
SANApi LunCreate Post /storage/luns
SANApi LunDelete Delete /storage/luns/{uuid}
SANApi LunGet Get /storage/luns/{uuid}
SANApi LunMapCollectionGet Get /protocols/san/lun-maps
SANApi LunMapCreate Post /protocols/san/lun-maps
SANApi LunMapDelete Delete /protocols/san/lun-maps/{lun.uuid}/{igroup.uuid}
SANApi LunMapGet Get /protocols/san/lun-maps/{lun.uuid}/{igroup.uuid}
SANApi LunModify Patch /storage/luns/{uuid}
SANApi WwpnAliasCollectionGet Get /network/fc/wwpn-aliases
SANApi WwpnAliasCreate Post /network/fc/wwpn-aliases
SANApi WwpnAliasDelete Delete /network/fc/wwpn-aliases/{svm.uuid}/{alias}
SANApi WwpnAliasGet Get /network/fc/wwpn-aliases/{svm.uuid}/{alias}
SecurityApi AccountCollectionGet Get /security/accounts
SecurityApi AccountCreate Post /security/accounts
SecurityApi AccountDelete Delete /security/accounts/{owner.uuid}/{name}
SecurityApi AccountGet Get /security/accounts/{owner.uuid}/{name}
SecurityApi AccountModify Patch /security/accounts/{owner.uuid}/{name}
SecurityApi AccountPasswordModify Post /security/authentication/password
SecurityApi AuditLogForwardingGet Get /security/audit/destinations
SecurityApi ClusterLdapCreate Post /security/authentication/cluster/ldap
SecurityApi ClusterLdapDelete Delete /security/authentication/cluster/ldap
SecurityApi ClusterLdapGet Get /security/authentication/cluster/ldap
SecurityApi ClusterLdapModify Patch /security/authentication/cluster/ldap
SecurityApi ClusterNisCreate Post /security/authentication/cluster/nis
SecurityApi ClusterNisDelete Delete /security/authentication/cluster/nis
SecurityApi ClusterNisGet Get /security/authentication/cluster/nis
SecurityApi ClusterNisModify Patch /security/authentication/cluster/nis
SecurityApi LoginMessagesCollectionGet Get /security/login/messages
SecurityApi LoginMessagesGet Get /security/login/messages/{uuid}
SecurityApi LoginMessagesModify Patch /security/login/messages/{uuid}
SecurityApi RoleCollectionGet Get /security/roles
SecurityApi RoleCreate Post /security/roles
SecurityApi RoleDelete Delete /security/roles/{owner.uuid}/{name}
SecurityApi RoleGet Get /security/roles/{owner.uuid}/{name}
SecurityApi RolePrivilegeCollectionGet Get /security/roles/{owner.uuid}/{name}/privileges
SecurityApi RolePrivilegeCreate Post /security/roles/{owner.uuid}/{name}/privileges
SecurityApi RolePrivilegeDelete Delete /security/roles/{owner.uuid}/{name}/privileges/{path}
SecurityApi RolePrivilegeGet Get /security/roles/{owner.uuid}/{name}/privileges/{path}
SecurityApi RolePrivilegeModify Patch /security/roles/{owner.uuid}/{name}/privileges/{path}
SecurityApi SecurityAuditGet Get /security/audit
SecurityApi SecurityAuditLogCollectionGet Get /security/audit/messages
SecurityApi SecurityAuditModify Patch /security/audit
SecurityApi SecurityCertificateCollectionGet Get /security/certificates
SecurityApi SecurityCertificateCreate Post /security/certificates
SecurityApi SecurityCertificateDelete Delete /security/certificates/{uuid}
SecurityApi SecurityCertificateGet Get /security/certificates/{uuid}
SecurityApi SecurityCertificateSign Post /security/certificates/{ca.uuid}/sign
SecurityApi SecurityKeyManagerCollectionGet Get /security/key-managers
SecurityApi SecurityKeyManagerDelete Delete /security/key-managers/{uuid}
SecurityApi SecurityKeyManagerEnable Post /security/key-managers
SecurityApi SecurityKeyManagerGet Get /security/key-managers/{uuid}
SecurityApi SecurityKeyManagerKeyServersAdd Post /security/key-managers/{uuid}/key-servers
SecurityApi SecurityKeyManagerKeyServersCollectionGet Get /security/key-managers/{uuid}/key-servers
SecurityApi SecurityKeyManagerKeyServersDelete Delete /security/key-managers/{uuid}/key-servers/{server}
SecurityApi SecurityKeyManagerKeyServersGet Get /security/key-managers/{uuid}/key-servers/{server}
SecurityApi SecurityKeyManagerKeyServersModify Patch /security/key-managers/{uuid}/key-servers/{server}
SecurityApi SecurityKeyManagerModify Patch /security/key-managers/{uuid}
SecurityApi SecurityLogForwardingCreate Post /security/audit/destinations
SecurityApi SecurityLogForwardingDelete Delete /security/audit/destinations/{address}/{port}
SecurityApi SecurityLogForwardingGet Get /security/audit/destinations/{address}/{port}
SecurityApi SecurityLogForwardingModify Patch /security/audit/destinations/{address}/{port}
SecurityApi SecuritySamlSpCreate Post /security/authentication/cluster/saml-sp
SecurityApi SecuritySamlSpDelete Delete /security/authentication/cluster/saml-sp
SecurityApi SecuritySamlSpGet Get /security/authentication/cluster/saml-sp
SecurityApi SecuritySamlSpModify Patch /security/authentication/cluster/saml-sp
SnapmirrorApi SnapmirrorPoliciesGet Get /snapmirror/policies
SnapmirrorApi SnapmirrorPolicyCreate Post /snapmirror/policies
SnapmirrorApi SnapmirrorPolicyDelete Delete /snapmirror/policies/{uuid}
SnapmirrorApi SnapmirrorPolicyGet Get /snapmirror/policies/{uuid}
SnapmirrorApi SnapmirrorPolicyModify Patch /snapmirror/policies/{uuid}
SnapmirrorApi SnapmirrorRelationshipCreate Post /snapmirror/relationships
SnapmirrorApi SnapmirrorRelationshipDelete Delete /snapmirror/relationships/{uuid}
SnapmirrorApi SnapmirrorRelationshipGet Get /snapmirror/relationships/{uuid}
SnapmirrorApi SnapmirrorRelationshipModify Patch /snapmirror/relationships/{uuid}
SnapmirrorApi SnapmirrorRelationshipTransferCreate Post /snapmirror/relationships/{relationship.uuid}/transfers
SnapmirrorApi SnapmirrorRelationshipTransferGet Get /snapmirror/relationships/{relationship.uuid}/transfers/{uuid}
SnapmirrorApi SnapmirrorRelationshipTransferModify Patch /snapmirror/relationships/{relationship.uuid}/transfers/{uuid}
SnapmirrorApi SnapmirrorRelationshipTransfersGet Get /snapmirror/relationships/{relationship.uuid}/transfers
SnapmirrorApi SnapmirrorRelationshipsGet Get /snapmirror/relationships
StorageApi AggregateCollectionGet Get /storage/aggregates
StorageApi AggregateCreate Post /storage/aggregates
StorageApi AggregateDelete Delete /storage/aggregates/{uuid}
StorageApi AggregateGet Get /storage/aggregates/{uuid}
StorageApi AggregateModify Patch /storage/aggregates/{uuid}
StorageApi CloudStoreCollectionGet Get /storage/aggregates/{aggregate.uuid}/cloud-stores
StorageApi CloudStoreCreate Post /storage/aggregates/{aggregate.uuid}/cloud-stores
StorageApi CloudStoreDelete Delete /storage/aggregates/{aggregate.uuid}/cloud-stores/{target.uuid}
StorageApi CloudStoreGet Get /storage/aggregates/{aggregate.uuid}/cloud-stores/{target.uuid}
StorageApi CloudStoreModify Patch /storage/aggregates/{aggregate.uuid}/cloud-stores/{target.uuid}
StorageApi DiskCollectionGet Get /storage/disks
StorageApi DiskGet Get /storage/disks/{name}
StorageApi FileCloneCreate Post /storage/file/clone
StorageApi FlexcacheCollectionGet Get /storage/flexcache/flexcaches
StorageApi FlexcacheCreate Post /storage/flexcache/flexcaches
StorageApi FlexcacheDelete Delete /storage/flexcache/flexcaches/{uuid}
StorageApi FlexcacheGet Get /storage/flexcache/flexcaches/{uuid}
StorageApi FlexcacheOriginCollectionGet Get /storage/flexcache/origins
StorageApi FlexcacheOriginGet Get /storage/flexcache/origins/{uuid}
StorageApi PlexCollectionGet Get /storage/aggregates/{aggregate.uuid}/plexes
StorageApi PlexGet Get /storage/aggregates/{aggregate.uuid}/plexes/{name}
StorageApi PortCollectionGet Get /storage/ports
StorageApi PortGet Get /storage/ports/{node.uuid}/{name}
StorageApi QosPolicyCollectionGet Get /storage/qos/policies
StorageApi QosPolicyCreate Post /storage/qos/policies
StorageApi QosPolicyDelete Delete /storage/qos/policies/{policy.uuid}
StorageApi QosPolicyGet Get /storage/qos/policies/{policy.uuid}
StorageApi QosPolicyModify Patch /storage/qos/policies/{policy.uuid}
StorageApi QtreeCollectionGet Get /storage/qtrees
StorageApi QtreeCreate Post /storage/qtrees
StorageApi QtreeDelete Delete /storage/qtrees/{volume.uuid}/{id}
StorageApi QtreeGet Get /storage/qtrees/{volume.uuid}/{id}
StorageApi QtreeModify Patch /storage/qtrees/{volume.uuid}/{id}
StorageApi QuotaReportCollectionGet Get /storage/quota/reports
StorageApi QuotaReportGet Get /storage/quota/reports/{volume.uuid}/{index}
StorageApi QuotaRuleCollectionGet Get /storage/quota/rules
StorageApi QuotaRuleCreate Post /storage/quota/rules
StorageApi QuotaRuleDelete Delete /storage/quota/rules/{rule.uuid}
StorageApi QuotaRuleGet Get /storage/quota/rules/{rule.uuid}
StorageApi QuotaRuleModify Patch /storage/quota/rules/{rule.uuid}
StorageApi ShelfCollectionGet Get /storage/shelves
StorageApi ShelfGet Get /storage/shelves/{uid}
StorageApi SnapshotCollectionGet Get /storage/volumes/{volume.uuid}/snapshots
StorageApi SnapshotCreate Post /storage/volumes/{volume.uuid}/snapshots
StorageApi SnapshotDelete Delete /storage/volumes/{volume.uuid}/snapshots/{uuid}
StorageApi SnapshotGet Get /storage/volumes/{volume.uuid}/snapshots/{uuid}
StorageApi SnapshotModify Patch /storage/volumes/{volume.uuid}/snapshots/{uuid}
StorageApi SnapshotPolicyCollectionGet Get /storage/snapshot-policies
StorageApi SnapshotPolicyCreate Post /storage/snapshot-policies
StorageApi SnapshotPolicyDelete Delete /storage/snapshot-policies/{uuid}
StorageApi SnapshotPolicyGet Get /storage/snapshot-policies/{uuid}
StorageApi SnapshotPolicyModify Patch /storage/snapshot-policies/{uuid}
StorageApi StorageClusterGet Get /storage/cluster
StorageApi VolumeCollectionGet Get /storage/volumes
StorageApi VolumeCollectionPerformanceMetricsGet Get /storage/volumes/{uuid}/metrics
StorageApi VolumeCreate Post /storage/volumes
StorageApi VolumeDelete Delete /storage/volumes/{uuid}
StorageApi VolumeGet Get /storage/volumes/{uuid}
StorageApi VolumeModify Patch /storage/volumes/{uuid}
SupportApi AutosupportCreate Post /support/autosupport/messages
SupportApi AutosupportGet Get /support/autosupport
SupportApi AutosupportMessageCollectionGet Get /support/autosupport/messages
SupportApi AutosupportModify Patch /support/autosupport
SupportApi ConfigurationBackupGet Get /support/configuration-backup
SupportApi ConfigurationBackupModify Patch /support/configuration-backup
SupportApi EmsConfigGet Get /support/ems
SupportApi EmsConfigModify Patch /support/ems
SupportApi EmsDestinationCollectionGet Get /support/ems/destinations
SupportApi EmsDestinationCreate Post /support/ems/destinations
SupportApi EmsDestinationDelete Delete /support/ems/destinations/{name}
SupportApi EmsDestinationGet Get /support/ems/destinations/{name}
SupportApi EmsDestinationModify Patch /support/ems/destinations/{name}
SupportApi EmsEventCollectionGet Get /support/ems/events
SupportApi EmsFilterCollectionGet Get /support/ems/filters
SupportApi EmsFilterCreate Post /support/ems/filters
SupportApi EmsFilterDelete Delete /support/ems/filters/{name}
SupportApi EmsFilterGet Get /support/ems/filters/{name}
SupportApi EmsFilterModify Patch /support/ems/filters/{name}
SupportApi EmsFilterRuleCollectionGet Get /support/ems/filters/{name}/rules
SupportApi EmsFilterRuleDelete Delete /support/ems/filters/{name}/rules/{index}
SupportApi EmsFilterRuleGet Get /support/ems/filters/{name}/rules/{index}
SupportApi EmsFilterRuleModify Patch /support/ems/filters/{name}/rules/{index}
SupportApi EmsFiltersRulesCreate Post /support/ems/filters/{name}/rules
SupportApi EmsMessageCollectionGet Get /support/ems/messages
SvmApi SvmCollectionGet Get /svm/svms
SvmApi SvmCreate Post /svm/svms
SvmApi SvmDelete Delete /svm/svms/{uuid}
SvmApi SvmGet Get /svm/svms/{uuid}
SvmApi SvmPatchModify Patch /svm/svms/{uuid}
SvmApi SvmPeerCollectionGet Get /svm/peers
SvmApi SvmPeerCreate Post /svm/peers
SvmApi SvmPeerDelete Delete /svm/peers/{peer.uuid}
SvmApi SvmPeerInstanceGet Get /svm/peers/{peer.uuid}
SvmApi SvmPeerModify Patch /svm/peers/{peer.uuid}
SvmApi SvmPeerPermissionCollectionGet Get /svm/peer-permissions
SvmApi SvmPeerPermissionDelete Delete /svm/peer-permissions/{cluster.uuid}/{svm.uuid}
SvmApi SvmPeerPermissionInstanceGet Get /svm/peer-permissions/{cluster.uuid}/{svm.uuid}
SvmApi SvmPeerPermissionModify Patch /svm/peer-permissions/{cluster.uuid}/{svm.uuid}
SvmApi SvmPeerPermissionPost Post /svm/peer-permissions

Documentation For Models

Documentation For Authorization

simple

  • Type: HTTP basic authentication

Example

auth := context.WithValue(context.Background(), sw.ContextBasicAuth, sw.BasicAuth{
	UserName: "username",
	Password: "password",
})
r, err := client.Service.Operation(auth, args)

Author

Documentation ¶

Index ¶

Constants ¶

This section is empty.

Variables ¶

View Source
var (
	// ContextOAuth2 takes a oauth2.TokenSource as authentication for the request.
	ContextOAuth2 = contextKey("token")

	// ContextBasicAuth takes BasicAuth as authentication for the request.
	ContextBasicAuth = contextKey("basic")

	// ContextAccessToken takes a string oauth2 access token as authentication for the request.
	ContextAccessToken = contextKey("accesstoken")

	// ContextAPIKey takes an APIKey as authentication for the request
	ContextAPIKey = contextKey("apikey")
)

Functions ¶

func CacheExpires ¶

func CacheExpires(r *http.Response) time.Time

CacheExpires helper function to determine remaining time before repeating a request.

Types ¶

type APIClient ¶

type APIClient struct {
	ApplicationApi *ApplicationApiService

	CloudApi *CloudApiService

	ClusterApi *ClusterApiService

	NASApi *NASApiService

	NVMeApi *NVMeApiService

	NameServicesApi *NameServicesApiService

	NetworkingApi *NetworkingApiService

	SANApi *SANApiService

	SecurityApi *SecurityApiService

	SnapmirrorApi *SnapmirrorApiService

	StorageApi *StorageApiService

	SupportApi *SupportApiService

	SvmApi *SvmApiService
	// contains filtered or unexported fields
}

APIClient manages communication with the ONTAP REST API API vv1 In most cases there should be only one, shared, APIClient.

func NewAPIClient ¶

func NewAPIClient(cfg *Configuration) *APIClient

NewAPIClient creates a new API client. Requires a userAgent string describing your application. optionally a custom http.Client to allow for advanced features such as caching.

func (*APIClient) ChangeBasePath ¶

func (c *APIClient) ChangeBasePath(path string)

Change base path to allow switching to mocks

type APIKey ¶

type APIKey struct {
	Key    string
	Prefix string
}

APIKey provides API key based authentication to a request passed via context using ContextAPIKey

type APIResponse ¶

type APIResponse struct {
	*http.Response `json:"-"`
	Message        string `json:"message,omitempty"`
	// Operation is the name of the swagger operation.
	Operation string `json:"operation,omitempty"`
	// RequestURL is the request URL. This value is always available, even if the
	// embedded *http.Response is nil.
	RequestURL string `json:"url,omitempty"`
	// Method is the HTTP method used for the request.  This value is always
	// available, even if the embedded *http.Response is nil.
	Method string `json:"method,omitempty"`
	// Payload holds the contents of the response body (which may be nil or empty).
	// This is provided here as the raw response.Body() reader will have already
	// been drained.
	Payload []byte `json:"-"`
}

func NewAPIResponse ¶

func NewAPIResponse(r *http.Response) *APIResponse

func NewAPIResponseWithError ¶

func NewAPIResponseWithError(errorMessage string) *APIResponse

type Account ¶

type Account struct {
	Links        *InlineResponse201Links `json:"_links,omitempty"`
	Applications []AccountApplication    `json:"applications,omitempty"`
	// Optional comment for the user account.
	Comment string `json:"comment,omitempty"`
	// Locked status of the account.
	Locked bool `json:"locked,omitempty"`
	// User or group account name
	Name  string        `json:"name,omitempty"`
	Owner *AccountOwner `json:"owner,omitempty"`
	// Password for the account. The password can contain a mix of lower and upper case alphabetic characters, digits, and special characters.
	Password string         `json:"password,omitempty"`
	Role     *RoleReference `json:"role,omitempty"`
	// Scope of the entity. set to \"cluster\" for cluster owned objects and to \"svm\" for SVM owned objects.
	Scope string `json:"scope,omitempty"`
}

type AccountApplication ¶

type AccountApplication struct {
	// Applications
	Application           string   `json:"application,omitempty"`
	AuthenticationMethods []string `json:"authentication_methods,omitempty"`
	// An optional additional authentication method for MFA. This only works with SSH as the application. It is ignored for all other applications.
	SecondAuthenticationMethod string `json:"second_authentication_method,omitempty"`
}

type AccountCollectionGetOpts ¶

type AccountCollectionGetOpts struct {
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type AccountCreateOpts ¶

type AccountCreateOpts struct {
	Info optional.Interface
}

type AccountOwner ¶

type AccountOwner struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the SVM.
	Name string `json:"name,omitempty"`
	// The unique identifier of the SVM.
	Uuid string `json:"uuid,omitempty"`
}

Owner name and UUID that uniquely identifies the user account.

type AccountPassword ¶

type AccountPassword struct {
	// The user account name whose password is being modified.
	Name  string                `json:"name,omitempty"`
	Owner *AccountPasswordOwner `json:"owner,omitempty"`
	// The password string
	Password string `json:"password,omitempty"`
}

The password object

type AccountPasswordOwner ¶

type AccountPasswordOwner struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the SVM.
	Name string `json:"name,omitempty"`
	// The unique identifier of the SVM.
	Uuid string `json:"uuid,omitempty"`
}

Owner name and UUID that uniquely identifies the user account. This field is optional and valid only when a cluster administrator is executing the API to uniquely identify the account whose password is being modified. The \"owner\" field is not required to be specified for SVM user accounts trying to modify their password.

type AccountReference ¶

type AccountReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// User account
	Name string `json:"name,omitempty"`
}

type AccountResponse ¶

type AccountResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32     `json:"num_records,omitempty"`
	Records    []Account `json:"records,omitempty"`
}
type AccountResponseLinks struct {
	Next *Href `json:"next,omitempty"`
	Self *Href `json:"self,omitempty"`
}

type AdDomain ¶

type AdDomain struct {
	// The fully qualified domain name of the Windows Active Directory to which this CIFS server belongs. A CIFS server appears as a member of Windows server object in the Active Directory store. POST and PATCH only.
	Fqdn string `json:"fqdn,omitempty"`
	// Specifies the organizational unit within the Active Directory domain to associate with the CIFS server. POST and PATCH only.
	OrganizationalUnit string `json:"organizational_unit,omitempty"`
	// The account password used to add this CIFS server to the Active Directory. This is not audited.
	Password string `json:"password,omitempty"`
	// The user account used to add this CIFS server to the Active Directory. POST and DELETE only.
	User string `json:"user,omitempty"`
}

type AdDomainSvm ¶

type AdDomainSvm struct {
	// The fully qualified domain name of the Windows Active Directory to which this CIFS server belongs. A CIFS server appears as a member of Windows server object in the Active Directory store.
	Fqdn string `json:"fqdn,omitempty"`
	// Specifies the organizational unit within the Active Directory domain to associate with the CIFS server.
	OrganizationalUnit string `json:"organizational_unit,omitempty"`
	// The account password used to add this CIFS server to the Active Directory. This is not audited. Valid in POST only.
	Password string `json:"password,omitempty"`
	// The user account used to add this CIFS server to the Active Directory. Valid in POST only.
	User string `json:"user,omitempty"`
}

type Aggregate ¶

type Aggregate struct {
	Links        *InlineResponse201Links `json:"_links,omitempty"`
	BlockStorage *AggregateBlockStorage  `json:"block_storage,omitempty"`
	CloudStorage *AggregateCloudStorage  `json:"cloud_storage,omitempty"`
	// Timestamp of aggregate creation
	CreateTime     string                   `json:"create_time,omitempty"`
	DataEncryption *AggregateDataEncryption `json:"data_encryption,omitempty"`
	DrHomeNode     *AggregateDrHomeNode     `json:"dr_home_node,omitempty"`
	HomeNode       *AggregateHomeNode       `json:"home_node,omitempty"`
	// Aggregate name
	Name string         `json:"name,omitempty"`
	Node *AggregateNode `json:"node,omitempty"`
	// SnapLock type
	SnaplockType string          `json:"snaplock_type,omitempty"`
	Space        *AggregateSpace `json:"space,omitempty"`
	// Operational state of the aggregate
	State string `json:"state,omitempty"`
	// Aggregate UUID
	Uuid string `json:"uuid,omitempty"`
}

type AggregateBlockStorage ¶

type AggregateBlockStorage struct {
	HybridCache *AggregateBlockStorageHybridCache `json:"hybrid_cache,omitempty"`
	Mirror      *AggregateBlockStorageMirror      `json:"mirror,omitempty"`
	// Plex reference for each plex in the aggregate.
	Plexes  []PlexReference               `json:"plexes,omitempty"`
	Primary *AggregateBlockStoragePrimary `json:"primary,omitempty"`
}

Configuration information for the locally attached portion of the aggregate. When a cloud store is also used by this aggregate, this is referred to as the performance tier.

type AggregateBlockStorageHybridCache ¶

type AggregateBlockStorageHybridCache struct {
	// Number of disks used in the cache tier of the aggregate. Only provided when hybrid_cache.enabled is 'true'.
	DiskCount int32 `json:"disk_count,omitempty"`
	// Aggregate uses HDDs with SSDs as a cache
	Enabled bool `json:"enabled,omitempty"`
	// RAID type for SSD cache of the aggregate. Only provided when hybrid_cache.enabled is 'true'.
	RaidType string `json:"raid_type,omitempty"`
	// Total usable space in bytes of SSD cache. Only provided when hybrid_cache.enabled is 'true'.
	Size int32 `json:"size,omitempty"`
	// Space used in bytes of SSD cache. Only provided when hybrid_cache.enabled is 'true'.
	Used int32 `json:"used,omitempty"`
}

Contains the configuration for the hybrid cache. The hybrid cache is made up of either whole SSDs or storage pool SSDs.

type AggregateBlockStorageMirror ¶

type AggregateBlockStorageMirror struct {
	// Aggregate is SyncMirror protected
	Enabled bool   `json:"enabled,omitempty"`
	State   string `json:"state,omitempty"`
}

type AggregateBlockStoragePrimary ¶

type AggregateBlockStoragePrimary struct {
	// The checksum style used by the aggregate.
	ChecksumStyle string `json:"checksum_style,omitempty"`
	// The class of disks being used by the aggregate.
	DiskClass string `json:"disk_class,omitempty"`
	// Number of disks used in the aggregate. This includes parity disks, but excludes disks in the hybrid cache.
	DiskCount int32 `json:"disk_count,omitempty"`
	// Option to specify the maximum number of disks that can be included in a RAID group.
	RaidSize int32 `json:"raid_size,omitempty"`
	// RAID type of the aggregate.
	RaidType string `json:"raid_type,omitempty"`
}

Configuration information for the primary storage portion of the aggregate. This excludes the hybrid cache details.

type AggregateCloudStorage ¶

type AggregateCloudStorage struct {
	// Aggregate is eligible for a cloud store to be attached.
	AttachEligible bool `json:"attach_eligible,omitempty"`
	// Configuration information for each cloud storage portion of the aggregate.
	Stores []CloudStorageTier `json:"stores,omitempty"`
	// The percentage of space in the performance tier that must be used before data is tiered out to the cloud store. Only valid for PATCH operations.
	TieringFullnessThreshold int32 `json:"tiering_fullness_threshold,omitempty"`
}

Configuration information for the cloud storage portion of the aggregate. This is referred to as the capacity tier.

type AggregateCollectionGetOpts ¶

type AggregateCollectionGetOpts struct {
	Recommend                                  optional.Bool
	ShowSpares                                 optional.Bool
	SnaplockType                               optional.String
	Name                                       optional.String
	HomeNodeUuid                               optional.String
	HomeNodeName                               optional.String
	Uuid                                       optional.String
	NodeUuid                                   optional.String
	NodeName                                   optional.String
	DrHomeNodeName                             optional.String
	DrHomeNodeUuid                             optional.String
	CreateTime                                 optional.String
	SpaceEfficiencyLogicalUsed                 optional.Int32
	SpaceEfficiencyRatio                       optional.Float32
	SpaceEfficiencySavings                     optional.Int32
	SpaceFootprint                             optional.Int32
	SpaceEfficiencyWithoutSnapshotsLogicalUsed optional.Int32
	SpaceEfficiencyWithoutSnapshotsRatio       optional.Float32
	SpaceEfficiencyWithoutSnapshotsSavings     optional.Int32
	SpaceBlockStorageFullThresholdPercent      optional.Int32
	SpaceBlockStorageUsed                      optional.Int32
	SpaceBlockStorageAvailable                 optional.Int32
	SpaceBlockStorageSize                      optional.Int32
	SpaceBlockStorageInactiveUserData          optional.Int32
	SpaceCloudStorageUsed                      optional.Int32
	BlockStoragePrimaryRaidSize                optional.Int32
	BlockStoragePrimaryRaidType                optional.String
	BlockStoragePrimaryChecksumStyle           optional.String
	BlockStoragePrimaryDiskClass               optional.String
	BlockStoragePrimaryDiskCount               optional.Int32
	BlockStoragePlexesName                     optional.String
	BlockStorageHybridCacheRaidType            optional.String
	BlockStorageHybridCacheUsed                optional.Int32
	BlockStorageHybridCacheEnabled             optional.Bool
	BlockStorageHybridCacheSize                optional.Int32
	BlockStorageHybridCacheDiskCount           optional.Int32
	BlockStorageMirrorState                    optional.String
	BlockStorageMirrorEnabled                  optional.Bool
	DataEncryptionSoftwareEncryptionEnabled    optional.Bool
	DataEncryptionDriveProtectionEnabled       optional.Bool
	State                                      optional.String
	Fields                                     optional.Interface
	MaxRecords                                 optional.Int32
	ReturnRecords                              optional.Bool
	ReturnTimeout                              optional.Int32
	OrderBy                                    optional.Interface
}

type AggregateCreateOpts ¶

type AggregateCreateOpts struct {
	DiskSize optional.Int32
	Info     optional.Interface
}

type AggregateDataEncryption ¶

type AggregateDataEncryption struct {
	// Aggregate uses self-encrypting drives with data protection enabled.
	DriveProtectionEnabled bool `json:"drive_protection_enabled,omitempty"`
	// NetApp Aggregate Encryption enabled. All data in the aggregate is encrypted.
	SoftwareEncryptionEnabled bool `json:"software_encryption_enabled,omitempty"`
}

type AggregateDrHomeNode ¶

type AggregateDrHomeNode struct {
	Name string `json:"name,omitempty"`
	Uuid string `json:"uuid,omitempty"`
}

Node where the aggregate belongs after disaster recovery. The value for this field might differ from the 'node' field during switchover.

type AggregateGetOpts ¶

type AggregateGetOpts struct {
	Fields optional.Interface
}

type AggregateHomeNode ¶

type AggregateHomeNode struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

Node where the aggregate belongs after giveback. The value for this field might differ from the value of the 'node' field during takeover.

type AggregateModifyOpts ¶

type AggregateModifyOpts struct {
	DiskSize optional.Int32
	Info     optional.Interface
}

type AggregateNode ¶

type AggregateNode struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

Node where the aggregate currently resides.

type AggregateReference ¶

type AggregateReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

Aggregate

type AggregateResponse ¶

type AggregateResponse struct {
	Links  *AccountResponseLinks `json:"_links,omitempty"`
	Error_ *ModelError           `json:"error,omitempty"`
	// Number of records
	NumRecords int32            `json:"num_records,omitempty"`
	Records    []Aggregate      `json:"records,omitempty"`
	Spares     []AggregateSpare `json:"spares,omitempty"`
}

type AggregateSpace ¶

type AggregateSpace struct {
	BlockStorage               *AggregateSpaceBlockStorage               `json:"block_storage,omitempty"`
	CloudStorage               *AggregateSpaceCloudStorage               `json:"cloud_storage,omitempty"`
	Efficiency                 *AggregateSpaceEfficiency                 `json:"efficiency,omitempty"`
	EfficiencyWithoutSnapshots *AggregateSpaceEfficiencyWithoutSnapshots `json:"efficiency_without_snapshots,omitempty"`
	// A summation of volume footprints (including volume guarantees), in bytes. This includes all of the volume footprints in the block_storage tier and the cloud_storage tier. This is an advanced property; there is an added cost to retrieving its value. The field is not populated for either a collection GET or an instance GET unless it is explicitly requested using the <i>fields</i> query parameter containing either footprint or **.
	Footprint int32 `json:"footprint,omitempty"`
}

type AggregateSpaceBlockStorage ¶

type AggregateSpaceBlockStorage struct {
	// Space available in bytes
	Available int32 `json:"available,omitempty"`
	// The aggregate used percentage at which 'monitor.volume.full' EMS is generated.
	FullThresholdPercent int32 `json:"full_threshold_percent,omitempty"`
	// The size that is physically used in the block storage and has a cold temperature, in bytes. This property is only supported if the aggregate is either attached to a cloud store or can be attached to a cloud store. This is an advanced property; there is an added cost to retrieving its value. The field is not populated for either a collection GET or an instance GET unless it is explicitly requested using the <i>fields</i> query parameter containing either block_storage.inactive_user_data or **.
	InactiveUserData int32 `json:"inactive_user_data,omitempty"`
	// Total usable space in bytes, not including WAFL reserve and aggregate Snapshot copy reserve.
	Size int32 `json:"size,omitempty"`
	// Space used or reserved in bytes. Includes volume guarantees and aggregate metadata.
	Used int32 `json:"used,omitempty"`
}

type AggregateSpaceCloudStorage ¶

type AggregateSpaceCloudStorage struct {
	// Used space in bytes in the cloud store. Only applicable for aggregate with a cloud store tier.
	Used int32 `json:"used,omitempty"`
}

type AggregateSpaceEfficiency ¶

type AggregateSpaceEfficiency struct {
	// Logical used
	LogicalUsed int32 `json:"logical_used,omitempty"`
	// Data reduction ratio (logical_used / used)
	Ratio float32 `json:"ratio,omitempty"`
	// Space saved by storage efficiencies (logical_used - used)
	Savings int32 `json:"savings,omitempty"`
}

Storage efficiency

type AggregateSpaceEfficiencyWithoutSnapshots ¶

type AggregateSpaceEfficiencyWithoutSnapshots struct {
	// Logical used
	LogicalUsed int32 `json:"logical_used,omitempty"`
	// Data reduction ratio (logical_used / used)
	Ratio float32 `json:"ratio,omitempty"`
	// Space saved by storage efficiencies (logical_used - used)
	Savings int32 `json:"savings,omitempty"`
}

Storage efficiency that does not include the savings provided by Snapshot copies

type AggregateSpare ¶

type AggregateSpare struct {
	// The checksum type that has been assigned to the spares
	ChecksumStyle string `json:"checksum_style,omitempty"`
	// Disk class of spares
	DiskClass string `json:"disk_class,omitempty"`
	// Available RAID protections and their restrictions
	LayoutRequirements []LayoutRequirement `json:"layout_requirements,omitempty"`
	Node               *AggregateSpareNode `json:"node,omitempty"`
	// Usable size of each spare in bytes
	Size int32 `json:"size,omitempty"`
	// SyncMirror spare pool
	SyncmirrorPool string `json:"syncmirror_pool,omitempty"`
	// Total number of usable spares
	Usable int32 `json:"usable,omitempty"`
}

type AggregateSpareNode ¶

type AggregateSpareNode struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

Node where the spares are assigned

type AppCifsAccess ¶

type AppCifsAccess struct {
	// The CIFS access granted to the user or group. Optional in the POST body
	Access string `json:"access,omitempty"`
	// The name of the CIFS user or group that will be granted access. Optional in the POST body
	UserOrGroup string `json:"user_or_group,omitempty"`
}

The list of CIFS access controls.

type AppNfsAccess ¶

type AppNfsAccess struct {
	// The NFS access granted. Optional in the POST body
	Access string `json:"access,omitempty"`
	// The name of the NFS entity granted access. Optional in the POST body
	Host string `json:"host,omitempty"`
}

The list of NFS access controls.

type Application ¶

type Application struct {
	Svm *ApplicationSvm `json:"svm,omitempty"`
	// Application UUID. This field is generated when the application is created. Required in the URL
	Uuid string `json:"uuid,omitempty"`
	// Application Name. This field is user supplied when the application is created. Required in the POST body
	Name string `json:"name,omitempty"`
	// The time when the application was created
	CreationTimestamp string `json:"creation_timestamp,omitempty"`
	// The generation number of the application. This indicates which features are supported on the application. For example, generation 1 applications do not support snapshots. Support for snapshots was added at generation 2. Any future generation numbers and their feature set will be documented
	Generation int32 `json:"generation,omitempty"`
	// Protection granularity determines the scope of Snapshot operations for the application. Possible values are \"application\" and \"component\". If the value is \"application\", Snapshot operations are performed on the entire application. If the value is \"component\", Snapshot operations are performed separately on the application components
	ProtectionGranularity string          `json:"protection_granularity,omitempty"`
	Rpo                   *ApplicationRpo `json:"rpo,omitempty"`
	// The state of the application. For full functionality, applications must be in the online state. Other states indicate that the application is in a transient state and not all operations are supported
	State          string                 `json:"state,omitempty"`
	Statistics     *ApplicationStatistics `json:"statistics,omitempty"`
	Template       *ApplicationTemplate1  `json:"template,omitempty"`
	MaxdataOnSan   *MaxdataOnSan          `json:"maxdata_on_san,omitempty"`
	MongoDbOnSan   *MongoDbOnSan          `json:"mongo_db_on_san,omitempty"`
	Nas            *Nas                   `json:"nas,omitempty"`
	OracleOnNfs    *OracleOnNfs           `json:"oracle_on_nfs,omitempty"`
	OracleOnSan    *OracleOnSan           `json:"oracle_on_san,omitempty"`
	OracleRacOnNfs *OracleRacOnNfs        `json:"oracle_rac_on_nfs,omitempty"`
	OracleRacOnSan *OracleRacOnSan        `json:"oracle_rac_on_san,omitempty"`
	San            *San                   `json:"san,omitempty"`
	SqlOnSan       *SqlOnSan              `json:"sql_on_san,omitempty"`
	SqlOnSmb       *SqlOnSmb              `json:"sql_on_smb,omitempty"`
	VdiOnNas       *VdiOnNas              `json:"vdi_on_nas,omitempty"`
	VdiOnSan       *VdiOnSan              `json:"vdi_on_san,omitempty"`
	VsiOnNas       *VsiOnNas              `json:"vsi_on_nas,omitempty"`
	VsiOnSan       *VsiOnSan              `json:"vsi_on_san,omitempty"`
	Links          *ApplicationLinks      `json:"_links,omitempty"`
}

Applications

type ApplicationApiService ¶

type ApplicationApiService service

func (*ApplicationApiService) ApplicationCollectionGet ¶

func (a *ApplicationApiService) ApplicationCollectionGet(ctx context.Context, localVarOptionals *ApplicationCollectionGetOpts) (ApplicationResponse, *http.Response, error)

func (*ApplicationApiService) ApplicationComponentCollectionGet ¶

func (a *ApplicationApiService) ApplicationComponentCollectionGet(ctx context.Context, applicationUuid string, localVarOptionals *ApplicationComponentCollectionGetOpts) (ApplicationComponentResponse, *http.Response, error)

func (*ApplicationApiService) ApplicationComponentGet ¶

func (a *ApplicationApiService) ApplicationComponentGet(ctx context.Context, applicationUuid string, uuid string, localVarOptionals *ApplicationComponentGetOpts) (ApplicationComponent, *http.Response, error)

func (*ApplicationApiService) ApplicationComponentSnapshotCollectionGet ¶

func (a *ApplicationApiService) ApplicationComponentSnapshotCollectionGet(ctx context.Context, applicationUuid string, componentUuid string, localVarOptionals *ApplicationComponentSnapshotCollectionGetOpts) (ApplicationComponentSnapshotResponse, *http.Response, error)

func (*ApplicationApiService) ApplicationComponentSnapshotCreate ¶

func (a *ApplicationApiService) ApplicationComponentSnapshotCreate(ctx context.Context, applicationUuid string, componentUuid string, localVarOptionals *ApplicationComponentSnapshotCreateOpts) (JobLinkResponse, *http.Response, error)

func (*ApplicationApiService) ApplicationComponentSnapshotDelete ¶

func (a *ApplicationApiService) ApplicationComponentSnapshotDelete(ctx context.Context, applicationUuid string, componentUuid string, uuid string) (JobLinkResponse, *http.Response, error)

ApplicationApiService Delete a Snapshot copy of an application component.&lt;br/&gt; This endpoint is only supported for Maxdata template applications.&lt;br/&gt; Component Snapshot copies are essentially more granular application Snapshot copies. There is no difference beyond the scope of the operation. ### Learn more * [&#x60;DOC /application/applications/{application.uuid}/snapshots&#x60;](#docs-application-application_applications_{application.uuid}_snapshots) * [&#x60;DELETE /application/applications/{uuid}/snapshots&#x60;](#operations-application-application_snapshot_delete) * [&#x60;DOC /application&#x60;](#docs-application-overview)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param applicationUuid Application UUID
  • @param componentUuid Application Component UUID
  • @param uuid Snapshot UUID

@return JobLinkResponse

func (*ApplicationApiService) ApplicationComponentSnapshotGet ¶

func (a *ApplicationApiService) ApplicationComponentSnapshotGet(ctx context.Context, applicationUuid string, componentUuid string, uuid string, localVarOptionals *ApplicationComponentSnapshotGetOpts) (ApplicationComponentSnapshot, *http.Response, error)

func (*ApplicationApiService) ApplicationComponentSnapshotRestore ¶

func (a *ApplicationApiService) ApplicationComponentSnapshotRestore(ctx context.Context, applicationUuid string, componentUuid string, uuid string) (JobLinkResponse, *http.Response, error)

ApplicationApiService Restore a Snapshot copy of an application component.&lt;br/&gt; This endpoint is only supported for Maxdata template applications.&lt;br/&gt; Component Snapshot copies are essentially more granular application Snapshot copies. There is no difference beyond the scope of the operation. ### Learn more * [&#x60;DOC /application/applications/{application.uuid}/snapshots&#x60;](#docs-application-application_applications_{application.uuid}_snapshots) * [&#x60;POST /application/applications/{application.uuid}/snapshots/{uuid}/restore&#x60;](#operations-application-application_snapshot_restore) * [&#x60;DOC /application&#x60;](#docs-application-overview) * [&#x60;DOC Asynchronous operations&#x60;](#docs-docs-Synchronous-and-asynchronous-operations)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param applicationUuid Application UUID
  • @param componentUuid Application Component UUID
  • @param uuid Snapshot copy UUID

@return JobLinkResponse

func (*ApplicationApiService) ApplicationCreate ¶

func (a *ApplicationApiService) ApplicationCreate(ctx context.Context, info Application) (JobLinkResponse, *http.Response, error)

ApplicationApiService Creates an application. ### Template properties The application APIs appear to be complex and long in this documentation because we document every possible template, of which there are currently 14. When creating an application, only a single template is used, so it is best to focus only on the template of interest. Other than the properties for the chosen template, only the &#x60;name&#x60; and &#x60;svm&#x60; of the application must be provided. The following three sections provided guidelines on using the properties of the templates, but the whole idea behind the templates is to automatically follow the best practices of the given application, so the only way to determine the exact list of required properties and default values is to dig in to the model section of the template. The templates are all top level properties of the application object with names matching the values returned by [&#x60;GET /application/templates&#x60;](#operations-application-application_template_collection_get). ### Required properties * &#x60;svm.uuid&#x60; or &#x60;svm.name&#x60; - The existing SVM in which to create the application. * &#x60;name&#x60; - The name for the application. * &#x60;&lt;template&gt;&#x60; - Properties for one template must be provided. In general, the following properties are required, however the naming of these may vary slightly from template to template. * &#x60;name&#x60; - The generic templates require names for the components of the application. Other templates name the components automatically. * &#x60;size&#x60; - This generally refers to the size of an application component, which may be spread across multiple underlying storage objects (volumes, LUNs, etc...). * &#x60;igroup_name&#x60; - All SAN applications require an initiator group to be specified in some way. * &#x60;os_type&#x60; - All SAN applications require an os_type to be specified in some way. Some templates refer to this as the &#x60;hypervisor&#x60;. ### Recommended optional properties * &#x60;&lt;template&gt;&#x60; - The following properties are available in some templates. * &#x60;new_igroups.*&#x60; - SAN applications can use existing initiator groups or create new ones. When creating new initiator groups, &#x60;new_igroups.name&#x60; is required and the other properties may be used to fully specify the new initiator group. ### Default property values If not specified in POST, the follow default property values are assigned. It is recommended that most of these properties be provided explicitly rather than relying upon the defaults. The defaults are intended to make it as easy as possible to provision and connect to an application, but likely provide more access to the application than is necessary. * &#x60;template.name&#x60; - Defaults to match the &#x60;&lt;template&gt;&#x60; provided. If specified, the value of this property must match the provided template properties. * &#x60;&lt;template&gt;&#x60; - The majority of template properties have default values. The defaults may vary from template to template. See the model of each template for complete details. In general the following patterns are common across all template properties. The location of these properties varies from template to template. * &#x60;storage_service.name&#x60; - _value_ * &#x60;nfs_access.host&#x60; - _0.0.0.0/0_ * &#x60;nfs_access.access&#x60; - _rw_ * &#x60;cifs_access.user_or_group&#x60; - _everyone_ * &#x60;cifs_access.access&#x60; - _full_access_ * &#x60;protection_type.local_rpo&#x60; - _hourly_ (Hourly Snapshot copies) * &#x60;protection_type.remote_rpo&#x60; - _none_ (Not MetroCluster) * &#x60;new_igroups.os_type&#x60; - Defaults to match the &#x60;os_type&#x60; provided for the application, but may need to be provided explicitly when using virtualization. ### Optional components A common pattern across many templates are objects that are optional, but once any property in the object is specified, other properties within the object become required. Many applications have optional components. For example, provisioning a database without a component to store the logs is supported. If the properties related to the logs are omitted, no storage will be provisioned for logs. But when the additional component is desired, the size is required. Specifying any other property of a component without specifying the size is not supported. In the model of each template, this is documented in the description of each property. When a &#x60;size&#x60; property is listed as optional, that means the component itself is optional, and the size should be specified to include that component in the application. ### POST body examples 1. Create a generic SAN application that exposes four LUNs to an existing initiator group, _igroup_1_.&lt;br/&gt; &#x60;&#x60;&#x60; { \&quot;name\&quot;: \&quot;app1\&quot;, \&quot;svm\&quot;: { \&quot;name\&quot;: \&quot;svm1\&quot; }, \&quot;san\&quot;: { \&quot;os_type\&quot;: \&quot;linux\&quot;, \&quot;application_components\&quot;: [ { \&quot;name\&quot;: \&quot;component1\&quot;, \&quot;total_size\&quot;: \&quot;10GB\&quot;, \&quot;lun_count\&quot;: 4, \&quot;igroup_name\&quot;: \&quot;igroup_1\&quot; } ] } } &#x60;&#x60;&#x60; &lt;br/&gt; 2. Create an SQL application that can be accessed via initiator _iqn.2017-01.com.example:foo_ from a new initiator group, _igroup_2_.&lt;br/&gt; &#x60;&#x60;&#x60; { \&quot;name\&quot;: \&quot;app2\&quot;, \&quot;svm\&quot;: { \&quot;name\&quot;: \&quot;svm1\&quot; }, \&quot;sql_on_san\&quot;: { \&quot;db\&quot;: { \&quot;size\&quot;: \&quot;5GB\&quot; }, \&quot;log\&quot;: { \&quot;size\&quot;: \&quot;1GB\&quot; }, \&quot;temp_db\&quot;: { \&quot;size\&quot;: \&quot;2GB\&quot; }, \&quot;igroup_name\&quot;: \&quot;igroup_2\&quot;, \&quot;new_igroups\&quot;: [ { \&quot;name\&quot;: \&quot;igroup_2\&quot;, \&quot;initiators\&quot;: [ \&quot;iqn.2017-01.com.example:foo\&quot; ] } ] } } &#x60;&#x60;&#x60; &lt;br/&gt; 3. The following body creates the exact same SQL application, but manually provides all the defaults that were excluded from the previous call. Note: The model of a _sql_on_san_ application documents all these default values.&lt;br/&gt; &#x60;&#x60;&#x60; { \&quot;name\&quot;: \&quot;app3\&quot;, \&quot;svm\&quot;: { \&quot;name\&quot;: \&quot;svm1\&quot; }, \&quot;template\&quot;: { \&quot;name\&quot;: \&quot;sql_on_san\&quot; }, \&quot;sql_on_san\&quot;: { \&quot;os_type\&quot;: \&quot;windows_2008\&quot;, \&quot;server_cores_count\&quot;: 8, \&quot;db\&quot;: { \&quot;size\&quot;: \&quot;5GB\&quot;, \&quot;storage_service\&quot;: { \&quot;name\&quot;: \&quot;value\&quot; } }, \&quot;log\&quot;: { \&quot;size\&quot;: \&quot;1GB\&quot;, \&quot;storage_service\&quot;: { \&quot;name\&quot;: \&quot;value\&quot; } }, \&quot;temp_db\&quot;: { \&quot;size\&quot;: \&quot;2GB\&quot;, \&quot;storage_service\&quot;: { \&quot;name\&quot;: \&quot;value\&quot; } }, \&quot;igroup_name\&quot;: \&quot;igroup_2\&quot;, \&quot;new_igroups\&quot;: [ { \&quot;name\&quot;: \&quot;igroup_2\&quot;, \&quot;protocol\&quot;: \&quot;mixed\&quot;, \&quot;os_type\&quot;: \&quot;windows\&quot;, \&quot;initiators\&quot;: [ \&quot;iqn.a.new.initiator\&quot; ] } ], \&quot;protection_type\&quot;: { \&quot;local_rpo\&quot;: \&quot;none\&quot; } } } &#x60;&#x60;&#x60; ### Learn more * [&#x60;DOC /application&#x60;](#docs-application-overview) * [&#x60;DOC Asynchronous operations&#x60;](#docs-docs-Synchronous-and-asynchronous-operations)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info Info specification

@return JobLinkResponse

func (*ApplicationApiService) ApplicationDelete ¶

func (a *ApplicationApiService) ApplicationDelete(ctx context.Context, uuid string) (JobLinkResponse, *http.Response, error)

ApplicationApiService Deletes an application and all associated data. ### Warning - this deletes it all, including your data This deletes everything created with the application, including any volumes, LUNs, NFS export policies, CIFS shares, and initiator groups. Initiator groups are only destroyed if they were created as part of an application and are no longer in use by other applications. ### Learn more * [&#x60;DOC /application&#x60;](#docs-application-overview) * [&#x60;DOC Asynchronous operations&#x60;](#docs-docs-Synchronous-and-asynchronous-operations)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid Application UUID

@return JobLinkResponse

func (*ApplicationApiService) ApplicationGet ¶

func (a *ApplicationApiService) ApplicationGet(ctx context.Context, uuid string, localVarOptionals *ApplicationGetOpts) (Application, *http.Response, error)

func (*ApplicationApiService) ApplicationModify ¶

func (a *ApplicationApiService) ApplicationModify(ctx context.Context, uuid string, localVarOptionals *ApplicationModifyOpts) (JobLinkResponse, *http.Response, error)

func (*ApplicationApiService) ApplicationSnapshotCollectionGet ¶

func (a *ApplicationApiService) ApplicationSnapshotCollectionGet(ctx context.Context, applicationUuid string, localVarOptionals *ApplicationSnapshotCollectionGetOpts) (ApplicationSnapshotResponse, *http.Response, error)

func (*ApplicationApiService) ApplicationSnapshotCreate ¶

func (a *ApplicationApiService) ApplicationSnapshotCreate(ctx context.Context, applicationUuid string, localVarOptionals *ApplicationSnapshotCreateOpts) (JobLinkResponse, *http.Response, error)

func (*ApplicationApiService) ApplicationSnapshotDelete ¶

func (a *ApplicationApiService) ApplicationSnapshotDelete(ctx context.Context, applicationUuid string, uuid string) (JobLinkResponse, *http.Response, error)

ApplicationApiService Delete a Snapshot copy of an application ### Query examples Individual Snapshot copies can be destroyed with no query parameters, or a range of Snapshot copies can be destroyed at one time using a query.&lt;br/&gt; The following query deletes all application Snapshot copies created before May 4, 2017&lt;br/&gt;&lt;br/&gt; &#x60;&#x60;&#x60; DELETE /application/applications/{application.uuid}/snapshots?create_time&#x3D;&lt;2017-05-04T00:00:00-05:00 &#x60;&#x60;&#x60; ### Learn more * [&#x60;DOC /application/applications/{application.uuid}/snapshots&#x60;](#docs-application-application_applications_{application.uuid}_snapshots)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param applicationUuid Application UUID
  • @param uuid Snapshot copy UUID

@return JobLinkResponse

func (*ApplicationApiService) ApplicationSnapshotGet ¶

func (a *ApplicationApiService) ApplicationSnapshotGet(ctx context.Context, applicationUuid string, uuid string, localVarOptionals *ApplicationSnapshotGetOpts) (ApplicationSnapshot, *http.Response, error)

func (*ApplicationApiService) ApplicationSnapshotRestore ¶

func (a *ApplicationApiService) ApplicationSnapshotRestore(ctx context.Context, applicationUuid string, uuid string) (JobLinkResponse, *http.Response, error)

ApplicationApiService Restore an application snapshot&lt;br/&gt; Restoring an application Snapshot copy reverts all storage elements in the Snapshot copy to the state in which the Snapshot copy was in when the Snapshot copy was taken. This restoration does not apply to access settings that might have changed since the Snapshot copy was created. ### Learn more * [&#x60;DOC /application&#x60;](#docs-application-overview) * [&#x60;DOC Asynchronous operations&#x60;](#docs-docs-Synchronous-and-asynchronous-operations)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param applicationUuid Application UUID
  • @param uuid Snapshot copy UUID

@return JobLinkResponse

func (*ApplicationApiService) ApplicationTemplateCollectionGet ¶

func (a *ApplicationApiService) ApplicationTemplateCollectionGet(ctx context.Context, localVarOptionals *ApplicationTemplateCollectionGetOpts) (ApplicationTemplateResponse, *http.Response, error)

func (*ApplicationApiService) ApplicationTemplateGet ¶

func (a *ApplicationApiService) ApplicationTemplateGet(ctx context.Context, name string, localVarOptionals *ApplicationTemplateGetOpts) (ApplicationTemplate, *http.Response, error)

type ApplicationBackingStorage ¶

type ApplicationBackingStorage struct {
	Luns    []ApplicationLunObject    `json:"luns,omitempty"`
	Volumes []ApplicationVolumeObject `json:"volumes,omitempty"`
}

type ApplicationCifsProperties ¶

type ApplicationCifsProperties struct {
	BackingStorage *ApplicationCifsPropertiesBackingStorage `json:"backing_storage,omitempty"`
	Ips            []string                                 `json:"ips,omitempty"`
	// Junction path
	Path        string                                 `json:"path,omitempty"`
	Permissions []ApplicationCifsPropertiesPermissions `json:"permissions,omitempty"`
	Server      *ApplicationCifsPropertiesServer       `json:"server,omitempty"`
	Share       *ApplicationCifsPropertiesShare        `json:"share,omitempty"`
}

type ApplicationCifsPropertiesBackingStorage ¶

type ApplicationCifsPropertiesBackingStorage struct {
	// Backing storage type
	Type_ string `json:"type,omitempty"`
	// Backing storage UUID
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationCifsPropertiesPermissions ¶

type ApplicationCifsPropertiesPermissions struct {
	// Access granted to the user or group
	Access string `json:"access,omitempty"`
	// User or group
	UserOrGroup string `json:"user_or_group,omitempty"`
}

type ApplicationCifsPropertiesServer ¶

type ApplicationCifsPropertiesServer struct {
	// Server name
	Name string `json:"name,omitempty"`
}

type ApplicationCifsPropertiesShare ¶

type ApplicationCifsPropertiesShare struct {
	// Share name
	Name string `json:"name,omitempty"`
}

type ApplicationCollectionGetOpts ¶

type ApplicationCollectionGetOpts struct {
	Uuid                                           optional.String
	Name                                           optional.String
	SvmName                                        optional.String
	SvmUuid                                        optional.String
	TemplateName                                   optional.String
	TemplateVersion                                optional.String
	TemplateProtocol                               optional.String
	Generation                                     optional.String
	State                                          optional.String
	ProtectionGranularity                          optional.String
	RpoIsSupported                                 optional.String
	RpoLocalName                                   optional.String
	RpoLocalDescription                            optional.String
	RpoRemoteName                                  optional.String
	RpoRemoteDescription                           optional.String
	RpoComponentsName                              optional.String
	RpoComponentsUuid                              optional.String
	RpoComponentsLocalName                         optional.String
	RpoComponentsRpoLocalDescription               optional.String
	RpoComponentsRpoRemoteName                     optional.String
	RpoComponentsRpoRemoteDescription              optional.String
	StatisticsSpaceProvisioned                     optional.String
	StatisticsSpaceUsed                            optional.String
	StatisticsSpaceUsedPercent                     optional.String
	StatisticsSpaceUsedExcludingReserves           optional.String
	StatisticsSpaceLogicalUsed                     optional.String
	StatisticsSpaceReservedUnused                  optional.String
	StatisticsSpaceAvailable                       optional.String
	StatisticsSpaceSavings                         optional.String
	StatisticsIopsTotal                            optional.String
	StatisticsIopsPerTb                            optional.String
	StatisticsSnapshotReserve                      optional.String
	StatisticsSnapshotUsed                         optional.String
	StatisticsLatencyRaw                           optional.String
	StatisticsLatencyAverage                       optional.String
	StatisticsStatisticsIncomplete                 optional.String
	StatisticsSharedStoragePool                    optional.String
	StatisticsComponentsName                       optional.String
	StatisticsComponentsUuid                       optional.String
	StatisticsComponentsStorageServiceName         optional.String
	StatisticsComponentsSpaceProvisioned           optional.String
	StatisticsComponentsSpaceUsed                  optional.String
	StatisticsComponentsSpaceUsedPercent           optional.String
	StatisticsComponentsSpaceUsedExcludingReserves optional.String
	StatisticsComponentsSpaceLogicalUsed           optional.String
	StatisticsComponentsSpaceReservedUnused        optional.String
	StatisticsComponentsSpaceAvailable             optional.String
	StatisticsComponentsSpaceSavings               optional.String
	StatisticsComponentsIopsTotal                  optional.String
	StatisticsComponentsIopsPerTb                  optional.String
	StatisticsComponentsSnapshotReserve            optional.String
	StatisticsComponentsSnapshotUsed               optional.String
	StatisticsComponentsLatencyRaw                 optional.String
	StatisticsComponentsLatencyAverage             optional.String
	StatisticsComponentsStatisticsIncomplete       optional.String
	StatisticsComponentsSharedStoragePool          optional.String
	Fields                                         optional.Interface
	MaxRecords                                     optional.Int32
	ReturnTimeout                                  optional.Int32
	ReturnRecords                                  optional.Bool
	OrderBy                                        optional.Interface
}

type ApplicationComponent ¶

type ApplicationComponent struct {
	Links          *InlineResponse201Links          `json:"_links,omitempty"`
	Application    *ApplicationComponentApplication `json:"application,omitempty"`
	BackingStorage *ApplicationBackingStorage       `json:"backing_storage,omitempty"`
	CifsAccess     []ApplicationCifsProperties      `json:"cifs_access,omitempty"`
	// Defines the type of file system that will be installed on this application component.
	FileSystem string `json:"file_system,omitempty"`
	// Host management URL
	HostManagementUrl string `json:"host_management_url,omitempty"`
	// L2 Host FQDN
	HostName string `json:"host_name,omitempty"`
	// Application component name
	Name             string                              `json:"name,omitempty"`
	NfsAccess        []ApplicationNfsProperties          `json:"nfs_access,omitempty"`
	ProtectionGroups []ApplicationProtectionGroups       `json:"protection_groups,omitempty"`
	SanAccess        []ApplicationSanAccess              `json:"san_access,omitempty"`
	StorageService   *ApplicationComponentStorageService `json:"storage_service,omitempty"`
	Svm              *ApplicationComponentSvm            `json:"svm,omitempty"`
	// The application component UUID. Valid in URL.
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationComponentApplication ¶

type ApplicationComponentApplication struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Application name
	Name string `json:"name,omitempty"`
	// The application UUID. Valid in URL.
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationComponentCollectionGetOpts ¶

type ApplicationComponentCollectionGetOpts struct {
	Uuid               optional.String
	Name               optional.String
	StorageServiceName optional.String
	StorageServiceUuid optional.String
	Fields             optional.Interface
	MaxRecords         optional.Int32
	ReturnTimeout      optional.Int32
	ReturnRecords      optional.Bool
	OrderBy            optional.Interface
}

type ApplicationComponentGetOpts ¶

type ApplicationComponentGetOpts struct {
	Fields optional.Interface
}

type ApplicationComponentResponse ¶

type ApplicationComponentResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32                  `json:"num_records,omitempty"`
	Records    []ApplicationComponent `json:"records,omitempty"`
}

type ApplicationComponentSnapshot ¶

type ApplicationComponentSnapshot struct {
	Links       *InlineResponse201Links                  `json:"_links,omitempty"`
	Application *ApplicationComponentSnapshotApplication `json:"application,omitempty"`
	// Comment. Valid in POST
	Comment   string                                 `json:"comment,omitempty"`
	Component *ApplicationComponentSnapshotComponent `json:"component,omitempty"`
	// Consistency Type. This is for categorization only. A snapshot should not be set to application consistent unless the host application is quiesced for the snapshot. Valid in POST
	ConsistencyType string `json:"consistency_type,omitempty"`
	// Creation Time
	CreateTime string `json:"create_time,omitempty"`
	// A partial snapshot means that not all volumes in an application component were included in the snapshot.
	IsPartial bool `json:"is_partial,omitempty"`
	// Snapshot Name. Valid in POST
	Name string                           `json:"name,omitempty"`
	Svm  *ApplicationComponentSnapshotSvm `json:"svm,omitempty"`
	// Snapshot UUID. Valid in URL
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationComponentSnapshotApplication ¶

type ApplicationComponentSnapshotApplication struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Application Name
	Name string `json:"name,omitempty"`
	// Application UUID. Valid in URL
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationComponentSnapshotCollectionGetOpts ¶

type ApplicationComponentSnapshotCollectionGetOpts struct {
	ComponentName   optional.String
	Uuid            optional.String
	Name            optional.String
	ConsistencyType optional.String
	Comment         optional.String
	CreateTime      optional.String
	IsPartial       optional.String
	Fields          optional.Interface
	MaxRecords      optional.Int32
	ReturnTimeout   optional.Int32
	ReturnRecords   optional.Bool
	OrderBy         optional.Interface
}

type ApplicationComponentSnapshotComponent ¶

type ApplicationComponentSnapshotComponent struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Component Name
	Name string `json:"name,omitempty"`
	// Component UUID
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationComponentSnapshotCreateOpts ¶

type ApplicationComponentSnapshotCreateOpts struct {
	Info optional.Interface
}

type ApplicationComponentSnapshotGetOpts ¶

type ApplicationComponentSnapshotGetOpts struct {
	Fields optional.Interface
}

type ApplicationComponentSnapshotResponse ¶

type ApplicationComponentSnapshotResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32                          `json:"num_records,omitempty"`
	Records    []ApplicationComponentSnapshot `json:"records,omitempty"`
}

type ApplicationComponentSnapshotRestore ¶

type ApplicationComponentSnapshotRestore struct {
	Links       *InlineResponse201Links                         `json:"_links,omitempty"`
	Application *ApplicationComponentSnapshotRestoreApplication `json:"application,omitempty"`
	Component   *ApplicationComponentSnapshotRestoreComponent   `json:"component,omitempty"`
	// Snapshot UUID. Valid in URL or POST
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationComponentSnapshotRestoreApplication ¶

type ApplicationComponentSnapshotRestoreApplication struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Application UUID. Valid in URL or POST
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationComponentSnapshotRestoreComponent ¶

type ApplicationComponentSnapshotRestoreComponent struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Application Component UUID. Valid in URL or POST
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationComponentSnapshotSvm ¶

type ApplicationComponentSnapshotSvm struct {
	// SVM Name
	Name string `json:"name,omitempty"`
	// SVM UUID
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationComponentStorageService ¶

type ApplicationComponentStorageService struct {
	// Storage service name
	Name string `json:"name,omitempty"`
	// Storage service UUID
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationComponentSvm ¶

type ApplicationComponentSvm struct {
	// SVM name
	Name string `json:"name,omitempty"`
	// SVM UUID
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationGetOpts ¶

type ApplicationGetOpts struct {
	Fields optional.Interface
}
type ApplicationLinks struct {
	Self      *Href `json:"self,omitempty"`
	Snapshots *Href `json:"snapshots,omitempty"`
}

type ApplicationLunMappingObject ¶

type ApplicationLunMappingObject struct {
	// All possible Fibre Channel Protocol (FCP) access endpoints for the LUN.
	Fcp    []ApplicationSanAccessFcpEndpoint  `json:"fcp,omitempty"`
	Igroup *ApplicationLunMappingObjectIgroup `json:"igroup,omitempty"`
	// All possible iSCSI access endpoints for the LUN.
	Iscsi []ApplicationSanAccessIscsiEndpoint `json:"iscsi,omitempty"`
	// LUN ID
	LunId int32 `json:"lun_id,omitempty"`
}

type ApplicationLunMappingObjectIgroup ¶

type ApplicationLunMappingObjectIgroup struct {
	Initiators []string `json:"initiators,omitempty"`
	// Igroup name
	Name string `json:"name,omitempty"`
	// Igroup UUID
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationLunObject ¶

type ApplicationLunObject struct {
	// LUN path
	Path string `json:"path,omitempty"`
	// LUN size
	Size int32 `json:"size,omitempty"`
	// LUN UUID
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationModifyOpts ¶

type ApplicationModifyOpts struct {
	Info optional.Interface
}

type ApplicationNfsProperties ¶

type ApplicationNfsProperties struct {
	BackingStorage *ApplicationCifsPropertiesBackingStorage `json:"backing_storage,omitempty"`
	ExportPolicy   *ApplicationNfsPropertiesExportPolicy    `json:"export_policy,omitempty"`
	Ips            []string                                 `json:"ips,omitempty"`
	// Junction path
	Path        string                                `json:"path,omitempty"`
	Permissions []ApplicationNfsPropertiesPermissions `json:"permissions,omitempty"`
}

type ApplicationNfsPropertiesExportPolicy ¶

type ApplicationNfsPropertiesExportPolicy struct {
	// Export policy name
	Name string `json:"name,omitempty"`
}

type ApplicationNfsPropertiesPermissions ¶

type ApplicationNfsPropertiesPermissions struct {
	// Access granted to the host
	Access string `json:"access,omitempty"`
	// Host granted access
	Host string `json:"host,omitempty"`
}

type ApplicationProtectionGroups ¶

type ApplicationProtectionGroups struct {
	// Protection group name
	Name string                          `json:"name,omitempty"`
	Rpo  *ApplicationProtectionGroupsRpo `json:"rpo,omitempty"`
	// Protection group UUID
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationProtectionGroupsRpo ¶

type ApplicationProtectionGroupsRpo struct {
	Local  *ApplicationProtectionGroupsRpoLocal  `json:"local,omitempty"`
	Remote *ApplicationProtectionGroupsRpoRemote `json:"remote,omitempty"`
}

type ApplicationProtectionGroupsRpoLocal ¶

type ApplicationProtectionGroupsRpoLocal struct {
	// A detailed description of the local RPO. This includes details on the Snapshot copy schedule.
	Description string `json:"description,omitempty"`
	// The local RPO of the component. This indicates how often component Snapshot copies are automatically created.
	Name string `json:"name,omitempty"`
}

type ApplicationProtectionGroupsRpoRemote ¶

type ApplicationProtectionGroupsRpoRemote struct {
	// A detailed description of the remote RPO.
	Description string `json:"description,omitempty"`
	// The remote RPO of the component. A remote RPO of zero indicates that the component is synchronously replicated to another cluster.
	Name string `json:"name,omitempty"`
}

type ApplicationResponse ¶

type ApplicationResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32         `json:"num_records,omitempty"`
	Records    []Application `json:"records,omitempty"`
}

type ApplicationRpo ¶

type ApplicationRpo struct {
	Components []ApplicationRpoComponents `json:"components,omitempty"`
	// Is RPO supported for this application? Generation 1 applications did not support snapshots or MetroCluster
	IsSupported bool                  `json:"is_supported,omitempty"`
	Local       *ApplicationRpoLocal  `json:"local,omitempty"`
	Remote      *ApplicationRpoRemote `json:"remote,omitempty"`
}

type ApplicationRpoComponents ¶

type ApplicationRpoComponents struct {
	// Component UUID
	Uuid string `json:"uuid,omitempty"`
	// Component Name
	Name string             `json:"name,omitempty"`
	Rpo  *ApplicationRpoRpo `json:"rpo,omitempty"`
}

type ApplicationRpoLocal ¶

type ApplicationRpoLocal struct {
	// The local RPO of the application. This indicates how often application snapshots are automatically created
	Name string `json:"name,omitempty"`
	// A detailed description of the local RPO. This will include details about the snapshot schedule
	Description string `json:"description,omitempty"`
}

type ApplicationRpoRemote ¶

type ApplicationRpoRemote struct {
	// The remote RPO of the application. A remote RPO of zero indicates that the application is synchronously replicated to another cluster
	Name string `json:"name,omitempty"`
	// A detailed description of the remote RPO
	Description string `json:"description,omitempty"`
}

type ApplicationRpoRpo ¶

type ApplicationRpoRpo struct {
	Local  *ApplicationRpoRpoLocal  `json:"local,omitempty"`
	Remote *ApplicationRpoRpoRemote `json:"remote,omitempty"`
}

type ApplicationRpoRpoLocal ¶

type ApplicationRpoRpoLocal struct {
	// The local RPO of the component. This indicates how often component snapshots are automatically created
	Name string `json:"name,omitempty"`
	// A detailed description of the local RPO. This will include details about the snapshot schedule
	Description string `json:"description,omitempty"`
}

type ApplicationRpoRpoRemote ¶

type ApplicationRpoRpoRemote struct {
	// The remote RPO of the component. A remote RPO of zero indicates that the component is synchronously replicated to another cluster
	Name string `json:"name,omitempty"`
	// A detailed description of the remote RPO
	Description string `json:"description,omitempty"`
}

type ApplicationSanAccess ¶

type ApplicationSanAccess struct {
	BackingStorage *ApplicationCifsPropertiesBackingStorage `json:"backing_storage,omitempty"`
	// Clone
	IsClone     bool                          `json:"is_clone,omitempty"`
	LunMappings []ApplicationLunMappingObject `json:"lun_mappings,omitempty"`
	// LUN serial number
	SerialNumber string `json:"serial_number,omitempty"`
}

type ApplicationSanAccessFcpEndpoint ¶

type ApplicationSanAccessFcpEndpoint struct {
	Interface_ *FcInterfaceReference `json:"interface,omitempty"`
}

A Fibre Channel Protocol (FCP) access endpoint for the LUN.

type ApplicationSanAccessIscsiEndpoint ¶

type ApplicationSanAccessIscsiEndpoint struct {
	Links      *InlineResponse201Links                     `json:"_links,omitempty"`
	Interface_ *ApplicationSanAccessIscsiEndpointInterface `json:"interface,omitempty"`
	// The TCP port number of the iSCSI access endpoint.
	Port int32 `json:"port,omitempty"`
}

An iSCSI access endpoint for the LUN.

type ApplicationSanAccessIscsiEndpointInterface ¶

type ApplicationSanAccessIscsiEndpointInterface struct {
	Links *InlineResponse201Links                       `json:"_links,omitempty"`
	Ip    *ApplicationSanAccessIscsiEndpointInterfaceIp `json:"ip,omitempty"`
	// The name of the interface.
	Name string `json:"name,omitempty"`
	// The UUID that uniquely identifies the interface.
	Uuid string `json:"uuid,omitempty"`
}

A network interface. Either UUID or name may be supplied on input.

type ApplicationSanAccessIscsiEndpointInterfaceIp ¶

type ApplicationSanAccessIscsiEndpointInterfaceIp struct {
	Address *IpAddressReadonly `json:"address,omitempty"`
}

IP information

type ApplicationSnapshot ¶

type ApplicationSnapshot struct {
	Links       *InlineResponse201Links          `json:"_links,omitempty"`
	Application *ApplicationComponentApplication `json:"application,omitempty"`
	// Comment. Valid in POST.
	Comment    string                          `json:"comment,omitempty"`
	Components []ApplicationSnapshotComponents `json:"components,omitempty"`
	// Consistency type. This is for categorization purposes only. A Snapshot copy should not be set to 'application consistent' unless the host application is quiesced for the Snapshot copy. Valid in POST.
	ConsistencyType string `json:"consistency_type,omitempty"`
	// Creation time
	CreateTime string `json:"create_time,omitempty"`
	// A partial Snapshot copy means that not all volumes in an application component were included in the Snapshot copy.
	IsPartial bool `json:"is_partial,omitempty"`
	// The Snapshot copy name. Valid in POST.
	Name string                   `json:"name,omitempty"`
	Svm  *ApplicationComponentSvm `json:"svm,omitempty"`
	// The Snapshot copy UUID. Valid in URL.
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationSnapshotCollectionGetOpts ¶

type ApplicationSnapshotCollectionGetOpts struct {
	Uuid            optional.String
	Name            optional.String
	ConsistencyType optional.String
	ComponentsName  optional.String
	ComponentsUuid  optional.String
	Comment         optional.String
	CreateTime      optional.String
	IsPartial       optional.String
	Fields          optional.Interface
	MaxRecords      optional.Int32
	ReturnTimeout   optional.Int32
	ReturnRecords   optional.Bool
	OrderBy         optional.Interface
}

type ApplicationSnapshotComponents ¶

type ApplicationSnapshotComponents struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Component name
	Name string `json:"name,omitempty"`
	// Component UUID
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationSnapshotCreateOpts ¶

type ApplicationSnapshotCreateOpts struct {
	Info optional.Interface
}

type ApplicationSnapshotGetOpts ¶

type ApplicationSnapshotGetOpts struct {
	Fields optional.Interface
}

type ApplicationSnapshotResponse ¶

type ApplicationSnapshotResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32                 `json:"num_records,omitempty"`
	Records    []ApplicationSnapshot `json:"records,omitempty"`
}

type ApplicationSnapshotRestore ¶

type ApplicationSnapshotRestore struct {
	Links       *InlineResponse201Links                `json:"_links,omitempty"`
	Application *ApplicationSnapshotRestoreApplication `json:"application,omitempty"`
	// The Snapshot copy UUID. Valid in URL or POST.
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationSnapshotRestoreApplication ¶

type ApplicationSnapshotRestoreApplication struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The application UUID. Valid in URL or POST.
	Uuid string `json:"uuid,omitempty"`
}

type ApplicationStatistics ¶

type ApplicationStatistics struct {
	Components []ApplicationStatisticsComponents `json:"components,omitempty"`
	Iops       *ApplicationStatisticsIops1       `json:"iops,omitempty"`
	Latency    *ApplicationStatisticsLatency1    `json:"latency,omitempty"`
	// An application is considered to use a shared storage pool if storage elements for multiple components reside on the same aggregate
	SharedStoragePool bool                           `json:"shared_storage_pool,omitempty"`
	Snapshot          *ApplicationStatisticsSnapshot `json:"snapshot,omitempty"`
	Space             *ApplicationStatisticsSpace1   `json:"space,omitempty"`
	// If not all storage elements of the application are currently available, the returned statistics might only include data from those elements that were available
	StatisticsIncomplete bool `json:"statistics_incomplete,omitempty"`
}

type ApplicationStatisticsComponents ¶

type ApplicationStatisticsComponents struct {
	// Component UUID
	Uuid string `json:"uuid,omitempty"`
	// Component Name
	Name    string                        `json:"name,omitempty"`
	Iops    *ApplicationStatisticsIops    `json:"iops,omitempty"`
	Latency *ApplicationStatisticsLatency `json:"latency,omitempty"`
	// An application component is considered to use a shared storage pool if storage elements for for other components reside on the same aggregate as storage elements for this component
	SharedStoragePool bool                           `json:"shared_storage_pool,omitempty"`
	Snapshot          *ApplicationStatisticsSnapshot `json:"snapshot,omitempty"`
	Space             *ApplicationStatisticsSpace    `json:"space,omitempty"`
	// If not all storage elements of the application component are currently available, the returned statistics might only include data from those elements that were available
	StatisticsIncomplete bool                                 `json:"statistics_incomplete,omitempty"`
	StorageService       *ApplicationStatisticsStorageService `json:"storage_service,omitempty"`
}

type ApplicationStatisticsIops ¶

type ApplicationStatisticsIops struct {
	// The number of IOPS per terabyte of logical space currently being used by the application component
	PerTb int32 `json:"per_tb,omitempty"`
	// The total number of IOPS being used by the application component
	Total int32 `json:"total,omitempty"`
}

type ApplicationStatisticsIops1 ¶

type ApplicationStatisticsIops1 struct {
	// The number of IOPS per terabyte of logical space currently being used by the application
	PerTb int32 `json:"per_tb,omitempty"`
	// The total number of IOPS being used by the application
	Total int32 `json:"total,omitempty"`
}

type ApplicationStatisticsLatency ¶

type ApplicationStatisticsLatency struct {
	// The cumulative average response time in microseconds for this component
	Average int32 `json:"average,omitempty"`
	// The cumulative response time in microseconds for this component
	Raw int32 `json:"raw,omitempty"`
}

type ApplicationStatisticsLatency1 ¶

type ApplicationStatisticsLatency1 struct {
	// The cumulative average response time in microseconds for this application
	Average int32 `json:"average,omitempty"`
	// The cumulative response time in microseconds for this application
	Raw int32 `json:"raw,omitempty"`
}

type ApplicationStatisticsSnapshot ¶

type ApplicationStatisticsSnapshot struct {
	// The amount of space reserved by the system for snapshots
	Reserve int32 `json:"reserve,omitempty"`
	// The amount of spacing currently in use by the system to store snapshots
	Used int32 `json:"used,omitempty"`
}

type ApplicationStatisticsSpace ¶

type ApplicationStatisticsSpace struct {
	// The available amount of space left in the application component. Note that this field has limited meaning for SAN applications. Space may be considered used from ONTAP's perspective while the host filesystem still considers it available
	Available int32 `json:"available,omitempty"`
	// The amount of space that would currently be used if no space saving features were enabled. For example, if compression were the only space saving feature enabled, this field would represent the uncompressed amount of space used
	LogicalUsed int32 `json:"logical_used,omitempty"`
	// The originally requested amount of space that was provisioned for the application component
	Provisioned int32 `json:"provisioned,omitempty"`
	// The amount of space reserved for system features such as snapshots that has not yet been used
	ReservedUnused int32 `json:"reserved_unused,omitempty"`
	// The amount of space saved by all enabled space saving features
	Savings int32 `json:"savings,omitempty"`
	// The amount of space that is currently being used by the application component. Note that this includes any space reserved by the system for features such as snapshots
	Used int32 `json:"used,omitempty"`
	// The amount of space that is currently being used, excluding any space that is reserved by the system for features such as snapshots
	UsedExcludingReserves int32 `json:"used_excluding_reserves,omitempty"`
	// The percentage of the originally provisioned space that is currently being used by the application component
	UsedPercent int32 `json:"used_percent,omitempty"`
}

type ApplicationStatisticsSpace1 ¶

type ApplicationStatisticsSpace1 struct {
	// The available amount of space left in the application. Note that this field has limited meaning for SAN applications. Space may be considered used from ONTAP's perspective while the host filesystem still considers it available
	Available int32 `json:"available,omitempty"`
	// The amount of space that would currently be used if no space saving features were enabled. For example, if compression were the only space saving feature enabled, this field would represent the uncompressed amount of space used
	LogicalUsed int32 `json:"logical_used,omitempty"`
	// The originally requested amount of space that was provisioned for the application
	Provisioned int32 `json:"provisioned,omitempty"`
	// The amount of space reserved for system features such as snapshots that has not yet been used
	ReservedUnused int32 `json:"reserved_unused,omitempty"`
	// The amount of space saved by all enabled space saving features
	Savings int32 `json:"savings,omitempty"`
	// The amount of space that is currently being used by the application. Note that this includes any space reserved by the system for features such as snapshots
	Used int32 `json:"used,omitempty"`
	// The amount of space that is currently being used, excluding any space that is reserved by the system for features such as snapshots
	UsedExcludingReserves int32 `json:"used_excluding_reserves,omitempty"`
	// The percentage of the originally provisioned space that is currently being used by the application
	UsedPercent int32 `json:"used_percent,omitempty"`
}

type ApplicationStatisticsStorageService ¶

type ApplicationStatisticsStorageService struct {
	// The storage service UUID
	Uuid string `json:"uuid,omitempty"`
	// The storage service name. AFF systems support the extreme storage service. All other systems only support value
	Name string `json:"name,omitempty"`
}

type ApplicationSvm ¶

type ApplicationSvm struct {
	// SVM UUID. Either the SVM name or UUID must be provided to create an application. Optional in the POST body
	Uuid string `json:"uuid,omitempty"`
	// SVM Name. Either the SVM name or UUID must be provided to create an application. Optional in the POST body
	Name string `json:"name,omitempty"`
}

type ApplicationTemplate ¶

type ApplicationTemplate struct {
	// Template Name. Required in the URL
	Name string `json:"name,omitempty"`
	// Description
	Description  string        `json:"description,omitempty"`
	MaxdataOnSan *MaxdataOnSan `json:"maxdata_on_san,omitempty"`
	// Missing Prerequisites
	MissingPrerequisites string          `json:"missing_prerequisites,omitempty"`
	MongoDbOnSan         *MongoDbOnSan   `json:"mongo_db_on_san,omitempty"`
	Nas                  *Nas            `json:"nas,omitempty"`
	OracleOnNfs          *OracleOnNfs    `json:"oracle_on_nfs,omitempty"`
	OracleOnSan          *OracleOnSan    `json:"oracle_on_san,omitempty"`
	OracleRacOnNfs       *OracleRacOnNfs `json:"oracle_rac_on_nfs,omitempty"`
	OracleRacOnSan       *OracleRacOnSan `json:"oracle_rac_on_san,omitempty"`
	// Access Protocol
	Protocol string    `json:"protocol,omitempty"`
	San      *San      `json:"san,omitempty"`
	SqlOnSan *SqlOnSan `json:"sql_on_san,omitempty"`
	SqlOnSmb *SqlOnSmb `json:"sql_on_smb,omitempty"`
	VdiOnNas *VdiOnNas `json:"vdi_on_nas,omitempty"`
	VdiOnSan *VdiOnSan `json:"vdi_on_san,omitempty"`
	VsiOnNas *VsiOnNas `json:"vsi_on_nas,omitempty"`
	VsiOnSan *VsiOnSan `json:"vsi_on_san,omitempty"`
	Links    *SelfLink `json:"_links,omitempty"`
}

Application Templates

type ApplicationTemplate1 ¶

type ApplicationTemplate1 struct {
	// The name of the template that was used to provision this application. Optional in the POST body
	Name string `json:"name,omitempty"`
	// The protocol access of the template that was used to provision this application
	Protocol string `json:"protocol,omitempty"`
	// The version of the template that was used to provision this application. The template version changes only if the layout of the application changes over time. For example, redo logs in Oracle RAC templates were updated and provisioned differently in DATA ONTAP 9.3.0 compared to prior releases, so the version number was increased. If layouts change in the future, the changes will be documented along with the corresponding version numbers
	Version int32     `json:"version,omitempty"`
	Links   *SelfLink `json:"_links,omitempty"`
}

type ApplicationTemplateCollectionGetOpts ¶

type ApplicationTemplateCollectionGetOpts struct {
	Name                 optional.String
	Protocol             optional.String
	Description          optional.String
	MissingPrerequisites optional.String
	Fields               optional.Interface
	MaxRecords           optional.Int32
	ReturnTimeout        optional.Int32
	ReturnRecords        optional.Bool
	OrderBy              optional.Interface
}

type ApplicationTemplateGetOpts ¶

type ApplicationTemplateGetOpts struct {
	Fields optional.Interface
}

type ApplicationTemplateResponse ¶

type ApplicationTemplateResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32                 `json:"num_records,omitempty"`
	Records    []ApplicationTemplate `json:"records,omitempty"`
}

type ApplicationVolumeObject ¶

type ApplicationVolumeObject struct {
	// Name
	Name string `json:"name,omitempty"`
	// Size
	Size int32 `json:"size,omitempty"`
	// UUID
	Uuid string `json:"uuid,omitempty"`
}

type Audit ¶

type Audit struct {
	// Specifies whether or not auditing is enabled on the SVM.
	Enabled bool         `json:"enabled,omitempty"`
	Events  *AuditEvents `json:"events,omitempty"`
	Log     *Log         `json:"log,omitempty"`
	// The audit log destination path where consolidated audit logs are stored.
	LogPath string    `json:"log_path,omitempty"`
	Svm     *AuditSvm `json:"svm,omitempty"`
}

Auditing for NAS events is a security measure that enables you to track and log certain CIFS and NFS events on SVMs.

type AuditCollectionGetOpts ¶

type AuditCollectionGetOpts struct {
	LogRetentionDuration        optional.String
	LogRetentionCount           optional.Int32
	LogRotationSize             optional.Int32
	LogRotationScheduleDays     optional.Int32
	LogRotationScheduleWeekdays optional.Int32
	LogRotationScheduleMinutes  optional.Int32
	LogRotationScheduleMonths   optional.Int32
	LogRotationScheduleHours    optional.Int32
	LogFormat                   optional.String
	LogPath                     optional.String
	SvmUuid                     optional.String
	SvmName                     optional.String
	Enabled                     optional.Bool
	EventsFileShare             optional.Bool
	EventsAuthorizationPolicy   optional.Bool
	EventsCifsLogonLogoff       optional.Bool
	EventsCapStaging            optional.Bool
	EventsUserAccount           optional.Bool
	EventsSecurityGroup         optional.Bool
	EventsFileOperations        optional.Bool
	Fields                      optional.Interface
	MaxRecords                  optional.Int32
	ReturnRecords               optional.Bool
	ReturnTimeout               optional.Int32
	OrderBy                     optional.Interface
}

type AuditCreateOpts ¶

type AuditCreateOpts struct {
	Info optional.Interface
}

type AuditEvents ¶

type AuditEvents struct {
	// Authorization policy change events
	AuthorizationPolicy bool `json:"authorization_policy,omitempty"`
	// Central access policy staging events
	CapStaging bool `json:"cap_staging,omitempty"`
	// CIFS logon and logoff events
	CifsLogonLogoff bool `json:"cifs_logon_logoff,omitempty"`
	// File operation events
	FileOperations bool `json:"file_operations,omitempty"`
	// File share category events
	FileShare bool `json:"file_share,omitempty"`
	// Local security group management events
	SecurityGroup bool `json:"security_group,omitempty"`
	// Local user account management events
	UserAccount bool `json:"user_account,omitempty"`
}

type AuditGetOpts ¶

type AuditGetOpts struct {
	Fields optional.Interface
}

type AuditLogForwardingGetOpts ¶

type AuditLogForwardingGetOpts struct {
	Port          optional.Int32
	Address       optional.String
	Protocol      optional.String
	VerifyServer  optional.Bool
	Facility      optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnTimeout optional.Int32
	ReturnRecords optional.Bool
}

type AuditModifyOpts ¶

type AuditModifyOpts struct {
	Info optional.Interface
}

type AuditResponse ¶

type AuditResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32   `json:"num_records,omitempty"`
	Records    []Audit `json:"records,omitempty"`
}

type AuditSchedule ¶

type AuditSchedule struct {
	// Specifies the day of the month schedule to rotate audit log. Leave empty for all.
	Days []int32 `json:"days,omitempty"`
	// Specifies the hourly schedule to rotate audit log. Leave empty for all.
	Hours []int32 `json:"hours,omitempty"`
	// Specifies the minutes schedule to rotate the audit log.
	Minutes []int32 `json:"minutes,omitempty"`
	// Specifies the months schedule to rotate audit log. Leave empty for all.
	Months []int32 `json:"months,omitempty"`
	// Specifies the weekdays schedule to rotate audit log. Leave empty for all.
	Weekdays []int32 `json:"weekdays,omitempty"`
}

Rotates the audit logs based on a schedule by using the time-based rotation parameters in any combination. The rotation schedule is calculated by using all the time-related values. This is mutually exclusive with log size.

type AuditSvm ¶

type AuditSvm struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the SVM.
	Name string `json:"name,omitempty"`
	// The unique identifier of the SVM.
	Uuid string `json:"uuid,omitempty"`
}

SVM, applies only to SVM-scoped objects.

type Autosupport ¶

type Autosupport struct {
	// Specifies whether to send the AutoSupport messages to vendor support.
	ContactSupport bool `json:"contact_support,omitempty"`
	// Specifies whether the AutoSupport daemon is enabled.  When this setting is disabled, delivery of all AutoSupport messages is turned off.
	Enabled bool `json:"enabled,omitempty"`
	// The e-mail address from which the AutoSupport messages are sent. To generate node-specific 'from' addresses, enable '-node-specific-from' parameter via ONTAP CLI.
	From string `json:"from,omitempty"`
	// Specifies whether the system information is collected in compliant form, to remove private data or in complete form, to enhance diagnostics.
	IsMinimal bool `json:"is_minimal,omitempty"`
	// A list of nodes in the cluster with connectivity issues to HTTP/SMTP/AOD AutoSupport destinations along with the corresponding error descriptions and corrective actions.
	Issues []AutosupportIssues `json:"issues,omitempty"`
	// The names of the mail servers used to deliver AutoSupport messages via SMTP.
	MailHosts []string `json:"mail_hosts,omitempty"`
	// The list of partner addresses.
	PartnerAddresses []string `json:"partner_addresses,omitempty"`
	// Proxy server for AutoSupport message delivery via HTTP/S. Optionally specify a username/password for authentication with the proxy server.
	ProxyUrl string `json:"proxy_url,omitempty"`
	// The e-mail addresses to which the AutoSupport messages are sent.
	To []string `json:"to,omitempty"`
	// The name of the transport protocol used to deliver AutoSupport messages.
	Transport string `json:"transport,omitempty"`
}

type AutosupportConnectivityCorrectiveAction ¶

type AutosupportConnectivityCorrectiveAction struct {
	// Corrective action code
	Code string `json:"code,omitempty"`
	// Corrective action message. The corrective action might contain commands which needs to be executed on the ONTAP CLI.
	Message string `json:"message,omitempty"`
}

type AutosupportConnectivityIssue ¶

type AutosupportConnectivityIssue struct {
	// Error code
	Code string `json:"code,omitempty"`
	// Error message
	Message string `json:"message,omitempty"`
}

type AutosupportCreateOpts ¶

type AutosupportCreateOpts struct {
	ReturnRecords optional.Bool
	Info          optional.Interface
}

type AutosupportGetOpts ¶

type AutosupportGetOpts struct {
	Fields optional.Interface
}

type AutosupportIssues ¶

type AutosupportIssues struct {
	CorrectiveAction *AutosupportConnectivityCorrectiveAction `json:"corrective_action,omitempty"`
	Issue            *AutosupportConnectivityIssue            `json:"issue,omitempty"`
	Node             *InlineResponse201Node                   `json:"node,omitempty"`
}

type AutosupportMessage ¶

type AutosupportMessage struct {
	// Destination for the AutoSupport
	Destination string                   `json:"destination,omitempty"`
	Error_      *AutosupportMessageError `json:"error,omitempty"`
	// Date and Time of AutoSupport generation in ISO-8601 format
	GeneratedOn time.Time `json:"generated_on,omitempty"`
	// Sequence number of the AutoSupport
	Index int32 `json:"index,omitempty"`
	// Message included in the AutoSupport subject
	Message string                  `json:"message,omitempty"`
	Node    *AutosupportMessageNode `json:"node,omitempty"`
	// State of AutoSupport delivery
	State string `json:"state,omitempty"`
	// Subject line for the AutoSupport
	Subject string `json:"subject,omitempty"`
	// Type of AutoSupport collection to issue
	Type_ string `json:"type,omitempty"`
	// Alternate destination for the AutoSupport
	Uri string `json:"uri,omitempty"`
}

type AutosupportMessageCollectionGetOpts ¶

type AutosupportMessageCollectionGetOpts struct {
	NodeUuid      optional.String
	NodeName      optional.String
	Destination   optional.String
	State         optional.String
	GeneratedOn   optional.String
	Index         optional.Int32
	Subject       optional.String
	ErrorMessage  optional.String
	ErrorCode     optional.Int32
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnTimeout optional.Int32
}

type AutosupportMessageError ¶

type AutosupportMessageError struct {
	// Error code
	Code int32 `json:"code,omitempty"`
	// Error message
	Message string `json:"message,omitempty"`
}

Last error during delivery attempt. Empty if \"status=sent-successful\".

type AutosupportMessageNode ¶

type AutosupportMessageNode struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

type AutosupportMessageResponse ¶

type AutosupportMessageResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32 `json:"num_records,omitempty"`
	// List of messages invoked on the node
	Records []AutosupportMessage `json:"records,omitempty"`
}

type AutosupportModifyOpts ¶

type AutosupportModifyOpts struct {
	Info optional.Interface
}

type BasicAuth ¶

type BasicAuth struct {
	UserName string `json:"userName,omitempty"`
	Password string `json:"password,omitempty"`
}

BasicAuth provides basic http authentication to a request passed via context using ContextBasicAuth

type BroadcastDomain ¶

type BroadcastDomain struct {
	Links   *InlineResponse201Links `json:"_links,omitempty"`
	Ipspace *BroadcastDomainIpspace `json:"ipspace,omitempty"`
	// Maximum transmission unit, largest packet size on this network
	Mtu int32 `json:"mtu,omitempty"`
	// Name of the broadcast domain, scoped to its IPspace
	Name string `json:"name,omitempty"`
	// Ports that belong to the broadcast domain
	Ports []BroadcastDomainPorts `json:"ports,omitempty"`
	// Broadcast domain UUID
	Uuid string `json:"uuid,omitempty"`
}

Set of ports that will receive a broadcast Ethernet packet from any of them

type BroadcastDomainIpspace ¶

type BroadcastDomainIpspace struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// IPspace name
	Name string `json:"name,omitempty"`
	// IPspace UUID
	Uuid string `json:"uuid,omitempty"`
}

Applies to both SVM and cluster-scoped objects. Either the UUID or name is supplied on input.

type BroadcastDomainNode ¶

type BroadcastDomainNode struct {
	// Name of node on which the port is located.
	Name string `json:"name,omitempty"`
}

type BroadcastDomainPorts ¶

type BroadcastDomainPorts struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Node  *BroadcastDomainNode    `json:"node,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

Port UUID along with readable names

type BroadcastDomainReference ¶

type BroadcastDomainReference struct {
	Links   *InlineResponse201Links          `json:"_links,omitempty"`
	Ipspace *BroadcastDomainReferenceIpspace `json:"ipspace,omitempty"`
	// Name of the broadcast domain, scoped to its IPspace
	Name string `json:"name,omitempty"`
	// Broadcast domain UUID
	Uuid string `json:"uuid,omitempty"`
}

Broadcast domain UUID along with a readable name. Either the UUID or both names may be provided on input.

type BroadcastDomainReferenceIpspace ¶

type BroadcastDomainReferenceIpspace struct {
	// Name of the broadcast domain's IPspace
	Name string `json:"name,omitempty"`
}

type BroadcastDomainResponse ¶

type BroadcastDomainResponse struct {
	Links      *AccountResponseLinks `json:"_links,omitempty"`
	NumRecords int32                 `json:"num_records,omitempty"`
	Records    []BroadcastDomain     `json:"records,omitempty"`
}

type BroadcastDomainSvmReference ¶

type BroadcastDomainSvmReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Name of the broadcast domain, scoped to its IPspace
	Name string `json:"name,omitempty"`
	// Broadcast domain UUID
	Uuid string `json:"uuid,omitempty"`
}

Broadcast domain UUID along with a readable name.

type Chassis ¶

type Chassis struct {
	// List of frus in chassis
	Frus []ChassisFrus `json:"frus,omitempty"`
	Id   string        `json:"id,omitempty"`
	// List of nodes in chassis
	Nodes []InlineResponse201Node `json:"nodes,omitempty"`
	// List of shelves in chassis
	Shelves []ShelfReference `json:"shelves,omitempty"`
	State   string           `json:"state,omitempty"`
}

type ChassisCollectionGetOpts ¶

type ChassisCollectionGetOpts struct {
	Id            optional.String
	ShelvesUid    optional.String
	NodesUuid     optional.String
	NodesName     optional.String
	State         optional.String
	FrusId        optional.String
	FrusType      optional.String
	FrusState     optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type ChassisFrus ¶

type ChassisFrus struct {
	Id    string `json:"id,omitempty"`
	State string `json:"state,omitempty"`
	Type_ string `json:"type,omitempty"`
}

type ChassisGetOpts ¶

type ChassisGetOpts struct {
	Fields optional.Interface
}

type ChassisReference ¶

type ChassisReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Id    string                  `json:"id,omitempty"`
}

Chassis

type ChassisResponse ¶

type ChassisResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32     `json:"num_records,omitempty"`
	Records    []Chassis `json:"records,omitempty"`
}

type CifsHomedirSearchPathGetOpts ¶

type CifsHomedirSearchPathGetOpts struct {
	Fields optional.Interface
}

type CifsNetbios ¶

type CifsNetbios struct {
	Aliases []string `json:"aliases,omitempty"`
	// Specifies whether NetBios name service (NBNS) is enabled for the CIFS. If this service is enabled, the CIFS server will start sending the broadcast for name registration.
	Enabled     bool     `json:"enabled,omitempty"`
	WinsServers []string `json:"wins_servers,omitempty"`
}

type CifsSearchPath ¶

type CifsSearchPath struct {
	// The position in the list of paths that is searched to find the home directory of the CIFS client. Not available in POST.
	Index int32 `json:"index,omitempty"`
	// The file system path that is searched to find the home directory of the CIFS client.
	Path string    `json:"path,omitempty"`
	Svm  *AuditSvm `json:"svm,omitempty"`
}

This is a list of CIFS home directory search paths. When a CIFS client connects to a home directory share, these paths are searched in the order indicated by the position field to find the home directory of the connected CIFS client.

type CifsSearchPathCollectionGetOpts ¶

type CifsSearchPathCollectionGetOpts struct {
	SvmUuid       optional.String
	SvmName       optional.String
	Index         optional.Int32
	Path          optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type CifsSearchPathCreateOpts ¶

type CifsSearchPathCreateOpts struct {
	Info optional.Interface
}

type CifsSearchPathModifyOpts ¶

type CifsSearchPathModifyOpts struct {
	NewIndex optional.Int32
}

type CifsSearchPathResponse ¶

type CifsSearchPathResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32            `json:"num_records,omitempty"`
	Records    []CifsSearchPath `json:"records,omitempty"`
}

type CifsService ¶

type CifsService struct {
	Links    *InlineResponse201Links `json:"_links,omitempty"`
	AdDomain *AdDomain               `json:"ad_domain,omitempty"`
	// A descriptive text comment for the CIFS server. SMB clients can see the CIFS server comment when browsing servers on the network. If there is a space in the comment, you must enclose the entire string in quotation marks.
	Comment string `json:"comment,omitempty"`
	// Specifies the UNIX user to which any authenticated CIFS user is mapped to, if the normal user mapping rules fails.
	DefaultUnixUser string `json:"default_unix_user,omitempty"`
	// Specifies if the CIFS service is administratively enabled.
	Enabled bool `json:"enabled,omitempty"`
	// The name of the CIFS server.
	Name     string               `json:"name,omitempty"`
	Netbios  *CifsNetbios         `json:"netbios,omitempty"`
	Security *CifsServiceSecurity `json:"security,omitempty"`
	Svm      *AuditSvm            `json:"svm,omitempty"`
}

type CifsServiceCollectionGetOpts ¶

type CifsServiceCollectionGetOpts struct {
	Name                       optional.String
	SvmUuid                    optional.String
	SvmName                    optional.String
	Enabled                    optional.Bool
	Comment                    optional.String
	DefaultUnixUser            optional.String
	SecurityRestrictAnonymous  optional.String
	SecuritySmbEncryption      optional.Bool
	SecurityKdcEncryption      optional.Bool
	SecuritySmbSigning         optional.Bool
	AdDomainUser               optional.String
	AdDomainFqdn               optional.String
	AdDomainOrganizationalUnit optional.String
	NetbiosWinsServers         optional.String
	NetbiosAliases             optional.String
	NetbiosEnabled             optional.Bool
	Fields                     optional.Interface
	MaxRecords                 optional.Int32
	ReturnRecords              optional.Bool
	ReturnTimeout              optional.Int32
	OrderBy                    optional.Interface
}

type CifsServiceCreateOpts ¶

type CifsServiceCreateOpts struct {
	Info optional.Interface
}

type CifsServiceDelete ¶

type CifsServiceDelete struct {
	AdDomain *AdDomain `json:"ad_domain,omitempty"`
}

type CifsServiceDeleteOpts ¶

type CifsServiceDeleteOpts struct {
	Info optional.Interface
}

type CifsServiceGetOpts ¶

type CifsServiceGetOpts struct {
	Fields optional.Interface
}

type CifsServiceModifyOpts ¶

type CifsServiceModifyOpts struct {
	Info optional.Interface
}

type CifsServiceResponse ¶

type CifsServiceResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32         `json:"num_records,omitempty"`
	Records    []CifsService `json:"records,omitempty"`
}

type CifsServiceSecurity ¶

type CifsServiceSecurity struct {
	// Specifies whether AES-128 and AES-256 encryption is enabled for all Kerberos-based communication with the Active Directory KDC. To take advantage of the strongest security with Kerberos-based communication, AES-256 and AES-128 encryption can be enabled on the CIFS server. Kerberos-related communication for CIFS is used during CIFS server creation on the SVM, as well as during the SMB session setup phase. The CIFS server supports the following encryption types for Kerberos communication:     * RC4-HMAC     * DES     * AES When the CIFS server is created, the domain controller creates a computer machine account in Active Directory. After a newly created machine account authenticates, the KDC and the CIFS server negotiates encryption types. At this time, the KDC becomes aware of the encryption capabilities of the particular machine account and uses those capabilities in subsequent communication with the CIFS server. In addition to negotiating encryption types during CIFS server creation, the encryption types are renegotiated when a machine account password is reset.
	KdcEncryption bool `json:"kdc_encryption,omitempty"`
	// Specifies what level of access an anonymous user is granted. An anonymous user (also known as a \"null user\") can list or enumerate certain types of system information from Windows hosts on the network, including user names and details, account policies, and share names. Access for the anonymous user can be controlled by specifying one of three access restriction settings.  The available values are:  * no_restriction   - No access restriction for an anonymous user.  * no_enumeration   - Enumeration is restricted for an anonymous user.  * no_access        - All access is restricted for an anonymous user.
	RestrictAnonymous string `json:"restrict_anonymous,omitempty"`
	// Specifies whether encryption is required for incoming CIFS traffic.
	SmbEncryption bool `json:"smb_encryption,omitempty"`
	// Specifies whether signing is required for incoming CIFS traffic. SMB signing helps to ensure that network traffic between the CIFS server and the client is not compromised.
	SmbSigning bool `json:"smb_signing,omitempty"`
}

type CifsShare ¶

type CifsShare struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// If enabled, all folders inside this share are visible to a user based on that individual user access right; prevents the display of folders or other shared resources that the user does not have access to.
	AccessBasedEnumeration bool           `json:"access_based_enumeration,omitempty"`
	Acls                   []CifsShareAcl `json:"acls,omitempty"`
	// Specifies whether CIFS clients can request for change notifications for directories on this share.
	ChangeNotify bool `json:"change_notify,omitempty"`
	// Specify the CIFS share descriptions.
	Comment string `json:"comment,omitempty"`
	// Specifies that SMB encryption must be used when accessing this share. Clients that do not support encryption are not able to access this share.
	Encryption bool `json:"encryption,omitempty"`
	// Specifies whether or not the share is a home directory share, where the share and path names are dynamic. ONTAP home directory functionality automatically offer each user a dynamic share to their home directory without creating an individual SMB share for each user. The ONTAP CIFS home directory feature enable us to configure a share that maps to different directories based on the user that connects to it. Instead of creating a separate shares for each user, a single share with a home directory parameters can be created. In a home directory share, ONTAP dynamically generates the share-name and share-path by substituting %w, %u, and %d variables with the corresponding Windows user name, UNIX user name, and domain name, respectively.
	HomeDirectory bool `json:"home_directory,omitempty"`
	// Specifies the name of the CIFS share that you want to create. If this is a home directory share then the share name includes the pattern as %w (Windows user name), %u (UNIX user name) and %d (Windows domain name) variables in any combination with this parameter to generate shares dynamically.
	Name string `json:"name,omitempty"`
	// Specify whether opportunistic locks are enabled on this share. \"Oplocks\" allow clients to lock files and cache content locally, which can increase performance for file operations.
	Oplocks bool `json:"oplocks,omitempty"`
	// The fully-qualified pathname in the owning SVM namespace that is shared through this share. If this is a home directory share then the path should be dynamic by specifying the pattern %w (Windows user name), %u (UNIX user name), or %d (domain name) variables in any combination. ONTAP generates the path dynamically for the connected user and this path is appended to each search path to find the full Home Directory path.
	Path string    `json:"path,omitempty"`
	Svm  *AuditSvm `json:"svm,omitempty"`
	// Controls the access of UNIX symbolic links to CIFS clients. The supported values are:     * local - Enables only local symbolic links which is within the same CIFS share.     * widelink - Enables both local symlinks and widelinks.     * disable - Disables local symlinks and widelinks.
	UnixSymlink string           `json:"unix_symlink,omitempty"`
	Volume      *CifsShareVolume `json:"volume,omitempty"`
}

CIFS share is a named access point in a volume. Before users and applications can access data on the CIFS server over SMB, a CIFS share must be created with sufficient share permission. CIFS shares are tied to the CIFS server on the SVM. When a CIFS share is created, ONTAP creates a default ACL for the share with Full Control permissions for Everyone.

type CifsShareAcl ¶

type CifsShareAcl struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Specifies the access rights that a user or group has on the defined CIFS Share. The following values are allowed: * no_access    - User does not have CIFS share access * read         - User has only read access * change       - User has change access * full_control - User has full_control access
	Permission string `json:"permission,omitempty"`
	// Specifies the type of the user or group to add to the access control list of a CIFS share. The following values are allowed: * windows    - Windows user or group * unix_user  - UNIX user * unix_group - UNIX group
	Type_ string `json:"type,omitempty"`
	// Specifies the user or group name to add to the access control list of a CIFS share.
	UserOrGroup string `json:"user_or_group,omitempty"`
}

The permissions that users and groups have on a CIFS share.

type CifsShareAclCollectionGetOpts ¶

type CifsShareAclCollectionGetOpts struct {
	Permission    optional.String
	Type_         optional.String
	UserOrGroup   optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type CifsShareAclCreateOpts ¶

type CifsShareAclCreateOpts struct {
	Info optional.Interface
}

type CifsShareAclGetOpts ¶

type CifsShareAclGetOpts struct {
	Fields optional.Interface
}

type CifsShareAclModifyOpts ¶

type CifsShareAclModifyOpts struct {
	Info optional.Interface
}

type CifsShareAclResponse ¶

type CifsShareAclResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32          `json:"num_records,omitempty"`
	Records    []CifsShareAcl `json:"records,omitempty"`
}

type CifsShareCollectionGetOpts ¶

type CifsShareCollectionGetOpts struct {
	SvmUuid                optional.String
	SvmName                optional.String
	Name                   optional.String
	UnixSymlink            optional.String
	Comment                optional.String
	VolumeName             optional.String
	VolumeUuid             optional.String
	AclsPermission         optional.String
	AclsType               optional.String
	AclsUserOrGroup        optional.String
	Oplocks                optional.Bool
	Path                   optional.String
	Encryption             optional.Bool
	HomeDirectory          optional.Bool
	AccessBasedEnumeration optional.Bool
	ChangeNotify           optional.Bool
	Fields                 optional.Interface
	MaxRecords             optional.Int32
	ReturnRecords          optional.Bool
	ReturnTimeout          optional.Int32
	OrderBy                optional.Interface
}

type CifsShareCreateOpts ¶

type CifsShareCreateOpts struct {
	Info optional.Interface
}

type CifsShareGetOpts ¶

type CifsShareGetOpts struct {
	Fields optional.Interface
}

type CifsShareModifyOpts ¶

type CifsShareModifyOpts struct {
	Info optional.Interface
}

type CifsShareResponse ¶

type CifsShareResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32       `json:"num_records,omitempty"`
	Records    []CifsShare `json:"records,omitempty"`
}

type CifsShareVolume ¶

type CifsShareVolume struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the volume.
	Name string `json:"name,omitempty"`
	// Unique identifier for the volume. This corresponds to the instance-uuid that is exposed in the CLI and ONTAPI. It does not change due to a volume move.
	Uuid string `json:"uuid,omitempty"`
}

type CifsSymlinkMapping ¶

type CifsSymlinkMapping struct {
	Links  *InlineResponse201Links `json:"_links,omitempty"`
	Svm    *AuditSvm               `json:"svm,omitempty"`
	Target *CifsTarget             `json:"target,omitempty"`
	// Specifies the UNIX path prefix to be matched for the mapping.
	UnixPath string `json:"unix_path,omitempty"`
}

ONTAP allows for both CIFS and NFS access to the same datastore. This datastore can contain symbolic links created by UNIX clients which can point anywhere from the perspective of the UNIX client. To Access such UNIX symlink from CIFS share, we need to create a CIFS symbolic link path mapping from a UNIX symlink and target it as a CIFS path.

type CifsSymlinkMappingCollectionGetOpts ¶

type CifsSymlinkMappingCollectionGetOpts struct {
	TargetLocality      optional.String
	TargetHomeDirectory optional.Bool
	TargetServer        optional.String
	TargetShare         optional.String
	TargetPath          optional.String
	SvmUuid             optional.String
	SvmName             optional.String
	UnixPath            optional.String
	Fields              optional.Interface
	MaxRecords          optional.Int32
	ReturnRecords       optional.Bool
	ReturnTimeout       optional.Int32
	OrderBy             optional.Interface
}

type CifsSymlinkMappingCreateOpts ¶

type CifsSymlinkMappingCreateOpts struct {
	Info optional.Interface
}

type CifsSymlinkMappingGetOpts ¶

type CifsSymlinkMappingGetOpts struct {
	Fields optional.Interface
}

type CifsSymlinkMappingModifyOpts ¶

type CifsSymlinkMappingModifyOpts struct {
	Info optional.Interface
}

type CifsSymlinkMappingResponse ¶

type CifsSymlinkMappingResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32                `json:"num_records,omitempty"`
	Records    []CifsSymlinkMapping `json:"records,omitempty"`
}

type CifsTarget ¶

type CifsTarget struct {
	// Specify if the destination share is a home directory.
	HomeDirectory bool `json:"home_directory,omitempty"`
	// Specifies whether the CIFS symbolic link is a local link or wide link. The following values are supported: * local - Local symbolic link maps only to the same CIFS share. * widelink - Wide symbolic link maps to any CIFS share on the network.
	Locality string `json:"locality,omitempty"`
	// Specifies the CIFS path on the destination to which the symbolic link maps. The final path is generated by concatenating the CIFS server name, the share name, the cifs-path and the remaining path in the symbolic link left after the prefix match. This value is specified by using a UNIX-style path name. The trailing forward slash is required for the full path name to be properly interpreted.
	Path string `json:"path,omitempty"`
	// Specifies the destination CIFS server where the UNIX symbolic link is pointing. This field is mandatory if the locality of the symbolic link is 'widelink'. You can specify the value in any of the following formats:   * DNS name of the CIFS server.   * IP address of the CIFS server.   * NetBIOS name of the CIFS server.
	Server string `json:"server,omitempty"`
	// Specifies the CIFS share name on the destination CIFS server to which the UNIX symbolic link is pointing.
	Share string `json:"share,omitempty"`
}

type CloudApiService ¶

type CloudApiService service

func (*CloudApiService) CloudTargetCollectionGet ¶

func (a *CloudApiService) CloudTargetCollectionGet(ctx context.Context, localVarOptionals *CloudTargetCollectionGetOpts) (CloudTargetResponse, *http.Response, error)

func (*CloudApiService) CloudTargetCreate ¶

func (a *CloudApiService) CloudTargetCreate(ctx context.Context, localVarOptionals *CloudTargetCreateOpts) (JobLinkResponse, *http.Response, error)

func (*CloudApiService) CloudTargetDelete ¶

func (a *CloudApiService) CloudTargetDelete(ctx context.Context, uuid string) (JobLinkResponse, *http.Response, error)

CloudApiService Deletes the cloud target specified by the UUID. This request starts a job and returns a link to that job. ### Related ONTAP commands * &#x60;storage aggregate object-store config delete&#x60; ### Learn more * [&#x60;DOC /cloud/targets&#x60;](#docs-cloud-cloud_targets)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid Cloud target UUID

@return JobLinkResponse

func (*CloudApiService) CloudTargetGet ¶

func (a *CloudApiService) CloudTargetGet(ctx context.Context, uuid string, localVarOptionals *CloudTargetGetOpts) (CloudTarget, *http.Response, error)

func (*CloudApiService) CloudTargetModify ¶

func (a *CloudApiService) CloudTargetModify(ctx context.Context, uuid string, localVarOptionals *CloudTargetModifyOpts) (JobLinkResponse, *http.Response, error)

type CloudStorageTier ¶

type CloudStorageTier struct {
	CloudStore *CloudStorageTierCloudStore `json:"cloud_store,omitempty"`
	// Capacity used in bytes in the cloud store by this aggregate. This is a cached value calculated every 5 minutes.
	Used int32 `json:"used,omitempty"`
}

type CloudStorageTierCloudStore ¶

type CloudStorageTierCloudStore struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

Cloud store

type CloudStore ¶

type CloudStore struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Availability of the object store.
	Availability string `json:"availability,omitempty"`
	// This field identifies if the mirror cloud store is in sync with the primary cloud store of a FabricPool.
	MirrorDegraded bool `json:"mirror_degraded,omitempty"`
	// This field indicates whether the cloud store is the primary cloud store of a cloud mirrored composite aggregate.
	Primary bool              `json:"primary,omitempty"`
	Target  *CloudStoreTarget `json:"target,omitempty"`
	// Usage threshold for reclaiming unused space in the cloud store. Valid values are 0 to 99. The default value depends on the provider type. This can be specified in PATCH but not POST.
	UnreclaimedSpaceThreshold int32 `json:"unreclaimed_space_threshold,omitempty"`
	// The amount of object space used. Calculated every 5 minutes and cached.
	Used int32 `json:"used,omitempty"`
}

type CloudStoreCollectionGetOpts ¶

type CloudStoreCollectionGetOpts struct {
	MirrorDegraded            optional.Bool
	TargetName                optional.String
	TargetUuid                optional.String
	Used                      optional.Int32
	Availability              optional.String
	UnreclaimedSpaceThreshold optional.Int32
	Primary                   optional.Bool
	Fields                    optional.Interface
	MaxRecords                optional.Int32
	ReturnRecords             optional.Bool
	ReturnTimeout             optional.Int32
	OrderBy                   optional.Interface
}

type CloudStoreCreateOpts ¶

type CloudStoreCreateOpts struct {
	AllowFlexgroups optional.Bool
	CheckOnly       optional.Bool
	Info            optional.Interface
}

type CloudStoreGetOpts ¶

type CloudStoreGetOpts struct {
	Fields optional.Interface
}

type CloudStoreModifyOpts ¶

type CloudStoreModifyOpts struct {
	Info optional.Interface
}

type CloudStoreReference ¶

type CloudStoreReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

Cloud store

type CloudStoreResponse ¶

type CloudStoreResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32        `json:"num_records,omitempty"`
	Records    []CloudStore `json:"records,omitempty"`
}

type CloudStoreTarget ¶

type CloudStoreTarget struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

Cloud target

type CloudTarget ¶

type CloudTarget struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Access key ID for AWS_S3 and other S3 compatible provider types.
	AccessKey string `json:"access_key,omitempty"`
	// Authentication used to access the target. Snapmirror does not yet support CAP. Required in POST.
	AuthenticationType string `json:"authentication_type,omitempty"`
	// Azure account
	AzureAccount string `json:"azure_account,omitempty"`
	// Azure access key
	AzurePrivateKey string `json:"azure_private_key,omitempty"`
	// This parameter is available only when auth-type is CAP. It specifies a full URL of the request to a CAP server for retrieving temporary credentials (access-key, secret-pasword, and session token) for accessing the object store.
	CapUrl string `json:"cap_url,omitempty"`
	// Is SSL/TLS certificate validation enabled? The default value is true. This can only be modified for SGWS and IBM_COS provider types.
	CertificateValidationEnabled bool `json:"certificate_validation_enabled,omitempty"`
	// Data bucket/container name
	Container string              `json:"container,omitempty"`
	Ipspace   *CloudTargetIpspace `json:"ipspace,omitempty"`
	// Cloud target name
	Name string `json:"name,omitempty"`
	// Owner of the target. Allowed values are FabricPool or SnapMirror. A target can be used by only one feature.
	Owner string `json:"owner,omitempty"`
	// Port number of the object store that ONTAP uses when establishing a connection. Required in POST.
	Port int32 `json:"port,omitempty"`
	// Type of cloud provider. Allowed values depend on owner type. For FabricPool, AliCloud, AWS_S3, Azure_Cloud, GoggleCloud, IBM_COS, and SGWS are allowed. For SnapMirror, the valid values are AWS_S3 or SGWS.
	ProviderType string `json:"provider_type,omitempty"`
	// Secret access key for AWS_S3 and other S3 compatible provider types.
	SecretPassword string `json:"secret_password,omitempty"`
	// Fully qualified domain name of the object store server. Required on POST.  For Amazon S3, server name must be an AWS regional endpoint in the format s3.amazonaws.com or s3-<region>.amazonaws.com, for example, s3-us-west-2.amazonaws.com. The region of the server and the bucket must match. For Azure, if the server is a \"blob.core.windows.net\" or a \"blob.core.usgovcloudapi.net\", then a value of azure-account followed by a period is added in front of the server.
	Server string `json:"server,omitempty"`
	// Use of the cloud target by SnapMirror.
	SnapmirrorUse string `json:"snapmirror_use,omitempty"`
	// SSL/HTTPS enabled or not
	SslEnabled bool            `json:"ssl_enabled,omitempty"`
	Svm        *CloudTargetSvm `json:"svm,omitempty"`
	// The amount of cloud space used by all the aggregates attached to the target, in bytes. This field is only populated for FabricPool targets. The value is recalculated once every 5 minutes.
	Used int32 `json:"used,omitempty"`
	// Cloud target UUID
	Uuid string `json:"uuid,omitempty"`
}

type CloudTargetCollectionGetOpts ¶

type CloudTargetCollectionGetOpts struct {
	Name                         optional.String
	SvmUuid                      optional.String
	SvmName                      optional.String
	AuthenticationType           optional.String
	Port                         optional.Int32
	Used                         optional.Int32
	CapUrl                       optional.String
	SnapmirrorUse                optional.String
	IpspaceUuid                  optional.String
	IpspaceName                  optional.String
	AzureAccount                 optional.String
	Owner                        optional.String
	Container                    optional.String
	Server                       optional.String
	Uuid                         optional.String
	SslEnabled                   optional.Bool
	CertificateValidationEnabled optional.Bool
	ProviderType                 optional.String
	AccessKey                    optional.String
	Fields                       optional.Interface
	MaxRecords                   optional.Int32
	ReturnRecords                optional.Bool
	ReturnTimeout                optional.Int32
	OrderBy                      optional.Interface
}

type CloudTargetCreateOpts ¶

type CloudTargetCreateOpts struct {
	IgnoreWarnings optional.Bool
	CheckOnly      optional.Bool
	Info           optional.Interface
}

type CloudTargetGetOpts ¶

type CloudTargetGetOpts struct {
	Fields optional.Interface
}

type CloudTargetIpspace ¶

type CloudTargetIpspace struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// IPspace name
	Name string `json:"name,omitempty"`
	// IPspace UUID
	Uuid string `json:"uuid,omitempty"`
}

IPspace to use in order to reach the cloud target.

type CloudTargetModifyOpts ¶

type CloudTargetModifyOpts struct {
	IgnoreWarnings optional.Bool
	CheckOnly      optional.Bool
	Info           optional.Interface
}

type CloudTargetReference ¶

type CloudTargetReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

Cloud target

type CloudTargetResponse ¶

type CloudTargetResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32         `json:"num_records,omitempty"`
	Records    []CloudTarget `json:"records,omitempty"`
}

type CloudTargetSvm ¶

type CloudTargetSvm struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the SVM.
	Name string `json:"name,omitempty"`
	// The unique identifier of the SVM.
	Uuid string `json:"uuid,omitempty"`
}

This field is only applicable when used for SnapMirror. For POST and PATCH, SVM information is required for SnapMirror targets and not allowed for FabricPool targets.

type Cluster ¶

type Cluster struct {
	Links               *InlineResponse201Links     `json:"_links,omitempty"`
	ConfigurationBackup *ClusterConfigurationBackup `json:"configuration_backup,omitempty"`
	Contact             string                      `json:"contact,omitempty"`
	// A list of DNS domains. Domain names have the following requirements: * The name must contain only the following characters: A through Z,   a through z, 0 through 9, \".\", \"-\" or \"_\". * The first character of each label, delimited by \".\", must be one   of the following characters: A through Z or a through z or 0   through 9. * The last character of each label, delimited by \".\", must be one of   the following characters: A through Z, a through z, or 0 through 9. * The top level domain must contain only the following characters: A   through Z, a through z. * The system reserves the following names:\"all\", \"local\", and \"localhost\".
	DnsDomains           []string                                     `json:"dns_domains,omitempty"`
	License              *ClusterLicense                              `json:"license,omitempty"`
	Location             string                                       `json:"location,omitempty"`
	ManagementInterface  *ClusterManagementInterface                  `json:"management_interface,omitempty"`
	ManagementInterfaces []ApplicationSanAccessIscsiEndpointInterface `json:"management_interfaces,omitempty"`
	Metric               *ClusterMetric                               `json:"metric,omitempty"`
	Name                 string                                       `json:"name,omitempty"`
	// The list of IP addresses of the DNS servers. Addresses can be either IPv4 or IPv6 addresses.
	NameServers []string       `json:"name_servers,omitempty"`
	Nodes       []ClusterNodes `json:"nodes,omitempty"`
	// Host name, IPv4 address, or IPv6 address for the external NTP time servers.
	NtpServers []string `json:"ntp_servers,omitempty"`
	// Initial admin password used to create the cluster.
	Password   string             `json:"password,omitempty"`
	Statistics *ClusterStatistics `json:"statistics,omitempty"`
	Uuid       string             `json:"uuid,omitempty"`
	Version    *ClusterVersion    `json:"version,omitempty"`
}

Complete cluster information

type ClusterApiService ¶

type ClusterApiService service

func (*ClusterApiService) ChassisCollectionGet ¶

func (a *ClusterApiService) ChassisCollectionGet(ctx context.Context, localVarOptionals *ChassisCollectionGetOpts) (ChassisResponse, *http.Response, error)

func (*ClusterApiService) ChassisGet ¶

func (a *ClusterApiService) ChassisGet(ctx context.Context, id string, localVarOptionals *ChassisGetOpts) (Chassis, *http.Response, error)

func (*ClusterApiService) ClusterCollectionPerformanceMetricsGet ¶

func (a *ClusterApiService) ClusterCollectionPerformanceMetricsGet(ctx context.Context, localVarOptionals *ClusterCollectionPerformanceMetricsGetOpts) (ClusterMetricsResponse, *http.Response, error)

func (*ClusterApiService) ClusterCreate ¶

func (a *ClusterApiService) ClusterCreate(ctx context.Context, info Cluster, localVarOptionals *ClusterCreateOpts) (JobLinkResponse, *http.Response, error)

func (*ClusterApiService) ClusterGet ¶

func (a *ClusterApiService) ClusterGet(ctx context.Context, localVarOptionals *ClusterGetOpts) (Cluster, *http.Response, error)

func (*ClusterApiService) ClusterModify ¶

func (a *ClusterApiService) ClusterModify(ctx context.Context, info Cluster) (JobLinkResponse, *http.Response, error)

ClusterApiService Updates the cluster configuration once the cluster has been created. ### Learn more * [&#x60;DOC /cluster&#x60;](#docs-cluster-cluster)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info Cluster information

@return JobLinkResponse

func (*ClusterApiService) ClusterPeerCreate ¶

func (a *ClusterApiService) ClusterPeerCreate(ctx context.Context, localVarOptionals *ClusterPeerCreateOpts) (ClusterPeerSetupResponse, *http.Response, error)

func (*ClusterApiService) ClusterPeerDelete ¶

func (a *ClusterApiService) ClusterPeerDelete(ctx context.Context, uuid string) (*http.Response, error)

ClusterApiService Deletes a cluster peer. ### Learn more * [&#x60;DOC /cluster/peers&#x60;](#docs-cluster-cluster_peers)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid Cluster peer relationship UUID

func (*ClusterApiService) ClusterPeerGet ¶

func (a *ClusterApiService) ClusterPeerGet(ctx context.Context, uuid string, localVarOptionals *ClusterPeerGetOpts) (ClusterPeer, *http.Response, error)

func (*ClusterApiService) ClusterPeerModify ¶

func (a *ClusterApiService) ClusterPeerModify(ctx context.Context, uuid string, localVarOptionals *ClusterPeerModifyOpts) (ClusterPeerSetupResponse, *http.Response, error)

func (*ClusterApiService) JobCollectionGet ¶

func (a *ClusterApiService) JobCollectionGet(ctx context.Context, localVarOptionals *JobCollectionGetOpts) (JobResponse, *http.Response, error)

func (*ClusterApiService) JobGet ¶

func (a *ClusterApiService) JobGet(ctx context.Context, uuid string, localVarOptionals *JobGetOpts) (Job, *http.Response, error)

func (*ClusterApiService) JobModify ¶

func (a *ClusterApiService) JobModify(ctx context.Context, uuid string, localVarOptionals *JobModifyOpts) (*http.Response, error)

func (*ClusterApiService) LicenseCreate ¶

func (a *ClusterApiService) LicenseCreate(ctx context.Context, info LicensePackage, localVarOptionals *LicenseCreateOpts) (LicensePackageResponse, *http.Response, error)

func (*ClusterApiService) LicenseDelete ¶

func (a *ClusterApiService) LicenseDelete(ctx context.Context, name string, serialNumber string) (*http.Response, error)

ClusterApiService Deletes a license. ### Related ONTAP commands * &#x60;system license delete&#x60; ### Learn more * [&#x60;DOC /cluster/licensing/licenses/{name}&#x60;](#docs-cluster-cluster_licensing_licenses_{name})

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param name Name of the license package to delete.
  • @param serialNumber Serial number of the license to delete.

func (*ClusterApiService) LicenseGet ¶

func (a *ClusterApiService) LicenseGet(ctx context.Context, name string, localVarOptionals *LicenseGetOpts) (LicensePackage, *http.Response, error)

func (*ClusterApiService) LicensesGet ¶

func (a *ClusterApiService) LicensesGet(ctx context.Context, localVarOptionals *LicensesGetOpts) (LicensePackageResponse, *http.Response, error)

func (*ClusterApiService) NodeGet ¶

func (a *ClusterApiService) NodeGet(ctx context.Context, uuid string, localVarOptionals *NodeGetOpts) (Node, *http.Response, error)

func (*ClusterApiService) NodeModify ¶

func (a *ClusterApiService) NodeModify(ctx context.Context, uuid string, localVarOptionals *NodeModifyOpts) (JobLinkResponse, *http.Response, error)

func (*ClusterApiService) NodesCreate ¶

func (a *ClusterApiService) NodesCreate(ctx context.Context, info Node) (JobLinkResponse, *http.Response, error)

ClusterApiService Adds a node or nodes to the cluster ### Required properties * &#x60;cluster_interface.ip.address&#x60; ### Learn more * [&#x60;DOC /cluster/nodes&#x60;](#docs-cluster-cluster_nodes)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info An object containing an array of nodes.

@return JobLinkResponse

func (*ClusterApiService) NodesGet ¶

func (a *ClusterApiService) NodesGet(ctx context.Context, localVarOptionals *NodesGetOpts) (NodeResponse, *http.Response, error)

func (*ClusterApiService) PeersCollectionGet ¶

func (a *ClusterApiService) PeersCollectionGet(ctx context.Context, localVarOptionals *PeersCollectionGetOpts) (ClusterPeerResponse, *http.Response, error)

func (*ClusterApiService) ScheduleCollectionGet ¶

func (a *ClusterApiService) ScheduleCollectionGet(ctx context.Context, localVarOptionals *ScheduleCollectionGetOpts) (ScheduleResponse, *http.Response, error)

func (*ClusterApiService) ScheduleCreate ¶

func (a *ClusterApiService) ScheduleCreate(ctx context.Context, localVarOptionals *ScheduleCreateOpts) (*http.Response, error)

func (*ClusterApiService) ScheduleDelete ¶

func (a *ClusterApiService) ScheduleDelete(ctx context.Context, uuid string) (*http.Response, error)

ClusterApiService Deletes a schedule. ### Learn more * [&#x60;DOC /cluster/schedules&#x60;](#docs-cluster-cluster_schedules)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid Schedule UUID

func (*ClusterApiService) ScheduleGet ¶

func (a *ClusterApiService) ScheduleGet(ctx context.Context, uuid string, localVarOptionals *ScheduleGetOpts) (Schedule, *http.Response, error)

func (*ClusterApiService) ScheduleModify ¶

func (a *ClusterApiService) ScheduleModify(ctx context.Context, uuid string, localVarOptionals *ScheduleModifyOpts) (*http.Response, error)

func (*ClusterApiService) SoftwareGet ¶

func (a *ClusterApiService) SoftwareGet(ctx context.Context, localVarOptionals *SoftwareGetOpts) (SoftwareReference, *http.Response, error)

func (*ClusterApiService) SoftwareHistoryCollectionGet ¶

func (a *ClusterApiService) SoftwareHistoryCollectionGet(ctx context.Context, localVarOptionals *SoftwareHistoryCollectionGetOpts) (SoftwareHistoryResponse, *http.Response, error)

func (*ClusterApiService) SoftwareModify ¶

func (a *ClusterApiService) SoftwareModify(ctx context.Context, localVarOptionals *SoftwareModifyOpts) (JobLinkResponse, *http.Response, error)

func (*ClusterApiService) SoftwarePackageCreate ¶

func (a *ClusterApiService) SoftwarePackageCreate(ctx context.Context, localVarOptionals *SoftwarePackageCreateOpts) (JobLinkResponse, *http.Response, error)

func (*ClusterApiService) SoftwarePackageDelete ¶

func (a *ClusterApiService) SoftwarePackageDelete(ctx context.Context, version string) (*http.Response, error)

ClusterApiService Deletes a software package from the cluster. The delete operation fails if the package is currently installed. ### Related ONTAP commands * &#x60;cluster image package delete&#x60; ### Learn more * [&#x60;DOC /cluster/software&#x60;](#docs-cluster-cluster_software)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param version

func (*ClusterApiService) SoftwarePackageGet ¶

func (a *ClusterApiService) SoftwarePackageGet(ctx context.Context, version string, localVarOptionals *SoftwarePackageGetOpts) (SoftwarePackage, *http.Response, error)

func (*ClusterApiService) SoftwarePackagesCollectionGet ¶

func (a *ClusterApiService) SoftwarePackagesCollectionGet(ctx context.Context, localVarOptionals *SoftwarePackagesCollectionGetOpts) (SoftwarePackageResponse, *http.Response, error)

type ClusterClusterInterface ¶

type ClusterClusterInterface struct {
	Ip *NodeSetupIp `json:"ip,omitempty"`
}

The cluster network IP address of the node to be added.

type ClusterClusterInterfaces ¶

type ClusterClusterInterfaces struct {
	Links *InlineResponse201Links                       `json:"_links,omitempty"`
	Ip    *ApplicationSanAccessIscsiEndpointInterfaceIp `json:"ip,omitempty"`
	// The name of the interface.
	Name string `json:"name,omitempty"`
	// The UUID that uniquely identifies the interface.
	Uuid string `json:"uuid,omitempty"`
}

Network interface

type ClusterCollectionPerformanceMetricsGetOpts ¶

type ClusterCollectionPerformanceMetricsGetOpts struct {
	Timestamp       optional.String
	IopsTotal       optional.Int32
	IopsOther       optional.Int32
	IopsWrite       optional.Int32
	IopsRead        optional.Int32
	Duration        optional.String
	ThroughputTotal optional.Int32
	ThroughputOther optional.Int32
	ThroughputWrite optional.Int32
	ThroughputRead  optional.Int32
	LatencyTotal    optional.Int32
	LatencyOther    optional.Int32
	LatencyWrite    optional.Int32
	LatencyRead     optional.Int32
	Status          optional.String
	ReturnTimeout   optional.Int32
	Fields          optional.Interface
	MaxRecords      optional.Int32
	OrderBy         optional.Interface
	ReturnRecords   optional.Bool
	Interval        optional.String
}

type ClusterConfigurationBackup ¶

type ClusterConfigurationBackup struct {
	Password string `json:"password,omitempty"`
	// An external backup location for the cluster configuration. This is mostly required for single node clusters where node and cluster configuration backups cannot be copied to other nodes in the cluster.
	Url      string `json:"url,omitempty"`
	Username string `json:"username,omitempty"`
}

type ClusterController ¶

type ClusterController struct {
	// A list of Flash-Cache devices. Only returned when requested by name.
	FlashCache []ClusterControllerFlashCache `json:"flash_cache,omitempty"`
	// A list of frus in the node. Only returned when requested by name.
	Frus []ClusterControllerFrus `json:"frus,omitempty"`
	// Specifies whether the hardware is currently operating outside of its recommended temperature range. The hardware shuts down if the temperature exceeds critical thresholds.
	OverTemperature string `json:"over_temperature,omitempty"`
}

Controller information

type ClusterControllerFlashCache ¶

type ClusterControllerFlashCache struct {
	// Size in bytes
	Capacity         int32  `json:"capacity,omitempty"`
	FirmwareVersion  string `json:"firmware_version,omitempty"`
	HardwareRevision string `json:"hardware_revision,omitempty"`
	Model            string `json:"model,omitempty"`
	PartNumber       string `json:"part_number,omitempty"`
	SerialNumber     string `json:"serial_number,omitempty"`
	Slot             string `json:"slot,omitempty"`
	State            string `json:"state,omitempty"`
}

type ClusterControllerFrus ¶

type ClusterControllerFrus struct {
	Id    int32  `json:"id,omitempty"`
	State string `json:"state,omitempty"`
	Type_ string `json:"type,omitempty"`
}

type ClusterCreateOpts ¶

type ClusterCreateOpts struct {
	SingleNodeCluster optional.Bool
}

type ClusterGetOpts ¶

type ClusterGetOpts struct {
	Fields optional.Interface
}

type ClusterHa ¶

type ClusterHa struct {
	// Specifies whether giveback is automatically initiated when the node that owns the storage is ready.
	AutoGiveback bool `json:"auto_giveback,omitempty"`
	// Specifies whether or not storage failover is enabled.
	Enabled bool `json:"enabled,omitempty"`
	// The nodes in this node's High Availability (HA) group.
	Partners []InlineResponse201Node `json:"partners,omitempty"`
}

type ClusterLdap ¶

type ClusterLdap struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Specifies the default base DN for all searches.
	BaseDn string `json:"base_dn,omitempty"`
	// Specifies the default search scope for LDAP queries: * base - search the named entry only * onelevel - search all entries immediately below the DN * subtree - search the named DN entry and the entire subtree below the DN
	BaseScope string `json:"base_scope,omitempty"`
	// Specifies the user that binds to the LDAP servers.
	BindDn string `json:"bind_dn,omitempty"`
	// Specifies the bind password for the LDAP servers.
	BindPassword string `json:"bind_password,omitempty"`
	// The minimum bind authentication level. Possible values are: * anonymous - anonymous bind * simple - simple bind * sasl - Simple Authentication and Security Layer (SASL) bind
	MinBindLevel string `json:"min_bind_level,omitempty"`
	// The port used to connect to the LDAP Servers.
	Port int32 `json:"port,omitempty"`
	// The name of the schema template used by the SVM. * AD-IDMU - Active Directory Identity Management for UNIX * AD-SFU - Active Directory Services for UNIX * MS-AD-BIS - Active Directory Identity Management for UNIX * RFC-2307 - Schema based on RFC 2307 * Custom schema
	Schema  string   `json:"schema,omitempty"`
	Servers []string `json:"servers,omitempty"`
	// Specifies the level of security to be used for LDAP communications: * none - no signing or sealing * sign - sign LDAP traffic * seal - seal and sign LDAP traffic
	SessionSecurity string `json:"session_security,omitempty"`
	// Specifies whether or not to use Start TLS over LDAP connections.
	UseStartTls bool `json:"use_start_tls,omitempty"`
}

type ClusterLdapCreateOpts ¶

type ClusterLdapCreateOpts struct {
	Info optional.Interface
}

type ClusterLdapGetOpts ¶

type ClusterLdapGetOpts struct {
	Fields optional.Interface
}

type ClusterLdapModifyOpts ¶

type ClusterLdapModifyOpts struct {
	Info optional.Interface
}

type ClusterLicense ¶

type ClusterLicense struct {
	Keys []string `json:"keys,omitempty"`
}

License keys or NLF contents.

type ClusterManagementInterface ¶

type ClusterManagementInterface struct {
	Ip *ClusterManagementInterfaceIp `json:"ip,omitempty"`
}

The management interface of the cluster. The netmask and gateway for this interface are used for the node management interfaces provided in the node configuration.

type ClusterManagementInterface1 ¶

type ClusterManagementInterface1 struct {
	Ip *NodeSetupIp `json:"ip,omitempty"`
}

The management interface of the node to be added. The netmask is set based on the management interface of the cluster or the managment interfaces of other nodes.

type ClusterManagementInterfaceIp ¶

type ClusterManagementInterfaceIp struct {
	// IPv4 or IPv6 address
	Address string `json:"address,omitempty"`
	// The IPv4 or IPv6 address of the default router.
	Gateway string     `json:"gateway,omitempty"`
	Netmask *IpNetmask `json:"netmask,omitempty"`
}

Object to setup an interface along with its default router.

type ClusterMetric ¶

type ClusterMetric struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The duration over which this sample is calculated. The time durations are represented in the ISO-8601 standard format. Samples can be calculated over the following durations:
	Duration string                `json:"duration,omitempty"`
	Iops     *ClusterMetricIops    `json:"iops,omitempty"`
	Latency  *ClusterMetricLatency `json:"latency,omitempty"`
	// Any errors associated with the sample. For example, if the aggregation of data over multiple nodes fails then any of the partial errors might be returned, \"ok\" on success, or \"error\" on any internal uncategorized failure. Whenever a sample collection is missed but done at a later time, it is back filled to the previous 15 second timestamp and tagged with \"backfilled_data\". \"Inconsistent_ delta_time\" is encountered when the time between two collections is not the same for all nodes. Therefore, the aggregated value might be over or under inflated. \"Negative_delta\" is returned when an expected monotonically increasing value has decreased in value. \"Inconsistent_old_data\" is returned when one or more nodes does not have the latest data.
	Status     string                   `json:"status,omitempty"`
	Throughput *ClusterMetricThroughput `json:"throughput,omitempty"`
	// The timestamp of the performance data.
	Timestamp time.Time `json:"timestamp,omitempty"`
}

Performance numbers, such as IOPS latency and throughput.

type ClusterMetricIops ¶

type ClusterMetricIops struct {
	// Performance metric for other I/O operations. Other I/O operations can be metadata operations, such as directory lookups and so on.
	Other int32 `json:"other,omitempty"`
	// Performance metric for read I/O operations.
	Read int32 `json:"read,omitempty"`
	// Performance metric aggregated over all types of I/O operations.
	Total int32 `json:"total,omitempty"`
	// Peformance metric for write I/O operations.
	Write int32 `json:"write,omitempty"`
}

The rate of I/O operations observed at the storage object.

type ClusterMetricLatency ¶

type ClusterMetricLatency struct {
	// Performance metric for other I/O operations. Other I/O operations can be metadata operations, such as directory lookups and so on.
	Other int32 `json:"other,omitempty"`
	// Performance metric for read I/O operations.
	Read int32 `json:"read,omitempty"`
	// Performance metric aggregated over all types of I/O operations.
	Total int32 `json:"total,omitempty"`
	// Peformance metric for write I/O operations.
	Write int32 `json:"write,omitempty"`
}

The round trip latency in microseconds observed at the storage object.

type ClusterMetricThroughput ¶

type ClusterMetricThroughput struct {
	// Performance metric for other I/O operations. Other I/O operations can be metadata operations, such as directory lookups and so on.
	Other int32 `json:"other,omitempty"`
	// Performance metric for read I/O operations.
	Read int32 `json:"read,omitempty"`
	// Performance metric aggregated over all types of I/O operations.
	Total int32 `json:"total,omitempty"`
	// Peformance metric for write I/O operations.
	Write int32 `json:"write,omitempty"`
}

The rate of throughput bytes per second observed at the storage object.

type ClusterMetricsResponse ¶

type ClusterMetricsResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32           `json:"num_records,omitempty"`
	Records    []ClusterMetric `json:"records,omitempty"`
}

type ClusterNisCreateOpts ¶

type ClusterNisCreateOpts struct {
	Info optional.Interface
}

type ClusterNisGetOpts ¶

type ClusterNisGetOpts struct {
	Fields optional.Interface
}

type ClusterNisModifyOpts ¶

type ClusterNisModifyOpts struct {
	Info optional.Interface
}

type ClusterNisService ¶

type ClusterNisService struct {
	Links        *InlineResponse201Links `json:"_links,omitempty"`
	BoundServers []string                `json:"bound_servers,omitempty"`
	// The NIS domain to which this configuration belongs.
	Domain string `json:"domain,omitempty"`
	// A list of hostnames or IP addresses of NIS servers used by the NIS domain configuration.
	Servers []string `json:"servers,omitempty"`
}

type ClusterNisServiceResponse ¶

type ClusterNisServiceResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of NIS domain records.
	NumRecords int32               `json:"num_records,omitempty"`
	Records    []ClusterNisService `json:"records,omitempty"`
}

type ClusterNodes ¶

type ClusterNodes struct {
	Links             *InlineResponse201Links    `json:"_links,omitempty"`
	ClusterInterface  *ClusterClusterInterface   `json:"cluster_interface,omitempty"`
	ClusterInterfaces []ClusterClusterInterfaces `json:"cluster_interfaces,omitempty"`
	Controller        *ClusterController         `json:"controller,omitempty"`
	// Specifies the ISO-8601 format date and time on the node.
	Date                 time.Time                    `json:"date,omitempty"`
	Ha                   *ClusterHa                   `json:"ha,omitempty"`
	Location             string                       `json:"location,omitempty"`
	ManagementInterface  *ClusterManagementInterface1 `json:"management_interface,omitempty"`
	ManagementInterfaces []ClusterClusterInterfaces   `json:"management_interfaces,omitempty"`
	// Possible values: * <i>available</i> - If a node is available, this means it is detected on the internal cluster network and can be added to the cluster.  Nodes that have a membership of \"available\" are not returned when a GET request is called when the cluster exists. A query on the \"membership\" property for <i>available</i> must be provided to scan for nodes on the cluster network. Nodes that have a membership of \"available\" are returned automatically before a cluster is created. * <i>joining</i> - Joining nodes are in the process of being added to the cluster. The node may be progressing through the steps to become a member or might have failed. The job to add the node or create the cluster provides details on the current progress of the node. * <i>member</i> - Nodes that are members have successfully joined the cluster.
	Membership       string                   `json:"membership,omitempty"`
	Model            string                   `json:"model,omitempty"`
	Name             string                   `json:"name,omitempty"`
	SerialNumber     string                   `json:"serial_number,omitempty"`
	ServiceProcessor *ClusterServiceProcessor `json:"service_processor,omitempty"`
	// The total time, in seconds, that the node has been up.
	Uptime  int32           `json:"uptime,omitempty"`
	Uuid    string          `json:"uuid,omitempty"`
	Version *ClusterVersion `json:"version,omitempty"`
}

Complete node information

type ClusterPeer ¶

type ClusterPeer struct {
	Links          *ClusterPeerLinks          `json:"_links,omitempty"`
	Authentication *ClusterPeerAuthentication `json:"authentication,omitempty"`
	Encryption     *ClusterPeerEncryption     `json:"encryption,omitempty"`
	// The local SVMs allowed to peer with the peer cluster's SVMs. This list can be modified until the remote cluster accepts this cluster peering relationship.
	InitialAllowedSvms []AuditSvm               `json:"initial_allowed_svms,omitempty"`
	Ipspace            *ClusterPeerIpspace      `json:"ipspace,omitempty"`
	LocalNetwork       *ClusterPeerLocalNetwork `json:"local_network,omitempty"`
	// Optional name for the cluster peer relationship. By default it is the name of the remote cluster.
	Name   string             `json:"name,omitempty"`
	Remote *ClusterPeerRemote `json:"remote,omitempty"`
	Status *ClusterPeerStatus `json:"status,omitempty"`
	// UUID of the cluster peer relationship. For anonymous cluster peer offers, the UUID will change when the remote cluster accepts the relationship.
	Uuid string `json:"uuid,omitempty"`
}

type ClusterPeerAuthentication ¶

type ClusterPeerAuthentication struct {
	// The time when the passphrase will expire, in ISO 8601 duration format or date and time format.  The default is 1 hour.
	ExpiryTime string `json:"expiry_time,omitempty"`
	// Auto generate a passphrase when true.
	GeneratePassphrase bool   `json:"generate_passphrase,omitempty"`
	InUse              string `json:"in_use,omitempty"`
	// A password to authenticate the cluster peer relationship.
	Passphrase string `json:"passphrase,omitempty"`
	State      string `json:"state,omitempty"`
}

type ClusterPeerCreateOpts ¶

type ClusterPeerCreateOpts struct {
	Info optional.Interface
}

type ClusterPeerEncryption ¶

type ClusterPeerEncryption struct {
	Proposed string `json:"proposed,omitempty"`
	State    string `json:"state,omitempty"`
}

type ClusterPeerGetOpts ¶

type ClusterPeerGetOpts struct {
	Fields optional.Interface
}

type ClusterPeerIpspace ¶

type ClusterPeerIpspace struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// IPspace name
	Name string `json:"name,omitempty"`
	// IPspace UUID
	Uuid string `json:"uuid,omitempty"`
}

The IPspace of the local intercluster LIFs

type ClusterPeerLinks struct {
	Interfaces *Href `json:"interfaces,omitempty"`
	Self       *Href `json:"self,omitempty"`
}

type ClusterPeerLocalNetwork ¶

type ClusterPeerLocalNetwork struct {
	// Broadcast domain that is in use within the IPspace.
	BroadcastDomain string `json:"broadcast_domain,omitempty"`
	// The IPv4 or IPv6 address of the default router.
	Gateway    string                              `json:"gateway,omitempty"`
	Interfaces []ClusterPeerLocalNetworkInterfaces `json:"interfaces,omitempty"`
	// IPv4 mask or netmask length.
	Netmask string `json:"netmask,omitempty"`
}

Cluster peering requires an intercluster LIF on each local node. These can be optionally created by specifying a list of IP addresses corresponding to each node.

type ClusterPeerLocalNetworkInterfaces ¶

type ClusterPeerLocalNetworkInterfaces struct {
	// List of local intercluster IP addresses.
	IpAddress *IpAddress `json:"ip_address,omitempty"`
}

type ClusterPeerModifyOpts ¶

type ClusterPeerModifyOpts struct {
	Info optional.Interface
}

type ClusterPeerReference ¶

type ClusterPeerReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

type ClusterPeerRemote ¶

type ClusterPeerRemote struct {
	// The IPv4 addresses, IPv6 addresses, or hostnames of the peers.
	IpAddresses []IpAddress `json:"ip_addresses,omitempty"`
	// The name of the remote cluster.
	Name string `json:"name,omitempty"`
	// The serial number of the remote cluster.
	SerialNumber string `json:"serial_number,omitempty"`
}

type ClusterPeerResponse ¶

type ClusterPeerResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32         `json:"num_records,omitempty"`
	Records    []ClusterPeer `json:"records,omitempty"`
}

type ClusterPeerSetupResponse ¶

type ClusterPeerSetupResponse struct {
	Links          *InlineResponse201Links                 `json:"_links,omitempty"`
	Authentication *ClusterPeerSetupResponseAuthentication `json:"authentication,omitempty"`
	// A local intercluster IP address that a remote cluster can use, together with the passphrase, to create a cluster peer relationship with the local cluster.
	IpAddress *IpAddress `json:"ip_address,omitempty"`
	// Optional name for the cluster peer relationship. By default it is the name of the remote cluster, or a temporary name may be autogenerated for anonymous cluster peer offers.
	Name string `json:"name,omitempty"`
}

type ClusterPeerSetupResponseAuthentication ¶

type ClusterPeerSetupResponseAuthentication struct {
	// The date and time the passphrase will expire.  The default expiry time is one hour.
	ExpiryTime time.Time `json:"expiry_time,omitempty"`
	// A password to authenticate the cluster peer relationship.
	Passphrase string `json:"passphrase,omitempty"`
}

type ClusterPeerStatus ¶

type ClusterPeerStatus struct {
	State string `json:"state,omitempty"`
	// The last time the state was updated.
	UpdateTime time.Time `json:"update_time,omitempty"`
}

type ClusterReference ¶

type ClusterReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

type ClusterServiceProcessor ¶

type ClusterServiceProcessor struct {
	// Set to true to use DHCP to configure an IPv4 interface.
	DhcpEnabled bool `json:"dhcp_enabled,omitempty"`
	// The version of firmware installed.
	FirmwareVersion string                                `json:"firmware_version,omitempty"`
	Ipv4Interface   *ClusterManagementInterfaceIp         `json:"ipv4_interface,omitempty"`
	Ipv6Interface   *ClusterServiceProcessorIpv6Interface `json:"ipv6_interface,omitempty"`
	LinkStatus      string                                `json:"link_status,omitempty"`
	MacAddress      string                                `json:"mac_address,omitempty"`
	State           string                                `json:"state,omitempty"`
}

type ClusterServiceProcessorIpv6Interface ¶

type ClusterServiceProcessorIpv6Interface struct {
	// IPv4 or IPv6 address
	Address string `json:"address,omitempty"`
	// The IPv4 or IPv6 address of the default router.
	Gateway string     `json:"gateway,omitempty"`
	Netmask *IpNetmask `json:"netmask,omitempty"`
}

Object to setup an interface along with its default router.

type ClusterSpace ¶

type ClusterSpace struct {
	BlockStorage               *ClusterSpaceBlockStorage `json:"block_storage,omitempty"`
	CloudStorage               *ClusterSpaceCloudStorage `json:"cloud_storage,omitempty"`
	Efficiency                 *SpaceEfficiency          `json:"efficiency,omitempty"`
	EfficiencyWithoutSnapshots *SpaceEfficiency          `json:"efficiency_without_snapshots,omitempty"`
}

type ClusterSpaceBlockStorage ¶

type ClusterSpaceBlockStorage struct {
	Medias []ClusterSpaceBlockStorageMedias `json:"medias,omitempty"`
	// Total space across the cluster
	Size int32 `json:"size,omitempty"`
	// Space used (includes volume reserves)
	Used int32 `json:"used,omitempty"`
}

type ClusterSpaceBlockStorageMedias ¶

type ClusterSpaceBlockStorageMedias struct {
	// Available space
	Available int32 `json:"available,omitempty"`
	// Total space
	Size int32 `json:"size,omitempty"`
	// The type of media being used
	Type_ string `json:"type,omitempty"`
	// Used space
	Used int32 `json:"used,omitempty"`
}

type ClusterSpaceCloudStorage ¶

type ClusterSpaceCloudStorage struct {
	// Total space used in cloud.
	Used int32 `json:"used,omitempty"`
}

type ClusterStatistics ¶

type ClusterStatistics struct {
	IopsRaw    *ClusterStatisticsIopsRaw    `json:"iops_raw,omitempty"`
	LatencyRaw *ClusterStatisticsLatencyRaw `json:"latency_raw,omitempty"`
	// Any errors associated with the sample. For example, if the aggregation of data over multiple nodes fails then any of the partial errors might be returned, \"ok\" on success, or \"error\" on any internal uncategorized failure. Whenever a sample collection is missed but done at a later time, it is back filled to the previous 15 second timestamp and tagged with \"backfilled_data\". \"Inconsistent_delta_time\" is encountered when the time between two collections is not the same for all nodes. Therefore, the aggregated value might be over or under inflated. \"Negative_delta\" is returned when an expected monotonically increasing value has decreased in value. \"Inconsistent_old_data\" is returned when one or more nodes does not have the latest data.
	Status        string                          `json:"status,omitempty"`
	ThroughputRaw *ClusterStatisticsThroughputRaw `json:"throughput_raw,omitempty"`
	// The timestamp of the performance data.
	Timestamp time.Time `json:"timestamp,omitempty"`
}

These are raw performance numbers, such as IOPS latency and throughput. These numbers are aggregated across all nodes in the cluster and increase with the uptime of the cluster.

type ClusterStatisticsIopsRaw ¶

type ClusterStatisticsIopsRaw struct {
	// Performance metric for other I/O operations. Other I/O operations can be metadata operations, such as directory lookups and so on.
	Other int32 `json:"other,omitempty"`
	// Performance metric for read I/O operations.
	Read int32 `json:"read,omitempty"`
	// Performance metric aggregated over all types of I/O operations.
	Total int32 `json:"total,omitempty"`
	// Peformance metric for write I/O operations.
	Write int32 `json:"write,omitempty"`
}

The number of I/O operations observed at the storage object. This should be used along with delta time to calculate the rate of I/O operations per unit of time.

type ClusterStatisticsLatencyRaw ¶

type ClusterStatisticsLatencyRaw struct {
	// Performance metric for other I/O operations. Other I/O operations can be metadata operations, such as directory lookups and so on.
	Other int32 `json:"other,omitempty"`
	// Performance metric for read I/O operations.
	Read int32 `json:"read,omitempty"`
	// Performance metric aggregated over all types of I/O operations.
	Total int32 `json:"total,omitempty"`
	// Peformance metric for write I/O operations.
	Write int32 `json:"write,omitempty"`
}

The raw latency in microseconds observed at the storage object. This should be divided by the raw IOPS value to calculate the average latency per I/O operation.

type ClusterStatisticsThroughputRaw ¶

type ClusterStatisticsThroughputRaw struct {
	// Performance metric for other I/O operations. Other I/O operations can be metadata operations, such as directory lookups and so on.
	Other int32 `json:"other,omitempty"`
	// Performance metric for read I/O operations.
	Read int32 `json:"read,omitempty"`
	// Performance metric aggregated over all types of I/O operations.
	Total int32 `json:"total,omitempty"`
	// Peformance metric for write I/O operations.
	Write int32 `json:"write,omitempty"`
}

Throughput bytes observed at the storage object. This should be used along with delta time to calculate the rate of throughput bytes per unit of time.

type ClusterVersion ¶

type ClusterVersion struct {
	// The full cluster version string.
	Full string `json:"full,omitempty"`
	// The generation portion of the version.
	Generation int32 `json:"generation,omitempty"`
	// The major portion of the version.
	Major int32 `json:"major,omitempty"`
	// The minor portion of the version.
	Minor int32 `json:"minor,omitempty"`
}

This returns the cluster version information. When the cluster has more than one node, the cluster version is equivalent to the lowest of generation, major, and minor versions on all nodes.

type CollectionLinks struct {
	Next *Href `json:"next,omitempty"`
	Self *Href `json:"self,omitempty"`
}

type Configuration ¶

type Configuration struct {
	BasePath      string            `json:"basePath,omitempty"`
	Host          string            `json:"host,omitempty"`
	Scheme        string            `json:"scheme,omitempty"`
	DefaultHeader map[string]string `json:"defaultHeader,omitempty"`
	UserAgent     string            `json:"userAgent,omitempty"`
	HTTPClient    *http.Client
}

func NewConfiguration ¶

func NewConfiguration() *Configuration

func (*Configuration) AddDefaultHeader ¶

func (c *Configuration) AddDefaultHeader(key string, value string)

type ConfigurationBackup ¶

type ConfigurationBackup struct {
	Password string `json:"password,omitempty"`
	// An external backup location for the cluster configuration. This is mostly required for single node clusters where node and cluster configuration backups cannot be copied to other nodes in the cluster.
	Url      string `json:"url,omitempty"`
	Username string `json:"username,omitempty"`
}

type ConfigurationBackupGetOpts ¶

type ConfigurationBackupGetOpts struct {
	Fields optional.Interface
}

type ConfigurationBackupModifyOpts ¶

type ConfigurationBackupModifyOpts struct {
	Info optional.Interface
}

type Disk ¶

type Disk struct {
	// List of aggregates sharing this disk
	Aggregates []DiskAggregates `json:"aggregates,omitempty"`
	// Disk shelf bay
	Bay string `json:"bay,omitempty"`
	// Disk class
	Class string `json:"class,omitempty"`
	// Type of overlying disk container
	ContainerType   string                 `json:"container_type,omitempty"`
	DrNode          *DiskDrNode            `json:"dr_node,omitempty"`
	Drawer          *DiskDrawer            `json:"drawer,omitempty"`
	FirmwareVersion string                 `json:"firmware_version,omitempty"`
	HomeNode        *InlineResponse201Node `json:"home_node,omitempty"`
	Model           string                 `json:"model,omitempty"`
	// Cluster-wide disk name
	Name string                 `json:"name,omitempty"`
	Node *InlineResponse201Node `json:"node,omitempty"`
	// Pool to which disk is assigned
	Pool string `json:"pool,omitempty"`
	// Percentage of rated life used
	RatedLifeUsedPercent int32 `json:"rated_life_used_percent,omitempty"`
	// Revolutions per minute
	Rpm          int32           `json:"rpm,omitempty"`
	SerialNumber string          `json:"serial_number,omitempty"`
	Shelf        *ShelfReference `json:"shelf,omitempty"`
	// State
	State string `json:"state,omitempty"`
	// Disk interface type
	Type_ string `json:"type,omitempty"`
	// The unique identifier for a disk
	Uid        string `json:"uid,omitempty"`
	UsableSize int32  `json:"usable_size,omitempty"`
	Vendor     string `json:"vendor,omitempty"`
}

type DiskAggregates ¶

type DiskAggregates struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

Aggregate

type DiskCollectionGetOpts ¶

type DiskCollectionGetOpts struct {
	Rpm                  optional.Int32
	SerialNumber         optional.String
	ContainerType        optional.String
	Uid                  optional.String
	Vendor               optional.String
	FirmwareVersion      optional.String
	ShelfUid             optional.String
	Pool                 optional.String
	State                optional.String
	Class                optional.String
	AggregatesUuid       optional.String
	AggregatesName       optional.String
	Bay                  optional.String
	DrawerId             optional.Int32
	DrawerSlot           optional.Int32
	UsableSize           optional.Int32
	Model                optional.String
	Type_                optional.String
	NodeUuid             optional.String
	NodeName             optional.String
	HomeNodeUuid         optional.String
	HomeNodeName         optional.String
	DrNodeName           optional.String
	DrNodeUuid           optional.String
	Name                 optional.String
	RatedLifeUsedPercent optional.Int32
	Fields               optional.Interface
	MaxRecords           optional.Int32
	ReturnRecords        optional.Bool
	ReturnTimeout        optional.Int32
	OrderBy              optional.Interface
}

type DiskDrNode ¶

type DiskDrNode struct {
	Name string `json:"name,omitempty"`
	Uuid string `json:"uuid,omitempty"`
}

type DiskDrawer ¶

type DiskDrawer struct {
	Id   int32 `json:"id,omitempty"`
	Slot int32 `json:"slot,omitempty"`
}

type DiskGetOpts ¶

type DiskGetOpts struct {
	Fields optional.Interface
}

type DiskReference ¶

type DiskReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
}

Disk

type DiskResponse ¶

type DiskResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32  `json:"num_records,omitempty"`
	Records    []Disk `json:"records,omitempty"`
}

type Dns ¶

type Dns struct {
	Links   *InlineResponse201Links `json:"_links,omitempty"`
	Domains *DnsDomains             `json:"domains,omitempty"`
	Servers *NameServers            `json:"servers,omitempty"`
	Svm     *DnsSvm                 `json:"svm,omitempty"`
}

type DnsCollectionGetOpts ¶

type DnsCollectionGetOpts struct {
	Domains       optional.String
	SvmUuid       optional.String
	SvmName       optional.String
	Servers       optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type DnsCreateOpts ¶

type DnsCreateOpts struct {
	Info optional.Interface
}

type DnsDomains ¶

type DnsDomains struct {
}

A list of DNS domains. Domain names have the following requirements: * The name must contain only the following characters: A through Z, a through z, 0 through 9, \".\", \"-\" or \"_\". * The first character of each label, delimited by \".\", must be one of the following characters: A through Z or a through z or 0 through 9. * The last character of each label, delimited by \".\", must be one of the following characters: A through Z, a through z, or 0 through 9. * The top level domain must contain only the following characters: A through Z, a through z. * The system reserves the following names:\"all\", \"local\", and \"localhost\".

type DnsGetOpts ¶

type DnsGetOpts struct {
	Fields optional.Interface
}

type DnsModifyOpts ¶

type DnsModifyOpts struct {
	Info optional.Interface
}

type DnsResponse ¶

type DnsResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of DNS domain records
	NumRecords int32 `json:"num_records,omitempty"`
	Records    []Dns `json:"records,omitempty"`
}

type DnsSvm ¶

type DnsSvm struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the SVM.
	Name string `json:"name,omitempty"`
	// The unique identifier of the SVM.
	Uuid string `json:"uuid,omitempty"`
}

type DrNodeReference ¶

type DrNodeReference struct {
	Name string `json:"name,omitempty"`
	Uuid string `json:"uuid,omitempty"`
}

type EmsConfig ¶

type EmsConfig struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Mail from
	MailFrom string `json:"mail_from,omitempty"`
	// Mail server (SMTP)
	MailServer string `json:"mail_server,omitempty"`
	// Password for HTTP/HTTPS proxy
	ProxyPassword string `json:"proxy_password,omitempty"`
	// HTTP/HTTPS proxy URL
	ProxyUrl string `json:"proxy_url,omitempty"`
	// User name for HTTP/HTTPS proxy
	ProxyUser string `json:"proxy_user,omitempty"`
}

type EmsConfigGetOpts ¶

type EmsConfigGetOpts struct {
	Fields optional.Interface
}

type EmsConfigModifyOpts ¶

type EmsConfigModifyOpts struct {
	Info optional.Interface
}

type EmsDestination ¶

type EmsDestination struct {
	Links       *InlineResponse201Links    `json:"_links,omitempty"`
	Certificate *EmsDestinationCertificate `json:"certificate,omitempty"`
	// Event destination
	Destination string                  `json:"destination,omitempty"`
	Filters     []EmsDestinationFilters `json:"filters,omitempty"`
	// Destination name.  Valid in POST.
	Name string `json:"name,omitempty"`
	// Type of destination. Valid in POST.
	Type_ string `json:"type,omitempty"`
}

type EmsDestinationCertificate ¶

type EmsDestinationCertificate struct {
	// Client certificate issuing CA
	Ca string `json:"ca,omitempty"`
	// Client certificate serial number
	SerialNumber string `json:"serial_number,omitempty"`
}

Certificate information is valid for the \"rest_api\" type.

type EmsDestinationCollectionGetOpts ¶

type EmsDestinationCollectionGetOpts struct {
	FiltersName             optional.String
	Destination             optional.String
	Type_                   optional.String
	Name                    optional.String
	CertificateSerialNumber optional.String
	CertificateCa           optional.String
	Fields                  optional.Interface
	MaxRecords              optional.Int32
	ReturnTimeout           optional.Int32
	ReturnRecords           optional.Bool
	OrderBy                 optional.Interface
}

type EmsDestinationCreateOpts ¶

type EmsDestinationCreateOpts struct {
	Info optional.Interface
}

type EmsDestinationFilters ¶

type EmsDestinationFilters struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
}

type EmsDestinationGetOpts ¶

type EmsDestinationGetOpts struct {
	Fields optional.Interface
}

type EmsDestinationModifyOpts ¶

type EmsDestinationModifyOpts struct {
	Info optional.Interface
}

type EmsDestinationResponse ¶

type EmsDestinationResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32                           `json:"num_records,omitempty"`
	Records    []EmsDestinationResponseRecords `json:"records,omitempty"`
}

type EmsDestinationResponseRecords ¶

type EmsDestinationResponseRecords struct {
	Links       *InlineResponse201Links    `json:"_links,omitempty"`
	Certificate *EmsDestinationCertificate `json:"certificate,omitempty"`
	// Event destination
	Destination string                  `json:"destination,omitempty"`
	Filters     []EmsDestinationFilters `json:"filters,omitempty"`
	// Destination name.  Valid in POST.
	Name string `json:"name,omitempty"`
	// Type of destination. Valid in POST.
	Type_ string `json:"type,omitempty"`
}

type EmsEvent ¶

type EmsEvent struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Index of the event. Returned by default.
	Index int32 `json:"index,omitempty"`
	// A formatted text string populated with parameter details. Returned by default.
	LogMessage string                 `json:"log_message,omitempty"`
	Message    *EmsEventMessage       `json:"message,omitempty"`
	Node       *InlineResponse201Node `json:"node,omitempty"`
	// A list of parameters provided with the EMS event.
	Parameters []EmsEventParameters `json:"parameters,omitempty"`
	// Source
	Source string `json:"source,omitempty"`
	// Timestamp of the event. Returned by default.
	Time string `json:"time,omitempty"`
}

type EmsEventCollectionGetOpts ¶

type EmsEventCollectionGetOpts struct {
	NodeUuid        optional.String
	NodeName        optional.String
	LogMessage      optional.String
	MessageSeverity optional.String
	MessageName     optional.String
	ParametersValue optional.String
	ParametersName  optional.String
	Source          optional.String
	Time            optional.String
	Index           optional.Int32
	Fields          optional.Interface
	MaxRecords      optional.Int32
	ReturnRecords   optional.Bool
	ReturnTimeout   optional.Int32
	OrderBy         optional.Interface
}

type EmsEventMessage ¶

type EmsEventMessage struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Message name of the event. Returned by default.
	Name string `json:"name,omitempty"`
	// Severity of the event. Returned by default.
	Severity string `json:"severity,omitempty"`
}

type EmsEventParameter ¶

type EmsEventParameter struct {
	// Name of parameter
	Name string `json:"name,omitempty"`
	// Value of parameter
	Value string `json:"value,omitempty"`
}

type EmsEventParameters ¶

type EmsEventParameters struct {
	// Name of parameter
	Name string `json:"name,omitempty"`
	// Value of parameter
	Value string `json:"value,omitempty"`
}

type EmsEventResponse ¶

type EmsEventResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32                     `json:"num_records,omitempty"`
	Records    []EmsEventResponseRecords `json:"records,omitempty"`
}

type EmsEventResponseRecords ¶

type EmsEventResponseRecords struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Index of the event. Returned by default.
	Index int32 `json:"index,omitempty"`
	// A formatted text string populated with parameter details. Returned by default.
	LogMessage string                 `json:"log_message,omitempty"`
	Message    *EmsEventMessage       `json:"message,omitempty"`
	Node       *InlineResponse201Node `json:"node,omitempty"`
	// A list of parameters provided with the EMS event.
	Parameters []EmsEventParameters `json:"parameters,omitempty"`
	// Source
	Source string `json:"source,omitempty"`
	// Timestamp of the event. Returned by default.
	Time string `json:"time,omitempty"`
}

type EmsFilter ¶

type EmsFilter struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Filter name
	Name string `json:"name,omitempty"`
	// Array of event filter rules on which to match.
	Rules []EmsFilterRules `json:"rules,omitempty"`
}

type EmsFilterCollectionGetOpts ¶

type EmsFilterCollectionGetOpts struct {
	Name                              optional.String
	RulesIndex                        optional.Int32
	RulesMessageCriteriaSnmpTrapTypes optional.String
	RulesMessageCriteriaNamePattern   optional.String
	RulesMessageCriteriaSeverities    optional.String
	RulesType                         optional.String
	Fields                            optional.Interface
	MaxRecords                        optional.Int32
	ReturnRecords                     optional.Bool
	ReturnTimeout                     optional.Int32
	OrderBy                           optional.Interface
}

type EmsFilterCreateOpts ¶

type EmsFilterCreateOpts struct {
	Info optional.Interface
}

type EmsFilterGetOpts ¶

type EmsFilterGetOpts struct {
	Fields optional.Interface
}

type EmsFilterMessageCriteria ¶

type EmsFilterMessageCriteria struct {
	Links *EmsFilterMessageCriteriaLinks `json:"_links,omitempty"`
	// Message name filter on which to match. Supports wildcards. Defaults to * if not specified.
	NamePattern string `json:"name_pattern,omitempty"`
	// A comma-separated list of severities or a wildcard.
	Severities string `json:"severities,omitempty"`
	// A comma separated list of snmp_trap_types or a wildcard.
	SnmpTrapTypes string `json:"snmp_trap_types,omitempty"`
}

Matching message definitions for the filter. A property must be specified.

type EmsFilterMessageCriteriaLinks struct {
	Related *Href `json:"related,omitempty"`
}

type EmsFilterModifyOpts ¶

type EmsFilterModifyOpts struct {
	NewName optional.String
	Info    optional.Interface
}

type EmsFilterReference ¶

type EmsFilterReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
}

type EmsFilterResponse ¶

type EmsFilterResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32                      `json:"num_records,omitempty"`
	Records    []EmsFilterResponseRecords `json:"records,omitempty"`
}

type EmsFilterResponseRecords ¶

type EmsFilterResponseRecords struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Filter name
	Name string `json:"name,omitempty"`
	// Array of event filter rules on which to match.
	Rules []EmsFilterRules `json:"rules,omitempty"`
}

type EmsFilterRule ¶

type EmsFilterRule struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Rule index. Rules are evaluated in ascending order. If a rule's index order is not specified during creation, the rule is appended to the end of the list.
	Index           int32                     `json:"index,omitempty"`
	MessageCriteria *EmsFilterMessageCriteria `json:"message_criteria,omitempty"`
	// Rule type
	Type_ string `json:"type,omitempty"`
}

Rule for an event filter

type EmsFilterRuleCollectionGetOpts ¶

type EmsFilterRuleCollectionGetOpts struct {
	Index                        optional.Int32
	MessageCriteriaSnmpTrapTypes optional.String
	MessageCriteriaNamePattern   optional.String
	MessageCriteriaSeverities    optional.String
	Type_                        optional.String
	Fields                       optional.Interface
	MaxRecords                   optional.Int32
	ReturnRecords                optional.Bool
	ReturnTimeout                optional.Int32
	OrderBy                      optional.Interface
}

type EmsFilterRuleGetOpts ¶

type EmsFilterRuleGetOpts struct {
	Fields optional.Interface
}

type EmsFilterRuleModifyOpts ¶

type EmsFilterRuleModifyOpts struct {
	NewIndex optional.Int32
	Info     optional.Interface
}

type EmsFilterRuleResponse ¶

type EmsFilterRuleResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32            `json:"num_records,omitempty"`
	Records    []EmsFilterRules `json:"records,omitempty"`
}

type EmsFilterRules ¶

type EmsFilterRules struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Rule index. Rules are evaluated in ascending order. If a rule's index order is not specified during creation, the rule is appended to the end of the list.
	Index           int32                     `json:"index,omitempty"`
	MessageCriteria *EmsFilterMessageCriteria `json:"message_criteria,omitempty"`
	// Rule type
	Type_ string `json:"type,omitempty"`
}

Rule for an event filter

type EmsFiltersRulesCreateOpts ¶

type EmsFiltersRulesCreateOpts struct {
	Info optional.Interface
}

type EmsMessage ¶

type EmsMessage struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Corrective action
	CorrectiveAction string `json:"corrective_action,omitempty"`
	// Is deprecated?
	Deprecated bool `json:"deprecated,omitempty"`
	// Description
	Description string `json:"description,omitempty"`
	// Name of the event.
	Name string `json:"name,omitempty"`
	// Severity
	Severity string `json:"severity,omitempty"`
	// SNMP trap type
	SnmpTrapType string `json:"snmp_trap_type,omitempty"`
}

type EmsMessageCollectionGetOpts ¶

type EmsMessageCollectionGetOpts struct {
	Severity         optional.String
	Deprecated       optional.Bool
	Description      optional.String
	CorrectiveAction optional.String
	Name             optional.String
	SnmpTrapType     optional.String
	Fields           optional.Interface
	MaxRecords       optional.Int32
	ReturnRecords    optional.Bool
	ReturnTimeout    optional.Int32
	OrderBy          optional.Interface
}

type EmsMessageResponse ¶

type EmsMessageResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32                       `json:"num_records,omitempty"`
	Records    []EmsMessageResponseRecords `json:"records,omitempty"`
}

type EmsMessageResponseRecords ¶

type EmsMessageResponseRecords struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Corrective action
	CorrectiveAction string `json:"corrective_action,omitempty"`
	// Is deprecated?
	Deprecated bool `json:"deprecated,omitempty"`
	// Description
	Description string `json:"description,omitempty"`
	// Name of the event.
	Name string `json:"name,omitempty"`
	// Severity
	Severity string `json:"severity,omitempty"`
	// SNMP trap type
	SnmpTrapType string `json:"snmp_trap_type,omitempty"`
}

type ErrorArguments ¶

type ErrorArguments struct {
	// Argument code
	Code string `json:"code,omitempty"`
	// Message argument
	Message string `json:"message,omitempty"`
}

type ErrorResponse ¶

type ErrorResponse struct {
	Error_ *ModelError `json:"error,omitempty"`
}

type ErrorResponses ¶

type ErrorResponses struct {
	Errors []ModelError `json:"errors,omitempty"`
}

type ExportAuthenticationFlavor ¶

type ExportAuthenticationFlavor string

ExportAuthenticationFlavor : Represents an authentication flavor. The following flavors are supported: * any - All authentication flavors * anon - Special authentication flavor for anonymization * never - Special authentication flavor to represent access denial * krb5 - Kerberos V4 Authentication * krb5i - Kerberos V4 Integrity * krb5p - Kerberos V4 Privacy * ntlm - CIFS NTLM Authentication * unix - AUTH_SYS or AUTH_UNIX Authentication

const (
	ANY_ExportAuthenticationFlavor   ExportAuthenticationFlavor = "any"
	ANON_ExportAuthenticationFlavor  ExportAuthenticationFlavor = "anon"
	NEVER_ExportAuthenticationFlavor ExportAuthenticationFlavor = "never"
	KRB5_ExportAuthenticationFlavor  ExportAuthenticationFlavor = "krb5"
	KRB5I_ExportAuthenticationFlavor ExportAuthenticationFlavor = "krb5i"
	KRB5P_ExportAuthenticationFlavor ExportAuthenticationFlavor = "krb5p"
	NTLM_ExportAuthenticationFlavor  ExportAuthenticationFlavor = "ntlm"
	UNIX_ExportAuthenticationFlavor  ExportAuthenticationFlavor = "unix"
)

List of export_authentication_flavor

type ExportClient ¶

type ExportClient struct {
	// Client Match Hostname, IP Address, Netgroup, or Domain. You can specify the match as a string value in any of the           following formats: * As a hostname; for instance, host1 * As an IPv4 address; for instance, 10.1.12.24 * As an IPv6 address; for instance, fd20:8b1e:b255:4071::100:1 * As an IPv4 address with a subnet mask expressed as a number of bits; for instance, 10.1.12.0/24 * As an IPv6 address with a subnet mask expressed as a number of bits; for instance, fd20:8b1e:b255:4071::/64 * As an IPv4 address with a network mask; for instance, 10.1.16.0/255.255.255.0 * As a netgroup, with the netgroup name preceded by the @ character; for instance, @eng * As a domain name preceded by the . character; for instance, .example.com
	Match string `json:"match,omitempty"`
}

type ExportClientResponse ¶

type ExportClientResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of export rule client records
	NumRecords int32          `json:"num_records,omitempty"`
	Records    []ExportClient `json:"records,omitempty"`
}

type ExportPolicy ¶

type ExportPolicy struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Export Policy ID
	Id int32 `json:"id,omitempty"`
	// Export Policy Name
	Name string `json:"name,omitempty"`
	// Rules of the Export Policy.
	Rules []ExportRule `json:"rules,omitempty"`
	Svm   *AuditSvm    `json:"svm,omitempty"`
}

type ExportPolicyCollectionGetOpts ¶

type ExportPolicyCollectionGetOpts struct {
	RulesProtocols     optional.String
	RulesAnonymousUser optional.String
	RulesRwRule        optional.String
	RulesIndex         optional.Int32
	RulesSuperuser     optional.String
	RulesRoRule        optional.String
	RulesClientsMatch  optional.String
	Name               optional.String
	SvmUuid            optional.String
	SvmName            optional.String
	Id                 optional.Int32
	Fields             optional.Interface
	MaxRecords         optional.Int32
	ReturnRecords      optional.Bool
	ReturnTimeout      optional.Int32
	OrderBy            optional.Interface
}

type ExportPolicyCreateOpts ¶

type ExportPolicyCreateOpts struct {
	Info optional.Interface
}

type ExportPolicyGetOpts ¶

type ExportPolicyGetOpts struct {
	Fields optional.Interface
}

type ExportPolicyModifyOpts ¶

type ExportPolicyModifyOpts struct {
	Info optional.Interface
}

type ExportPolicyReference ¶

type ExportPolicyReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Id    int32                   `json:"id,omitempty"`
	Name  string                  `json:"name,omitempty"`
}

Export Policy

type ExportPolicyResponse ¶

type ExportPolicyResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// The number of export policy records
	NumRecords int32          `json:"num_records,omitempty"`
	Records    []ExportPolicy `json:"records,omitempty"`
}

type ExportRule ¶

type ExportRule struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// User ID To Which Anonymous Users Are Mapped.
	AnonymousUser string `json:"anonymous_user,omitempty"`
	// Array of client matches
	Clients []ExportClient `json:"clients,omitempty"`
	// Index of the rule within the export policy.
	Index     int32    `json:"index,omitempty"`
	Protocols []string `json:"protocols,omitempty"`
	// Authentication flavors that the read-only access rule governs
	RoRule []ExportAuthenticationFlavor `json:"ro_rule,omitempty"`
	// Authentication flavors that the read/write access rule governs
	RwRule []ExportAuthenticationFlavor `json:"rw_rule,omitempty"`
	// Authentication flavors that the superuser security type governs
	Superuser []ExportAuthenticationFlavor `json:"superuser,omitempty"`
}

type ExportRuleClientsCreateOpts ¶

type ExportRuleClientsCreateOpts struct {
	Info optional.Interface
}

type ExportRuleCollectionGetOpts ¶

type ExportRuleCollectionGetOpts struct {
	Protocols     optional.String
	AnonymousUser optional.String
	RwRule        optional.String
	Index         optional.Int32
	Superuser     optional.String
	RoRule        optional.String
	ClientsMatch  optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type ExportRuleCreateOpts ¶

type ExportRuleCreateOpts struct {
	Info optional.Interface
}

type ExportRuleGetOpts ¶

type ExportRuleGetOpts struct {
	Fields optional.Interface
}

type ExportRuleModifyOpts ¶

type ExportRuleModifyOpts struct {
	NewIndex optional.Int32
	Info     optional.Interface
}

type ExportRuleResponse ¶

type ExportRuleResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of Export Rule records
	NumRecords int32        `json:"num_records,omitempty"`
	Records    []ExportRule `json:"records,omitempty"`
}

type FailoverScope ¶

type FailoverScope string

FailoverScope : Defines where an interface may failover.

const (
	HOME_PORT_ONLY_FailoverScope        FailoverScope = "home_port_only"
	DEFAULT__FailoverScope              FailoverScope = "default"
	HOME_NODE_ONLY_FailoverScope        FailoverScope = "home_node_only"
	SFO_PARTNERS_ONLY_FailoverScope     FailoverScope = "sfo_partners_only"
	BROADCAST_DOMAIN_ONLY_FailoverScope FailoverScope = "broadcast_domain_only"
)

List of failover_scope

type FcInterface ¶

type FcInterface struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// A user configurable comment. Optional in POST; valid in PATCH. To clear a prior comment, set the property to an empty string in PATCH.
	Comment string `json:"comment,omitempty"`
	// The data protocol for which the FC interface is configured. Required in POST.
	DataProtocol string `json:"data_protocol,omitempty"`
	// The administrative state of the FC interface. The FC interface can be disabled to block all FC communication with the SVM through this interface. Optional in POST and PATCH; defaults to _true_ (enabled) in POST.
	Enabled  bool                 `json:"enabled,omitempty"`
	Location *FcInterfaceLocation `json:"location,omitempty"`
	// The name of the FC interface. Required in POST; optional in PATCH.
	Name string `json:"name,omitempty"`
	// The port address of the FC interface. Each FC port in an FC switched fabric has its own unique FC port address for routing purposes. The FC port address is assigned by a switch in the fabric when that port logs in to the fabric. This property refers to the address given by a switch to the FC interface when the SVM performs a port login (PLOGI).<br/> This is useful for obtaining statistics and diagnostic information from FC switches.<br/> This is a hexadecimal encoded numeric value.
	PortAddress string `json:"port_address,omitempty"`
	// The current operational state of the FC interface. The state is set to _down_ if the interface is not enabled.<br/> If the node hosting the port is down or unavailable, no state value is returned.
	State string    `json:"state,omitempty"`
	Svm   *AuditSvm `json:"svm,omitempty"`
	// The unique identifier of the FC interface. Required in the URL.
	Uuid string `json:"uuid,omitempty"`
	// The world wide node name (WWNN) of the FC interface SVM. The WWNN is generated by ONTAP when Fibre Channel Protocol or the NVMe service is created for the FC interface SVM.
	Wwnn string `json:"wwnn,omitempty"`
	// The world wide port name (WWPN) of the FC interface. The WWPN is generated by ONTAP when the FC interface is created.
	Wwpn string `json:"wwpn,omitempty"`
}

A Fibre Channel (FC) interface is the logical endpoint for FC network connections to an SVM. An FC interface provides FC access to storage within the interface SVM using either Fibre Channel Protocol or NVMe over Fibre Channel (NVMe/FC).<br/> An FC interface is created on an FC port which is located on a cluster node. The FC port must be specified to identify the location of the interface for a POST or PATCH operation that relocates an interface. You can identify the port by supplying either the node and port names or the port UUID.

type FcInterfaceCollectionGetOpts ¶

type FcInterfaceCollectionGetOpts struct {
	Uuid                 optional.String
	DataProtocol         optional.String
	Name                 optional.String
	SvmUuid              optional.String
	SvmName              optional.String
	Comment              optional.String
	Enabled              optional.Bool
	PortAddress          optional.String
	State                optional.String
	Wwpn                 optional.String
	LocationPortName     optional.String
	LocationPortNodeName optional.String
	LocationPortUuid     optional.String
	LocationNodeUuid     optional.String
	LocationNodeName     optional.String
	Wwnn                 optional.String
	Fields               optional.Interface
	MaxRecords           optional.Int32
	ReturnRecords        optional.Bool
	ReturnTimeout        optional.Int32
	OrderBy              optional.Interface
}

type FcInterfaceGetOpts ¶

type FcInterfaceGetOpts struct {
	Fields optional.Interface
}

type FcInterfaceLocation ¶

type FcInterfaceLocation struct {
	Node *InlineResponse201Node `json:"node,omitempty"`
	Port *FcPortReference       `json:"port,omitempty"`
}

The location of the FC interface is defined by the location of its port. An FC port is identified by its UUID, or a combination of its node name and port name. Either the UUID or the node name and port name are required for POST. To move an interface, supply either the UUID or the node name and port name in a PATCH.

type FcInterfaceReference ¶

type FcInterfaceReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the FC interface.
	Name string `json:"name,omitempty"`
	// The unique identifier of the FC interface.
	Uuid string `json:"uuid,omitempty"`
	// The WWPN of the FC interface.
	Wwpn string `json:"wwpn,omitempty"`
}

An FC interface.

type FcInterfaceResponse ¶

type FcInterfaceResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32         `json:"num_records,omitempty"`
	Records    []FcInterface `json:"records,omitempty"`
}

type FcLogin ¶

type FcLogin struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// The initiator groups in which the initiator is a member.
	Igroups    []FcLoginIgroups  `json:"igroups,omitempty"`
	Initiator  *FcLoginInitiator `json:"initiator,omitempty"`
	Interface_ *FcLoginInterface `json:"interface,omitempty"`
	// The data protocol used to perform the login.
	Protocol string    `json:"protocol,omitempty"`
	Svm      *AuditSvm `json:"svm,omitempty"`
}

A Fibre Channel (FC) login represents a connection formed by an FC initiator that has successfully logged in to ONTAP. This represents the FC login on which higher-level protocols such as Fibre Channel Protocol and NVMe over Fibre Channel (NVMe/FC) rely.

type FcLoginCollectionGetOpts ¶

type FcLoginCollectionGetOpts struct {
	Protocol             optional.String
	InitiatorPortAddress optional.String
	InitiatorWwpn        optional.String
	InitiatorWwnn        optional.String
	InitiatorAliases     optional.String
	IgroupsUuid          optional.String
	IgroupsName          optional.String
	SvmUuid              optional.String
	SvmName              optional.String
	InterfaceName        optional.String
	InterfaceWwpn        optional.String
	InterfaceUuid        optional.String
	Fields               optional.Interface
	MaxRecords           optional.Int32
	ReturnRecords        optional.Bool
	ReturnTimeout        optional.Int32
	OrderBy              optional.Interface
}

type FcLoginGetOpts ¶

type FcLoginGetOpts struct {
	Fields optional.Interface
}

type FcLoginIgroups ¶

type FcLoginIgroups struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the initiator group.
	Name string `json:"name,omitempty"`
	// The unique identifier of the initiator group.
	Uuid string `json:"uuid,omitempty"`
}

type FcLoginInitiator ¶

type FcLoginInitiator struct {
	// The logged in initiator world wide port name (WWPN) aliases.
	Aliases []string `json:"aliases,omitempty"`
	// The port address of the initiator's FC port.<br/> Each port in an FC switched fabric has its own unique port address for routing purposes. The port address is assigned by a switch in the fabric when that port logs in to the fabric. This property refers to the address given by a switch to the initiator port.<br/> This is useful for obtaining statistics and diagnostic information from FC switches.<br/> This is a hexadecimal encoded numeric value.
	PortAddress string `json:"port_address,omitempty"`
	// The logged in initiator world wide node name (WWNN).
	Wwnn string `json:"wwnn,omitempty"`
	// The logged in initiator WWPN.
	Wwpn string `json:"wwpn,omitempty"`
}

Information about the logged in FC initiator.

type FcLoginInterface ¶

type FcLoginInterface struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the FC interface.
	Name string `json:"name,omitempty"`
	// The unique identifier of the FC interface.
	Uuid string `json:"uuid,omitempty"`
	// The WWPN of the FC interface.
	Wwpn string `json:"wwpn,omitempty"`
}

An FC interface.

type FcLoginResponse ¶

type FcLoginResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32     `json:"num_records,omitempty"`
	Records    []FcLogin `json:"records,omitempty"`
}

type FcPort ¶

type FcPort struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// A description of the FC port.
	Description string `json:"description,omitempty"`
	// The administrative state of the FC port. If this property is set to _false_, all FC connectivity to FC interfaces are blocked. Optional in PATCH.
	Enabled bool          `json:"enabled,omitempty"`
	Fabric  *FcPortFabric `json:"fabric,omitempty"`
	// The FC port name.
	Name string                 `json:"name,omitempty"`
	Node *InlineResponse201Node `json:"node,omitempty"`
	// The physical network protocol of the FC port.
	PhysicalProtocol string       `json:"physical_protocol,omitempty"`
	Speed            *FcPortSpeed `json:"speed,omitempty"`
	// The operational state of the FC port. - startup - The port is booting up. - link_not_connected - The port has finished initialization, but a link with the fabric is not established. - online - The port is initialized and a link with the fabric has been established. - link_disconnected - The link was present at one point on this port but is currently not established. - offlined_by_user - The port is administratively disabled. - offlined_by_system - The port is set to offline by the system. This happens when the port encounters too many errors. - node_offline - The state information for the port cannot be retrieved. The node is offline or inaccessible.
	State string `json:"state,omitempty"`
	// The network protocols supported by the FC port.
	SupportedProtocols []string           `json:"supported_protocols,omitempty"`
	Transceiver        *FcPortTransceiver `json:"transceiver,omitempty"`
	// The unique identifier of the FC port.
	Uuid string `json:"uuid,omitempty"`
	// The base world wide node name (WWNN) for the FC port.
	Wwnn string `json:"wwnn,omitempty"`
	// The base world wide port name (WWPN) for the FC port.
	Wwpn string `json:"wwpn,omitempty"`
}

A Fibre Channel (FC) port is the physical port of an FC adapter on an ONTAP cluster node that can be connected to an FC network to provide FC network connectivity. An FC port defines the location of an FC interface within the ONTAP cluster.

type FcPortCollectionGetOpts ¶

type FcPortCollectionGetOpts struct {
	Name                    optional.String
	Enabled                 optional.Bool
	TransceiverManufacturer optional.String
	TransceiverCapabilities optional.Int32
	TransceiverFormFactor   optional.String
	TransceiverPartNumber   optional.String
	NodeUuid                optional.String
	NodeName                optional.String
	Description             optional.String
	Uuid                    optional.String
	SupportedProtocols      optional.String
	Wwpn                    optional.String
	Wwnn                    optional.String
	PhysicalProtocol        optional.String
	FabricConnected         optional.Bool
	FabricPortAddress       optional.String
	FabricConnectedSpeed    optional.Int32
	FabricSwitchPort        optional.String
	FabricName              optional.String
	State                   optional.String
	SpeedConfigured         optional.String
	SpeedMaximum            optional.String
	Fields                  optional.Interface
	MaxRecords              optional.Int32
	ReturnRecords           optional.Bool
	ReturnTimeout           optional.Int32
	OrderBy                 optional.Interface
}

type FcPortFabric ¶

type FcPortFabric struct {
	// Reports if the physical port has established a connection with the FC fabric.
	Connected bool `json:"connected,omitempty"`
	// The negotiated data rate between the target FC port and the fabric in gigabits per second.
	ConnectedSpeed int32 `json:"connected_speed,omitempty"`
	// The name of the fabric to which the port is connected. This is only available when the FC port is connected to a fabric.<br/> There is an added cost to retrieving this property's value. It is not populated for either a collection GET or an instance GET unless it is explicitly requested using the `fields` query parameter. See [`DOC Requesting specific fields`](#docs-docs-Requesting-specific-fields) to learn more.
	Name string `json:"name,omitempty"`
	// The FC port address of the host bus adapter (HBA) physical port.<br/> Each FC port in an FC switched fabric has its own unique FC port address for routing purposes. The FC port address is assigned by a switch in the fabric when that port logs in to the fabric. This property refers to the FC port address given to the physical host bus adapter (HBA) port when the port performs a fabric login (FLOGI).<br/> This is useful for obtaining statistics and diagnostic information from FC switches.<br/> This is a six-digit hexadecimal encoded numeric value.
	PortAddress string `json:"port_address,omitempty"`
	// The switch port to which the FC port is connected.
	SwitchPort string `json:"switch_port,omitempty"`
}

Properties of the fabric to which the FC port is attached.

type FcPortGetOpts ¶

type FcPortGetOpts struct {
	Fields optional.Interface
}

type FcPortReference ¶

type FcPortReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the FC port.
	Name string               `json:"name,omitempty"`
	Node *FcPortReferenceNode `json:"node,omitempty"`
	// The unique identifier of the FC port.
	Uuid string `json:"uuid,omitempty"`
}

An FC port is the physical port of an FC adapter on a cluster node that can be connected to an FC network.

type FcPortReferenceNode ¶

type FcPortReferenceNode struct {
	// The name of the node on which the FC port is located.
	Name string `json:"name,omitempty"`
}

The node on which the FC port is located.

type FcPortResponse ¶

type FcPortResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32    `json:"num_records,omitempty"`
	Records    []FcPort `json:"records,omitempty"`
}

type FcPortSpeed ¶

type FcPortSpeed struct {
	// The configured speed of the FC port in gigabits per second.
	Configured string `json:"configured,omitempty"`
	// The maximum speed supported by the FC port in gigabits per second.
	Maximum string `json:"maximum,omitempty"`
}

The physical device speed related properties of the FC port.

type FcPortTransceiver ¶

type FcPortTransceiver struct {
	// The speeds of which the transceiver is capable in gigabits per second.
	Capabilities []int32 `json:"capabilities,omitempty"`
	// The form factor of the transceiver. Possible values are: - _sfp_ - Small Form Factor - Pluggable - _sff_ - Small Form Factor - _unk_ - Unknown
	FormFactor string `json:"form-factor,omitempty"`
	// The manufacturer of the transceiver.
	Manufacturer string `json:"manufacturer,omitempty"`
	// The part number of the transceiver.
	PartNumber string `json:"part_number,omitempty"`
}

Properties of the transceiver connected to the FC port.

type FcpService ¶

type FcpService struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The administrative state of the FC Protocol service. The FC Protocol service can be disabled to block all FC Protocol connectivity to the SVM.<br/> This is optional in POST and PATCH. The default setting is _true_ (enabled) in POST.
	Enabled bool              `json:"enabled,omitempty"`
	Svm     *AuditSvm         `json:"svm,omitempty"`
	Target  *FcpServiceTarget `json:"target,omitempty"`
}

A Fibre Channel (FC) Protocol service defines the properties of the FC Protocol target for an SVM. There can be at most one FC Protocol service for an SVM. An SVM's FC Protocol service must be created before FC Protocol initiators can login to the SVM.<br/> A FC Protocol service is identified by the UUID of its SVM.

type FcpServiceCollectionGetOpts ¶

type FcpServiceCollectionGetOpts struct {
	SvmUuid       optional.String
	SvmName       optional.String
	TargetName    optional.String
	Enabled       optional.Bool
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type FcpServiceGetOpts ¶

type FcpServiceGetOpts struct {
	Fields optional.Interface
}

type FcpServiceResponse ¶

type FcpServiceResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32        `json:"num_records,omitempty"`
	Records    []FcpService `json:"records,omitempty"`
}

type FcpServiceTarget ¶

type FcpServiceTarget struct {
	// The target name of the FC Protocol service. This is generated for the SVM during POST.<br/> The FC Protocol target name is a world wide node name (WWNN).<br/> If required, the target name can be modified using the ONTAP command line.
	Name string `json:"name,omitempty"`
}

type FileClone ¶

type FileClone struct {
	// Mark file clone for auto deletion.
	Autodelete bool `json:"autodelete,omitempty"`
	// Relative path of the clone/destination file in the volume.
	DestinationPath string `json:"destination_path,omitempty"`
	// List of block ranges for sub-file cloning in the format \"source-file-block-number:destination-file-block-number:block-count\"
	Range_ []string `json:"range,omitempty"`
	// Relative path of the source file in the volume.
	SourcePath string           `json:"source_path,omitempty"`
	Volume     *CifsShareVolume `json:"volume,omitempty"`
}

File clone

type FileCloneCreateOpts ¶

type FileCloneCreateOpts struct {
	Info optional.Interface
}

type Flexcache ¶

type Flexcache struct {
	Links      *InlineResponse201Links `json:"_links,omitempty"`
	Aggregates []DiskAggregates        `json:"aggregates,omitempty"`
	// Number of FlexCache constituents per aggregate when the 'aggregates' field is mentioned.
	ConstituentsPerAggregate int32 `json:"constituents_per_aggregate,omitempty"`
	// FlexCache name
	Name    string                  `json:"name,omitempty"`
	Origins []FlexcacheRelationship `json:"origins,omitempty"`
	// The fully-qualified path in the owning SVM's namespace at which the FlexCache is mounted. The path is case insensitive and must be unique within a SVM's namespace. Path must begin with '/' and must not end with '/'. Only one FlexCache be mounted at any given junction path.
	Path string `json:"path,omitempty"`
	// Physical size of the FlexCache. The recommended size for a FlexCache is 10% of the origin volume. The minimum FlexCache constituent size is 1GB.
	Size int32         `json:"size,omitempty"`
	Svm  *FlexcacheSvm `json:"svm,omitempty"`
	// FlexCache UUID. Unique identifier for the FlexCache.
	Uuid string `json:"uuid,omitempty"`
}

Defines the cache endpoint of FlexCache.

type FlexcacheCollectionGetOpts ¶

type FlexcacheCollectionGetOpts struct {
	SvmUuid                  optional.String
	SvmName                  optional.String
	Name                     optional.String
	Size                     optional.Int32
	Path                     optional.String
	Uuid                     optional.String
	ConstituentsPerAggregate optional.Int32
	AggregatesUuid           optional.String
	AggregatesName           optional.String
	OriginsIpAddress         optional.String
	OriginsCreateTime        optional.String
	OriginsSvmUuid           optional.String
	OriginsSvmName           optional.String
	OriginsClusterUuid       optional.String
	OriginsClusterName       optional.String
	OriginsVolumeName        optional.String
	OriginsVolumeUuid        optional.String
	OriginsState             optional.String
	OriginsSize              optional.Int32
	ReturnTimeout            optional.Int32
	Fields                   optional.Interface
	MaxRecords               optional.Int32
	OrderBy                  optional.Interface
	ReturnRecords            optional.Bool
}

type FlexcacheGetOpts ¶

type FlexcacheGetOpts struct {
	Fields optional.Interface
}

type FlexcacheOrigin ¶

type FlexcacheOrigin struct {
	Links      *InlineResponse201Links `json:"_links,omitempty"`
	Flexcaches []FlexcacheRelationship `json:"flexcaches,omitempty"`
	// Origin volume name
	Name string              `json:"name,omitempty"`
	Svm  *FlexcacheOriginSvm `json:"svm,omitempty"`
	// Origin volume UUID. Unique identifier for origin of FlexCache.
	Uuid string `json:"uuid,omitempty"`
}

Defines the origin endpoint of FlexCache.

type FlexcacheOriginCollectionGetOpts ¶

type FlexcacheOriginCollectionGetOpts struct {
	SvmUuid               optional.String
	SvmName               optional.String
	Name                  optional.String
	Uuid                  optional.String
	FlexcachesIpAddress   optional.String
	FlexcachesCreateTime  optional.String
	FlexcachesSvmUuid     optional.String
	FlexcachesSvmName     optional.String
	FlexcachesClusterUuid optional.String
	FlexcachesClusterName optional.String
	FlexcachesVolumeName  optional.String
	FlexcachesVolumeUuid  optional.String
	FlexcachesState       optional.String
	FlexcachesSize        optional.Int32
	ReturnTimeout         optional.Int32
	Fields                optional.Interface
	MaxRecords            optional.Int32
	OrderBy               optional.Interface
	ReturnRecords         optional.Bool
}

type FlexcacheOriginGetOpts ¶

type FlexcacheOriginGetOpts struct {
	Fields optional.Interface
}

type FlexcacheOriginResponse ¶

type FlexcacheOriginResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32             `json:"num_records,omitempty"`
	Records    []FlexcacheOrigin `json:"records,omitempty"`
}

type FlexcacheOriginSvm ¶

type FlexcacheOriginSvm struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the SVM.
	Name string `json:"name,omitempty"`
	// The unique identifier of the SVM.
	Uuid string `json:"uuid,omitempty"`
}

Origin volume SVM

type FlexcacheRelationship ¶

type FlexcacheRelationship struct {
	Cluster *FlexcacheRelationshipCluster `json:"cluster,omitempty"`
	// Creation time of the relationship.
	CreateTime time.Time `json:"create_time,omitempty"`
	// Cluster managerment IP of the remote cluster.
	IpAddress string `json:"ip_address,omitempty"`
	// Size of the remote volume.
	Size int32 `json:"size,omitempty"`
	// Volume state
	State  string                    `json:"state,omitempty"`
	Svm    *FlexcacheRelationshipSvm `json:"svm,omitempty"`
	Volume *CifsShareVolume          `json:"volume,omitempty"`
}

type FlexcacheRelationshipCluster ¶

type FlexcacheRelationshipCluster struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

type FlexcacheRelationshipSvm ¶

type FlexcacheRelationshipSvm struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the SVM.
	Name string `json:"name,omitempty"`
	// The unique identifier of the SVM.
	Uuid string `json:"uuid,omitempty"`
}

SVM, applies only to SVM-scoped objects.

type FlexcacheResponse ¶

type FlexcacheResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32       `json:"num_records,omitempty"`
	Records    []Flexcache `json:"records,omitempty"`
}

type FlexcacheSvm ¶

type FlexcacheSvm struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the SVM.
	Name string `json:"name,omitempty"`
	// The unique identifier of the SVM.
	Uuid string `json:"uuid,omitempty"`
}

FlexCache SVM

type Fpolicy ¶

type Fpolicy struct {
	Links    *InlineResponse201Links `json:"_links,omitempty"`
	Engines  []FpolicyEngine         `json:"engines,omitempty"`
	Events   []FpolicyEvent          `json:"events,omitempty"`
	Policies []FpolicyPolicy         `json:"policies,omitempty"`
	Svm      *AuditSvm               `json:"svm,omitempty"`
}

FPolicy is an infrastructure component of ONTAP that enables partner applications connected to your storage systems to monitor and set file access permissions. Every time a client accesses a file from a storage system, based on the configuration of FPolicy, the partner application is notified about file access.

type FpolicyCollectionGetOpts ¶

type FpolicyCollectionGetOpts struct {
	EnginesSecondaryServers                      optional.String
	EnginesName                                  optional.String
	EnginesType                                  optional.String
	EnginesPrimaryServers                        optional.String
	EnginesPort                                  optional.Int32
	PoliciesEnabled                              optional.Bool
	PoliciesScopeExcludeExportPolicies           optional.String
	PoliciesScopeExcludeShares                   optional.String
	PoliciesScopeIncludeExtension                optional.String
	PoliciesScopeExcludeExtension                optional.String
	PoliciesScopeIncludeShares                   optional.String
	PoliciesScopeIncludeVolumes                  optional.String
	PoliciesScopeIncludeExportPolicies           optional.String
	PoliciesScopeExcludeVolumes                  optional.String
	PoliciesPriority                             optional.Int32
	PoliciesEngineName                           optional.String
	PoliciesEventsName                           optional.String
	PoliciesName                                 optional.String
	PoliciesMandatory                            optional.Bool
	SvmUuid                                      optional.String
	SvmName                                      optional.String
	EventsVolumeMonitoring                       optional.Bool
	EventsProtocol                               optional.String
	EventsFiltersMonitorAds                      optional.Bool
	EventsFiltersWriteWithSizeChange             optional.Bool
	EventsFiltersFirstRead                       optional.Bool
	EventsFiltersSetattrWithModifyTimeChange     optional.Bool
	EventsFiltersOfflineBit                      optional.Bool
	EventsFiltersOpenWithWriteIntent             optional.Bool
	EventsFiltersFirstWrite                      optional.Bool
	EventsFiltersSetattrWithGroupChange          optional.Bool
	EventsFiltersSetattrWithAccessTimeChange     optional.Bool
	EventsFiltersSetattrWithModeChange           optional.Bool
	EventsFiltersExcludeDirectory                optional.Bool
	EventsFiltersSetattrWithOwnerChange          optional.Bool
	EventsFiltersSetattrWithDaclChange           optional.Bool
	EventsFiltersCloseWithModification           optional.Bool
	EventsFiltersOpenWithDeleteIntent            optional.Bool
	EventsFiltersSetattrWithSaclChange           optional.Bool
	EventsFiltersSetattrWithAllocationSizeChange optional.Bool
	EventsFiltersCloseWithoutModification        optional.Bool
	EventsFiltersSetattrWithSizeChange           optional.Bool
	EventsFiltersCloseWithRead                   optional.Bool
	EventsFiltersSetattrWithCreationTimeChange   optional.Bool
	EventsName                                   optional.String
	EventsFileOperationsLookup                   optional.Bool
	EventsFileOperationsDeleteDir                optional.Bool
	EventsFileOperationsCreate                   optional.Bool
	EventsFileOperationsRead                     optional.Bool
	EventsFileOperationsRenameDir                optional.Bool
	EventsFileOperationsWrite                    optional.Bool
	EventsFileOperationsGetattr                  optional.Bool
	EventsFileOperationsSymlink                  optional.Bool
	EventsFileOperationsLink                     optional.Bool
	EventsFileOperationsRename                   optional.Bool
	EventsFileOperationsSetattr                  optional.Bool
	EventsFileOperationsCreateDir                optional.Bool
	EventsFileOperationsOpen                     optional.Bool
	EventsFileOperationsDelete                   optional.Bool
	EventsFileOperationsClose                    optional.Bool
	Fields                                       optional.Interface
	MaxRecords                                   optional.Int32
	ReturnRecords                                optional.Bool
	ReturnTimeout                                optional.Int32
	OrderBy                                      optional.Interface
}

type FpolicyCreateOpts ¶

type FpolicyCreateOpts struct {
	Info optional.Interface
}

type FpolicyEngine ¶

type FpolicyEngine struct {
	// Specifies the name to assign to the external server configuration.
	Name string `json:"name,omitempty"`
	// Port number of the FPolicy server application.
	Port             int32    `json:"port,omitempty"`
	PrimaryServers   []string `json:"primary_servers,omitempty"`
	SecondaryServers []string `json:"secondary_servers,omitempty"`
	// The notification mode determines what ONTAP does after sending notifications to FPolicy servers.   The possible values are:     * synchronous  - After sending a notification, wait for a response from the FPolicy server.     * asynchronous - After sending a notification, file request processing continues.
	Type_ string `json:"type,omitempty"`
}

The engine defines how ONTAP makes and manages connections to external FPolicy servers.

type FpolicyEngineCollectionGetOpts ¶

type FpolicyEngineCollectionGetOpts struct {
	SecondaryServers optional.String
	Name             optional.String
	Type_            optional.String
	PrimaryServers   optional.String
	Port             optional.Int32
	Fields           optional.Interface
	MaxRecords       optional.Int32
	ReturnRecords    optional.Bool
	ReturnTimeout    optional.Int32
	OrderBy          optional.Interface
}

type FpolicyEngineCreateOpts ¶

type FpolicyEngineCreateOpts struct {
	Info optional.Interface
}

type FpolicyEngineGetOpts ¶

type FpolicyEngineGetOpts struct {
	Fields optional.Interface
}

type FpolicyEngineModifyOpts ¶

type FpolicyEngineModifyOpts struct {
	Info optional.Interface
}

type FpolicyEngineReference ¶

type FpolicyEngineReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the FPolicy external engine.
	Name string `json:"name,omitempty"`
}

FPolicy external engine

type FpolicyEngineResponse ¶

type FpolicyEngineResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32           `json:"num_records,omitempty"`
	Records    []FpolicyEngine `json:"records,omitempty"`
}

type FpolicyEvent ¶

type FpolicyEvent struct {
	FileOperations *FpolicyEventFileOperations `json:"file_operations,omitempty"`
	Filters        *FpolicyEventFilters        `json:"filters,omitempty"`
	// Specifies the name of the FPolicy event.
	Name string `json:"name,omitempty"`
	// Protocol for which event is created. If you specify protocol, then you must also specify a valid value for the file operation parameters.   The value of this parameter must be one of the following:     * cifs  - for the CIFS protocol.     * nfsv3 - for the NFSv3 protocol.     * nfsv4 - for the NFSv4 protocol.
	Protocol string `json:"protocol,omitempty"`
	// Specifies whether volume operation monitoring is required.
	VolumeMonitoring bool `json:"volume_monitoring,omitempty"`
}

The information that a FPolicy process needs to determine what file access operations to monitor and for which of the monitored events notifications should be sent to the external FPolicy server.

type FpolicyEventCollectionGetOpts ¶

type FpolicyEventCollectionGetOpts struct {
	VolumeMonitoring                       optional.Bool
	Protocol                               optional.String
	FiltersMonitorAds                      optional.Bool
	FiltersWriteWithSizeChange             optional.Bool
	FiltersFirstRead                       optional.Bool
	FiltersSetattrWithModifyTimeChange     optional.Bool
	FiltersOfflineBit                      optional.Bool
	FiltersOpenWithWriteIntent             optional.Bool
	FiltersFirstWrite                      optional.Bool
	FiltersSetattrWithGroupChange          optional.Bool
	FiltersSetattrWithAccessTimeChange     optional.Bool
	FiltersSetattrWithModeChange           optional.Bool
	FiltersExcludeDirectory                optional.Bool
	FiltersSetattrWithOwnerChange          optional.Bool
	FiltersSetattrWithDaclChange           optional.Bool
	FiltersCloseWithModification           optional.Bool
	FiltersOpenWithDeleteIntent            optional.Bool
	FiltersSetattrWithSaclChange           optional.Bool
	FiltersSetattrWithAllocationSizeChange optional.Bool
	FiltersCloseWithoutModification        optional.Bool
	FiltersSetattrWithSizeChange           optional.Bool
	FiltersCloseWithRead                   optional.Bool
	FiltersSetattrWithCreationTimeChange   optional.Bool
	Name                                   optional.String
	FileOperationsLookup                   optional.Bool
	FileOperationsDeleteDir                optional.Bool
	FileOperationsCreate                   optional.Bool
	FileOperationsRead                     optional.Bool
	FileOperationsRenameDir                optional.Bool
	FileOperationsWrite                    optional.Bool
	FileOperationsGetattr                  optional.Bool
	FileOperationsSymlink                  optional.Bool
	FileOperationsLink                     optional.Bool
	FileOperationsRename                   optional.Bool
	FileOperationsSetattr                  optional.Bool
	FileOperationsCreateDir                optional.Bool
	FileOperationsOpen                     optional.Bool
	FileOperationsDelete                   optional.Bool
	FileOperationsClose                    optional.Bool
	Fields                                 optional.Interface
	MaxRecords                             optional.Int32
	ReturnRecords                          optional.Bool
	ReturnTimeout                          optional.Int32
	OrderBy                                optional.Interface
}

type FpolicyEventCreateOpts ¶

type FpolicyEventCreateOpts struct {
	Info optional.Interface
}

type FpolicyEventFileOperations ¶

type FpolicyEventFileOperations struct {
	// File close operations
	Close bool `json:"close,omitempty"`
	// File create operations
	Create bool `json:"create,omitempty"`
	// Directory create operations
	CreateDir bool `json:"create_dir,omitempty"`
	// File delete operations
	Delete bool `json:"delete,omitempty"`
	// Directory delete operations
	DeleteDir bool `json:"delete_dir,omitempty"`
	// Get attribute operations
	Getattr bool `json:"getattr,omitempty"`
	// Link operations
	Link bool `json:"link,omitempty"`
	// Lookup operations
	Lookup bool `json:"lookup,omitempty"`
	// File open operations
	Open bool `json:"open,omitempty"`
	// File read operations
	Read bool `json:"read,omitempty"`
	// File rename operations
	Rename bool `json:"rename,omitempty"`
	// Directory rename operations
	RenameDir bool `json:"rename_dir,omitempty"`
	// Set attribute operations
	Setattr bool `json:"setattr,omitempty"`
	// Symbolic link operations
	Symlink bool `json:"symlink,omitempty"`
	// File write operations
	Write bool `json:"write,omitempty"`
}

Specifies the file operations for the FPolicy event. You must specify a valid protocol in the protocol parameter. The event will check the operations specified from all client requests using the protocol.

type FpolicyEventFilters ¶

type FpolicyEventFilters struct {
	// Filter the client request for close with modification.
	CloseWithModification bool `json:"close_with_modification,omitempty"`
	// Filter the client request for close with read.
	CloseWithRead bool `json:"close_with_read,omitempty"`
	// Filter the client request for close without modification.
	CloseWithoutModification bool `json:"close_without_modification,omitempty"`
	// Filter the client requests for directory operations. When this filter is specified directory operations are not monitored.
	ExcludeDirectory bool `json:"exclude_directory,omitempty"`
	// Filter the client requests for the first-read.
	FirstRead bool `json:"first_read,omitempty"`
	// Filter the client requests for the first-write.
	FirstWrite bool `json:"first_write,omitempty"`
	// Filter the client request for alternate data stream.
	MonitorAds bool `json:"monitor_ads,omitempty"`
	// Filter the client request for offline bit set. FPolicy server receives notification only when offline files are accessed.
	OfflineBit bool `json:"offline_bit,omitempty"`
	// Filter the client request for open with delete intent.
	OpenWithDeleteIntent bool `json:"open_with_delete_intent,omitempty"`
	// Filter the client request for open with write intent.
	OpenWithWriteIntent bool `json:"open_with_write_intent,omitempty"`
	// Filter the client setattr requests for changing the access time of a file or directory.
	SetattrWithAccessTimeChange bool `json:"setattr_with_access_time_change,omitempty"`
	// Filter the client setattr requests for changing the allocation size of a file.
	SetattrWithAllocationSizeChange bool `json:"setattr_with_allocation_size_change,omitempty"`
	// Filter the client setattr requests for changing the creation time of a file or directory.
	SetattrWithCreationTimeChange bool `json:"setattr_with_creation_time_change,omitempty"`
	// Filter the client setattr requests for changing dacl on a file or directory.
	SetattrWithDaclChange bool `json:"setattr_with_dacl_change,omitempty"`
	// Filter the client setattr requests for changing group of a file or directory.
	SetattrWithGroupChange bool `json:"setattr_with_group_change,omitempty"`
	// Filter the client setattr requests for changing the mode bits on a file or directory.
	SetattrWithModeChange bool `json:"setattr_with_mode_change,omitempty"`
	// Filter the client setattr requests for changing the modification time of a file or directory.
	SetattrWithModifyTimeChange bool `json:"setattr_with_modify_time_change,omitempty"`
	// Filter the client setattr requests for changing owner of a file or directory.
	SetattrWithOwnerChange bool `json:"setattr_with_owner_change,omitempty"`
	// Filter the client setattr requests for changing sacl on a file or directory.
	SetattrWithSaclChange bool `json:"setattr_with_sacl_change,omitempty"`
	// Filter the client setattr requests for changing the size of a file.
	SetattrWithSizeChange bool `json:"setattr_with_size_change,omitempty"`
	// Filter the client request for write with size change.
	WriteWithSizeChange bool `json:"write_with_size_change,omitempty"`
}

Specifies the list of filters for a given file operation for the specified protocol. When you specify the filters, you must specify the valid protocols and a valid file operations.

type FpolicyEventModifyOpts ¶

type FpolicyEventModifyOpts struct {
	Info optional.Interface
}

type FpolicyEventReference ¶

type FpolicyEventReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
}

FPolicy events

type FpolicyEventResponse ¶

type FpolicyEventResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32          `json:"num_records,omitempty"`
	Records    []FpolicyEvent `json:"records,omitempty"`
}

type FpolicyEventsGetOpts ¶

type FpolicyEventsGetOpts struct {
	Fields optional.Interface
}

type FpolicyGetOpts ¶

type FpolicyGetOpts struct {
	Fields optional.Interface
}

type FpolicyPolicy ¶

type FpolicyPolicy struct {
	// Specifies if the policy is enabled on the SVM or not. If no value is mentioned for this field but priority is set, then this policy will be enabled.
	Enabled bool                    `json:"enabled,omitempty"`
	Engine  *FpolicyEngineReference `json:"engine,omitempty"`
	Events  []FpolicyEventReference `json:"events,omitempty"`
	// Specifies what action to take on a file access event in a case when all primary and secondary servers are down or no response is received from the FPolicy servers within a given timeout period. When this parameter is set to true, file access events will be denied under these circumstances.
	Mandatory bool `json:"mandatory,omitempty"`
	// Specifies the name of the policy.
	Name string `json:"name,omitempty"`
	// Specifies the priority that is assigned to this policy.
	Priority int32               `json:"priority,omitempty"`
	Scope    *FpolicyPolicyScope `json:"scope,omitempty"`
}

type FpolicyPolicyCollectionGetOpts ¶

type FpolicyPolicyCollectionGetOpts struct {
	Enabled                    optional.Bool
	ScopeExcludeExportPolicies optional.String
	ScopeExcludeShares         optional.String
	ScopeIncludeExtension      optional.String
	ScopeExcludeExtension      optional.String
	ScopeIncludeShares         optional.String
	ScopeIncludeVolumes        optional.String
	ScopeIncludeExportPolicies optional.String
	ScopeExcludeVolumes        optional.String
	Priority                   optional.Int32
	EngineName                 optional.String
	EventsName                 optional.String
	Name                       optional.String
	Mandatory                  optional.Bool
	Fields                     optional.Interface
	MaxRecords                 optional.Int32
	ReturnRecords              optional.Bool
	ReturnTimeout              optional.Int32
	OrderBy                    optional.Interface
}

type FpolicyPolicyCreateOpts ¶

type FpolicyPolicyCreateOpts struct {
	Info optional.Interface
}

type FpolicyPolicyGetOpts ¶

type FpolicyPolicyGetOpts struct {
	Fields optional.Interface
}

type FpolicyPolicyModifyOpts ¶

type FpolicyPolicyModifyOpts struct {
	Info optional.Interface
}

type FpolicyPolicyResponse ¶

type FpolicyPolicyResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of Records
	NumRecords int32           `json:"num_records,omitempty"`
	Records    []FpolicyPolicy `json:"records,omitempty"`
}

type FpolicyPolicyScope ¶

type FpolicyPolicyScope struct {
	ExcludeExportPolicies []string `json:"exclude_export_policies,omitempty"`
	ExcludeExtension      []string `json:"exclude_extension,omitempty"`
	ExcludeShares         []string `json:"exclude_shares,omitempty"`
	ExcludeVolumes        []string `json:"exclude_volumes,omitempty"`
	IncludeExportPolicies []string `json:"include_export_policies,omitempty"`
	IncludeExtension      []string `json:"include_extension,omitempty"`
	IncludeShares         []string `json:"include_shares,omitempty"`
	IncludeVolumes        []string `json:"include_volumes,omitempty"`
}

type FpolicyResponse ¶

type FpolicyResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32     `json:"num_records,omitempty"`
	Records    []Fpolicy `json:"records,omitempty"`
}

type GenericSwaggerError ¶

type GenericSwaggerError struct {
	// contains filtered or unexported fields
}

GenericSwaggerError Provides access to the body, error and model on returned errors.

func (GenericSwaggerError) Body ¶

func (e GenericSwaggerError) Body() []byte

Body returns the raw bytes of the response

func (GenericSwaggerError) Error ¶

func (e GenericSwaggerError) Error() string

Error returns non-empty string if there was an error.

func (GenericSwaggerError) Model ¶

func (e GenericSwaggerError) Model() interface{}

Model returns the unpacked model of the error

type Href ¶

type Href struct {
	Href string `json:"href,omitempty"`
}

type Igroup ¶

type Igroup struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// An option that causes the initiator group to be deleted when the last LUN map associated with it is deleted. Optional in PATCH only; not available in POST. This property defaults to _false_ when the initiator group is created.
	DeleteOnUnmap bool `json:"delete_on_unmap,omitempty"`
	// The initiators that are members of the group. Optional in POST.<br/> Zero or more initiators can be supplied when the initiator group is created. After creation, initiators can be added or removed from the initiator group using the `/protocols/san/igroups/{igroup.uuid}/initiators` endpoint. See [`POST /protocols/san/igroups/{igroup.uuid}/initiators`](#/SAN/igroup_initiator_create) and [`DELETE /protocols/san/igroups/{igroup.uuid}/initiators/{name}`](#/SAN/igroup_initiator_delete) for more details.
	Initiators []IgroupInitiatorNoRecords `json:"initiators,omitempty"`
	// All LUN maps with which the initiator is associated.<br/> There is an added cost to retrieving property values for `lun_maps`. They not populated for either a collection GET or an instance GET unless explicitly requested using the `fields` query parameter. See [`DOC Requesting specific fields`](#docs-docs-Requesting-specific-fields) to learn more.
	LunMaps []IgroupLunMaps `json:"lun_maps,omitempty"`
	// The name of the initiator group. Required in POST; optional in PATCH.<br/> Note that renaming an initiator group must be done in a PATCH request separate from any other modifications.
	Name string `json:"name,omitempty"`
	// The host operating system of the initiator group. All initiators in the group should be hosts of the same operating system. Required in POST; optional in PATCH.
	OsType string `json:"os_type,omitempty"`
	// The protocols supported by the initiator group. This restricts the type of initiators that can be added to the initiator group. Optional in POST; if not supplied, this defaults to _mixed_.<br/> The protocol of an initiator group cannot be changed after creation of the group.
	Protocol string    `json:"protocol,omitempty"`
	Svm      *AuditSvm `json:"svm,omitempty"`
	// The unique identifier of the initiator group.
	Uuid string `json:"uuid,omitempty"`
}

An initiator group (igroup) is a collection of Fibre Channel (FC) world wide port names (WWPN), and/or iSCSI Qualified Names (IQNs), and/or iSCSI EUIs (Extended Unique Identifiers) that identify host initiators.<br/> Initiator groups are used to control which hosts can access specific LUNs. To grant access to a LUN from one or more hosts, create an initiator group containing the hosts' initiator names, then create a LUN map that associates the initiator group with the LUN.<br/> An initiator can appear in multiple initiator groups. An initiator group can be mapped to multiple LUNs. A specific initiator can be mapped to a specific LUN only once.<br/> All initiators in an initiator group must be from the same operating system. The initiator group's operating system is specified when the initiator group is created.<br/> When an initiator group is created, the `protocol` property is used to restrict member initiators to Fibre Channel (_fcp_), iSCSI (_iscsi_), or both (_mixed_).<br/> Zero or more initiators can be supplied when the initiator group is created. After creation, initiators can be added or removed from the initiator group using the `/protocols/san/igroups/{igroup.uuid}/initiators` endpoint. See [`POST /protocols/san/igroups/{igroup.uuid}/initiators`](#/SAN/igroup_initiator_create) and [`DELETE /protocols/san/igroups/{igroup.uuid}/initiators/{name}`](#/SAN/igroup_initiator_delete) for more details.<br/>

type IgroupCollectionGetOpts ¶

type IgroupCollectionGetOpts struct {
	DeleteOnUnmap            optional.Bool
	Protocol                 optional.String
	LunMapsLogicalUnitNumber optional.Int32
	LunMapsLunNodeUuid       optional.String
	LunMapsLunNodeName       optional.String
	LunMapsLunUuid           optional.String
	LunMapsLunName           optional.String
	InitiatorsIgroupUuid     optional.String
	InitiatorsName           optional.String
	Uuid                     optional.String
	OsType                   optional.String
	SvmUuid                  optional.String
	SvmName                  optional.String
	Name                     optional.String
	Fields                   optional.Interface
	MaxRecords               optional.Int32
	ReturnRecords            optional.Bool
	ReturnTimeout            optional.Int32
	OrderBy                  optional.Interface
}

type IgroupDeleteOpts ¶

type IgroupDeleteOpts struct {
	AllowDeleteWhileMapped optional.Bool
}

type IgroupGetOpts ¶

type IgroupGetOpts struct {
	Fields optional.Interface
}

type IgroupInitiator ¶

type IgroupInitiator struct {
	Links  *InlineResponse201Links `json:"_links,omitempty"`
	Igroup *IgroupInitiatorIgroup  `json:"igroup,omitempty"`
	// The FC WWPN, iSCSI IQN, or iSCSI EUI that identifies the host initiator. Valid in POST only and not allowed when the `records` property is used.<br/> An FC WWPN consist of 16 hexadecimal digits grouped as 8 pairs separated by colons. The format for an iSCSI IQN is _iqn.yyyy-mm.reverse_domain_name:any_. The iSCSI EUI format consists of the _eui._ prefix followed by 16 hexadecimal characters.
	Name string `json:"name,omitempty"`
	// An array of initiators specified to add multiple initiators to an initiator group in a single API call. Valid in POST only and not allowed when the `name` property is used.
	Records []IgroupInitiatorRecords `json:"records,omitempty"`
}

type IgroupInitiatorCollectionGetOpts ¶

type IgroupInitiatorCollectionGetOpts struct {
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type IgroupInitiatorDeleteOpts ¶

type IgroupInitiatorDeleteOpts struct {
	AllowDeleteWhileMapped optional.Bool
}

type IgroupInitiatorGetOpts ¶

type IgroupInitiatorGetOpts struct {
	Fields optional.Interface
}

type IgroupInitiatorIgroup ¶

type IgroupInitiatorIgroup struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The unique identifier of the initiator group.
	Uuid string `json:"uuid,omitempty"`
}

The initiator group in which the initiator is found.<br/> Note that this does not mean that the initiator cannot also be found in other initiator groups.

type IgroupInitiatorNoRecords ¶

type IgroupInitiatorNoRecords struct {
	Links  *InlineResponse201Links `json:"_links,omitempty"`
	Igroup *IgroupInitiatorIgroup  `json:"igroup,omitempty"`
	// The FC WWPN, iSCSI IQN, or iSCSI EUI that identifies the host initiator. Valid in POST only and not allowed when the `records` property is used.<br/> An FC WWPN consist of 16 hexadecimal digits grouped as 8 pairs separated by colons. The format for an iSCSI IQN is _iqn.yyyy-mm.reverse_domain_name:any_. The iSCSI EUI format consists of the _eui._ prefix followed by 16 hexadecimal characters.
	Name string `json:"name,omitempty"`
}

type IgroupInitiatorRecords ¶

type IgroupInitiatorRecords struct {
	Links  *InlineResponse201Links `json:"_links,omitempty"`
	Igroup *IgroupInitiatorIgroup  `json:"igroup,omitempty"`
	// The FC WWPN, iSCSI IQN, or iSCSI EUI that identifies the host initiator. Valid in POST only and not allowed when the `records` property is used.<br/> An FC WWPN consist of 16 hexadecimal digits grouped as 8 pairs separated by colons. The format for an iSCSI IQN is _iqn.yyyy-mm.reverse_domain_name:any_. The iSCSI EUI format consists of the _eui._ prefix followed by 16 hexadecimal characters.
	Name string `json:"name,omitempty"`
}

type IgroupInitiatorResponse ¶

type IgroupInitiatorResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32             `json:"num_records,omitempty"`
	Records    []IgroupInitiator `json:"records,omitempty"`
}

type IgroupLun ¶

type IgroupLun struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the LUN.
	Name string                 `json:"name,omitempty"`
	Node *InlineResponse201Node `json:"node,omitempty"`
	// The unique identifier of the LUN.
	Uuid string `json:"uuid,omitempty"`
}

The LUN to which the initiator group is mapped.

type IgroupLunMaps ¶

type IgroupLunMaps struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The logical unit number assigned to the LUN for initiators in the initiator group.
	LogicalUnitNumber int32      `json:"logical_unit_number,omitempty"`
	Lun               *IgroupLun `json:"lun,omitempty"`
}

A LUN map with which the initiator group is associated.

type IgroupReference ¶

type IgroupReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the initiator group.
	Name string `json:"name,omitempty"`
	// The unique identifier of the initiator group.
	Uuid string `json:"uuid,omitempty"`
}

type IgroupResponse ¶

type IgroupResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32    `json:"num_records,omitempty"`
	Records    []Igroup `json:"records,omitempty"`
}

type InlineResponse201 ¶

type InlineResponse201 struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Number of records
	NumRecords int32                      `json:"num_records,omitempty"`
	Records    []InlineResponse201Records `json:"records,omitempty"`
}

List of messages invoked on the node

type InlineResponse201Links struct {
	Self *Href `json:"self,omitempty"`
}

type InlineResponse201Node ¶

type InlineResponse201Node struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

type InlineResponse201Records ¶

type InlineResponse201Records struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Sequence number of the generated AutoSupport
	Index int32                  `json:"index,omitempty"`
	Node  *InlineResponse201Node `json:"node,omitempty"`
}

type IpAddress ¶

type IpAddress struct {
}

IPv4 or IPv6 address

type IpAddressFamily ¶

type IpAddressFamily string

IpAddressFamily : IPv4 or IPv6

const (
	IPV4_IpAddressFamily IpAddressFamily = "ipv4"
	IPV6_IpAddressFamily IpAddressFamily = "ipv6"
)

List of ip_address_family

type IpAddressRange ¶

type IpAddressRange struct {
	End    *IpAddress       `json:"end,omitempty"`
	Family *IpAddressFamily `json:"family,omitempty"`
	Start  *IpAddress       `json:"start,omitempty"`
}

IP address range

type IpAddressReadcreate ¶

type IpAddressReadcreate struct {
}

IPv4 or IPv6 address

type IpAddressReadonly ¶

type IpAddressReadonly struct {
}

IPv4 or IPv6 address

type IpInfo ¶

type IpInfo struct {
	Address *IpAddress       `json:"address,omitempty"`
	Family  *IpAddressFamily `json:"family,omitempty"`
	Netmask *IpNetmask       `json:"netmask,omitempty"`
}

IP information

type IpInterface ¶

type IpInterface struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The administrative state of the interface.
	Enabled  bool                 `json:"enabled,omitempty"`
	Ip       *IpInfo              `json:"ip,omitempty"`
	Ipspace  *IpInterfaceIpspace  `json:"ipspace,omitempty"`
	Location *IpInterfaceLocation `json:"location,omitempty"`
	// Interface name
	Name string `json:"name,omitempty"`
	// Set to \"svm\" for interfaces owned by an SVM. Otherwise, set to \"cluster\".
	Scope         string                    `json:"scope,omitempty"`
	ServicePolicy *IpInterfaceServicePolicy `json:"service_policy,omitempty"`
	// The services associated with the interface.
	Services []IpService `json:"services,omitempty"`
	// The operational state of the interface.
	State string           `json:"state,omitempty"`
	Svm   *IpInterfaceSvm1 `json:"svm,omitempty"`
	// The UUID that uniquely identifies the interface.
	Uuid string `json:"uuid,omitempty"`
	// True for a VIP interface, whose location is announced via BGP.
	Vip bool `json:"vip,omitempty"`
}

type IpInterfaceAndGateway ¶

type IpInterfaceAndGateway struct {
	// IPv4 or IPv6 address
	Address string `json:"address,omitempty"`
	// The IPv4 or IPv6 address of the default router.
	Gateway string     `json:"gateway,omitempty"`
	Netmask *IpNetmask `json:"netmask,omitempty"`
}

Object to setup an interface along with its default router.

type IpInterfaceIpspace ¶

type IpInterfaceIpspace struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// IPspace name
	Name string `json:"name,omitempty"`
	// IPspace UUID
	Uuid string `json:"uuid,omitempty"`
}

Either the UUID or name must be supplied on POST for cluster-scoped objects.

type IpInterfaceLocation ¶

type IpInterfaceLocation struct {
	AutoRevert      bool                                `json:"auto_revert,omitempty"`
	BroadcastDomain *IpInterfaceLocationBroadcastDomain `json:"broadcast_domain,omitempty"`
	Failover        *FailoverScope                      `json:"failover,omitempty"`
	HomeNode        *IpInterfaceLocationHomeNode        `json:"home_node,omitempty"`
	HomePort        *IpInterfaceLocationHomePort        `json:"home_port,omitempty"`
	IsHome          bool                                `json:"is_home,omitempty"`
	Node            *IpInterfaceLocationNode            `json:"node,omitempty"`
	Port            *IpInterfaceLocationPort            `json:"port,omitempty"`
}

Current or home location can be modified. Specifying a port implies a node. Specifying a node allows an appropriate port to be automatically selected. Ports are not valid and not shown for VIP interfaces. For POST, broadcast_domain can be specified alone or with home_node.

type IpInterfaceLocationBroadcastDomain ¶

type IpInterfaceLocationBroadcastDomain struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Name of the broadcast domain, scoped to its IPspace
	Name string `json:"name,omitempty"`
	// Broadcast domain UUID
	Uuid string `json:"uuid,omitempty"`
}

Broadcast domain UUID along with a readable name.

type IpInterfaceLocationHomeNode ¶

type IpInterfaceLocationHomeNode struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

type IpInterfaceLocationHomePort ¶

type IpInterfaceLocationHomePort struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Node  *BroadcastDomainNode    `json:"node,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

Port UUID along with readable names. Either the UUID or both names may be supplied on input.

type IpInterfaceLocationNode ¶

type IpInterfaceLocationNode struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

type IpInterfaceLocationPort ¶

type IpInterfaceLocationPort struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Node  *BroadcastDomainNode    `json:"node,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

Port UUID along with readable names. Either the UUID or both names may be supplied on input.

type IpInterfaceReference ¶

type IpInterfaceReference struct {
	Links *InlineResponse201Links                       `json:"_links,omitempty"`
	Ip    *ApplicationSanAccessIscsiEndpointInterfaceIp `json:"ip,omitempty"`
	// The name of the interface.
	Name string `json:"name,omitempty"`
	// The UUID that uniquely identifies the interface.
	Uuid string `json:"uuid,omitempty"`
}

A network interface. Either UUID or name may be supplied on input.

type IpInterfaceResponse ¶

type IpInterfaceResponse struct {
	Links      *AccountResponseLinks `json:"_links,omitempty"`
	NumRecords int32                 `json:"num_records,omitempty"`
	Records    []IpInterface         `json:"records,omitempty"`
}

type IpInterfaceServicePolicy ¶

type IpInterfaceServicePolicy struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

type IpInterfaceSvm ¶

type IpInterfaceSvm struct {
	Links    *InlineResponse201Links `json:"_links,omitempty"`
	Ip       *IpInterfaceSvmIp       `json:"ip,omitempty"`
	Location *IpInterfaceSvmLocation `json:"location,omitempty"`
	// The name of the interface (optional).
	Name          string                  `json:"name,omitempty"`
	ServicePolicy *IpServicePolicySvmEnum `json:"service_policy,omitempty"`
	// The UUID that uniquely identifies the interface.
	Uuid string `json:"uuid,omitempty"`
}

Interface parameters. Name and home_node are optional.

type IpInterfaceSvm1 ¶

type IpInterfaceSvm1 struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the SVM.
	Name string `json:"name,omitempty"`
	// The unique identifier of the SVM.
	Uuid string `json:"uuid,omitempty"`
}

Applies only to SVM-scoped objects. Either the UUID or name must be supplied on POST.

type IpInterfaceSvmIp ¶

type IpInterfaceSvmIp struct {
	Address *IpAddressReadcreate `json:"address,omitempty"`
	Netmask *IpNetmaskCreateonly `json:"netmask,omitempty"`
}

IP information

type IpInterfaceSvmLocation ¶

type IpInterfaceSvmLocation struct {
	BroadcastDomain *IpInterfaceSvmLocationBroadcastDomain `json:"broadcast_domain,omitempty"`
	HomeNode        *InlineResponse201Node                 `json:"home_node,omitempty"`
}

Home_node is optional.

type IpInterfaceSvmLocationBroadcastDomain ¶

type IpInterfaceSvmLocationBroadcastDomain struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Name of the broadcast domain, scoped to its IPspace
	Name string `json:"name,omitempty"`
	// Broadcast domain UUID
	Uuid string `json:"uuid,omitempty"`
}

Broadcast domain UUID along with a readable name.

type IpNetmask ¶

type IpNetmask struct {
}

Input as netmask length (16) or IPv4 mask (255.255.0.0). For IPv6, you must set the netmask length. The default value is 64. Output is always netmask length.

type IpNetmaskCreateonly ¶

type IpNetmaskCreateonly struct {
}

Input as netmask length (16) or IPv4 mask (255.255.0.0).

type IpService ¶

type IpService string
const (
	CLUSTER_CORE_IpService           IpService = "cluster_core"
	INTERCLUSTER_CORE_IpService      IpService = "intercluster_core"
	MANAGEMENT_CORE_IpService        IpService = "management_core"
	MANAGEMENT_AUTOSUPPORT_IpService IpService = "management_autosupport"
	MANAGEMENT_BGP_IpService         IpService = "management_bgp"
	MANAGEMENT_HTTPS_IpService       IpService = "management_https"
	MANAGEMENT_SSH_IpService         IpService = "management_ssh"
	DATA_CORE_IpService              IpService = "data_core"
	DATA_NFS_IpService               IpService = "data_nfs"
	DATA_CIFS_IpService              IpService = "data_cifs"
	DATA_FLEXCACHE_IpService         IpService = "data_flexcache"
	DATA_ISCSI_IpService             IpService = "data_iscsi"
)

List of ip_service

type IpServicePolicy ¶

type IpServicePolicy struct {
	Links    *InlineResponse201Links `json:"_links,omitempty"`
	Ipspace  *IpServicePolicyIpspace `json:"ipspace,omitempty"`
	Name     string                  `json:"name,omitempty"`
	Scope    *NetworkScope           `json:"scope,omitempty"`
	Services []IpService             `json:"services,omitempty"`
	Svm      *AuditSvm               `json:"svm,omitempty"`
	Uuid     string                  `json:"uuid,omitempty"`
}

type IpServicePolicyIpspace ¶

type IpServicePolicyIpspace struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// IPspace name
	Name string `json:"name,omitempty"`
	// IPspace UUID
	Uuid string `json:"uuid,omitempty"`
}

Applies to both SVM and cluster-scoped objects. Either the UUID or name may be supplied on input.

type IpServicePolicyReference ¶

type IpServicePolicyReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

type IpServicePolicyResponse ¶

type IpServicePolicyResponse struct {
	Links      *AccountResponseLinks `json:"_links,omitempty"`
	NumRecords int32                 `json:"num_records,omitempty"`
	Records    []IpServicePolicy     `json:"records,omitempty"`
}

type IpServicePolicySvmEnum ¶

type IpServicePolicySvmEnum string

IpServicePolicySvmEnum : Built-in service policies for SVMs.

const (
	MANAGEMENT_IpServicePolicySvmEnum  IpServicePolicySvmEnum = "default-management"
	DATA_FILES_IpServicePolicySvmEnum  IpServicePolicySvmEnum = "default-data-files"
	DATA_BLOCKS_IpServicePolicySvmEnum IpServicePolicySvmEnum = "default-data-blocks"
)

List of ip_service_policy_svm_enum

type Ipspace ¶

type Ipspace struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// IPspace name
	Name string `json:"name,omitempty"`
	// The UUID that uniquely identifies the IPspace.
	Uuid string `json:"uuid,omitempty"`
}

type IpspaceGetOpts ¶

type IpspaceGetOpts struct {
	Fields optional.Interface
}

type IpspaceModifyOpts ¶

type IpspaceModifyOpts struct {
	IpspaceInfo optional.Interface
}

type IpspaceReference ¶

type IpspaceReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// IPspace name
	Name string `json:"name,omitempty"`
	// IPspace UUID
	Uuid string `json:"uuid,omitempty"`
}

type IpspaceResponse ¶

type IpspaceResponse struct {
	Links      *AccountResponseLinks `json:"_links,omitempty"`
	NumRecords int32                 `json:"num_records,omitempty"`
	Records    []Ipspace             `json:"records,omitempty"`
}

type IpspacesGetOpts ¶

type IpspacesGetOpts struct {
	Name          optional.String
	Uuid          optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type IscsiConnection ¶

type IscsiConnection struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// The iSCSI authentication type used to establish the connection.
	AuthenticationType string `json:"authentication_type,omitempty"`
	// The identifier of the connection within the session.
	Cid              int32                            `json:"cid,omitempty"`
	InitiatorAddress *IscsiConnectionInitiatorAddress `json:"initiator_address,omitempty"`
	Interface_       *IscsiConnectionInterface        `json:"interface,omitempty"`
}

An active iSCSI connection.

type IscsiConnectionInitiatorAddress ¶

type IscsiConnectionInitiatorAddress struct {
	// The TCP IPv4 or IPv6 address of the initiator end of the iSCSI connection.
	Address string `json:"address,omitempty"`
	// The TCP port number of the initiator end of the iSCSI connection.
	Port int32 `json:"port,omitempty"`
}

The TCP socket information for the initiator end of the connection. This is useful for network packet debugging.

type IscsiConnectionInterface ¶

type IscsiConnectionInterface struct {
	Links *InlineResponse201Links     `json:"_links,omitempty"`
	Ip    *IscsiConnectionInterfaceIp `json:"ip,omitempty"`
	// The name of the interface.
	Name string `json:"name,omitempty"`
	// The UUID that uniquely identifies the interface.
	Uuid string `json:"uuid,omitempty"`
}

The network interface information for the target end of the connection.

type IscsiConnectionInterfaceIp ¶

type IscsiConnectionInterfaceIp struct {
	Address *IpAddressReadonly `json:"address,omitempty"`
	// The TCP port number of the iSCSI access endpoint.
	Port int32 `json:"port,omitempty"`
}

The IP information. ONTAP only supports port 3260.

type IscsiCredentials ¶

type IscsiCredentials struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The iSCSI authentication type. Required in POST and optional in PATCH.
	AuthenticationType string                `json:"authentication_type,omitempty"`
	Chap               *IscsiCredentialsChap `json:"chap,omitempty"`
	// The iSCSI initiator to which the credentials apply. Required in POST.
	Initiator        string                            `json:"initiator,omitempty"`
	InitiatorAddress *IscsiCredentialsInitiatorAddress `json:"initiator_address,omitempty"`
	Svm              *AuditSvm                         `json:"svm,omitempty"`
}

type IscsiCredentialsChap ¶

type IscsiCredentialsChap struct {
	Inbound  *IscsiCredentialsChapInbound  `json:"inbound,omitempty"`
	Outbound *IscsiCredentialsChapOutbound `json:"outbound,omitempty"`
}

Challenge-Handshake Authentication Protocol (CHAP) credentials.

type IscsiCredentialsChapInbound ¶

type IscsiCredentialsChapInbound struct {
	// The inbound CHAP password. Write-only; optional in POST and PATCH.
	Password string `json:"password,omitempty"`
	// The inbound CHAP user name. Optional in POST and PATCH.
	User string `json:"user,omitempty"`
}

Inbound CHAP credentials.

type IscsiCredentialsChapOutbound ¶

type IscsiCredentialsChapOutbound struct {
	// The outbound CHAP password. Write-only; optional in POST and PATCH.
	Password string `json:"password,omitempty"`
	// The outbound CHAP user name. Optional in POST and PATCH.
	User string `json:"user,omitempty"`
}

Output CHAP credentials.

type IscsiCredentialsCollectionGetOpts ¶

type IscsiCredentialsCollectionGetOpts struct {
	InitiatorAddressMasksAddress optional.String
	InitiatorAddressMasksNetmask optional.String
	InitiatorAddressMasksFamily  optional.String
	InitiatorAddressRangesFamily optional.String
	InitiatorAddressRangesStart  optional.String
	InitiatorAddressRangesEnd    optional.String
	SvmUuid                      optional.String
	SvmName                      optional.String
	Initiator                    optional.String
	AuthenticationType           optional.String
	ChapInboundUser              optional.String
	ChapOutboundUser             optional.String
	Fields                       optional.Interface
	MaxRecords                   optional.Int32
	ReturnRecords                optional.Bool
	ReturnTimeout                optional.Int32
	OrderBy                      optional.Interface
}

type IscsiCredentialsGetOpts ¶

type IscsiCredentialsGetOpts struct {
	Fields optional.Interface
}

type IscsiCredentialsInitiatorAddress ¶

type IscsiCredentialsInitiatorAddress struct {
	Masks  []IpInfo         `json:"masks,omitempty"`
	Ranges []IpAddressRange `json:"ranges,omitempty"`
}

Initiator address ranges.

type IscsiCredentialsModifyOpts ¶

type IscsiCredentialsModifyOpts struct {
	AddInitiatorAddresses    optional.Bool
	RemoveInitiatorAddresses optional.Bool
}

type IscsiCredentialsResponse ¶

type IscsiCredentialsResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32              `json:"num_records,omitempty"`
	Records    []IscsiCredentials `json:"records,omitempty"`
}

type IscsiService ¶

type IscsiService struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The administrative state of the iSCSI service. The iSCSI service can be disabled to block all iSCSI connectivity to the SVM.<br/> Optional in POST and PATCH. The default setting is _true_ (enabled) in POST.
	Enabled bool                `json:"enabled,omitempty"`
	Svm     *AuditSvm           `json:"svm,omitempty"`
	Target  *IscsiServiceTarget `json:"target,omitempty"`
}

An iSCSI service defines the properties of the iSCSI target for an SVM. There can be at most one iSCSI service for an SVM. An SVM's iSCSI service must be created before iSCSI initiators can log in to the SVM.<br/> An iSCSI service is identified by the UUID of its SVM.

type IscsiServiceCollectionGetOpts ¶

type IscsiServiceCollectionGetOpts struct {
	SvmUuid       optional.String
	SvmName       optional.String
	Enabled       optional.Bool
	TargetName    optional.String
	TargetAlias   optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type IscsiServiceGetOpts ¶

type IscsiServiceGetOpts struct {
	Fields optional.Interface
}

type IscsiServiceResponse ¶

type IscsiServiceResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32          `json:"num_records,omitempty"`
	Records    []IscsiService `json:"records,omitempty"`
}

type IscsiServiceTarget ¶

type IscsiServiceTarget struct {
	// The iSCSI target alias of the iSCSI service.<br/> The target alias can contain one (1) to 128 characters and feature any printable character except space (\" \"). A PATCH request with an empty alias (\"\") clears the alias.<br/> Optional in POST and PATCH. In POST, this defaults to the name of the SVM.
	Alias string `json:"alias,omitempty"`
	// The iSCSI target name of the iSCSI service. This is generated for the SVM during POST.<br/> If required, the target name can be modified using the ONTAP command line.
	Name string `json:"name,omitempty"`
}

type IscsiSession ¶

type IscsiSession struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The iSCSI connections that make up the iSCSI session.
	Connections []IscsiConnection `json:"connections,omitempty"`
	// The initiator groups in which the initiator is a member.
	Igroups   []FcLoginIgroups       `json:"igroups,omitempty"`
	Initiator *IscsiSessionInitiator `json:"initiator,omitempty"`
	// The initiator portion of the session identifier specified by the initiator during login.
	Isid string    `json:"isid,omitempty"`
	Svm  *AuditSvm `json:"svm,omitempty"`
	// The target portal group to which the session belongs.
	TargetPortalGroup string `json:"target_portal_group,omitempty"`
	// The target portal group tag of the session.
	TargetPortalGroupTag int32 `json:"target_portal_group_tag,omitempty"`
	// The target session identifier handle (TSIH) of the session.
	Tsih int32 `json:"tsih,omitempty"`
}

An iSCSI session is one or more TCP connections that link an iSCSI initiator with an iSCSI target. TCP connections can be added and removed from an iSCSI session by the iSCSI initiator. Across all TCP connections within an iSCSI session, an initiator sees one and the same target. After the connection is established, iSCSI control, data, and status messages are communicated over the session.

type IscsiSessionCollectionGetOpts ¶

type IscsiSessionCollectionGetOpts struct {
	IgroupsUuid                        optional.String
	IgroupsName                        optional.String
	ConnectionsAuthenticationType      optional.String
	ConnectionsCid                     optional.Int32
	ConnectionsInterfaceIpAddress      optional.String
	ConnectionsInterfaceIpPort         optional.Int32
	ConnectionsInterfaceUuid           optional.String
	ConnectionsInterfaceName           optional.String
	ConnectionsInitiatorAddressPort    optional.Int32
	ConnectionsInitiatorAddressAddress optional.String
	TargetPortalGroup                  optional.String
	Tsih                               optional.Int32
	InitiatorName                      optional.String
	InitiatorAlias                     optional.String
	SvmUuid                            optional.String
	SvmName                            optional.String
	Isid                               optional.String
	TargetPortalGroupTag               optional.Int32
	Fields                             optional.Interface
	MaxRecords                         optional.Int32
	ReturnRecords                      optional.Bool
	ReturnTimeout                      optional.Int32
	OrderBy                            optional.Interface
}

type IscsiSessionGetOpts ¶

type IscsiSessionGetOpts struct {
	Fields optional.Interface
}

type IscsiSessionInitiator ¶

type IscsiSessionInitiator struct {
	// The initiator alias.
	Alias string `json:"alias,omitempty"`
	// The world wide unique name of the initiator.
	Name string `json:"name,omitempty"`
}

The initiator that created the session.

type IscsiSessionResponse ¶

type IscsiSessionResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32          `json:"num_records,omitempty"`
	Records    []IscsiSession `json:"records,omitempty"`
}

type Job ¶

type Job struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// If the state indicates \"failure\", this is the final error code.
	Code int32 `json:"code,omitempty"`
	// The description of the job to help identify it independent of the UUID.
	Description string `json:"description,omitempty"`
	// The time the job ended.
	EndTime time.Time `json:"end_time,omitempty"`
	// A message corresponding to the state of the job providing additional details about the current state.
	Message string `json:"message,omitempty"`
	// The time the job started.
	StartTime time.Time `json:"start_time,omitempty"`
	// The state of the job.
	State string `json:"state,omitempty"`
	Uuid  string `json:"uuid,omitempty"`
}

type JobCollectionGetOpts ¶

type JobCollectionGetOpts struct {
	StartTime     optional.String
	EndTime       optional.String
	Uuid          optional.String
	Code          optional.Int32
	Description   optional.String
	Message       optional.String
	State         optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type JobGetOpts ¶

type JobGetOpts struct {
	Fields optional.Interface
}
type JobLink struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The UUID of the asynchronous job that is triggered by a POST, PATCH, or DELETE operation.
	Uuid string `json:"uuid,omitempty"`
}

type JobLinkResponse ¶

type JobLinkResponse struct {
	Job *JobLink `json:"job,omitempty"`
}

type JobModifyOpts ¶

type JobModifyOpts struct {
	Action optional.String
}

type JobResponse ¶

type JobResponse struct {
	Links      *AccountResponseLinks `json:"_links,omitempty"`
	NumRecords int32                 `json:"num_records,omitempty"`
	Records    []Job                 `json:"records,omitempty"`
}

type KerberosInterface ¶

type KerberosInterface struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Specifies if Kerberos is enabled.
	Enabled         bool                      `json:"enabled,omitempty"`
	EncryptionTypes []string                  `json:"encryption_types,omitempty"`
	Interface_      *ClusterClusterInterfaces `json:"interface,omitempty"`
	// Load keytab from URI
	KeytabUri string `json:"keytab_uri,omitempty"`
	// Organizational unit
	OrganizationalUnit string `json:"organizational_unit,omitempty"`
	// Account creation password
	Password string `json:"password,omitempty"`
	// Service principal name. Valid in PATCH.
	Spn string    `json:"spn,omitempty"`
	Svm *AuditSvm `json:"svm,omitempty"`
	// Account creation user name
	User string `json:"user,omitempty"`
}

type KerberosInterfaceCollectionGetOpts ¶

type KerberosInterfaceCollectionGetOpts struct {
	EncryptionTypes    optional.String
	InterfaceName      optional.String
	InterfaceUuid      optional.String
	InterfaceIpAddress optional.String
	SvmUuid            optional.String
	SvmName            optional.String
	Enabled            optional.Bool
	Spn                optional.String
	Fields             optional.Interface
	MaxRecords         optional.Int32
	ReturnRecords      optional.Bool
	ReturnTimeout      optional.Int32
	OrderBy            optional.Interface
}

type KerberosInterfaceGetOpts ¶

type KerberosInterfaceGetOpts struct {
	Fields optional.Interface
}

type KerberosInterfaceModifyOpts ¶

type KerberosInterfaceModifyOpts struct {
	Info optional.Interface
}

type KerberosInterfaceResponse ¶

type KerberosInterfaceResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32               `json:"num_records,omitempty"`
	Records    []KerberosInterface `json:"records,omitempty"`
}

type KerberosRealm ¶

type KerberosRealm struct {
	Links    *InlineResponse201Links `json:"_links,omitempty"`
	AdServer *KerberosRealmAdServer  `json:"ad_server,omitempty"`
	// Comment
	Comment         string            `json:"comment,omitempty"`
	EncryptionTypes []string          `json:"encryption_types,omitempty"`
	Kdc             *KerberosRealmKdc `json:"kdc,omitempty"`
	// Kerberos realm
	Name string    `json:"name,omitempty"`
	Svm  *AuditSvm `json:"svm,omitempty"`
}

type KerberosRealmAdServer ¶

type KerberosRealmAdServer struct {
	// Active Directory server IP address
	Address string `json:"address,omitempty"`
	// Active Directory server name
	Name string `json:"name,omitempty"`
}

type KerberosRealmCollectionGetOpts ¶

type KerberosRealmCollectionGetOpts struct {
	AdServerName    optional.String
	AdServerAddress optional.String
	KdcVendor       optional.String
	KdcIp           optional.String
	KdcPort         optional.Int32
	Comment         optional.String
	EncryptionTypes optional.String
	SvmUuid         optional.String
	SvmName         optional.String
	Name            optional.String
	Fields          optional.Interface
	MaxRecords      optional.Int32
	ReturnRecords   optional.Bool
	ReturnTimeout   optional.Int32
	OrderBy         optional.Interface
}

type KerberosRealmCreateOpts ¶

type KerberosRealmCreateOpts struct {
	Info optional.Interface
}

type KerberosRealmGetOpts ¶

type KerberosRealmGetOpts struct {
	Fields optional.Interface
}

type KerberosRealmKdc ¶

type KerberosRealmKdc struct {
	// KDC IP address
	Ip string `json:"ip,omitempty"`
	// KDC port
	Port int32 `json:"port,omitempty"`
	// Key Distribution Center (KDC) vendor. Following values are suported: * microsoft - Microsoft Active Directory KDC * other - MIT Kerberos KDC or other KDC
	Vendor string `json:"vendor,omitempty"`
}

type KerberosRealmModifyOpts ¶

type KerberosRealmModifyOpts struct {
	Info optional.Interface
}

type KerberosRealmResponse ¶

type KerberosRealmResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32           `json:"num_records,omitempty"`
	Records    []KerberosRealm `json:"records,omitempty"`
}

type KeyServer ¶

type KeyServer struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Password credentials for connecting with the key server. This is not audited.
	Password string `json:"password,omitempty"`
	// An array of key servers specified to add multiple key servers to a key manager in a single API call. Valid in POST only and not valid if `server` is provided.
	Records []KeyServerRecords `json:"records,omitempty"`
	// External key server for key management. If no port is provided, a default port of 5696 is used. Not valid in POST if `records` is provided.
	Server string `json:"server,omitempty"`
	// I/O timeout in seconds for communicating with the key server.
	Timeout int32 `json:"timeout,omitempty"`
	// KMIP username credentials for connecting with the key server.
	Username string `json:"username,omitempty"`
}

type KeyServerNoRecords ¶

type KeyServerNoRecords struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Password credentials for connecting with the key server. This is not audited.
	Password string `json:"password,omitempty"`
	// External key server for key management. If no port is provided, a default port of 5696 is used. Not valid in POST if `records` is provided.
	Server string `json:"server,omitempty"`
	// I/O timeout in seconds for communicating with the key server.
	Timeout  int32  `json:"timeout,omitempty"`
	Username string `json:"username,omitempty"`
}

type KeyServerReadcreate ¶

type KeyServerReadcreate struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// External key server for key management. If no port is provided, a default port of 5696 is used.
	Server string `json:"server,omitempty"`
	// I/O timeout in seconds for communicating with the key server.
	Timeout int32 `json:"timeout,omitempty"`
	// Username credentials for connecting with the key server.
	Username string `json:"username,omitempty"`
}

type KeyServerRecords ¶

type KeyServerRecords struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Password credentials for connecting with the key server. This is not audited.
	Password string `json:"password,omitempty"`
	// External key server for key management. If no port is provided, a default port of 5696 is used. Not valid in POST if `records` is provided.
	Server string `json:"server,omitempty"`
	// I/O timeout in seconds for communicating with the key server.
	Timeout  int32  `json:"timeout,omitempty"`
	Username string `json:"username,omitempty"`
}

type KeyServerResponse ¶

type KeyServerResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32       `json:"num_records,omitempty"`
	Records    []KeyServer `json:"records,omitempty"`
}

type LayoutRequirement ¶

type LayoutRequirement struct {
	// Minimum number of disks to create an aggregate
	AggregateMinDisks int32 `json:"aggregate_min_disks,omitempty"`
	// Indicates if this RAID type is the default
	Default_  bool                        `json:"default,omitempty"`
	RaidGroup *LayoutRequirementRaidGroup `json:"raid_group,omitempty"`
	// RAID type
	RaidType string `json:"raid_type,omitempty"`
}

type LayoutRequirementRaidGroup ¶

type LayoutRequirementRaidGroup struct {
	// Default number of disks in a RAID group
	Default_ int32 `json:"default,omitempty"`
	// Maximum number of disks allowed in a RAID group
	Max int32 `json:"max,omitempty"`
	// Minimum number of disks allowed in a RAID group
	Min int32 `json:"min,omitempty"`
}

type LdapCollectionGetOpts ¶

type LdapCollectionGetOpts struct {
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type LdapCreateOpts ¶

type LdapCreateOpts struct {
	Info optional.Interface
}

type LdapGetOpts ¶

type LdapGetOpts struct {
	Fields optional.Interface
}

type LdapModifyOpts ¶

type LdapModifyOpts struct {
	Info optional.Interface
}

type LdapService ¶

type LdapService struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// This parameter specifies the name of the Active Directory domain used to discover LDAP servers for use by this client. This is mutually exclusive with `servers` during POST and PATCH.
	AdDomain string `json:"ad_domain,omitempty"`
	// Specifies the default base DN for all searches.
	BaseDn string `json:"base_dn,omitempty"`
	// Specifies the default search scope for LDAP queries: * base - search the named entry only * onelevel - search all entries immediately below the DN * subtree - search the named DN entry and the entire subtree below the DN
	BaseScope string `json:"base_scope,omitempty"`
	// Specifies the user that binds to the LDAP servers.
	BindDn string `json:"bind_dn,omitempty"`
	// Specifies the bind password for the LDAP servers.
	BindPassword string `json:"bind_password,omitempty"`
	// The minimum bind authentication level. Possible values are: * anonymous - anonymous bind * simple - simple bind * sasl - Simple Authentication and Security Layer (SASL) bind
	MinBindLevel string `json:"min_bind_level,omitempty"`
	// The port used to connect to the LDAP Servers.
	Port               int32    `json:"port,omitempty"`
	PreferredAdServers []string `json:"preferred_ad_servers,omitempty"`
	// The name of the schema template used by the SVM. * AD-IDMU - Active Directory Identity Management for UNIX * AD-SFU - Active Directory Services for UNIX * MS-AD-BIS - Active Directory Identity Management for UNIX * RFC-2307 - Schema based on RFC 2307 * Custom schema
	Schema  string   `json:"schema,omitempty"`
	Servers []string `json:"servers,omitempty"`
	// Specifies the level of security to be used for LDAP communications: * none - no signing or sealing * sign - sign LDAP traffic * seal - seal and sign LDAP traffic
	SessionSecurity string  `json:"session_security,omitempty"`
	Svm             *DnsSvm `json:"svm,omitempty"`
	// Specifies whether or not to use Start TLS over LDAP connections.
	UseStartTls bool `json:"use_start_tls,omitempty"`
}

type LdapServiceResponse ¶

type LdapServiceResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of LDAP records.
	NumRecords int32         `json:"num_records,omitempty"`
	Records    []LdapService `json:"records,omitempty"`
}

type License ¶

type License struct {
	// A flag indicating whether the license is currently being enforced.
	Active     bool               `json:"active,omitempty"`
	Capacity   *LicenseCapacity   `json:"capacity,omitempty"`
	Compliance *LicenseCompliance `json:"compliance,omitempty"`
	// A flag indicating whether the license is in evaluation mode.
	Evaluation bool `json:"evaluation,omitempty"`
	// Date and time when the license expires.
	ExpiryTime time.Time `json:"expiry_time,omitempty"`
	// Cluster, node or license manager that owns the license.
	Owner string `json:"owner,omitempty"`
	// Serial number of the license.
	SerialNumber string `json:"serial_number,omitempty"`
	// Date and time when the license starts.
	StartTime time.Time `json:"start_time,omitempty"`
}

type LicenseCapacity ¶

type LicenseCapacity struct {
	// Licensed capacity size (in bytes) that can be used.
	MaximumSize int32 `json:"maximum_size,omitempty"`
	// Capacity that is currently used (in bytes).
	UsedSize int32 `json:"used_size,omitempty"`
}

type LicenseCompliance ¶

type LicenseCompliance struct {
	// Compliance state of the license.
	State string `json:"state,omitempty"`
}

type LicenseCreateOpts ¶

type LicenseCreateOpts struct {
	ReturnRecords optional.Bool
}

type LicenseGetOpts ¶

type LicenseGetOpts struct {
	State                       optional.String
	Name                        optional.String
	LicensesCapacityMaximumSize optional.Int32
	LicensesCapacityUsedSize    optional.Int32
	LicensesStartTime           optional.String
	LicensesSerialNumber        optional.String
	LicensesOwner               optional.String
	LicensesEvaluation          optional.Bool
	LicensesActive              optional.Bool
	LicensesExpiryTime          optional.String
	LicensesComplianceState     optional.String
	Scope                       optional.String
	Fields                      optional.Interface
}

type LicenseKeys ¶

type LicenseKeys struct {
	Keys []string `json:"keys,omitempty"`
}

License keys or NLF contents.

type LicensePackage ¶

type LicensePackage struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Keys  []string                `json:"keys,omitempty"`
	// Installed licenses of the package.
	Licenses []LicensePackageLicenses `json:"licenses,omitempty"`
	// Name of the license.
	Name string `json:"name,omitempty"`
	// Scope of the license.
	Scope string `json:"scope,omitempty"`
	// Summary state of package based on all installed licenses.
	State string `json:"state,omitempty"`
}

type LicensePackageLicenses ¶

type LicensePackageLicenses struct {
	// A flag indicating whether the license is currently being enforced.
	Active     bool               `json:"active,omitempty"`
	Capacity   *LicenseCapacity   `json:"capacity,omitempty"`
	Compliance *LicenseCompliance `json:"compliance,omitempty"`
	// A flag indicating whether the license is in evaluation mode.
	Evaluation bool `json:"evaluation,omitempty"`
	// Date and time when the license expires.
	ExpiryTime time.Time `json:"expiry_time,omitempty"`
	// Cluster, node or license manager that owns the license.
	Owner string `json:"owner,omitempty"`
	// Serial number of the license.
	SerialNumber string `json:"serial_number,omitempty"`
	// Date and time when the license starts.
	StartTime time.Time `json:"start_time,omitempty"`
}

type LicensePackageResponse ¶

type LicensePackageResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32                           `json:"num_records,omitempty"`
	Records    []LicensePackageResponseRecords `json:"records,omitempty"`
}

type LicensePackageResponseRecords ¶

type LicensePackageResponseRecords struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Keys  []string                `json:"keys,omitempty"`
	// Installed licenses of the package.
	Licenses []LicensePackageLicenses `json:"licenses,omitempty"`
	// Name of the license.
	Name string `json:"name,omitempty"`
	// Scope of the license.
	Scope string `json:"scope,omitempty"`
	// Summary state of package based on all installed licenses.
	State string `json:"state,omitempty"`
}

type LicenseState ¶

type LicenseState string
const (
	COMPLIANT_LicenseState    LicenseState = "compliant"
	NONCOMPLIANT_LicenseState LicenseState = "noncompliant"
	UNLICENSED_LicenseState   LicenseState = "unlicensed"
	UNKNOWN_LicenseState      LicenseState = "unknown"
)

List of license_state

type LicensesGetOpts ¶

type LicensesGetOpts struct {
	State                       optional.String
	Name                        optional.String
	LicensesCapacityMaximumSize optional.Int32
	LicensesCapacityUsedSize    optional.Int32
	LicensesStartTime           optional.String
	LicensesSerialNumber        optional.String
	LicensesOwner               optional.String
	LicensesEvaluation          optional.Bool
	LicensesActive              optional.Bool
	LicensesExpiryTime          optional.String
	LicensesComplianceState     optional.String
	Scope                       optional.String
	Fields                      optional.Interface
	MaxRecords                  optional.Int32
	ReturnRecords               optional.Bool
	ReturnTimeout               optional.Int32
	OrderBy                     optional.Interface
}

type Log ¶

type Log struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The format in which the logs are generated by consolidation process.   Possible values are:   * xml  - Data ONTAP-specific XML log format   * evtx - Microsoft Windows EVTX log format
	Format    string        `json:"format,omitempty"`
	Retention *LogRetention `json:"retention,omitempty"`
	Rotation  *Rotation     `json:"rotation,omitempty"`
}

type LogRetention ¶

type LogRetention struct {
	// Determines how many audit log files to retain before rotating the oldest log file out. This is mutually exclusive with duration.
	Count int32 `json:"count,omitempty"`
	// Specifies an ISO-8601 format date and time to retain the audit log file. The audit log files are deleted once they reach the specified date/time. This is mutually exclusive with count.
	Duration string `json:"duration,omitempty"`
}

type LoginMessages ¶

type LoginMessages struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The login banner text. This message is displayed during SSH and console device login just before the password prompt displays. When configured, a cluster-level login banner is used for every incoming connection. Each data SVM can override the cluster-level banner to instead display when you log into the SVM. To restore the default setting for a data SVM, set the banner to an empty string. New lines are supplied as either LF or CRLF but are always returned as LF. Optional in the PATCH body.
	Banner string `json:"banner,omitempty"`
	// The message of the day (MOTD). This message appears just before the clustershell prompt after a successful login. When configured, the cluster message displays first. If you log in as a data SVM administrator, the SVM message is then printed. The cluster-level MOTD can be disabled for a given data SVM using the \"show_cluster_message\" property. New lines are supplied as either LF or CRLF but are always returned as LF. Optional in the PATCH body.
	Message string        `json:"message,omitempty"`
	Scope   *NetworkScope `json:"scope,omitempty"`
	// Specifies whether to show a cluster-level message before the SVM message when logging in as an SVM administrator. This setting can only be modified by the cluster administrator. Optional in the PATCH body.
	ShowClusterMessage bool      `json:"show_cluster_message,omitempty"`
	Svm                *AuditSvm `json:"svm,omitempty"`
	// The unique identifier (ID) of the login messages configuration.
	Uuid string `json:"uuid,omitempty"`
}

The login banner and message of the day (MOTD) configuration.

type LoginMessagesCollectionGetOpts ¶

type LoginMessagesCollectionGetOpts struct {
	Banner             optional.String
	Uuid               optional.String
	ShowClusterMessage optional.Bool
	SvmUuid            optional.String
	SvmName            optional.String
	Message            optional.String
	Scope              optional.String
	Fields             optional.Interface
	MaxRecords         optional.Int32
	ReturnTimeout      optional.Int32
	ReturnRecords      optional.Bool
	OrderBy            optional.Interface
}

type LoginMessagesGetOpts ¶

type LoginMessagesGetOpts struct {
	Fields optional.Interface
}

type LoginMessagesModifyOpts ¶

type LoginMessagesModifyOpts struct {
	Info optional.Interface
}

type LoginMessagesResponse ¶

type LoginMessagesResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32           `json:"num_records,omitempty"`
	Records    []LoginMessages `json:"records,omitempty"`
}

type Lun ¶

type Lun struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// This property marks the LUN for auto deletion when the volume containing the LUN runs out of space. This is most commonly set on LUN clones.<br/> When set to _true_, the LUN becomes eligible for automatic deletion when the volume runs out of space. Auto deletion only occurs when the volume containing the LUN is also configured for auto deletion and free space in the volume decreases below a particular threshold.<br/> This property is optional in POST and PATCH. The default value for a new LUN is _false_.<br/> There is an added cost to retrieving this property's value. It is not populated for either a collection GET or an instance GET unless it is explicitly requested using the `fields` query parameter. See [`DOC Requesting specific fields`](#docs-docs-Requesting-specific-fields) to learn more.
	AutoDelete bool `json:"auto_delete,omitempty"`
	// The class of LUN. Only _regular_ LUNs can be created using the REST API.
	Class string    `json:"class,omitempty"`
	Clone *LunClone `json:"clone,omitempty"`
	// A configurable comment available for use by the administrator. Valid in POST and PATCH.
	Comment string `json:"comment,omitempty"`
	// The enabled state of the LUN. LUNs can be disabled to prevent access to the LUN. Certain error conditions also cause the LUN to become disabled. If the LUN is disabled, you can consult the `state` property to determine if the LUN is administratively disabled (_offline_) or has become disabled as a result of an error. A LUN in an error condition can be brought online by setting the `enabled` property to _true_ or brought administratively offline by setting the `enabled` property to _false_. Upon creation, a LUN is enabled by default. Valid in PATCH.
	Enabled  bool         `json:"enabled,omitempty"`
	Location *LunLocation `json:"location,omitempty"`
	// The LUN maps with which the LUN is associated.<br/> There is an added cost to retrieving property values for `lun_maps`. They are not populated for either a collection GET or an instance GET unless explicitly requested using the `fields` query parameter. See [`DOC Requesting specific fields`](#docs-docs-Requesting-specific-fields) to learn more.
	LunMaps  []LunLunMaps `json:"lun_maps,omitempty"`
	Movement *LunMovement `json:"movement,omitempty"`
	// The fully qualified path name of the LUN composed of a \"/vol\" prefix, the volume name, the (optional) qtree name, and base name of the LUN. Valid in POST and PATCH.<br/> A PATCH that modifies the qtree and/or base name portion of the LUN path is considered a rename operation.<br/> A PATCH that modifies the volume portion of the LUN path begins an asynchronous LUN movement operation.
	Name string `json:"name,omitempty"`
	// The operating system type of the LUN.<br/> Required in POST when creating a LUN that is not a clone of another. Disallowed in POST when creating a LUN clone.
	OsType    string        `json:"os_type,omitempty"`
	QosPolicy *LunQosPolicy `json:"qos_policy,omitempty"`
	// The LUN serial number. The serial number is generated by ONTAP when the LUN is created.
	SerialNumber string     `json:"serial_number,omitempty"`
	Space        *LunSpace  `json:"space,omitempty"`
	Status       *LunStatus `json:"status,omitempty"`
	Svm          *AuditSvm  `json:"svm,omitempty"`
	// The unique identifier of the LUN.  The UUID is generated by ONTAP when the LUN is created.
	Uuid string `json:"uuid,omitempty"`
}

A LUN is the logical representation of storage in a storage area network (SAN).<br/> In ONTAP, a LUN is located within a volume. Optionally, it can be located within a qtree in a volume.<br/> A LUN can be created to a specified size using thin or thick provisioning. A LUN can then be renamed, resized, cloned, and moved to a different volume. LUNs support the assignment of a quality of service (QoS) policy for performance management or a QoS policy can be assigned to the volume containing the LUN. See the LUN object model to learn more about each of the properties supported by the LUN REST API.<br/> A LUN must be mapped to an initiator group to grant access to the initiator group's initiators (client hosts). Initiators can then access the LUN and perform I/O over a Fibre Channel (FC) fabric using the Fibre Channel Protocol or a TCP/IP network using iSCSI.

type LunClone ¶

type LunClone struct {
	Source *LunCloneSource `json:"source,omitempty"`
}

This sub-object is used in POST to create a new LUN as a clone of an existing LUN, or PATCH to overwrite an existing LUN as a clone of another. Setting a property in this sub-object indicates that a LUN clone is desired. Consider the following other properties when cloning a LUN: `auto_delete`, `qos_policy`, and `space.guarantee.requested`.<br/> When used in a PATCH, the patched LUN's data is over-written as a clone of the source and the following properties are preserved from the patched LUN unless otherwise specified as part of the PATCH: `class`, `auto_delete`, `lun_maps`, `serial_number`, `status.state`, and `uuid`.<br/> Persistent reservations for the patched LUN are also preserved.

type LunCloneSource ¶

type LunCloneSource struct {
	// The fully qualified path name of the clone source LUN composed of a \"/vol\" prefix, the volume name, the (optional) qtree name, and base name of the LUN. Valid in POST and PATCH.
	Name string `json:"name,omitempty"`
	// The unique identifier of the clone source LUN. Valid in POST and PATCH.
	Uuid string `json:"uuid,omitempty"`
}

The source LUN for a LUN clone operation. This can be specified using property `clone.source.uuid` or `clone.source.name`. If both properties are supplied, they must refer to the same LUN.<br/> Valid in POST to create a new LUN as a clone of the source.<br/> Valid in PATCH to overwrite an existing LUN's data as a clone of another.

type LunCollectionGetOpts ¶

type LunCollectionGetOpts struct {
	LocationLogicalUnit                     optional.String
	LocationQtreeName                       optional.String
	LocationQtreeId                         optional.Int32
	LocationVolumeName                      optional.String
	LocationVolumeUuid                      optional.String
	StatusContainerState                    optional.String
	StatusMapped                            optional.Bool
	StatusState                             optional.String
	StatusReadOnly                          optional.Bool
	QosPolicyUuid                           optional.String
	QosPolicyName                           optional.String
	Class                                   optional.String
	MovementMaxThroughput                   optional.String
	MovementPathsSource                     optional.String
	MovementPathsDestination                optional.String
	MovementProgressState                   optional.String
	MovementProgressFailureCode             optional.String
	MovementProgressFailureArgumentsMessage optional.String
	MovementProgressFailureArgumentsCode    optional.String
	MovementProgressFailureMessage          optional.String
	MovementProgressFailureTarget           optional.String
	MovementProgressPercentComplete         optional.Int32
	MovementProgressVolumeSnapshotBlocked   optional.Bool
	MovementProgressElapsed                 optional.Int32
	SvmUuid                                 optional.String
	SvmName                                 optional.String
	Name                                    optional.String
	Enabled                                 optional.Bool
	LunMapsLogicalUnitNumber                optional.Int32
	LunMapsIgroupUuid                       optional.String
	LunMapsIgroupName                       optional.String
	SpaceSize                               optional.Int32
	SpaceGuaranteeRequested                 optional.Bool
	SpaceGuaranteeReserved                  optional.Bool
	SpaceUsed                               optional.Int32
	OsType                                  optional.String
	Comment                                 optional.String
	AutoDelete                              optional.Bool
	Uuid                                    optional.String
	SerialNumber                            optional.String
	Fields                                  optional.Interface
	MaxRecords                              optional.Int32
	ReturnRecords                           optional.Bool
	ReturnTimeout                           optional.Int32
	OrderBy                                 optional.Interface
}

type LunDeleteOpts ¶

type LunDeleteOpts struct {
	AllowDeleteWhileMapped optional.Bool
}

type LunGetOpts ¶

type LunGetOpts struct {
	Fields optional.Interface
}

type LunIgroup ¶

type LunIgroup struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the initiator group.
	Name string `json:"name,omitempty"`
	// The unique identifier of the initiator group.
	Uuid string `json:"uuid,omitempty"`
}

The initiator group to which the LUN is mapped.

type LunLocation ¶

type LunLocation struct {
	// The base name component of the LUN. Valid in POST and PATCH.<br/> If properties `name` and `location.logical_unit` are specified in the same request, they must refer to the base name.<br/> A PATCH that modifies the base name of the LUN is considered a rename operation.
	LogicalUnit string             `json:"logical_unit,omitempty"`
	Qtree       *LunLocationQtree  `json:"qtree,omitempty"`
	Volume      *LunLocationVolume `json:"volume,omitempty"`
}

The location of the LUN within the ONTAP cluster. Valid in POST and PATCH.

type LunLocationQtree ¶

type LunLocationQtree struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The identifier for the qtree, unique within the qtree's volume.
	Id int32 `json:"id,omitempty"`
	// The name of the qtree.
	Name string `json:"name,omitempty"`
}

The qtree in which the LUN is optionally located. Valid in POST and PATCH.<br/> If properties `name` and `location.qtree.name` and/or `location.qtree.uuid` are specified in the same request, they must refer to the same qtree.<br/> A PATCH that modifies the qtree of the LUN is considered a rename operation.

type LunLocationVolume ¶

type LunLocationVolume struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the volume.
	Name string `json:"name,omitempty"`
	// Unique identifier for the volume. This corresponds to the instance-uuid that is exposed in the CLI and ONTAPI. It does not change due to a volume move.
	Uuid string `json:"uuid,omitempty"`
}

The volume in which the LUN is located. Valid in POST and PATCH.<br/> If properties `name` and `location.volume.name` and/or `location.volume.uuid` are specified in the same request, they must refer to the same volume.<br/> A PATCH that modifies the volume of the LUN begins an asynchronous LUN movement operation.

type LunLunMaps ¶

type LunLunMaps struct {
	Links  *InlineResponse201Links `json:"_links,omitempty"`
	Igroup *LunIgroup              `json:"igroup,omitempty"`
	// The logical unit number assigned to the LUN for initiators in the initiator group.
	LogicalUnitNumber int32 `json:"logical_unit_number,omitempty"`
}

A LUN map with which the LUN is associated.

type LunMap ¶

type LunMap struct {
	Links  *InlineResponse201Links `json:"_links,omitempty"`
	Igroup *LunMapIgroup           `json:"igroup,omitempty"`
	// The logical unit number assigned to the LUN when mapped to the specified initiator group. The number is used to identify the LUN to initiators in the initiator group when communicating through Fibre Channel Protocol or iSCSI. Optional in POST; if no value is provided, ONTAP assigns the lowest available value.
	LogicalUnitNumber int32      `json:"logical_unit_number,omitempty"`
	Lun               *LunMapLun `json:"lun,omitempty"`
	Svm               *AuditSvm  `json:"svm,omitempty"`
}

A LUN map is an association between a LUN and an initiator group. When a LUN is mapped to an initiator group, the initiator group's initiators are granted access to the LUN. The relationship between a LUN and an initiator group is many LUNs to many initiator groups.

type LunMapCollectionGetOpts ¶

type LunMapCollectionGetOpts struct {
	SvmUuid           optional.String
	SvmName           optional.String
	LogicalUnitNumber optional.Int32
	IgroupProtocol    optional.String
	IgroupUuid        optional.String
	IgroupInitiators  optional.String
	IgroupOsType      optional.String
	IgroupName        optional.String
	LunName           optional.String
	LunNodeName       optional.String
	LunNodeUuid       optional.String
	LunUuid           optional.String
	Fields            optional.Interface
	MaxRecords        optional.Int32
	ReturnRecords     optional.Bool
	ReturnTimeout     optional.Int32
	OrderBy           optional.Interface
}

type LunMapGetOpts ¶

type LunMapGetOpts struct {
	Fields optional.Interface
}

type LunMapIgroup ¶

type LunMapIgroup struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The initiators that are members of the initiator group.
	Initiators []string `json:"initiators,omitempty"`
	// The name of the initiator group. Valid in POST.
	Name string `json:"name,omitempty"`
	// The host operating system of the initiator group. All initiators in the group should be hosts of the same operating system.
	OsType string `json:"os_type,omitempty"`
	// The protocols supported by the initiator group. This restricts the type of initiators that can be added to the initiator group.
	Protocol string `json:"protocol,omitempty"`
	// The unique identifier of the initiator group. Valid in POST.
	Uuid string `json:"uuid,omitempty"`
}

The initiator group to which the LUN is mapped. Required in POST by supplying either the `igroup.uuid`, `igroup.name`, or both.

type LunMapLun ¶

type LunMapLun struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The fully qualified path name of the LUN composed of a \\\"/vol\\\" prefix, the volume name, the (optional) qtree name, and file name of the LUN. Valid in POST.
	Name string         `json:"name,omitempty"`
	Node *LunMapLunNode `json:"node,omitempty"`
	// The unique identifier of the LUN. Valid in POST.
	Uuid string `json:"uuid,omitempty"`
}

The LUN to which the initiator group is mapped. Required in POST by supplying either the `lun.uuid`, `lun.name`, or both.

type LunMapLunNode ¶

type LunMapLunNode struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name the LUN's node.
	Name string `json:"name,omitempty"`
	// The unique identifier of the LUN node.
	Uuid string `json:"uuid,omitempty"`
}

The LUN node.

type LunMapResponse ¶

type LunMapResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32    `json:"num_records,omitempty"`
	Records    []LunMap `json:"records,omitempty"`
}

type LunMovement ¶

type LunMovement struct {
	// The maximum data throughput that should be utilized in support of the LUN movement. This property can be used to throttle a transfer and limit its impact on the performance of the source and destination nodes. The specified value will be rounded up to the nearest megabyte.<br/> If this property is not specified in a POST that begins a LUN movement, throttling is not applied to the data transfer.<br/> For more information, see _Size properties_ in the _docs_ section of the ONTAP REST API documentation.<br/> This property is valid only in a POST that begins a LUN movement or a PATCH when a LUN movement is already in process.
	MaxThroughput string               `json:"max_throughput,omitempty"`
	Paths         *LunMovementPaths    `json:"paths,omitempty"`
	Progress      *LunMovementProgress `json:"progress,omitempty"`
}

This sub-object applies to LUN movement between volumes. A LUN can be moved to a new volume with a PATCH request that changes either the volume portion of property `name`, `location.volume.uuid`, or `location.volume.name`. If the volume is changed using more than one of these properties, the supplied properties used must refer to the same volume.<br/> Moving a LUN between volumes is an asynchronous activity begun by a PATCH request. The data for the LUN is then asynchronously copied from the source volume to the destination volume. The time required to complete the move depends on the size of the LUN and the load on the cluster. The `movement` sub-object is populated while a LUN movement is in progress and for two (2) minutes following completion of a movement.<br/> While the LUN is being moved, the status of the LUN movement operation can be obtained using a GET for the LUN that requests the `movement` properties. The LUN movement operation can be further modified using a PATCH on the properties on the `movement` sub-object.<br/> There is added cost to retrieving property values for `movement`. They are not populated for either a collection GET or an instance GET unless explicitly requested using the `fields` query parameter. See [`DOC Requesting specific fields`](#docs-docs-Requesting-specific-fields) to learn more.

type LunMovementPaths ¶

type LunMovementPaths struct {
	// The fully qualified path of the LUN movement destination composed of a \"/vol\" prefix, the volume name, the (optional) qtree name, and base name of the LUN.
	Destination string `json:"destination,omitempty"`
	// The fully qualified path of the LUN movement source composed of a \"/vol\" prefix, the volume name, the (optional) qtree name, and base name of the LUN.
	Source string `json:"source,omitempty"`
}

The fully qualified LUN path names involved in the LUN movement.

type LunMovementProgress ¶

type LunMovementProgress struct {
	// The amount of time, in seconds, that has elapsed since the start of the LUN movement.
	Elapsed int32                       `json:"elapsed,omitempty"`
	Failure *LunMovementProgressFailure `json:"failure,omitempty"`
	// The percentage complete of the LUN movement.
	PercentComplete int32 `json:"percent_complete,omitempty"`
	// The state of the LUN movement.<br/> Valid in PATCH when an LUN movement is active. Set to _paused_ to pause a LUN movement. Set to _replicating_ to resume a paused LUN movement.
	State string `json:"state,omitempty"`
	// This property reports if volume Snapshot copies are blocked by the LUN movement. This property can be polled to identify when volume Snapshot copies can be resumed after beginning a LUN movement.
	VolumeSnapshotBlocked bool `json:"volume_snapshot_blocked,omitempty"`
}

type LunMovementProgressFailure ¶

type LunMovementProgressFailure struct {
	// Message arguments
	Arguments []ErrorArguments `json:"arguments,omitempty"`
	// Error code
	Code string `json:"code,omitempty"`
	// Error message
	Message string `json:"message,omitempty"`
	// The target parameter that caused the error.
	Target string `json:"target,omitempty"`
}

Error information provided if the asynchronous LUN movement operation fails.

type LunQosPolicy ¶

type LunQosPolicy struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the QoS policy. To remove the QoS policy from a LUN, leaving it with no QoS policy, set this property to an empty string (\"\") in a PATCH request. Valid in POST and PATCH.
	Name string `json:"name,omitempty"`
	// The unique identifier of the QoS policy. Valid in POST and PATCH.
	Uuid string `json:"uuid,omitempty"`
}

The QoS policy for the LUN. Both traditional and adaptive QoS policies are supported. If both property `qos_policy.uuid` and `qos_policy.name` are specified in the same request, they must refer to the same QoS policy. To remove the QoS policy from a LUN, leaving it with no QoS policy, set property `qos_policy.name` to an empty string (\"\") in a PATCH request. Valid in POST and PATCH.<br/> Note that a QoS policy can be set on a LUN, or a LUN's volume, but not both.

type LunReference ¶

type LunReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The fully qualified path name of the LUN composed of the \"/vol\" prefix, the volume name, the (optional) qtree name, and base name of the LUN. Valid in POST and PATCH.
	Name string `json:"name,omitempty"`
	// The unique identifier of the LUN.
	Uuid string `json:"uuid,omitempty"`
}

A reference to a LUN.

type LunResponse ¶

type LunResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32 `json:"num_records,omitempty"`
	Records    []Lun `json:"records,omitempty"`
}

type LunSpace ¶

type LunSpace struct {
	Guarantee *LunSpaceGuarantee `json:"guarantee,omitempty"`
	// The total provisioned size of the LUN. The LUN size can be increased but not be made smaller using the REST interface.<br/> For more information, see _Size properties_ in the _docs_ section of the ONTAP REST API documentation.
	Size int32 `json:"size,omitempty"`
	// The amount of space consumed by the main data stream of the LUN.<br/> This value is the total space consumed in the volume by the LUN, including filesystem overhead, but excluding prefix and suffix streams. Due to internal filesystem overhead and the many ways SAN filesystems and applications utilize blocks within a LUN, this value does not necessarily reflect actual consumption/availability from the perspective of the filesystem or application. Without specific knowledge of how the LUN blocks are utilized outside of ONTAP, this property should not be used as an indicator for an out-of-space condition.<br/> For more information, see _Size properties_ in the _docs_ section of the ONTAP REST API documentation.
	Used int32 `json:"used,omitempty"`
}

The storage space related properties of the LUN.

type LunSpaceGuarantee ¶

type LunSpaceGuarantee struct {
	// The requested space reservation policy for the LUN. If _true_, a space reservation is requested for the LUN; if _false_, the LUN is thin provisioned. Guaranteeing a space reservation request for a LUN requires that the volume in which the LUN resides is also space reserved and that the fractional reserve for the volume is 100%. Valid in POST and PATCH.
	Requested bool `json:"requested,omitempty"`
	// Reports if the LUN is space guaranteed.<br/> If _true_, a space guarantee is requested and the containing volume and aggregate support the request. If _false_, a space guarantee is not requested or a space guarantee is requested and either the containing volume or aggregate do not support the request.
	Reserved bool `json:"reserved,omitempty"`
}

Properties that request and report the space guarantee for the LUN.

type LunStatus ¶

type LunStatus struct {
	// The state of the volume and aggregate that contain the LUN. LUNs are only available when their containers are available.
	ContainerState string `json:"container_state,omitempty"`
	// Reports if the LUN is mapped to one or more initiator groups.<br/> There is an added cost to retrieving this property's value. It is not populated for either a collection GET or an instance GET unless it is explicitly requested using the `fields` query parameter. See [`DOC Requesting specific fields`](#docs-docs-Requesting-specific-fields) to learn more.
	Mapped bool `json:"mapped,omitempty"`
	// Reports if the LUN allows only read access.
	ReadOnly bool `json:"read_only,omitempty"`
	// The state of the LUN. Normal states for a LUN are _online_ and _offline_. Other states indicate errors.
	State string `json:"state,omitempty"`
}

Status information about the LUN.

type MaxdataOnSan ¶

type MaxdataOnSan struct {
	// Type of the application that is being deployed on the L2. Required in the POST body
	AppType string `json:"app_type,omitempty"`
	// application-components. Optional in the POST or PATCH body
	ApplicationComponents []MaxdataOnSanApplicationComponents `json:"application_components,omitempty"`
	Metadata              []MaxdataOnSanMetadata              `json:"metadata,omitempty"`
	// The list of initiator groups to create. Optional in the POST or PATCH body
	NewIgroups []MaxdataOnSanNewIgroups `json:"new_igroups,omitempty"`
	// The OnCommand System Manager URL for this application
	OcsmUrl string `json:"ocsm_url,omitempty"`
	// The name of the host OS running the application. Required in the POST body
	OsType string `json:"os_type,omitempty"`
}

MAX Data application using SAN.

type MaxdataOnSanApplicationComponents ¶

type MaxdataOnSanApplicationComponents struct {
	// The name of the application component. Required in the POST body and optional in the PATCH body
	Name string `json:"name,omitempty"`
	// Defines the kind of file system that will be installed on this application component. Optional in the POST body
	FileSystem string `json:"file_system,omitempty"`
	// The host management URL for this application component
	HostManagementUrl string `json:"host_management_url,omitempty"`
	// FQDN of the L2 host that contains the hot tier of this application component. Required in the POST body
	HostName string `json:"host_name,omitempty"`
	// The name of the initiator group through which the contents of this application will be accessed. Modification of this parameter is a disruptive operation. All LUNs in the application component will be unmapped from the current igroup and re-mapped to the new igroup. Required in the POST body and optional in the PATCH body
	IgroupName string `json:"igroup_name,omitempty"`
	// The number of LUNs in the application component. Required in the POST body
	LunCount       int32                                            `json:"lun_count,omitempty"`
	Metadata       []MaxdataOnSanApplicationComponentsMetadata      `json:"metadata,omitempty"`
	ProtectionType *MaxdataOnSanApplicationComponentsProtectionType `json:"protection_type,omitempty"`
	StorageService *MaxdataOnSanApplicationComponentsStorageService `json:"storage_service,omitempty"`
	// The total size of the application component, split across the member LUNs. Usage: {&lt;integer&gt;[KB|MB|GB|TB|PB]} Required in the POST body
	TotalSize int32 `json:"total_size,omitempty"`
}

application-components

type MaxdataOnSanApplicationComponentsMetadata ¶

type MaxdataOnSanApplicationComponentsMetadata struct {
	// Key to look up metadata associated with an application component. Optional in the POST body
	Key string `json:"key,omitempty"`
	// Value associated with the key. Optional in the POST body
	Value string `json:"value,omitempty"`
}

type MaxdataOnSanApplicationComponentsProtectionType ¶

type MaxdataOnSanApplicationComponentsProtectionType struct {
	// The local rpo of the application component. Optional in the POST or PATCH body
	LocalRpo string `json:"local_rpo,omitempty"`
	// The remote rpo of the application component. Optional in the POST or PATCH body
	RemoteRpo string `json:"remote_rpo,omitempty"`
}

type MaxdataOnSanApplicationComponentsStorageService ¶

type MaxdataOnSanApplicationComponentsStorageService struct {
	// The storage service of the application component. Optional in the POST or PATCH body
	Name string `json:"name,omitempty"`
}

type MaxdataOnSanMetadata ¶

type MaxdataOnSanMetadata struct {
	// Key to look up metadata associated with an application. Optional in the POST body
	Key string `json:"key,omitempty"`
	// Value associated with the key. Optional in the POST body
	Value string `json:"value,omitempty"`
}

type MaxdataOnSanNewIgroups ¶

type MaxdataOnSanNewIgroups struct {
	// The name of the new initiator group. Required in the POST body and optional in the PATCH body
	Name       string   `json:"name,omitempty"`
	Initiators []string `json:"initiators,omitempty"`
	// The name of the host OS accessing the application. The default value is the host OS that is running the application. Optional in the POST or PATCH body
	OsType string `json:"os_type,omitempty"`
	// The protocol of the new initiator group. Optional in the POST or PATCH body
	Protocol string `json:"protocol,omitempty"`
}

The list of initiator groups to create.

type ModelError ¶

type ModelError struct {
	// Message arguments
	Arguments []ErrorArguments `json:"arguments,omitempty"`
	// Error code
	Code string `json:"code,omitempty"`
	// Error message
	Message string `json:"message,omitempty"`
	// The target parameter that caused the error.
	Target string `json:"target,omitempty"`
}

type MongoDbOnSan ¶

type MongoDbOnSan struct {
	Dataset *MongoDbOnSanDataset `json:"dataset,omitempty"`
	// The list of initiator groups to create. Optional in the POST or PATCH body
	NewIgroups []MongoDbOnSanNewIgroups `json:"new_igroups,omitempty"`
	// The name of the host OS running the application. Optional in the POST body
	OsType string `json:"os_type,omitempty"`
	// The initiator group for the primary. Required in the POST body and optional in the PATCH body
	PrimaryIgroupName string                         `json:"primary_igroup_name,omitempty"`
	ProtectionType    *MongoDbOnSanProtectionType    `json:"protection_type,omitempty"`
	SecondaryIgroups  []MongoDbOnSanSecondaryIgroups `json:"secondary_igroups,omitempty"`
}

MongoDB using SAN.

type MongoDbOnSanDataset ¶

type MongoDbOnSanDataset struct {
	// The number of storage elements (LUNs for SAN) of the database to maintain.  Must be an even number between 2 and 16.  Odd numbers will be rounded up to the next even number within range. Optional in the POST body
	ElementCount int32 `json:"element_count,omitempty"`
	// The number of data bearing members of the replicaset, including 1 primary and at least 1 secondary. Optional in the POST body
	ReplicationFactor int32 `json:"replication_factor,omitempty"`
	// The size of the database. Usage: {&lt;integer&gt;[KB|MB|GB|TB|PB]} Required in the POST body and optional in the PATCH body
	Size           int32                              `json:"size,omitempty"`
	StorageService *MongoDbOnSanDatasetStorageService `json:"storage_service,omitempty"`
}

type MongoDbOnSanDatasetStorageService ¶

type MongoDbOnSanDatasetStorageService struct {
	// The storage service of the database. Optional in the POST or PATCH body
	Name string `json:"name,omitempty"`
}

type MongoDbOnSanNewIgroups ¶

type MongoDbOnSanNewIgroups struct {
	// The name of the new initiator group. Required in the POST body and optional in the PATCH body
	Name       string   `json:"name,omitempty"`
	Initiators []string `json:"initiators,omitempty"`
	// The name of the host OS accessing the application. The default value is the host OS that is running the application. Optional in the POST or PATCH body
	OsType string `json:"os_type,omitempty"`
	// The protocol of the new initiator group. Optional in the POST or PATCH body
	Protocol string `json:"protocol,omitempty"`
}

The list of initiator groups to create.

type MongoDbOnSanProtectionType ¶

type MongoDbOnSanProtectionType struct {
	// The local rpo of the application. Optional in the POST or PATCH body
	LocalRpo string `json:"local_rpo,omitempty"`
	// The remote rpo of the application. Optional in the POST body
	RemoteRpo string `json:"remote_rpo,omitempty"`
}

type MongoDbOnSanSecondaryIgroups ¶

type MongoDbOnSanSecondaryIgroups struct {
	// The name of the initiator group for each secondary. Optional in the POST or PATCH body
	Name string `json:"name,omitempty"`
}

type NASApiService ¶

type NASApiService service

func (*NASApiService) AuditCollectionGet ¶

func (a *NASApiService) AuditCollectionGet(ctx context.Context, localVarOptionals *AuditCollectionGetOpts) (AuditResponse, *http.Response, error)

func (*NASApiService) AuditCreate ¶

func (a *NASApiService) AuditCreate(ctx context.Context, localVarOptionals *AuditCreateOpts) (AuditResponse, *http.Response, error)

func (*NASApiService) AuditDelete ¶

func (a *NASApiService) AuditDelete(ctx context.Context, svmUuid string) (*http.Response, error)

NASApiService Deletes an audit configuration. ### Related ONTAP commands * &#x60;vserver audit disable&#x60; * &#x60;vserver audit delete&#x60; ### Learn more * [&#x60;DOC /protocols/audit&#x60;](#docs-NAS-protocols_audit)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.

func (*NASApiService) AuditGet ¶

func (a *NASApiService) AuditGet(ctx context.Context, svmUuid string, localVarOptionals *AuditGetOpts) (Audit, *http.Response, error)

func (*NASApiService) AuditModify ¶

func (a *NASApiService) AuditModify(ctx context.Context, svmUuid string, localVarOptionals *AuditModifyOpts) (*http.Response, error)

func (*NASApiService) CifsHomedirSearchPathGet ¶

func (a *NASApiService) CifsHomedirSearchPathGet(ctx context.Context, svmUuid string, index int32, localVarOptionals *CifsHomedirSearchPathGetOpts) (CifsSearchPath, *http.Response, error)

func (*NASApiService) CifsSearchPathCollectionGet ¶

func (a *NASApiService) CifsSearchPathCollectionGet(ctx context.Context, localVarOptionals *CifsSearchPathCollectionGetOpts) (CifsSearchPathResponse, *http.Response, error)

func (*NASApiService) CifsSearchPathCreate ¶

func (a *NASApiService) CifsSearchPathCreate(ctx context.Context, localVarOptionals *CifsSearchPathCreateOpts) (CifsSearchPathResponse, *http.Response, error)

func (*NASApiService) CifsSearchPathDelete ¶

func (a *NASApiService) CifsSearchPathDelete(ctx context.Context, svmUuid string, index int32) (*http.Response, error)

NASApiService Deletes a CIFS home directory search path. ### Related ONTAP commands * &#x60;cifs server home-directory search-path remove&#x60; ### Learn more * [&#x60;DOC /protocols/cifs/home-directory/search-paths&#x60;](#docs-NAS-protocols_cifs_home-directory_search-paths)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.
  • @param index Home directory search path index

func (*NASApiService) CifsSearchPathModify ¶

func (a *NASApiService) CifsSearchPathModify(ctx context.Context, svmUuid string, index int32, localVarOptionals *CifsSearchPathModifyOpts) (*http.Response, error)

func (*NASApiService) CifsServiceCollectionGet ¶

func (a *NASApiService) CifsServiceCollectionGet(ctx context.Context, localVarOptionals *CifsServiceCollectionGetOpts) (CifsServiceResponse, *http.Response, error)

func (*NASApiService) CifsServiceCreate ¶

func (a *NASApiService) CifsServiceCreate(ctx context.Context, localVarOptionals *CifsServiceCreateOpts) (JobLinkResponse, *http.Response, error)

func (*NASApiService) CifsServiceDelete ¶

func (a *NASApiService) CifsServiceDelete(ctx context.Context, svmUuid string, localVarOptionals *CifsServiceDeleteOpts) (JobLinkResponse, *http.Response, error)

func (*NASApiService) CifsServiceGet ¶

func (a *NASApiService) CifsServiceGet(ctx context.Context, svmUuid string, localVarOptionals *CifsServiceGetOpts) (CifsService, *http.Response, error)

func (*NASApiService) CifsServiceModify ¶

func (a *NASApiService) CifsServiceModify(ctx context.Context, svmUuid string, localVarOptionals *CifsServiceModifyOpts) (JobLinkResponse, *http.Response, error)

func (*NASApiService) CifsShareAclCollectionGet ¶

func (a *NASApiService) CifsShareAclCollectionGet(ctx context.Context, svmUuid string, share string, localVarOptionals *CifsShareAclCollectionGetOpts) (CifsShareAclResponse, *http.Response, error)

func (*NASApiService) CifsShareAclCreate ¶

func (a *NASApiService) CifsShareAclCreate(ctx context.Context, svmUuid string, share string, localVarOptionals *CifsShareAclCreateOpts) (*http.Response, error)

func (*NASApiService) CifsShareAclDelete ¶

func (a *NASApiService) CifsShareAclDelete(ctx context.Context, svmUuid string, share string, userOrGroup string, type_ string) (*http.Response, error)

NASApiService Deletes a share-level ACL on a CIFS share. ### Related ONTAP commands * &#x60;vserver cifs share access-control delete&#x60; ### Learn more * [&#x60;DOC /protocols/cifs/shares/{svm.uuid}/{share}/acls&#x60;](#docs-NAS-protocols_cifs_shares_{svm.uuid}_{share}_acls)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.
  • @param share Share name
  • @param userOrGroup User or group name
  • @param type_ User or group type

func (*NASApiService) CifsShareAclGet ¶

func (a *NASApiService) CifsShareAclGet(ctx context.Context, svmUuid string, share string, userOrGroup string, type_ string, localVarOptionals *CifsShareAclGetOpts) (CifsShareAcl, *http.Response, error)

func (*NASApiService) CifsShareAclModify ¶

func (a *NASApiService) CifsShareAclModify(ctx context.Context, svmUuid string, share string, userOrGroup string, type_ string, localVarOptionals *CifsShareAclModifyOpts) (*http.Response, error)

func (*NASApiService) CifsShareCollectionGet ¶

func (a *NASApiService) CifsShareCollectionGet(ctx context.Context, localVarOptionals *CifsShareCollectionGetOpts) (CifsShareResponse, *http.Response, error)

func (*NASApiService) CifsShareCreate ¶

func (a *NASApiService) CifsShareCreate(ctx context.Context, localVarOptionals *CifsShareCreateOpts) (*http.Response, error)

func (*NASApiService) CifsShareDelete ¶

func (a *NASApiService) CifsShareDelete(ctx context.Context, svmUuid string, name string) (*http.Response, error)

NASApiService Deletes a CIFS share. ### Related ONTAP commands * &#x60;vserver cifs share delete&#x60; ### Learn more * [&#x60;DOC /protocols/cifs/shares&#x60;](#docs-NAS-protocols_cifs_shares)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.
  • @param name Share Name

func (*NASApiService) CifsShareGet ¶

func (a *NASApiService) CifsShareGet(ctx context.Context, svmUuid string, name string, localVarOptionals *CifsShareGetOpts) (CifsShare, *http.Response, error)

func (*NASApiService) CifsShareModify ¶

func (a *NASApiService) CifsShareModify(ctx context.Context, svmUuid string, name string, localVarOptionals *CifsShareModifyOpts) (*http.Response, error)

func (*NASApiService) CifsSymlinkMappingCollectionGet ¶

func (a *NASApiService) CifsSymlinkMappingCollectionGet(ctx context.Context, localVarOptionals *CifsSymlinkMappingCollectionGetOpts) (CifsSymlinkMappingResponse, *http.Response, error)

func (*NASApiService) CifsSymlinkMappingCreate ¶

func (a *NASApiService) CifsSymlinkMappingCreate(ctx context.Context, localVarOptionals *CifsSymlinkMappingCreateOpts) (CifsSymlinkMappingResponse, *http.Response, error)

func (*NASApiService) CifsSymlinkMappingDelete ¶

func (a *NASApiService) CifsSymlinkMappingDelete(ctx context.Context, svmUuid string, unixPath string) (*http.Response, error)

NASApiService Deletes the UNIX symbolic link mapping for CIFS clients. ### Related ONTAP commands * &#x60;vserver cifs symlink delete&#x60; ### Learn more * [&#x60;DOC /protocols/cifs/unix-symlink-mapping&#x60;](#docs-NAS-protocols_cifs_unix-symlink-mapping)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.
  • @param unixPath UNIX symbolic link path

func (*NASApiService) CifsSymlinkMappingGet ¶

func (a *NASApiService) CifsSymlinkMappingGet(ctx context.Context, svmUuid string, unixPath string, localVarOptionals *CifsSymlinkMappingGetOpts) (CifsSymlinkMapping, *http.Response, error)

func (*NASApiService) CifsSymlinkMappingModify ¶

func (a *NASApiService) CifsSymlinkMappingModify(ctx context.Context, svmUuid string, unixPath string, localVarOptionals *CifsSymlinkMappingModifyOpts) (*http.Response, error)

func (*NASApiService) ExportPolicyCollectionGet ¶

func (a *NASApiService) ExportPolicyCollectionGet(ctx context.Context, localVarOptionals *ExportPolicyCollectionGetOpts) (ExportPolicyResponse, *http.Response, error)

func (*NASApiService) ExportPolicyCreate ¶

func (a *NASApiService) ExportPolicyCreate(ctx context.Context, localVarOptionals *ExportPolicyCreateOpts) (ExportPolicyResponse, *http.Response, error)

func (*NASApiService) ExportPolicyDelete ¶

func (a *NASApiService) ExportPolicyDelete(ctx context.Context, id int32) (*http.Response, error)

NASApiService Deletes an export policy. ### Related ONTAP commands * &#x60;vserver export-policy delete&#x60; ### Learn more * [&#x60;DOC /protocols/nfs/export-policies&#x60;](#docs-NAS-protocols_nfs_export-policies)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param id Export Policy ID

func (*NASApiService) ExportPolicyGet ¶

func (a *NASApiService) ExportPolicyGet(ctx context.Context, id int32, localVarOptionals *ExportPolicyGetOpts) (ExportPolicy, *http.Response, error)

func (*NASApiService) ExportPolicyModify ¶

func (a *NASApiService) ExportPolicyModify(ctx context.Context, id int32, localVarOptionals *ExportPolicyModifyOpts) (*http.Response, error)

func (*NASApiService) ExportRuleClientsCreate ¶

func (a *NASApiService) ExportRuleClientsCreate(ctx context.Context, policyId int32, index int32, localVarOptionals *ExportRuleClientsCreateOpts) (ExportClientResponse, *http.Response, error)

func (*NASApiService) ExportRuleClientsDelete ¶

func (a *NASApiService) ExportRuleClientsDelete(ctx context.Context, policyId int32, index int32, match string) (*http.Response, error)

NASApiService Deletes an export policy client ### Related ONTAP commands * &#x60;vserver export-policy rule remove-clientmatches&#x60; ### Learn more * [&#x60;DOC /protocols/nfs/export-policies&#x60;](#docs-NAS-protocols_nfs_export-policies)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param policyId Export Policy ID
  • @param index Export Rule Index
  • @param match Export Client Match

func (*NASApiService) ExportRuleClientsGet ¶

func (a *NASApiService) ExportRuleClientsGet(ctx context.Context, policyId int32, index int32) (ExportClientResponse, *http.Response, error)

NASApiService Retrieves export policy rule clients. ### Learn more * [&#x60;DOC /protocols/nfs/export-policies&#x60;](#docs-NAS-protocols_nfs_export-policies)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param policyId Export Policy ID
  • @param index Export Rule Index

@return ExportClientResponse

func (*NASApiService) ExportRuleCollectionGet ¶

func (a *NASApiService) ExportRuleCollectionGet(ctx context.Context, policyId int32, localVarOptionals *ExportRuleCollectionGetOpts) (ExportRuleResponse, *http.Response, error)

func (*NASApiService) ExportRuleCreate ¶

func (a *NASApiService) ExportRuleCreate(ctx context.Context, policyId int32, localVarOptionals *ExportRuleCreateOpts) (ExportRuleResponse, *http.Response, error)

func (*NASApiService) ExportRuleDelete ¶

func (a *NASApiService) ExportRuleDelete(ctx context.Context, policyId int32, index int32) (*http.Response, error)

NASApiService Deletes an export policy rule. ### Related ONTAP commands * &#x60;vserver export-policy rule delete&#x60; ### Learn more * [&#x60;DOC /protocols/nfs/export-policies&#x60;](#docs-NAS-protocols_nfs_export-policies)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param policyId Export Policy ID
  • @param index Export Rule Index

func (*NASApiService) ExportRuleGet ¶

func (a *NASApiService) ExportRuleGet(ctx context.Context, policyId int32, index int32, localVarOptionals *ExportRuleGetOpts) (ExportRule, *http.Response, error)

func (*NASApiService) ExportRuleModify ¶

func (a *NASApiService) ExportRuleModify(ctx context.Context, policyId int32, index int32, localVarOptionals *ExportRuleModifyOpts) (*http.Response, error)

func (*NASApiService) FpolicyCollectionGet ¶

func (a *NASApiService) FpolicyCollectionGet(ctx context.Context, localVarOptionals *FpolicyCollectionGetOpts) (FpolicyResponse, *http.Response, error)

func (*NASApiService) FpolicyCreate ¶

func (a *NASApiService) FpolicyCreate(ctx context.Context, localVarOptionals *FpolicyCreateOpts) (FpolicyResponse, *http.Response, error)

func (*NASApiService) FpolicyDelete ¶

func (a *NASApiService) FpolicyDelete(ctx context.Context, svmUuid string) (*http.Response, error)

NASApiService Deletes the FPolicy configuration for the specified SVM. Before deleting the FPolicy configuration, ensure that all policies belonging to the SVM are disabled. ### Related ONTAP commands * &#x60;fpolicy delete&#x60; * &#x60;fpolicy policy scope delete&#x60; * &#x60;fpolicy policy delete&#x60; * &#x60;fpolicy policy event delete&#x60; * &#x60;fpolicy policy external-engine delete&#x60; ### Learn more * [&#x60;DOC /protocols/fpolicy&#x60;](#docs-NAS-protocols_fpolicy)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.

func (*NASApiService) FpolicyEngineCollectionGet ¶

func (a *NASApiService) FpolicyEngineCollectionGet(ctx context.Context, svmUuid string, localVarOptionals *FpolicyEngineCollectionGetOpts) (FpolicyEngineResponse, *http.Response, error)

func (*NASApiService) FpolicyEngineCreate ¶

func (a *NASApiService) FpolicyEngineCreate(ctx context.Context, svmUuid string, localVarOptionals *FpolicyEngineCreateOpts) (FpolicyEngineResponse, *http.Response, error)

func (*NASApiService) FpolicyEngineDelete ¶

func (a *NASApiService) FpolicyEngineDelete(ctx context.Context, svmUuid string, name string) (*http.Response, error)

NASApiService Deletes the FPolicy external engine configuration. Deletion of an FPolicy engine that is attached to one or more FPolicy policies is not allowed. ### Related ONTAP commands * &#x60;fpolicy policy external-engine modify&#x60; ### Learn more * [&#x60;DOC /protocols/fpolicy/{svm.uuid}/engines&#x60;](#docs-NAS-protocols_fpolicy_{svm.uuid}_engines)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.
  • @param name

func (*NASApiService) FpolicyEngineGet ¶

func (a *NASApiService) FpolicyEngineGet(ctx context.Context, svmUuid string, name string, localVarOptionals *FpolicyEngineGetOpts) (FpolicyEngine, *http.Response, error)

func (*NASApiService) FpolicyEngineModify ¶

func (a *NASApiService) FpolicyEngineModify(ctx context.Context, svmUuid string, name string, localVarOptionals *FpolicyEngineModifyOpts) (*http.Response, error)

func (*NASApiService) FpolicyEventCollectionGet ¶

func (a *NASApiService) FpolicyEventCollectionGet(ctx context.Context, svmUuid string, localVarOptionals *FpolicyEventCollectionGetOpts) (FpolicyEventResponse, *http.Response, error)

func (*NASApiService) FpolicyEventCreate ¶

func (a *NASApiService) FpolicyEventCreate(ctx context.Context, svmUuid string, localVarOptionals *FpolicyEventCreateOpts) (FpolicyEventResponse, *http.Response, error)

func (*NASApiService) FpolicyEventDelete ¶

func (a *NASApiService) FpolicyEventDelete(ctx context.Context, svmUuid string, name string) (*http.Response, error)

NASApiService Deletes a specific FPolicy event configuration for an SVM. A cluster-level FPolicy event configuration cannot be modified for a data SVM through REST. An FPolicy event that is attached to an FPolicy policy cannot be deleted. ### Related ONTAP commands * &#x60;fpolicy policy event delete&#x60; ### Learn more * [&#x60;DOC /protocols/fpolicy/{svm.uuid}/events&#x60;](#docs-NAS-protocols_fpolicy_{svm.uuid}_events)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.
  • @param name

func (*NASApiService) FpolicyEventModify ¶

func (a *NASApiService) FpolicyEventModify(ctx context.Context, svmUuid string, name string, localVarOptionals *FpolicyEventModifyOpts) (*http.Response, error)

func (*NASApiService) FpolicyEventsGet ¶

func (a *NASApiService) FpolicyEventsGet(ctx context.Context, svmUuid string, name string, localVarOptionals *FpolicyEventsGetOpts) (FpolicyEvent, *http.Response, error)

func (*NASApiService) FpolicyGet ¶

func (a *NASApiService) FpolicyGet(ctx context.Context, svmUuid string, localVarOptionals *FpolicyGetOpts) (Fpolicy, *http.Response, error)

func (*NASApiService) FpolicyPolicyCollectionGet ¶

func (a *NASApiService) FpolicyPolicyCollectionGet(ctx context.Context, svmUuid string, localVarOptionals *FpolicyPolicyCollectionGetOpts) (FpolicyPolicyResponse, *http.Response, error)

func (*NASApiService) FpolicyPolicyCreate ¶

func (a *NASApiService) FpolicyPolicyCreate(ctx context.Context, svmUuid string, localVarOptionals *FpolicyPolicyCreateOpts) (FpolicyPolicyResponse, *http.Response, error)

func (*NASApiService) FpolicyPolicyDelete ¶

func (a *NASApiService) FpolicyPolicyDelete(ctx context.Context, svmUuid string, name string) (*http.Response, error)

NASApiService Deletes a particular FPolicy policy configuration for a specified SVM. To delete a policy, you must first disable the policy. ### Related ONTAP commands * &#x60;fpolicy policy scope delete&#x60; * &#x60;fpolicy policy delete&#x60; ### Learn more * [&#x60;DOC /protocols/fpolicy/{svm.uuid}/policies&#x60;](#docs-NAS-protocols_fpolicy_{svm.uuid}_policies)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.
  • @param name

func (*NASApiService) FpolicyPolicyGet ¶

func (a *NASApiService) FpolicyPolicyGet(ctx context.Context, svmUuid string, name string, localVarOptionals *FpolicyPolicyGetOpts) (FpolicyPolicy, *http.Response, error)

func (*NASApiService) FpolicyPolicyModify ¶

func (a *NASApiService) FpolicyPolicyModify(ctx context.Context, svmUuid string, name string, localVarOptionals *FpolicyPolicyModifyOpts) (*http.Response, error)

func (*NASApiService) KerberosInterfaceCollectionGet ¶

func (a *NASApiService) KerberosInterfaceCollectionGet(ctx context.Context, localVarOptionals *KerberosInterfaceCollectionGetOpts) (KerberosInterfaceResponse, *http.Response, error)

func (*NASApiService) KerberosInterfaceGet ¶

func (a *NASApiService) KerberosInterfaceGet(ctx context.Context, uuid string, localVarOptionals *KerberosInterfaceGetOpts) (KerberosInterface, *http.Response, error)

func (*NASApiService) KerberosInterfaceModify ¶

func (a *NASApiService) KerberosInterfaceModify(ctx context.Context, uuid string, localVarOptionals *KerberosInterfaceModifyOpts) (*http.Response, error)

func (*NASApiService) KerberosRealmCollectionGet ¶

func (a *NASApiService) KerberosRealmCollectionGet(ctx context.Context, localVarOptionals *KerberosRealmCollectionGetOpts) (KerberosRealmResponse, *http.Response, error)

func (*NASApiService) KerberosRealmCreate ¶

func (a *NASApiService) KerberosRealmCreate(ctx context.Context, localVarOptionals *KerberosRealmCreateOpts) (*http.Response, error)

func (*NASApiService) KerberosRealmDelete ¶

func (a *NASApiService) KerberosRealmDelete(ctx context.Context, svmUuid string, name string) (*http.Response, error)

NASApiService Deletes a Kerberos realm. * &#x60;vserver nfs kerberos realm delete&#x60; ### Learn more * [&#x60;DOC /protocols/nfs/kerberos/realms&#x60;](#docs-NAS-protocols_nfs_kerberos_realms)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid SVM UUID
  • @param name Kerberos realm

func (*NASApiService) KerberosRealmGet ¶

func (a *NASApiService) KerberosRealmGet(ctx context.Context, svmUuid string, name string, localVarOptionals *KerberosRealmGetOpts) (KerberosRealm, *http.Response, error)

func (*NASApiService) KerberosRealmModify ¶

func (a *NASApiService) KerberosRealmModify(ctx context.Context, svmUuid string, name string, localVarOptionals *KerberosRealmModifyOpts) (*http.Response, error)

func (*NASApiService) NfsCollectionGet ¶

func (a *NASApiService) NfsCollectionGet(ctx context.Context, localVarOptionals *NfsCollectionGetOpts) (NfsServiceResponse, *http.Response, error)

func (*NASApiService) NfsCreate ¶

func (a *NASApiService) NfsCreate(ctx context.Context, localVarOptionals *NfsCreateOpts) (NfsServiceResponse, *http.Response, error)

func (*NASApiService) NfsDelete ¶

func (a *NASApiService) NfsDelete(ctx context.Context, svmUuid string) (*http.Response, error)

NASApiService Deletes the NFS configuration of an SVM. ### Related ONTAP commands * &#x60;vserver nfs delete&#x60; ### Learn more * [&#x60;DOC /protocols/nfs/services&#x60;](#docs-NAS-protocols_nfs_services)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid

func (*NASApiService) NfsGet ¶

func (a *NASApiService) NfsGet(ctx context.Context, svmUuid string, localVarOptionals *NfsGetOpts) (NfsService, *http.Response, error)

func (*NASApiService) NfsModify ¶

func (a *NASApiService) NfsModify(ctx context.Context, svmUuid string, localVarOptionals *NfsModifyOpts) (*http.Response, error)

func (*NASApiService) VscanCollectionGet ¶

func (a *NASApiService) VscanCollectionGet(ctx context.Context, localVarOptionals *VscanCollectionGetOpts) (VscanResponse, *http.Response, error)

func (*NASApiService) VscanConfigDelete ¶

func (a *NASApiService) VscanConfigDelete(ctx context.Context, svmUuid string) (*http.Response, error)

NASApiService Deletes a Vscan configuration.&lt;br/&gt; Important notes: * The Vscan DELETE endpoint deletes all of the Vscan configuration of an SVM. It first disables the Vscan and then deletes all of the SVM scanner-pools, On-Access policies, and On-Demand policies. * Any active Vscan On-Access policy must first be disabled on an SVM before performing the Vscan delete operation on that SVM. ### Related ONTAP commands * &#x60;vserver vscan scanner-pool delete&#x60; * &#x60;vserver vscan on-access-policy delete&#x60; * &#x60;vserver vscan on-demand-policy delete&#x60; ### Learn more * [&#x60;DOC /protocols/vscan&#x60;](#docs-NAS-protocols_vscan) * [&#x60;DOC /protocols/vscan/{svm.uuid}/scanner-pools&#x60;](#docs-NAS-protocols_vscan_{svm.uuid}_scanner-pools)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.

func (*NASApiService) VscanCreate ¶

func (a *NASApiService) VscanCreate(ctx context.Context, localVarOptionals *VscanCreateOpts) (VscanResponse, *http.Response, error)

func (*NASApiService) VscanGet ¶

func (a *NASApiService) VscanGet(ctx context.Context, svmUuid string, localVarOptionals *VscanGetOpts) (Vscan, *http.Response, error)

func (*NASApiService) VscanModify ¶

func (a *NASApiService) VscanModify(ctx context.Context, svmUuid string, localVarOptionals *VscanModifyOpts) (*http.Response, error)

func (*NASApiService) VscanOnAccessCreate ¶

func (a *NASApiService) VscanOnAccessCreate(ctx context.Context, svmUuid string, localVarOptionals *VscanOnAccessCreateOpts) (VscanOnAccessResponse, *http.Response, error)

func (*NASApiService) VscanOnAccessDelete ¶

func (a *NASApiService) VscanOnAccessDelete(ctx context.Context, svmUuid string, name string) (*http.Response, error)

NASApiService Deletes the anti-virus On-Access policy configuration. ### Related ONTAP commands * &#x60;vserver vscan on-access-policy delete&#x60; ### Learn more * [&#x60;DOC /protocols/vscan/{svm.uuid}/on-access-policies&#x60;](#docs-NAS-protocols_vscan_{svm.uuid}_on-access-policies)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.
  • @param name

func (*NASApiService) VscanOnAccessGet ¶

func (a *NASApiService) VscanOnAccessGet(ctx context.Context, svmUuid string, name string, localVarOptionals *VscanOnAccessGetOpts) (VscanOnAccess, *http.Response, error)

func (*NASApiService) VscanOnAccessModify ¶

func (a *NASApiService) VscanOnAccessModify(ctx context.Context, svmUuid string, name string, localVarOptionals *VscanOnAccessModifyOpts) (*http.Response, error)

func (*NASApiService) VscanOnAccessPolicyCollectionGet ¶

func (a *NASApiService) VscanOnAccessPolicyCollectionGet(ctx context.Context, svmUuid string, localVarOptionals *VscanOnAccessPolicyCollectionGetOpts) (VscanOnAccessResponse, *http.Response, error)

func (*NASApiService) VscanOnDemandCreate ¶

func (a *NASApiService) VscanOnDemandCreate(ctx context.Context, svmUuid string, localVarOptionals *VscanOnDemandCreateOpts) (VscanOnDemandResponse, *http.Response, error)

func (*NASApiService) VscanOnDemandDelete ¶

func (a *NASApiService) VscanOnDemandDelete(ctx context.Context, svmUuid string, name string) (*http.Response, error)

NASApiService Deletes the Vscan On-Demand configuration. ### Related ONTAP commands * &#x60;vserver vscan on-demand-task delete&#x60; ### Learn more * [&#x60;DOC /protocols/vscan/{svm.uuid}/on-demand-policies&#x60;](#docs-NAS-protocols_vscan_{svm.uuid}_on-demand-policies)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.
  • @param name

func (*NASApiService) VscanOnDemandGet ¶

func (a *NASApiService) VscanOnDemandGet(ctx context.Context, svmUuid string, name string, localVarOptionals *VscanOnDemandGetOpts) (VscanOnDemand, *http.Response, error)

func (*NASApiService) VscanOnDemandModify ¶

func (a *NASApiService) VscanOnDemandModify(ctx context.Context, svmUuid string, name string, localVarOptionals *VscanOnDemandModifyOpts) (*http.Response, error)

func (*NASApiService) VscanOnDemandPolicyCollectionGet ¶

func (a *NASApiService) VscanOnDemandPolicyCollectionGet(ctx context.Context, svmUuid string, localVarOptionals *VscanOnDemandPolicyCollectionGetOpts) (VscanOnDemandResponse, *http.Response, error)

func (*NASApiService) VscanScannerCollectionGet ¶

func (a *NASApiService) VscanScannerCollectionGet(ctx context.Context, svmUuid string, localVarOptionals *VscanScannerCollectionGetOpts) (VscanScannerPoolResponse, *http.Response, error)

func (*NASApiService) VscanScannerCreate ¶

func (a *NASApiService) VscanScannerCreate(ctx context.Context, svmUuid string, localVarOptionals *VscanScannerCreateOpts) (VscanScannerPoolResponse, *http.Response, error)

func (*NASApiService) VscanScannerDelete ¶

func (a *NASApiService) VscanScannerDelete(ctx context.Context, svmUuid string, name string) (*http.Response, error)

NASApiService Deletes a Vscan scanner-pool configuration.&lt;br/&gt; Important notes: * The Vscan scanner-pool DELETE endpoint deletes all of the Vscan scanner-pools for a specified SVM. * If a Vscan is enabled, it requires at least one scanner-pool to be in the active state. Therefore, Vscan must be disabled on the specified SVM so that all of the scanner-pools configured on that SVM can be deleted. ### Related ONTAP commands * &#x60;vserver vscan scanner-pool delete&#x60; ### Learn more * [&#x60;DOC /protocols/vscan/{svm.uuid}/scanner-pools&#x60;](#docs-NAS-protocols_vscan_{svm.uuid}_scanner-pools)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.
  • @param name

func (*NASApiService) VscanScannerGet ¶

func (a *NASApiService) VscanScannerGet(ctx context.Context, svmUuid string, name string, localVarOptionals *VscanScannerGetOpts) (VscanScannerPool, *http.Response, error)

func (*NASApiService) VscanScannerModify ¶

func (a *NASApiService) VscanScannerModify(ctx context.Context, svmUuid string, name string, localVarOptionals *VscanScannerModifyOpts) (*http.Response, error)

func (*NASApiService) VscanServerStatusGet ¶

func (a *NASApiService) VscanServerStatusGet(ctx context.Context, localVarOptionals *VscanServerStatusGetOpts) (VscanServerStatusResponse, *http.Response, error)

type NVMeApiService ¶

type NVMeApiService service

func (*NVMeApiService) FcLoginCollectionGet ¶

func (a *NVMeApiService) FcLoginCollectionGet(ctx context.Context, localVarOptionals *FcLoginCollectionGetOpts) (FcLoginResponse, *http.Response, error)

func (*NVMeApiService) FcLoginGet ¶

func (a *NVMeApiService) FcLoginGet(ctx context.Context, interfaceUuid string, initiatorWwpn string, localVarOptionals *FcLoginGetOpts) (FcLogin, *http.Response, error)

func (*NVMeApiService) NvmeInterfaceCollectionGet ¶

func (a *NVMeApiService) NvmeInterfaceCollectionGet(ctx context.Context, localVarOptionals *NvmeInterfaceCollectionGetOpts) (NvmeInterfaceResponse, *http.Response, error)

func (*NVMeApiService) NvmeInterfaceGet ¶

func (a *NVMeApiService) NvmeInterfaceGet(ctx context.Context, uuid string) (NvmeInterface, *http.Response, error)

NVMeApiService Retrieves an NVMe interface. ### Related ONTAP commands * &#x60;vserver nvme show-interface&#x60; ### Learn more * [&#x60;DOC /protocols/nvme/interfaces&#x60;](#docs-NVMe-protocols_nvme_interfaces)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid The unique identifier of the NVMe interface.

@return NvmeInterface

func (*NVMeApiService) NvmeNamespaceCollectionGet ¶

func (a *NVMeApiService) NvmeNamespaceCollectionGet(ctx context.Context, localVarOptionals *NvmeNamespaceCollectionGetOpts) (NvmeNamespaceResponse, *http.Response, error)

func (*NVMeApiService) NvmeNamespaceCreate ¶

func (a *NVMeApiService) NvmeNamespaceCreate(ctx context.Context, info NvmeNamespace) (NvmeNamespaceResponse, *http.Response, error)

NVMeApiService Creates an NVMe namespace. ### Required properties * &#x60;svm.uuid&#x60; or &#x60;svm.name&#x60; - Existing SVM in which to create the NVMe namespace. * &#x60;name&#x60;, &#x60;location.volume.name&#x60; or &#x60;location.volume.uuid&#x60; - Existing volume in which to create the NVMe namespace. * &#x60;name&#x60; or &#x60;location.namespace&#x60; - Base name for the NVMe namespace. * &#x60;os_type&#x60; - Operating system from which the NVMe namespace will be accessed. (Not used for clones, which are created based on the &#x60;os_type&#x60; of the source NVMe namespace.) * &#x60;space.size&#x60; - Size for the NVMe namespace. (Not used for clones, which are created based on the size of the source NVMe namespace.) ### Default property values If not specified in POST, the following default property values are assigned: * &#x60;auto_delete&#x60; - _false_ * &#x60;space.block_size&#x60; - _4096_ ### Related ONTAP commands * &#x60;volume file clone autodelete&#x60; * &#x60;volume file clone create&#x60; * &#x60;vserver nvme namespace create&#x60; ### Learn more * [&#x60;DOC /storage/namespaces&#x60;](#docs-NVMe-storage_namespaces)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info The property values for the new NVMe namespace.

@return NvmeNamespaceResponse

func (*NVMeApiService) NvmeNamespaceDelete ¶

func (a *NVMeApiService) NvmeNamespaceDelete(ctx context.Context, uuid string, localVarOptionals *NvmeNamespaceDeleteOpts) (*http.Response, error)

func (*NVMeApiService) NvmeNamespaceGet ¶

func (a *NVMeApiService) NvmeNamespaceGet(ctx context.Context, uuid string, localVarOptionals *NvmeNamespaceGetOpts) (NvmeNamespace, *http.Response, error)

func (*NVMeApiService) NvmeNamespaceModify ¶

func (a *NVMeApiService) NvmeNamespaceModify(ctx context.Context, uuid string, info NvmeNamespace) (*http.Response, error)

NVMeApiService Updates an NVMe namespace. ### Related ONTAP commands * &#x60;volume file clone autodelete&#x60; * &#x60;vserver nvme namespace modify&#x60; ### Learn more * [&#x60;DOC /storage/namespaces&#x60;](#docs-NVMe-storage_namespaces)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid The unique identifier of the NVMe namespace to update.
  • @param info The new property values for the NVMe namespace.

func (*NVMeApiService) NvmeServiceCollectionGet ¶

func (a *NVMeApiService) NvmeServiceCollectionGet(ctx context.Context, localVarOptionals *NvmeServiceCollectionGetOpts) (NvmeServiceResponse, *http.Response, error)

func (*NVMeApiService) NvmeServiceCreate ¶

func (a *NVMeApiService) NvmeServiceCreate(ctx context.Context, info NvmeService) (NvmeServiceResponse, *http.Response, error)

NVMeApiService Creates an NVMe service. ### Required properties * &#x60;svm.uuid&#x60; or &#x60;svm.name&#x60; - The existing SVM in which to create the NVMe service. ### Related ONTAP commands * &#x60;vserver nvme create&#x60; ### Learn more * [&#x60;DOC /protocols/nvme/services&#x60;](#docs-NVMe-protocols_nvme_services)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info The property values for the new NVMe service.

@return NvmeServiceResponse

func (*NVMeApiService) NvmeServiceDelete ¶

func (a *NVMeApiService) NvmeServiceDelete(ctx context.Context, svmUuid string) (*http.Response, error)

NVMeApiService Deletes an NVMe service. An NVMe service must be disabled before it can be deleted. In addition, all NVMe interfaces, subsystems, and subsystem maps associated with the SVM must first be deleted. ### Related ONTAP commands * &#x60;vserver nvme delete&#x60; ### Learn more * [&#x60;DOC /protocols/nvme/services&#x60;](#docs-NVMe-protocols_nvme_services)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid The unique identifier of the SVM whose NVMe service is to be deleted.

func (*NVMeApiService) NvmeServiceGet ¶

func (a *NVMeApiService) NvmeServiceGet(ctx context.Context, svmUuid string, localVarOptionals *NvmeServiceGetOpts) (NvmeService, *http.Response, error)

func (*NVMeApiService) NvmeServiceModify ¶

func (a *NVMeApiService) NvmeServiceModify(ctx context.Context, svmUuid string, info NvmeService) (*http.Response, error)

NVMeApiService Updates an NVMe service. ### Related ONTAP commands * &#x60;vserver nvme modify&#x60; ### Learn more * [&#x60;DOC /protocols/nvme/services&#x60;](#docs-NVMe-protocols_nvme_services)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid The unique identifier of the SVM whose NVMe service is to be updated.
  • @param info The new property values for the NVMe service.

func (*NVMeApiService) NvmeSubsystemCollectionGet ¶

func (a *NVMeApiService) NvmeSubsystemCollectionGet(ctx context.Context, localVarOptionals *NvmeSubsystemCollectionGetOpts) (NvmeSubsystemResponse, *http.Response, error)

func (*NVMeApiService) NvmeSubsystemControllerCollectionGet ¶

func (a *NVMeApiService) NvmeSubsystemControllerCollectionGet(ctx context.Context, localVarOptionals *NvmeSubsystemControllerCollectionGetOpts) (NvmeSubsystemControllerResponse, *http.Response, error)

func (*NVMeApiService) NvmeSubsystemControllerGet ¶

func (a *NVMeApiService) NvmeSubsystemControllerGet(ctx context.Context, subsystemUuid string, id string, localVarOptionals *NvmeSubsystemControllerGetOpts) (NvmeSubsystemController, *http.Response, error)

func (*NVMeApiService) NvmeSubsystemCreate ¶

func (a *NVMeApiService) NvmeSubsystemCreate(ctx context.Context, info NvmeSubsystem) (NvmeSubsystemResponse, *http.Response, error)

NVMeApiService Creates an NVMe subsystem. ### Required properties * &#x60;svm.uuid&#x60; or &#x60;svm.name&#x60; - Existing SVM in which to create the NVMe subsystem. * &#x60;name&#x60; - Name for NVMe subsystem. Once created, an NVMe subsytem cannot be renamed. * &#x60;os_type&#x60; - Operating system of the NVMe subsystem&#39;s hosts. ### Related ONTAP commands * &#x60;vserver nvme subsystem create&#x60; ### Learn more * [&#x60;DOC /protocols/nvme/subsystems&#x60;](#docs-NVMe-protocols_nvme_subsystems)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info The property values for the new NVMe subsystem.

@return NvmeSubsystemResponse

func (*NVMeApiService) NvmeSubsystemDelete ¶

func (a *NVMeApiService) NvmeSubsystemDelete(ctx context.Context, uuid string, localVarOptionals *NvmeSubsystemDeleteOpts) (*http.Response, error)

func (*NVMeApiService) NvmeSubsystemGet ¶

func (a *NVMeApiService) NvmeSubsystemGet(ctx context.Context, uuid string, localVarOptionals *NvmeSubsystemGetOpts) (NvmeSubsystem, *http.Response, error)

func (*NVMeApiService) NvmeSubsystemHostCollectionGet ¶

func (a *NVMeApiService) NvmeSubsystemHostCollectionGet(ctx context.Context, subsystemUuid string, localVarOptionals *NvmeSubsystemHostCollectionGetOpts) (NvmeSubsystemHostResponse, *http.Response, error)

func (*NVMeApiService) NvmeSubsystemHostCreate ¶

func (a *NVMeApiService) NvmeSubsystemHostCreate(ctx context.Context, subsystemUuid string, info NvmeSubsystemHost) (NvmeSubsystemHostResponse, *http.Response, error)

NVMeApiService Adds NVMe subsystem host(s) to an NVMe subsystem. ### Required properties * &#x60;nqn&#x60; or &#x60;records.nqn&#x60; - NVMe host(s) NQN(s) to add to the NVMe subsystem. ### Related ONTAP commands * &#x60;vserver nvme subsystem host add&#x60; ### Learn more * [&#x60;DOC /protocols/nvme/subsystems&#x60;](#docs-NVMe-protocols_nvme_subsystems)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param subsystemUuid The unique identifier of the NVMe subsystem.
  • @param info The property values for the NVMe subsystem host to add to the NVMe subsystem.

@return NvmeSubsystemHostResponse

func (*NVMeApiService) NvmeSubsystemHostDelete ¶

func (a *NVMeApiService) NvmeSubsystemHostDelete(ctx context.Context, subsystemUuid string, nqn string) (*http.Response, error)

NVMeApiService Deletes an NVMe subsystem host from an NVMe subsystem. ### Related ONTAP commands * &#x60;vserver nvme subsystem host remove&#x60; ### Learn more * [&#x60;DOC /protocols/nvme/subsystems&#x60;](#docs-NVMe-protocols_nvme_subsystems)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param subsystemUuid The unique identifier of the NVMe subsystem.
  • @param nqn The NVMe qualified name (NQN) used to identify the NVMe subsystem host.

func (*NVMeApiService) NvmeSubsystemHostGet ¶

func (a *NVMeApiService) NvmeSubsystemHostGet(ctx context.Context, subsystemUuid string, nqn string, localVarOptionals *NvmeSubsystemHostGetOpts) (NvmeSubsystemHost, *http.Response, error)

func (*NVMeApiService) NvmeSubsystemMapCollectionGet ¶

func (a *NVMeApiService) NvmeSubsystemMapCollectionGet(ctx context.Context, localVarOptionals *NvmeSubsystemMapCollectionGetOpts) (NvmeSubsystemMapResponse, *http.Response, error)

func (*NVMeApiService) NvmeSubsystemMapCreate ¶

func (a *NVMeApiService) NvmeSubsystemMapCreate(ctx context.Context, info NvmeSubsystemMap) (NvmeSubsystemMapResponse, *http.Response, error)

NVMeApiService Creates an NVMe subsystem map. ### Required properties * &#x60;svm.uuid&#x60; or &#x60;svm.name&#x60; - Existing SVM in which to create the NVMe subsystem map. * &#x60;namespace.uuid&#x60; or &#x60;namespace.name&#x60; - Existing NVMe namespace to map to the specified NVme subsystem. * &#x60;subsystem.uuid&#x60; or &#x60;subsystem.name&#x60; - Existing NVMe subsystem to map to the specified NVMe namespace. ### Related ONTAP commands * &#x60;vserver nvme subsystem map create&#x60; ### Learn more * [&#x60;DOC /protocols/nvme/subsystem-maps&#x60;](#docs-NVMe-protocols_nvme_subsystem-maps)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info The property values for the new NVMe subsystem map.

@return NvmeSubsystemMapResponse

func (*NVMeApiService) NvmeSubsystemMapDelete ¶

func (a *NVMeApiService) NvmeSubsystemMapDelete(ctx context.Context, subsystemUuid string, namespaceUuid string) (NvmeSubsystemMapResponse, *http.Response, error)

NVMeApiService Deletes an NVMe subsystem map. ### Related ONTAP commands * &#x60;vserver nvme subsystem map delete&#x60; ### Learn more * [&#x60;DOC /protocols/nvme/subsystem-maps&#x60;](#docs-NVMe-protocols_nvme_subsystem-maps)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param subsystemUuid The unique identifier of the NVMe subsystem.
  • @param namespaceUuid The unique identifier of the NVMe namespace.

@return NvmeSubsystemMapResponse

func (*NVMeApiService) NvmeSubsystemMapGet ¶

func (a *NVMeApiService) NvmeSubsystemMapGet(ctx context.Context, subsystemUuid string, namespaceUuid string, localVarOptionals *NvmeSubsystemMapGetOpts) (NvmeSubsystemMap, *http.Response, error)

func (*NVMeApiService) NvmeSubsystemModify ¶

func (a *NVMeApiService) NvmeSubsystemModify(ctx context.Context, uuid string, info NvmeSubsystem) (*http.Response, error)

NVMeApiService Updates an NVMe subsystem. ### Related ONTAP commands * &#x60;vserver nvme subsystem modify&#x60; ### Learn more * [&#x60;DOC /protocols/nvme/subsystems&#x60;](#docs-NVMe-protocols_nvme_subsystems)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid The unique identifier of the NVMe subsystem.
  • @param info The new property values for the NVMe subsystem.

type NameMapping ¶

type NameMapping struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Client workstation IP Address which is matched when searching for the pattern.   You can specify the value in any of the following formats: * As an IPv4 address with a subnet mask expressed as a number of bits; for instance, 10.1.12.0/24 * As an IPv6 address with a subnet mask expressed as a number of bits; for instance, fd20:8b1e:b255:4071::/64 * As an IPv4 address with a network mask; for instance, 10.1.16.0/255.255.255.0 * As a hostname
	ClientMatch string `json:"client_match,omitempty"`
	// Direction in which the name mapping is applied. The possible values are:   * krb_unix  - Kerberos principal name to UNIX user name   * win_unix  - Windows user name to UNIX user name   * unix_win  - UNIX user name to Windows user name mapping
	Direction string `json:"direction,omitempty"`
	// Position in the list of name mappings.
	Index int32 `json:"index,omitempty"`
	// Pattern used to match the name while searching for a name that can be used as a replacement. The pattern is a UNIX-style regular expression. Regular expressions are case-insensitive when mapping from Windows to UNIX, and they are case-sensitive for mappings from Kerberos to UNIX and UNIX to Windows.
	Pattern string `json:"pattern,omitempty"`
	// The name that is used as a replacement, if the pattern associated with this entry matches.
	Replacement string  `json:"replacement,omitempty"`
	Svm         *DnsSvm `json:"svm,omitempty"`
}

Name mapping is used to map CIFS identities to UNIX identities, Kerberos identities to UNIX identities, and UNIX identities to CIFS identities. It needs this information to obtain user credentials and provide proper file access regardless of whether they are connecting from an NFS client or a CIFS client.

type NameMappingCollectionGetOpts ¶

type NameMappingCollectionGetOpts struct {
	SvmUuid       optional.String
	SvmName       optional.String
	ClientMatch   optional.String
	Replacement   optional.String
	Direction     optional.String
	Pattern       optional.String
	Index         optional.Int32
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type NameMappingCreateOpts ¶

type NameMappingCreateOpts struct {
	Info optional.Interface
}

type NameMappingModifyOpts ¶

type NameMappingModifyOpts struct {
	Info optional.Interface
}

type NameMappingPositionGetOpts ¶

type NameMappingPositionGetOpts struct {
	Fields optional.Interface
}

type NameMappingResponse ¶

type NameMappingResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32         `json:"num_records,omitempty"`
	Records    []NameMapping `json:"records,omitempty"`
}

type NameServers ¶

type NameServers struct {
}

The list of IP addresses of the DNS servers. Addresses can be either IPv4 or IPv6 addresses.

type NameServicesApiService ¶

type NameServicesApiService service

func (*NameServicesApiService) DnsCollectionGet ¶

func (a *NameServicesApiService) DnsCollectionGet(ctx context.Context, localVarOptionals *DnsCollectionGetOpts) (DnsResponse, *http.Response, error)

func (*NameServicesApiService) DnsCreate ¶

func (a *NameServicesApiService) DnsCreate(ctx context.Context, localVarOptionals *DnsCreateOpts) (DnsResponse, *http.Response, error)

func (*NameServicesApiService) DnsDelete ¶

func (a *NameServicesApiService) DnsDelete(ctx context.Context, svmUuid string) (*http.Response, error)

NameServicesApiService Deletes DNS domain configuration of the specified SVM. ### Related ONTAP commands * &#x60;vserver services name-service dns delete&#x60; ### Learn more * [&#x60;DOC /name-services/dns&#x60;](#docs-name-services-name-services_dns)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.

func (*NameServicesApiService) DnsGet ¶

func (a *NameServicesApiService) DnsGet(ctx context.Context, svmUuid string, localVarOptionals *DnsGetOpts) (Dns, *http.Response, error)

func (*NameServicesApiService) DnsModify ¶

func (a *NameServicesApiService) DnsModify(ctx context.Context, svmUuid string, localVarOptionals *DnsModifyOpts) (*http.Response, error)

func (*NameServicesApiService) LdapCollectionGet ¶

func (a *NameServicesApiService) LdapCollectionGet(ctx context.Context, localVarOptionals *LdapCollectionGetOpts) (LdapServiceResponse, *http.Response, error)

func (*NameServicesApiService) LdapCreate ¶

func (a *NameServicesApiService) LdapCreate(ctx context.Context, localVarOptionals *LdapCreateOpts) (LdapServiceResponse, *http.Response, error)

func (*NameServicesApiService) LdapDelete ¶

func (a *NameServicesApiService) LdapDelete(ctx context.Context, svmUuid string) (*http.Response, error)

NameServicesApiService Deletes the LDAP configuration of the specified SVM. LDAP can be removed as a source from the ns-switch if LDAP is not used as a source for lookups. ### Learn more * [&#x60;DOC /name-services/ldap&#x60;](#docs-name-services-name-services_ldap)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.

func (*NameServicesApiService) LdapGet ¶

func (a *NameServicesApiService) LdapGet(ctx context.Context, svmUuid string, localVarOptionals *LdapGetOpts) (LdapService, *http.Response, error)

func (*NameServicesApiService) LdapModify ¶

func (a *NameServicesApiService) LdapModify(ctx context.Context, svmUuid string, localVarOptionals *LdapModifyOpts) (*http.Response, error)

func (*NameServicesApiService) NameMappingCollectionGet ¶

func (a *NameServicesApiService) NameMappingCollectionGet(ctx context.Context, localVarOptionals *NameMappingCollectionGetOpts) (NameMappingResponse, *http.Response, error)

func (*NameServicesApiService) NameMappingCreate ¶

func (a *NameServicesApiService) NameMappingCreate(ctx context.Context, localVarOptionals *NameMappingCreateOpts) (NameMappingResponse, *http.Response, error)

func (*NameServicesApiService) NameMappingDelete ¶

func (a *NameServicesApiService) NameMappingDelete(ctx context.Context, svmUuid string, direction string, index int32) (*http.Response, error)

NameServicesApiService Deletes the name mapping configuration. ### Related ONTAP commands * &#x60;vserver name-mapping delete&#x60; ### Learn more * [&#x60;DOC /name-services/name-mappings&#x60;](#docs-name-services-name-services_name-mappings)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.
  • @param direction Direction
  • @param index Position of the entry in the list

func (*NameServicesApiService) NameMappingModify ¶

func (a *NameServicesApiService) NameMappingModify(ctx context.Context, svmUuid string, direction string, index int32, localVarOptionals *NameMappingModifyOpts) (*http.Response, error)

func (*NameServicesApiService) NameMappingPositionGet ¶

func (a *NameServicesApiService) NameMappingPositionGet(ctx context.Context, svmUuid string, direction string, index int32, localVarOptionals *NameMappingPositionGetOpts) (NameMapping, *http.Response, error)

func (*NameServicesApiService) NisCollectionGet ¶

func (a *NameServicesApiService) NisCollectionGet(ctx context.Context, localVarOptionals *NisCollectionGetOpts) (NisServiceResponse, *http.Response, error)

func (*NameServicesApiService) NisCreate ¶

func (a *NameServicesApiService) NisCreate(ctx context.Context, localVarOptionals *NisCreateOpts) (NisServiceResponse, *http.Response, error)

func (*NameServicesApiService) NisDelete ¶

func (a *NameServicesApiService) NisDelete(ctx context.Context, svmUuid string) (*http.Response, error)

NameServicesApiService Deletes the NIS domain configuration of an SVM. NIS can be removed as a source from ns-switch if NIS is not used for lookups. ### Related ONTAP commands * &#x60;vserver services name-service nis-domain delete&#x60; ### Learn more * [&#x60;DOC /name-services/nis&#x60;](#docs-name-services-name-services_nis)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid UUID of the SVM to which this object belongs.

func (*NameServicesApiService) NisGet ¶

func (a *NameServicesApiService) NisGet(ctx context.Context, svmUuid string, localVarOptionals *NisGetOpts) (NisService, *http.Response, error)

func (*NameServicesApiService) NisModify ¶

func (a *NameServicesApiService) NisModify(ctx context.Context, svmUuid string, localVarOptionals *NisModifyOpts) (*http.Response, error)

type Nas ¶

type Nas struct {
	ApplicationComponents []NasApplicationComponents `json:"application_components,omitempty"`
	// The list of CIFS access controls. Optional in the POST body
	CifsAccess []AppCifsAccess `json:"cifs_access,omitempty"`
	// The list of NFS access controls. Optional in the POST body
	NfsAccess      []AppNfsAccess              `json:"nfs_access,omitempty"`
	ProtectionType *MongoDbOnSanProtectionType `json:"protection_type,omitempty"`
}

A generic NAS application.

type NasApplicationComponents ¶

type NasApplicationComponents struct {
	// The name of the application component. Optional in the POST or PATCH body
	Name string `json:"name,omitempty"`
	// The number of shares in the application component. Optional in the POST body
	ShareCount     int32              `json:"share_count,omitempty"`
	StorageService *NasStorageService `json:"storage_service,omitempty"`
	// The total size of the application component, split across the member shares. Usage: {&lt;integer&gt;[KB|MB|GB|TB|PB]} Optional in the POST or PATCH body
	TotalSize int32 `json:"total_size,omitempty"`
}

type NasStorageService ¶

type NasStorageService struct {
	// The storage service of the application component. Optional in the POST or PATCH body
	Name string `json:"name,omitempty"`
}

type NetworkEthernetBroadcastDomainGetOpts ¶

type NetworkEthernetBroadcastDomainGetOpts struct {
	Fields optional.Interface
}

type NetworkEthernetBroadcastDomainModifyOpts ¶

type NetworkEthernetBroadcastDomainModifyOpts struct {
	DomainInfo optional.Interface
}

type NetworkEthernetBroadcastDomainsGetOpts ¶

type NetworkEthernetBroadcastDomainsGetOpts struct {
	IpspaceUuid   optional.String
	IpspaceName   optional.String
	Name          optional.String
	PortsUuid     optional.String
	PortsNodeName optional.String
	PortsName     optional.String
	Mtu           optional.Int32
	Uuid          optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type NetworkEthernetPortGetOpts ¶

type NetworkEthernetPortGetOpts struct {
	Fields optional.Interface
}

type NetworkEthernetPortModifyOpts ¶

type NetworkEthernetPortModifyOpts struct {
	PortInfo optional.Interface
}

type NetworkEthernetPortsGetOpts ¶

type NetworkEthernetPortsGetOpts struct {
	Uuid                       optional.String
	MacAddress                 optional.String
	NodeUuid                   optional.String
	NodeName                   optional.String
	Name                       optional.String
	LagDistributionPolicy      optional.String
	LagActivePortsUuid         optional.String
	LagActivePortsNodeName     optional.String
	LagActivePortsName         optional.String
	LagMode                    optional.String
	LagMemberPortsUuid         optional.String
	LagMemberPortsNodeName     optional.String
	LagMemberPortsName         optional.String
	Enabled                    optional.Bool
	Speed                      optional.Int32
	BroadcastDomainUuid        optional.String
	BroadcastDomainIpspaceName optional.String
	BroadcastDomainName        optional.String
	Mtu                        optional.Int32
	State                      optional.String
	VlanBasePortUuid           optional.String
	VlanBasePortNodeName       optional.String
	VlanBasePortName           optional.String
	VlanTag                    optional.Int32
	Type_                      optional.String
	Fields                     optional.Interface
	MaxRecords                 optional.Int32
	ReturnRecords              optional.Bool
	ReturnTimeout              optional.Int32
	OrderBy                    optional.Interface
}

type NetworkIpInterfaceGetOpts ¶

type NetworkIpInterfaceGetOpts struct {
	Fields optional.Interface
}

type NetworkIpInterfaceModifyOpts ¶

type NetworkIpInterfaceModifyOpts struct {
	InterfaceParameters optional.Interface
}

type NetworkIpInterfacesGetOpts ¶

type NetworkIpInterfacesGetOpts struct {
	Uuid                     optional.String
	Services                 optional.String
	ServicePolicyName        optional.String
	ServicePolicyUuid        optional.String
	Scope                    optional.String
	Enabled                  optional.Bool
	SvmUuid                  optional.String
	SvmName                  optional.String
	Vip                      optional.Bool
	Name                     optional.String
	State                    optional.String
	IpAddress                optional.String
	IpNetmask                optional.String
	IpFamily                 optional.String
	IpspaceUuid              optional.String
	IpspaceName              optional.String
	LocationAutoRevert       optional.Bool
	LocationIsHome           optional.Bool
	LocationFailover         optional.String
	LocationPortUuid         optional.String
	LocationPortNodeName     optional.String
	LocationPortName         optional.String
	LocationNodeUuid         optional.String
	LocationNodeName         optional.String
	LocationHomePortUuid     optional.String
	LocationHomePortNodeName optional.String
	LocationHomePortName     optional.String
	LocationHomeNodeUuid     optional.String
	LocationHomeNodeName     optional.String
	Fields                   optional.Interface
	MaxRecords               optional.Int32
	ReturnRecords            optional.Bool
	ReturnTimeout            optional.Int32
	OrderBy                  optional.Interface
}

type NetworkIpRouteGetOpts ¶

type NetworkIpRouteGetOpts struct {
	Fields optional.Interface
}

type NetworkIpRoutesGetOpts ¶

type NetworkIpRoutesGetOpts struct {
	IpspaceUuid        optional.String
	IpspaceName        optional.String
	Scope              optional.String
	SvmUuid            optional.String
	SvmName            optional.String
	DestinationAddress optional.String
	DestinationNetmask optional.String
	DestinationFamily  optional.String
	Uuid               optional.String
	Gateway            optional.String
	Fields             optional.Interface
	MaxRecords         optional.Int32
	ReturnRecords      optional.Bool
	ReturnTimeout      optional.Int32
	OrderBy            optional.Interface
}

type NetworkIpServicePoliciesGetOpts ¶

type NetworkIpServicePoliciesGetOpts struct {
	Scope         optional.String
	IpspaceUuid   optional.String
	IpspaceName   optional.String
	Name          optional.String
	SvmUuid       optional.String
	SvmName       optional.String
	Uuid          optional.String
	Services      optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type NetworkIpServicePolicyGetOpts ¶

type NetworkIpServicePolicyGetOpts struct {
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type NetworkRoute ¶

type NetworkRoute struct {
	Links       *InlineResponse201Links `json:"_links,omitempty"`
	Destination *IpInfo                 `json:"destination,omitempty"`
	// The IP address of the gateway router leading to the destination.
	Gateway string                  `json:"gateway,omitempty"`
	Ipspace *IpServicePolicyIpspace `json:"ipspace,omitempty"`
	Scope   *NetworkScopeReadonly   `json:"scope,omitempty"`
	Svm     *AuditSvm               `json:"svm,omitempty"`
	// The UUID that uniquely identifies the route.
	Uuid string `json:"uuid,omitempty"`
}

type NetworkRouteForSvm ¶

type NetworkRouteForSvm struct {
	Destination *IpInfo `json:"destination,omitempty"`
	// The IP address of the gateway router leading to the destination.
	Gateway string `json:"gateway,omitempty"`
}

type NetworkRouteResponse ¶

type NetworkRouteResponse struct {
	Links  *AccountResponseLinks `json:"_links,omitempty"`
	Error_ *ModelError           `json:"error,omitempty"`
	// Number of records
	NumRecords int32          `json:"num_records,omitempty"`
	Records    []NetworkRoute `json:"records,omitempty"`
}

type NetworkScope ¶

type NetworkScope string

NetworkScope : Set to \"svm\" for interfaces owned by an SVM. Otherwise, set to \"cluster\".

const (
	SVM_NetworkScope     NetworkScope = "svm"
	CLUSTER_NetworkScope NetworkScope = "cluster"
)

List of network_scope

type NetworkScopeReadonly ¶

type NetworkScopeReadonly string

NetworkScopeReadonly : Set to \"svm\" for interfaces owned by an SVM. Otherwise, set to \"cluster\".

const (
	SVM_NetworkScopeReadonly     NetworkScopeReadonly = "svm"
	CLUSTER_NetworkScopeReadonly NetworkScopeReadonly = "cluster"
)

List of network_scope_readonly

type NetworkingApiService ¶

type NetworkingApiService service

func (*NetworkingApiService) FcInterfaceCollectionGet ¶

func (a *NetworkingApiService) FcInterfaceCollectionGet(ctx context.Context, localVarOptionals *FcInterfaceCollectionGetOpts) (FcInterfaceResponse, *http.Response, error)

func (*NetworkingApiService) FcInterfaceCreate ¶

NetworkingApiService Creates an FC interface. ### Required properties * &#x60;svm.uuid&#x60; or &#x60;svm.name&#x60; - Existing SVM in which to create the FC interface. * &#x60;name&#x60; - Name of the FC interface. * &#x60;location.port.uuid&#x60; or both &#x60;location.port.name&#x60; and &#x60;location.port.node.name&#x60; - FC port on which to create the FC interface. * &#x60;data_protocol&#x60; - Data protocol for the FC interface. ### Default property values If not specified in POST, the following default property values are assigned. * &#x60;enabled&#x60; - _true_ ### Related ONTAP commands * &#x60;network interface create&#x60; ### Learn more * [&#x60;DOC /network/fc/interfaces&#x60;](#docs-networking-network_fc_interfaces)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info The property values for the new FC interface.

@return FcInterfaceResponse

func (*NetworkingApiService) FcInterfaceDelete ¶

func (a *NetworkingApiService) FcInterfaceDelete(ctx context.Context, uuid string) (*http.Response, error)

NetworkingApiService Deletes an FC interface. ### Related ONTAP commands * &#x60;network interface delete&#x60; ### Learn more * [&#x60;DOC /network/fc/interfaces&#x60;](#docs-networking-network_fc_interfaces)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid The unique identifier for the FC interface.

func (*NetworkingApiService) FcInterfaceGet ¶

func (a *NetworkingApiService) FcInterfaceGet(ctx context.Context, uuid string, localVarOptionals *FcInterfaceGetOpts) (FcInterface, *http.Response, error)

func (*NetworkingApiService) FcInterfaceModify ¶

func (a *NetworkingApiService) FcInterfaceModify(ctx context.Context, uuid string, info FcInterface) (*http.Response, error)

NetworkingApiService Updates an FC interface. ### Related ONTAP commands * &#x60;network interface modify&#x60; ### Learn more * [&#x60;DOC /network/fc/interfaces&#x60;](#docs-networking-network_fc_interfaces)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid The unique identifier for the FC interface.
  • @param info The new property values for the FC interface.

func (*NetworkingApiService) FcPortCollectionGet ¶

func (a *NetworkingApiService) FcPortCollectionGet(ctx context.Context, localVarOptionals *FcPortCollectionGetOpts) (FcPortResponse, *http.Response, error)

func (*NetworkingApiService) FcPortGet ¶

func (a *NetworkingApiService) FcPortGet(ctx context.Context, uuid string, localVarOptionals *FcPortGetOpts) (FcPort, *http.Response, error)

func (*NetworkingApiService) FcPortModify ¶

func (a *NetworkingApiService) FcPortModify(ctx context.Context, uuid string, info FcPort) (*http.Response, error)

NetworkingApiService Updates an FC port. ### Related ONTAP commands * &#x60;network fcp adapter modify&#x60; ### Learn more * [&#x60;DOC /network/fc/ports&#x60;](#docs-networking-network_fc_ports)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid The unique identifier for the FC port.
  • @param info The new property values for the FC port.

func (*NetworkingApiService) IpspaceDelete ¶

func (a *NetworkingApiService) IpspaceDelete(ctx context.Context, uuid string) (*http.Response, error)

NetworkingApiService Deletes an IPspace object. ### Related ONTAP commands * &#x60;network ipspace delete&#x60; ### Learn more * [&#x60;DOC /network/ipspaces&#x60;](#docs-networking-network_ipspaces)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid IPspace UUID

func (*NetworkingApiService) IpspaceGet ¶

func (a *NetworkingApiService) IpspaceGet(ctx context.Context, uuid string, localVarOptionals *IpspaceGetOpts) (Ipspace, *http.Response, error)

func (*NetworkingApiService) IpspaceModify ¶

func (a *NetworkingApiService) IpspaceModify(ctx context.Context, uuid string, localVarOptionals *IpspaceModifyOpts) (*http.Response, error)

func (*NetworkingApiService) IpspacesCreate ¶

func (a *NetworkingApiService) IpspacesCreate(ctx context.Context, ipspace Ipspace) (*http.Response, error)

NetworkingApiService Creates a new domain within which IP addresses are unique. SVMs, ports, and networks are scoped within a single IPspace. ### Required properties * &#x60;name&#x60; - Name of the ipspace to create. ### Related ONTAP commands * &#x60;network ipspace create&#x60; ### Learn more * [&#x60;DOC /network/ipspaces&#x60;](#docs-networking-network_ipspaces)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param ipspace IPspace identifiers

func (*NetworkingApiService) IpspacesGet ¶

func (a *NetworkingApiService) IpspacesGet(ctx context.Context, localVarOptionals *IpspacesGetOpts) (IpspaceResponse, *http.Response, error)

func (*NetworkingApiService) NetworkEthernetBroadcastDomainDelete ¶

func (a *NetworkingApiService) NetworkEthernetBroadcastDomainDelete(ctx context.Context, uuid string) (*http.Response, error)

NetworkingApiService Deletes a broadcast domain. ### Related ONTAP commands * &#x60;network port broadcast-domain delete&#x60; ### Learn more * [&#x60;DOC /network/ethernet/broadcast-domains&#x60;](#docs-networking-network_ethernet_broadcast-domains)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid Broadcast domain UUID

func (*NetworkingApiService) NetworkEthernetBroadcastDomainGet ¶

func (a *NetworkingApiService) NetworkEthernetBroadcastDomainGet(ctx context.Context, uuid string, localVarOptionals *NetworkEthernetBroadcastDomainGetOpts) (BroadcastDomain, *http.Response, error)

func (*NetworkingApiService) NetworkEthernetBroadcastDomainModify ¶

func (a *NetworkingApiService) NetworkEthernetBroadcastDomainModify(ctx context.Context, uuid string, localVarOptionals *NetworkEthernetBroadcastDomainModifyOpts) (*http.Response, error)

func (*NetworkingApiService) NetworkEthernetBroadcastDomainsCreate ¶

func (a *NetworkingApiService) NetworkEthernetBroadcastDomainsCreate(ctx context.Context, broadcastDomain BroadcastDomain) (*http.Response, error)

NetworkingApiService Creates a new broadcast domain.&lt;br/&gt; ### Required properties * &#x60;name&#x60; - Name of the broadcast-domain to create. * &#x60;mtu&#x60; - Maximum transmission unit of the broadcast domain. ### Recommended optional properties * &#x60;ipspace.name&#x60; or &#x60;ipspace.uuid&#x60; - IPspace the broadcast domain belongs to. ### Default property values If not specified in POST, the following default property values are assigned: * &#x60;ipspace&#x60; - _Default_ ### Related ONTAP commands * &#x60;network port broadcast-domain create&#x60; ### Learn more * [&#x60;DOC /network/ethernet/broadcast-domains&#x60;](#docs-networking-network_ethernet_broadcast-domains)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param broadcastDomain Broadcast_domain parameters

func (*NetworkingApiService) NetworkEthernetBroadcastDomainsGet ¶

func (a *NetworkingApiService) NetworkEthernetBroadcastDomainsGet(ctx context.Context, localVarOptionals *NetworkEthernetBroadcastDomainsGetOpts) (BroadcastDomainResponse, *http.Response, error)

func (*NetworkingApiService) NetworkEthernetPortDelete ¶

func (a *NetworkingApiService) NetworkEthernetPortDelete(ctx context.Context, uuid string) (*http.Response, error)

NetworkingApiService Deletes a VLAN or LAG (ifgrp). ### Related ONTAP commands * &#x60;network port ifgrp delete&#x60; * &#x60;network port vlan delete&#x60; ### Learn more * [&#x60;DOC /network/ethernet/ports&#x60;](#docs-networking-network_ethernet_ports)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid Port UUID

func (*NetworkingApiService) NetworkEthernetPortGet ¶

func (a *NetworkingApiService) NetworkEthernetPortGet(ctx context.Context, uuid string, localVarOptionals *NetworkEthernetPortGetOpts) (Port, *http.Response, error)

func (*NetworkingApiService) NetworkEthernetPortModify ¶

func (a *NetworkingApiService) NetworkEthernetPortModify(ctx context.Context, uuid string, localVarOptionals *NetworkEthernetPortModifyOpts) (*http.Response, error)

func (*NetworkingApiService) NetworkEthernetPortsCreate ¶

func (a *NetworkingApiService) NetworkEthernetPortsCreate(ctx context.Context, port Port) (PortResponse, *http.Response, error)

NetworkingApiService Creates a new VLAN (such as node1:e0a-100) or LAG (ifgrp, such as node2:a0a). ### Required properties * &#x60;node&#x60; - Node the port will be created on. * &#x60;broadcast_domain&#x60; - Broadcast domain the port is associated with. * &#x60;type&#x60; - Defines if a VLAN or LAG will be created: * VLAN * &#x60;vlan.base_port&#x60; - Physical port or LAG the VLAN will be created on. * &#x60;vlan.tag&#x60; - Tag used to identify VLAN on the base port. * LAG * &#x60;lag.mode&#x60; - Policy for the LAG that will be created. * &#x60;lag.distribution_policy&#x60; - Indicates how the packets are distributed between ports. * &#x60;lag.member_ports&#x60; - Set of ports the LAG consists of. ### Related ONTAP commands * &#x60;network port ifgrp create&#x60; * &#x60;network port vlan create&#x60; ### Learn more * [&#x60;DOC /network/ethernet/ports&#x60;](#docs-networking-network_ethernet_ports)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param port Port parameters

@return PortResponse

func (*NetworkingApiService) NetworkEthernetPortsGet ¶

func (a *NetworkingApiService) NetworkEthernetPortsGet(ctx context.Context, localVarOptionals *NetworkEthernetPortsGetOpts) (PortResponse, *http.Response, error)

func (*NetworkingApiService) NetworkIpInterfaceDelete ¶

func (a *NetworkingApiService) NetworkIpInterfaceDelete(ctx context.Context, uuid string) (*http.Response, error)

NetworkingApiService Deletes an IP interface. ### Related ONTAP commands * &#x60;network interface delete&#x60; ### Learn more * [&#x60;DOC /network/ip/interfaces&#x60;](#docs-networking-network_ip_interfaces)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid IP interface UUID

func (*NetworkingApiService) NetworkIpInterfaceGet ¶

func (a *NetworkingApiService) NetworkIpInterfaceGet(ctx context.Context, uuid string, localVarOptionals *NetworkIpInterfaceGetOpts) (IpInterface, *http.Response, error)

func (*NetworkingApiService) NetworkIpInterfaceModify ¶

func (a *NetworkingApiService) NetworkIpInterfaceModify(ctx context.Context, uuid string, localVarOptionals *NetworkIpInterfaceModifyOpts) (*http.Response, error)

func (*NetworkingApiService) NetworkIpInterfacesCreate ¶

func (a *NetworkingApiService) NetworkIpInterfacesCreate(ctx context.Context, interface_ IpInterface) (*http.Response, error)

NetworkingApiService Creates a new cluster-scoped or svm-scoped interface.&lt;br/&gt; ### Required properties * &#x60;name&#x60; - Name of the interface to create. * &#x60;ip.address&#x60; - IP address for the interface. * &#x60;ip.netmask&#x60; - IP subnet of the interface. * &#x60;ipspace.name&#x60; or &#x60;ipspace.uuid&#x60; * Required for cluster-scoped interfaces. * Optional for svm-scoped interfaces. * &#x60;svm.name&#x60; or &#x60;svm.uuid&#x60; * Required for a svm-scoped interface. * Invalid for a cluster-scoped interface. * &#x60;location.home_port&#x60; or &#x60;location.home_node&#x60; or &#x60;location.broadcast_domain&#x60; - One of these properties must be set to a value to define where the interface will be located. ### Default property values If not specified in POST, the following default property values are assigned: * &#x60;scope&#x60; * _svm_ if svm parameter is specified. * _cluster_ if svm parameter is not specified * &#x60;enabled&#x60; - _true_ * &#x60;location.auto_revert&#x60; - _true_ * &#x60;service_policy&#x60; * _default-data-files_ if scope is &#x60;svm&#x60; * _default-management_ if scope is &#x60;cluster&#x60; and IPspace is not &#x60;Cluster&#x60; * _default-cluster_ if scope is &#x60;svm&#x60; and IPspace is &#x60;Cluster&#x60; * &#x60;failover&#x60; - Selects the least restrictive failover policy supported by all the services in the service policy. ### Related ONTAP commands * &#x60;network interface create&#x60; ### Learn more * [&#x60;DOC /network/ip/interfaces&#x60;](#docs-networking-network_ip_interfaces)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param interface_ IP interface parameters

func (*NetworkingApiService) NetworkIpInterfacesGet ¶

func (a *NetworkingApiService) NetworkIpInterfacesGet(ctx context.Context, localVarOptionals *NetworkIpInterfacesGetOpts) (IpInterfaceResponse, *http.Response, error)

func (*NetworkingApiService) NetworkIpRouteDelete ¶

func (a *NetworkingApiService) NetworkIpRouteDelete(ctx context.Context, uuid string) (*http.Response, error)

NetworkingApiService Deletes a specific IP route. ### Related ONTAP commands * &#x60;network route delete&#x60; ### Learn more * [&#x60;DOC /network/ip/routes&#x60;](#docs-networking-network_ip_routes)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid Route UUID

func (*NetworkingApiService) NetworkIpRouteGet ¶

func (a *NetworkingApiService) NetworkIpRouteGet(ctx context.Context, uuid string, localVarOptionals *NetworkIpRouteGetOpts) (NetworkRoute, *http.Response, error)

func (*NetworkingApiService) NetworkIpRoutesCreate ¶

func (a *NetworkingApiService) NetworkIpRoutesCreate(ctx context.Context, route NetworkRoute) (NetworkRouteResponse, *http.Response, error)

NetworkingApiService Creates a cluster-scoped or SVM-scoped static route. ### Required properties * &#x60;gateway&#x60; - IP address to route packets to. * SVM-scoped routes * &#x60;svm.name&#x60; or &#x60;svm.uuid&#x60; - SVM that route is applied to. * cluster-scoped routes * There are no additional required fields for cluster-scoped routes. ### Default property values If not specified in POST, the following default property values are assigned: * &#x60;destination&#x60; - _0.0.0.0/0_ for IPv4 or _::/0_ for IPv6. * &#x60;ipspace.name&#x60; * _Default_ for cluster-scoped routes. * Name of the SVM&#39;s IPspace for SVM-scoped routes. ### Related ONTAP commands * &#x60;network route create&#x60; ### Learn more * [&#x60;DOC /network/ip/routes&#x60;](#docs-networking-network_ip_routes)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param route Route parameters

@return NetworkRouteResponse

func (*NetworkingApiService) NetworkIpRoutesGet ¶

func (a *NetworkingApiService) NetworkIpRoutesGet(ctx context.Context, localVarOptionals *NetworkIpRoutesGetOpts) (NetworkRouteResponse, *http.Response, error)

func (*NetworkingApiService) NetworkIpServicePoliciesGet ¶

func (a *NetworkingApiService) NetworkIpServicePoliciesGet(ctx context.Context, localVarOptionals *NetworkIpServicePoliciesGetOpts) (IpServicePolicyResponse, *http.Response, error)

func (*NetworkingApiService) NetworkIpServicePolicyGet ¶

func (a *NetworkingApiService) NetworkIpServicePolicyGet(ctx context.Context, uuid string, localVarOptionals *NetworkIpServicePolicyGetOpts) (IpServicePolicy, *http.Response, error)

type NfsCollectionGetOpts ¶

type NfsCollectionGetOpts struct {
	State                                     optional.String
	ProtocolV40Enabled                        optional.Bool
	ProtocolV4IdDomain                        optional.String
	ProtocolV3Enabled                         optional.Bool
	ProtocolV41Enabled                        optional.Bool
	ProtocolV40FeaturesReadDelegationEnabled  optional.Bool
	ProtocolV40FeaturesWriteDelegationEnabled optional.Bool
	ProtocolV40FeaturesAclEnabled             optional.Bool
	ProtocolV41FeaturesAclEnabled             optional.Bool
	ProtocolV41FeaturesReadDelegationEnabled  optional.Bool
	ProtocolV41FeaturesPnfsEnabled            optional.Bool
	ProtocolV41FeaturesWriteDelegationEnabled optional.Bool
	Enabled                                   optional.Bool
	VstorageEnabled                           optional.Bool
	SvmUuid                                   optional.String
	SvmName                                   optional.String
	TransportTcpEnabled                       optional.Bool
	TransportUdpEnabled                       optional.Bool
	Fields                                    optional.Interface
	MaxRecords                                optional.Int32
	ReturnTimeout                             optional.Int32
	ReturnRecords                             optional.Bool
	OrderBy                                   optional.Interface
}

type NfsCreateOpts ¶

type NfsCreateOpts struct {
	Info optional.Interface
}

type NfsGetOpts ¶

type NfsGetOpts struct {
	Fields optional.Interface
}

type NfsModifyOpts ¶

type NfsModifyOpts struct {
	Info optional.Interface
}

type NfsService ¶

type NfsService struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Specifies if the NFS service is administratively enabled.
	Enabled  bool                `json:"enabled,omitempty"`
	Protocol *NfsServiceProtocol `json:"protocol,omitempty"`
	// Specifies the state of the NFS service on the SVM. The following values are supported:           * online - NFS server is ready to accept client requests.           * offline - NFS server is not ready to accept client requests.
	State     string               `json:"state,omitempty"`
	Svm       *AuditSvm            `json:"svm,omitempty"`
	Transport *NfsServiceTransport `json:"transport,omitempty"`
	// Specifies whether VMware vstorage feature is enabled.
	VstorageEnabled bool `json:"vstorage_enabled,omitempty"`
}

type NfsServiceProtocol ¶

type NfsServiceProtocol struct {
	// Specifies whether NFSv3 protocol is enabled.
	V3Enabled bool `json:"v3_enabled,omitempty"`
	// Specifies whether NFSv4.0 protocol is enabled.
	V40Enabled  bool                           `json:"v40_enabled,omitempty"`
	V40Features *NfsServiceProtocolV40Features `json:"v40_features,omitempty"`
	// Specifies whether NFSv4.1 protocol is enabled.
	V41Enabled  bool                           `json:"v41_enabled,omitempty"`
	V41Features *NfsServiceProtocolV41Features `json:"v41_features,omitempty"`
	// Specifies the domain portion of the string form of user and group names as defined by the NFSv4 protocol.
	V4IdDomain string `json:"v4_id_domain,omitempty"`
}

type NfsServiceProtocolV40Features ¶

type NfsServiceProtocolV40Features struct {
	// Specifies whether NFSv4.0 ACLs is enabled.
	AclEnabled bool `json:"acl_enabled,omitempty"`
	// Specifies whether NFSv4.0 Read Delegation is enabled.
	ReadDelegationEnabled bool `json:"read_delegation_enabled,omitempty"`
	// Specifies whether NFSv4.0 Write Delegation is enabled.
	WriteDelegationEnabled bool `json:"write_delegation_enabled,omitempty"`
}

type NfsServiceProtocolV41Features ¶

type NfsServiceProtocolV41Features struct {
	// Specifies whether NFSv4.1 ACLs is enabled.
	AclEnabled bool `json:"acl_enabled,omitempty"`
	// Specifies whether NFSv4.1 Parallel NFS is enabled.
	PnfsEnabled bool `json:"pnfs_enabled,omitempty"`
	// Specifies whether NFSv4.1 Read Delegation is enabled.
	ReadDelegationEnabled bool `json:"read_delegation_enabled,omitempty"`
	// Specifies whether NFSv4.1 Write Delegation is enabled.
	WriteDelegationEnabled bool `json:"write_delegation_enabled,omitempty"`
}

type NfsServiceResponse ¶

type NfsServiceResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of NFS Server Records
	NumRecords int32        `json:"num_records,omitempty"`
	Records    []NfsService `json:"records,omitempty"`
}

type NfsServiceTransport ¶

type NfsServiceTransport struct {
	// Specifies whether TCP transports are enabled on the server.
	TcpEnabled bool `json:"tcp_enabled,omitempty"`
	// Specifies whether UDP transports are enabled on the server.
	UdpEnabled bool `json:"udp_enabled,omitempty"`
}

type NisCollectionGetOpts ¶

type NisCollectionGetOpts struct {
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type NisCreateOpts ¶

type NisCreateOpts struct {
	Info optional.Interface
}

type NisDomain ¶

type NisDomain struct {
}

The NIS domain to which this configuration belongs.

type NisGetOpts ¶

type NisGetOpts struct {
	Fields optional.Interface
}

type NisModifyOpts ¶

type NisModifyOpts struct {
	Info optional.Interface
}

type NisServers ¶

type NisServers struct {
}

A list of hostnames or IP addresses of NIS servers used by the NIS domain configuration.

type NisService ¶

type NisService struct {
	Links        *InlineResponse201Links `json:"_links,omitempty"`
	BoundServers []string                `json:"bound_servers,omitempty"`
	// The NIS domain to which this configuration belongs.
	Domain string `json:"domain,omitempty"`
	// A list of hostnames or IP addresses of NIS servers used by the NIS domain configuration.
	Servers []string  `json:"servers,omitempty"`
	Svm     *AuditSvm `json:"svm,omitempty"`
}

type NisServiceResponse ¶

type NisServiceResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of NIS domain records.
	NumRecords int32        `json:"num_records,omitempty"`
	Records    []NisService `json:"records,omitempty"`
}

type Node ¶

type Node struct {
	Links             *InlineResponse201Links    `json:"_links,omitempty"`
	ClusterInterface  *ClusterClusterInterface   `json:"cluster_interface,omitempty"`
	ClusterInterfaces []ClusterClusterInterfaces `json:"cluster_interfaces,omitempty"`
	Controller        *ClusterController         `json:"controller,omitempty"`
	// Specifies the ISO-8601 format date and time on the node.
	Date                 time.Time                    `json:"date,omitempty"`
	Ha                   *ClusterHa                   `json:"ha,omitempty"`
	Location             string                       `json:"location,omitempty"`
	ManagementInterface  *ClusterManagementInterface1 `json:"management_interface,omitempty"`
	ManagementInterfaces []ClusterClusterInterfaces   `json:"management_interfaces,omitempty"`
	// Possible values: * <i>available</i> - If a node is available, this means it is detected on the internal cluster network and can be added to the cluster.  Nodes that have a membership of \"available\" are not returned when a GET request is called when the cluster exists. A query on the \"membership\" property for <i>available</i> must be provided to scan for nodes on the cluster network. Nodes that have a membership of \"available\" are returned automatically before a cluster is created. * <i>joining</i> - Joining nodes are in the process of being added to the cluster. The node may be progressing through the steps to become a member or might have failed. The job to add the node or create the cluster provides details on the current progress of the node. * <i>member</i> - Nodes that are members have successfully joined the cluster.
	Membership       string                   `json:"membership,omitempty"`
	Model            string                   `json:"model,omitempty"`
	Name             string                   `json:"name,omitempty"`
	SerialNumber     string                   `json:"serial_number,omitempty"`
	ServiceProcessor *ClusterServiceProcessor `json:"service_processor,omitempty"`
	// The total time, in seconds, that the node has been up.
	Uptime  int32           `json:"uptime,omitempty"`
	Uuid    string          `json:"uuid,omitempty"`
	Version *ClusterVersion `json:"version,omitempty"`
}

Complete node information

type NodeGetOpts ¶

type NodeGetOpts struct {
	Fields optional.Interface
}

type NodeModifyOpts ¶

type NodeModifyOpts struct {
	Action               optional.String
	ShutdownRebootReason optional.String
	AllowDataOutage      optional.Bool
	Info                 optional.Interface
}

type NodeReference ¶

type NodeReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

type NodeResponse ¶

type NodeResponse struct {
	Links      *AccountResponseLinks `json:"_links,omitempty"`
	NumRecords int32                 `json:"num_records,omitempty"`
	Records    []ClusterNodes        `json:"records,omitempty"`
}

type NodeSetupIp ¶

type NodeSetupIp struct {
	Address *IpAddress `json:"address,omitempty"`
}

The IP configuration for cluster setup.

type NodesGetOpts ¶

type NodesGetOpts struct {
	Membership                           optional.String
	Name                                 optional.String
	Model                                optional.String
	VersionMajor                         optional.Int32
	VersionMinor                         optional.Int32
	VersionGeneration                    optional.Int32
	VersionFull                          optional.String
	Location                             optional.String
	ServiceProcessorIpv4InterfaceNetmask optional.String
	ServiceProcessorIpv4InterfaceAddress optional.String
	ServiceProcessorIpv4InterfaceGateway optional.String
	ServiceProcessorMacAddress           optional.String
	ServiceProcessorState                optional.String
	ServiceProcessorFirmwareVersion      optional.String
	ServiceProcessorIpv6InterfaceNetmask optional.String
	ServiceProcessorIpv6InterfaceAddress optional.String
	ServiceProcessorIpv6InterfaceGateway optional.String
	ServiceProcessorLinkStatus           optional.String
	ServiceProcessorDhcpEnabled          optional.Bool
	Uptime                               optional.Int32
	ControllerOverTemperature            optional.String
	ControllerFrusState                  optional.String
	ControllerFrusType                   optional.String
	ControllerFrusId                     optional.Int32
	ControllerFlashCacheState            optional.String
	ControllerFlashCacheModel            optional.String
	ControllerFlashCacheSerialNumber     optional.String
	ControllerFlashCachePartNumber       optional.String
	ControllerFlashCacheHardwareRevision optional.String
	ControllerFlashCacheSlot             optional.String
	ControllerFlashCacheFirmwareVersion  optional.String
	ControllerFlashCacheCapacity         optional.Int32
	HaEnabled                            optional.Bool
	HaPartnersUuid                       optional.String
	HaPartnersName                       optional.String
	HaAutoGiveback                       optional.Bool
	Date                                 optional.String
	Uuid                                 optional.String
	SerialNumber                         optional.String
	ClusterInterfacesName                optional.String
	ClusterInterfacesUuid                optional.String
	ClusterInterfacesIpAddress           optional.String
	ManagementInterfacesName             optional.String
	ManagementInterfacesUuid             optional.String
	ManagementInterfacesIpAddress        optional.String
	Fields                               optional.Interface
	MaxRecords                           optional.Int32
	ReturnRecords                        optional.Bool
	ReturnTimeout                        optional.Int32
	OrderBy                              optional.Interface
}

type NsswitchSource ¶

type NsswitchSource string

NsswitchSource : Source location for a name service

const (
	FILES_NsswitchSource NsswitchSource = "files"
	DNS_NsswitchSource   NsswitchSource = "dns"
	LDAP_NsswitchSource  NsswitchSource = "ldap"
	NIS_NsswitchSource   NsswitchSource = "nis"
)

List of nsswitch_source

type NtpServerList ¶

type NtpServerList struct {
}

Host name, IPv4 address, or IPv6 address for the external NTP time servers.

type NvmeInterface ¶

type NvmeInterface struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The administrative state of the NVMe interface.
	Enabled     bool                      `json:"enabled,omitempty"`
	FcInterface *NvmeInterfaceFcInterface `json:"fc_interface,omitempty"`
	// The name of the NVMe interface.
	Name string                 `json:"name,omitempty"`
	Node *InlineResponse201Node `json:"node,omitempty"`
	Svm  *AuditSvm              `json:"svm,omitempty"`
	// The transport address of the NVMe interface.
	TransportAddress string `json:"transport_address,omitempty"`
	// The unique identifier of the NVMe interface.
	Uuid string `json:"uuid,omitempty"`
}

NVMe interfaces are network interfaces configured to support an NVMe over Fabrics (NVMe-oF) protocol. The NVMe interfaces are Fibre Channel interfaces supporting an NVMe-oF data protocol. Regardless of the underlying physical and data protocol, NVMe interfaces are treated equally for host-side application configuration. This endpoint provides a consolidated view of all NVMe interfaces for the purpose of configuring host-side applications.<br/> NVMe interfaces must be created using the protocol-specific endpoints for Fibre Channel interfaces. See [`POST /network/fc/interfaces`](#/networking/fc_interface_create). After creation, the interfaces are available via this interface.

type NvmeInterfaceCollectionGetOpts ¶

type NvmeInterfaceCollectionGetOpts struct {
	TransportAddress        optional.String
	Name                    optional.String
	SvmUuid                 optional.String
	SvmName                 optional.String
	Enabled                 optional.Bool
	FcInterfaceWwpn         optional.String
	FcInterfaceWwnn         optional.String
	FcInterfacePortName     optional.String
	FcInterfacePortNodeName optional.String
	FcInterfacePortUuid     optional.String
	Uuid                    optional.String
	NodeUuid                optional.String
	NodeName                optional.String
	Fields                  optional.Interface
	MaxRecords              optional.Int32
	ReturnRecords           optional.Bool
	ReturnTimeout           optional.Int32
	OrderBy                 optional.Interface
}

type NvmeInterfaceFcInterface ¶

type NvmeInterfaceFcInterface struct {
	Links *InlineResponse201Links       `json:"_links,omitempty"`
	Port  *NvmeInterfaceFcInterfacePort `json:"port,omitempty"`
	// The WWNN (world wide node name) of the Fibre Channel NVMe interface.
	Wwnn string `json:"wwnn,omitempty"`
	// The WWPN (world wide port name) of the Fibre Channel NVMe interface.
	Wwpn string `json:"wwpn,omitempty"`
}

The attributes specific to a Fibre Channel-based NVMe interface.<br/>

type NvmeInterfaceFcInterfacePort ¶

type NvmeInterfaceFcInterfacePort struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the FC port.
	Name string               `json:"name,omitempty"`
	Node *FcPortReferenceNode `json:"node,omitempty"`
	// The unique identifier of the FC port.
	Uuid string `json:"uuid,omitempty"`
}

An FC port is the physical port of an FC adapter on a cluster node that can be connected to an FC network.

type NvmeInterfaceResponse ¶

type NvmeInterfaceResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32           `json:"num_records,omitempty"`
	Records    []NvmeInterface `json:"records,omitempty"`
}

type NvmeNamespace ¶

type NvmeNamespace struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// This property marks the NVMe namespace for auto deletion when the volume containing the namespace runs out of space. This is most commonly set on namespace clones.<br/> When set to _true_, the NVMe namespace becomes eligible for automatic deletion when the volume runs out of space. Auto deletion only occurs when the volume containing the namespace is also configured for auto deletion and free space in the volume decreases below a particular threshold.<br/> This property is optional in POST and PATCH. The default value for a new NVMe namespace is _false_.<br/> There is an added cost to retrieving this property's value. It is not populated for either a collection GET or an instance GET unless it is explicitly requested using the `fields` query parameter. See [`DOC Requesting specific fields`](#docs-docs-Requesting-specific-fields) to learn more.
	AutoDelete bool                `json:"auto_delete,omitempty"`
	Clone      *NvmeNamespaceClone `json:"clone,omitempty"`
	// A configurable comment available for use by the administrator. Valid in POST and PATCH.
	Comment string `json:"comment,omitempty"`
	// The enabled state of the NVMe namespace. Namespaces can be disabled to prevent access to the namespace. Certain error conditions also cause the namespace to become disabled. If the namespace is disabled, you can consult the `state` property to determine if the namespace is administratively disabled (_offline_) or has become disabled as a result of an error. A namespace in an error condition can be brought online by setting the `enabled` property to _true_ or brought administratively offline by setting the `enabled` property to _false_. Upon creation, an NVMe namespace is enabled by default. Valid in PATCH.
	Enabled  bool                   `json:"enabled,omitempty"`
	Location *NvmeNamespaceLocation `json:"location,omitempty"`
	// The fully qualified path name of the NVMe namespace composed of a \"/vol\" prefix, the volume name, the (optional) qtree name and base name of the namespace. Valid in POST.<br/> NVMe namespaces do not support rename, or movement between volumes.
	Name string `json:"name,omitempty"`
	// The operating system type of the NVMe namespace.<br/> Required in POST when creating an NVMe namespace that is not a clone of another. Disallowed in POST when creating a namespace clone.
	OsType       string                     `json:"os_type,omitempty"`
	Space        *NvmeNamespaceSpace        `json:"space,omitempty"`
	Status       *NvmeNamespaceStatus       `json:"status,omitempty"`
	SubsystemMap *NvmeNamespaceSubsystemMap `json:"subsystem_map,omitempty"`
	Svm          *AuditSvm                  `json:"svm,omitempty"`
	// The unique identifier of the NVMe namespace.
	Uuid string `json:"uuid,omitempty"`
}

An NVMe namespace is a collection of addressable logical blocks presented to hosts connected to the storage virtual machine using the NVMe over Fabrics protocol.<br/> In ONTAP, an NVMe namespace is located within a volume. Optionally, it can be located within a qtree in a volume.<br/> An NVMe namespace is created to a specified size using thin or thick provisioning as determined by the volume on which it is created. NVMe namespaces support being cloned. An NVMe namespace cannot be renamed, resized, or moved to a different volume. NVMe namespaces do not support the assignment of a QoS policy for performance management, but a QoS policy can be assigned to the volume containing the namespace. See the NVMe namespace object model to learn more about each of the properties supported by the NVMe namespace REST API.<br/> An NVMe namespace must be mapped to an NVMe subsystem to grant access to the subsystem's hosts. Hosts can then access the NVMe namespace and perform I/O using the NVMe over Fabrics protocol.

type NvmeNamespaceClone ¶

type NvmeNamespaceClone struct {
	Source *NvmeNamespaceCloneSource `json:"source,omitempty"`
}

This sub-object is used in POST to create a new NVMe namespace as a clone of an existing namespace, or PATCH to overwrite an existing namespace as a clone of another. Setting a property in this sub-object indicates that a namespace clone is desired.<br/> When used in a PATCH, the patched NVMe namespace's data is over-written as a clone of the source and the following properties are preserved from the patched namespace unless otherwise specified as part of the PATCH: `auto_delete` (unless specified in the request), `subsystem_map`, `status.state`, and `uuid`.

type NvmeNamespaceCloneSource ¶

type NvmeNamespaceCloneSource struct {
	// The fully qualified path name of the clone source NVMe namespace composed of a \"/vol\" prefix, the volume name, the (optional) qtree name and base name of the namespace. Valid in POST and PATCH.
	Name string `json:"name,omitempty"`
	// The unique identifier of the clone source NVMe namespace. Valid in POST and PATCH.
	Uuid string `json:"uuid,omitempty"`
}

The source NVMe namespace for a namespace clone operation. This can be specified using property `clone.source.uuid` or `clone.source.name`. If both properties are supplied, they must refer to the same namespace.<br/> Valid in POST to create a new NVMe namespace as a clone of the source.<br/> Valid in PATCH to overwrite an existing NVMe namespace's data as a clone of another.

type NvmeNamespaceCollectionGetOpts ¶

type NvmeNamespaceCollectionGetOpts struct {
	Enabled                   optional.Bool
	Comment                   optional.String
	SubsystemMapNsid          optional.String
	SubsystemMapAnagrpid      optional.String
	SubsystemMapSubsystemName optional.String
	SubsystemMapSubsystemUuid optional.String
	SvmUuid                   optional.String
	SvmName                   optional.String
	Name                      optional.String
	OsType                    optional.String
	Uuid                      optional.String
	AutoDelete                optional.Bool
	StatusContainerState      optional.String
	StatusMapped              optional.Bool
	StatusState               optional.String
	StatusReadOnly            optional.Bool
	LocationQtreeName         optional.String
	LocationQtreeId           optional.Int32
	LocationVolumeName        optional.String
	LocationVolumeUuid        optional.String
	LocationNamespace         optional.String
	SpaceGuaranteeReserved    optional.Bool
	SpaceGuaranteeRequested   optional.Bool
	SpaceBlockSize            optional.Int32
	SpaceSize                 optional.Int32
	SpaceUsed                 optional.Int32
	Fields                    optional.Interface
	MaxRecords                optional.Int32
	ReturnRecords             optional.Bool
	ReturnTimeout             optional.Int32
	OrderBy                   optional.Interface
}

type NvmeNamespaceDeleteOpts ¶

type NvmeNamespaceDeleteOpts struct {
	AllowDeleteWhileMapped optional.Bool
}

type NvmeNamespaceGetOpts ¶

type NvmeNamespaceGetOpts struct {
	Fields optional.Interface
}

type NvmeNamespaceLocation ¶

type NvmeNamespaceLocation struct {
	// The base name component of the NVMe namespace. Valid in POST.<br/> If properties `name` and `location.namespace` are specified in the same request, they must refer to the base name.<br/> NVMe namespaces do not support rename.
	Namespace string                       `json:"namespace,omitempty"`
	Qtree     *NvmeNamespaceLocationQtree  `json:"qtree,omitempty"`
	Volume    *NvmeNamespaceLocationVolume `json:"volume,omitempty"`
}

The location of the NVMe namespace within the ONTAP cluster. Valid in POST.<br/> NVMe namespaces do not support rename, or movement between volumes.

type NvmeNamespaceLocationQtree ¶

type NvmeNamespaceLocationQtree struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The identifier for the qtree, unique within the qtree's volume.
	Id int32 `json:"id,omitempty"`
	// The name of the qtree.
	Name string `json:"name,omitempty"`
}

The qtree in which the NVMe namespace is optionally located. Valid in POST.<br/> If properties `name` and `location.qtree.name` and/or `location.qtree.uuid` are specified in the same request, they must refer to the same qtree.<br/> NVMe namespaces do not support rename.

type NvmeNamespaceLocationVolume ¶

type NvmeNamespaceLocationVolume struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the volume.
	Name string `json:"name,omitempty"`
	// Unique identifier for the volume. This corresponds to the instance-uuid that is exposed in the CLI and ONTAPI. It does not change due to a volume move.
	Uuid string `json:"uuid,omitempty"`
}

The volume in which the NVMe namespace is located. Valid in POST.<br/> If properties `name` and `location.volume.name` and/or `location.volume.uuid` are specified in the same request, they must refer to the same volume.<br/> NVMe namespaces do not support movement between volumes.

type NvmeNamespaceReference ¶

type NvmeNamespaceReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The fully qualified path name of the NVMe namespace composed from the volume name, qtree name and base name of the namespace.
	Name string `json:"name,omitempty"`
	// The unique identifier of the NVMe namespace.
	Uuid string `json:"uuid,omitempty"`
}

A reference to a namespace.

type NvmeNamespaceResponse ¶

type NvmeNamespaceResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32           `json:"num_records,omitempty"`
	Records    []NvmeNamespace `json:"records,omitempty"`
}

type NvmeNamespaceSpace ¶

type NvmeNamespaceSpace struct {
	// The size of blocks in the namespace in bytes.<br/> Valid in POST when creating an NVMe namespace that is not a clone of another. Disallowed in POST when creating a namespace clone.  Valid in POST.
	BlockSize int32                        `json:"block_size,omitempty"`
	Guarantee *NvmeNamespaceSpaceGuarantee `json:"guarantee,omitempty"`
	// The total provisioned size of the NVMe namespace.<br/> NVMe namespaces do not support resize.<br/> For more information, see _Size properties_ in the _docs_ section of the ONTAP REST API documentation.
	Size int32 `json:"size,omitempty"`
	// The amount of space consumed by the main data stream of the NVMe namespace.<br/> This value is the total space consumed in the volume by the NVMe namespace, including filesystem overhead, but excluding prefix and suffix streams. Due to internal filesystem overhead and the many ways NVMe filesystems and applications utilize blocks within a namespace, this value does not necessarily reflect actual consumption/availability from the perspective of the filesystem or application. Without specific knowledge of how the namespace blocks are utilized outside of ONTAP, this property should not be used and an indicator for an out-of-space condition.<br/> For more information, see _Size properties_ in the _docs_ section of the ONTAP REST API documentation.
	Used int32 `json:"used,omitempty"`
}

The storage space related properties of the NVMe namespace.

type NvmeNamespaceSpaceGuarantee ¶

type NvmeNamespaceSpaceGuarantee struct {
	// The requested space reservation policy for the NVMe namespace. If _true_, a space reservation is requested for the namespace; if _false_, the namespace is thin provisioned. Guaranteeing a space reservation request for a namespace requires that the volume in which the namespace resides also be space reserved and that the fractional reserve for the volume be 100%.<br/> The space reservation policy for an NVMe namespace is determined by ONTAP.
	Requested bool `json:"requested,omitempty"`
	// Reports if the NVMe namespace is space guaranteed.<br/> This property is _true_ if a space guarantee is requested and the containing volume and aggregate support the request. This property is _false_ if a space guarantee is not requested or if a space guarantee is requested and either the containing volume and aggregate do not support the request.
	Reserved bool `json:"reserved,omitempty"`
}

Properties that request and report the space guarantee for the NVMe namespace.

type NvmeNamespaceStatus ¶

type NvmeNamespaceStatus struct {
	// The state of the volume and aggregate that contain the NVMe namespace. Namespaces are only available when their containers are available.
	ContainerState string `json:"container_state,omitempty"`
	// Reports if the NVMe namespace is mapped to an NVMe subsystem.<br/> There is an added cost to retrieving this property's value. It is not populated for either a collection GET or an instance GET unless it is explicitly requested using the `fields` query parameter. See [`DOC Requesting specific fields`](#docs-docs-Requesting-specific-fields) to learn more.
	Mapped bool `json:"mapped,omitempty"`
	// Reports if the NVMe namespace allows only read access.
	ReadOnly bool `json:"read_only,omitempty"`
	// The state of the NVMe namespace. Normal states for a namespace are _online_ and _offline_. Other states indicate errors.
	State string `json:"state,omitempty"`
}

Status information about the NVMe namespace.

type NvmeNamespaceSubsystemMap ¶

type NvmeNamespaceSubsystemMap struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The Asymmetric Namespace Access Group ID (ANAGRPID) of the NVMe namespace.<br/> The format for an ANAGRPID is 8 hexadecimal digits (zero-filled) followed by a lower case \"h\".
	Anagrpid string `json:"anagrpid,omitempty"`
	// The NVMe namespace identifier. This is an identifier used by an NVMe controller to provide access to the NVMe namespace.<br/> The format for an NVMe namespace identifier is 8 hexadecimal digits (zero-filled) followed by a lower case \"h\".
	Nsid      string                              `json:"nsid,omitempty"`
	Subsystem *NvmeNamespaceSubsystemMapSubsystem `json:"subsystem,omitempty"`
}

The NVMe subsystem with which the NVMe namespace is associated. A namespace can be mapped to zero (0) or one (1) subsystems.<br/> There is an added cost to retrieving property values for `subsystem_map`. They are not populated for either a collection GET or an instance GET unless explicitly requested using the `fields` query parameter. See [`DOC Requesting specific fields`](#docs-docs-Requesting-specific-fields) to learn more.

type NvmeNamespaceSubsystemMapSubsystem ¶

type NvmeNamespaceSubsystemMapSubsystem struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the NVMe subsystem.
	Name string `json:"name,omitempty"`
	// The unique identifier of the NVMe subsystem.
	Uuid string `json:"uuid,omitempty"`
}

An NVMe subsystem maintains configuration state and NVMe namespace access control for a set of NVMe-connected hosts.

type NvmeService ¶

type NvmeService struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The administrative state of the NVMe service. The NVMe service can be disabled to block all NVMe connectivity to the SVM.<br/> This is optional in POST and PATCH. The default setting is _true_ (enabled) in POST.
	Enabled bool      `json:"enabled,omitempty"`
	Svm     *AuditSvm `json:"svm,omitempty"`
}

A Non-Volatile Memory Express (NVMe) service defines the properties of the NVMe controller target for an SVM. There can be at most one NVMe service for an SVM. An SVM's NVMe service must be created before NVMe host initiators can connect to the SVM.<br/> An NVMe service is identified by the UUID of its SVM.

type NvmeServiceCollectionGetOpts ¶

type NvmeServiceCollectionGetOpts struct {
	SvmUuid       optional.String
	SvmName       optional.String
	Enabled       optional.Bool
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type NvmeServiceGetOpts ¶

type NvmeServiceGetOpts struct {
	Fields optional.Interface
}

type NvmeServiceResponse ¶

type NvmeServiceResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32         `json:"num_records,omitempty"`
	Records    []NvmeService `json:"records,omitempty"`
}

type NvmeSubsystem ¶

type NvmeSubsystem struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// A configurable comment for the NVMe subsystem. Optional in POST and PATCH.
	Comment string                `json:"comment,omitempty"`
	Hosts   []NvmeSubsystemHosts  `json:"hosts,omitempty"`
	IoQueue *NvmeSubsystemIoQueue `json:"io_queue,omitempty"`
	// The name of the NVMe subsystem. Once created, an NVMe subsystem cannot be renamed. Required in POST.
	Name string `json:"name,omitempty"`
	// The host operating system of the NVMe subsystem's hosts. Required in POST.
	OsType string `json:"os_type,omitempty"`
	// The serial number of the NVMe subsystem.
	SerialNumber string `json:"serial_number,omitempty"`
	// The NVMe namespaces mapped to the NVMe subsystem.<br/> There is an added cost to retrieving property values for `subsystem_maps`. They are not populated for either a collection GET or an instance GET unless explicitly requested using the `fields` query parameter. See [`DOC Requesting specific fields`](#docs-docs-Requesting-specific-fields) to learn more.
	SubsystemMaps []NvmeSubsystemSubsystemMaps `json:"subsystem_maps,omitempty"`
	Svm           *AuditSvm                    `json:"svm,omitempty"`
	// The NVMe qualified name (NQN) used to identify the NVMe storage target.
	TargetNqn string `json:"target_nqn,omitempty"`
	// The unique identifier of the NVMe subsystem.
	Uuid string `json:"uuid,omitempty"`
}

An NVMe subsystem maintains configuration state and namespace access control for a set of NVMe-connected hosts.

type NvmeSubsystemCollectionGetOpts ¶

type NvmeSubsystemCollectionGetOpts struct {
	Comment                    optional.String
	SvmUuid                    optional.String
	SvmName                    optional.String
	Name                       optional.String
	IoQueueDefaultCount        optional.Int32
	IoQueueDefaultDepth        optional.Int32
	OsType                     optional.String
	SerialNumber               optional.String
	Uuid                       optional.String
	HostsNqn                   optional.String
	SubsystemMapsNamespaceName optional.String
	SubsystemMapsNamespaceUuid optional.String
	SubsystemMapsAnagrpid      optional.String
	SubsystemMapsNsid          optional.String
	TargetNqn                  optional.String
	Fields                     optional.Interface
	MaxRecords                 optional.Int32
	ReturnRecords              optional.Bool
	ReturnTimeout              optional.Int32
	OrderBy                    optional.Interface
}

type NvmeSubsystemController ¶

type NvmeSubsystemController struct {
	Links      *InlineResponse201Links            `json:"_links,omitempty"`
	AdminQueue *NvmeSubsystemControllerAdminQueue `json:"admin_queue,omitempty"`
	Host       *NvmeSubsystemControllerHost       `json:"host,omitempty"`
	// The identifier of the subsystem controller. This field consists of 4 zero-filled hexadecimal digits followed by an 'h'.
	Id         string                              `json:"id,omitempty"`
	Interface_ *NvmeSubsystemControllerInterface   `json:"interface,omitempty"`
	IoQueue    *NvmeSubsystemControllerIoQueue     `json:"io_queue,omitempty"`
	Node       *InlineResponse201Node              `json:"node,omitempty"`
	Subsystem  *NvmeNamespaceSubsystemMapSubsystem `json:"subsystem,omitempty"`
	Svm        *AuditSvm                           `json:"svm,omitempty"`
}

A Non-Volatile Memory Express (NVMe) subsystem controller represents a connection between a host and a storage solution.<br/> An NVMe subsystem controller is identified by the NVMe subsystem UUID and the controller ID.

type NvmeSubsystemControllerAdminQueue ¶

type NvmeSubsystemControllerAdminQueue struct {
	// The depth of the admin queue for the controller.
	Depth int32 `json:"depth,omitempty"`
}

type NvmeSubsystemControllerCollectionGetOpts ¶

type NvmeSubsystemControllerCollectionGetOpts struct {
	InterfaceUuid             optional.String
	InterfaceName             optional.String
	InterfaceTransportAddress optional.String
	Id                        optional.String
	AdminQueueDepth           optional.Int32
	HostId                    optional.String
	HostTransportAddress      optional.String
	HostNqn                   optional.String
	IoQueueCount              optional.Int32
	IoQueueDepth              optional.Int32
	SvmUuid                   optional.String
	SvmName                   optional.String
	NodeUuid                  optional.String
	NodeName                  optional.String
	SubsystemName             optional.String
	SubsystemUuid             optional.String
	Fields                    optional.Interface
	MaxRecords                optional.Int32
	ReturnRecords             optional.Bool
	ReturnTimeout             optional.Int32
	OrderBy                   optional.Interface
}

type NvmeSubsystemControllerGetOpts ¶

type NvmeSubsystemControllerGetOpts struct {
	Fields optional.Interface
}

type NvmeSubsystemControllerHost ¶

type NvmeSubsystemControllerHost struct {
	// The host identifier registered with the controller.
	Id string `json:"id,omitempty"`
	// The NVMe qualified name of the host.
	Nqn string `json:"nqn,omitempty"`
	// The transport address of the host.
	TransportAddress string `json:"transport_address,omitempty"`
}

Properties of the connected host.

type NvmeSubsystemControllerInterface ¶

type NvmeSubsystemControllerInterface struct {
	// The name of the logical interface.
	Name string `json:"name,omitempty"`
	// The transport address of the logical interface.
	TransportAddress string `json:"transport_address,omitempty"`
	// The unique identifier of the logical interface.
	Uuid string `json:"uuid,omitempty"`
}

The logical interface through which the host is connected.

type NvmeSubsystemControllerIoQueue ¶

type NvmeSubsystemControllerIoQueue struct {
	// The number of I/O queues available to the controller.
	Count int32 `json:"count,omitempty"`
	// The depths of the I/O queues.
	Depth []int32 `json:"depth,omitempty"`
}

Properties of the I/O queues available to the controller.

type NvmeSubsystemControllerResponse ¶

type NvmeSubsystemControllerResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32                     `json:"num_records,omitempty"`
	Records    []NvmeSubsystemController `json:"records,omitempty"`
}

type NvmeSubsystemDeleteOpts ¶

type NvmeSubsystemDeleteOpts struct {
	AllowDeleteWhileMapped optional.Bool
	AllowDeleteWithHosts   optional.Bool
}

type NvmeSubsystemGetOpts ¶

type NvmeSubsystemGetOpts struct {
	Fields optional.Interface
}

type NvmeSubsystemHost ¶

type NvmeSubsystemHost struct {
	Links   *InlineResponse201Links   `json:"_links,omitempty"`
	IoQueue *NvmeSubsystemHostIoQueue `json:"io_queue,omitempty"`
	// The NVMe qualified name (NQN) used to identify the NVMe storage target. Not allowed in POST when the `records` property is used.
	Nqn string `json:"nqn,omitempty"`
	// An array of NVMe hosts specified to add multiple NVMe hosts to an NVMe subsystem in a single API call. Valid in POST only.
	Records   []NvmeSubsystemHostRecords  `json:"records,omitempty"`
	Subsystem *NvmeSubsystemHostSubsystem `json:"subsystem,omitempty"`
}

The NVMe host provisioned to access NVMe namespaces mapped to a subsystem.

type NvmeSubsystemHostCollectionGetOpts ¶

type NvmeSubsystemHostCollectionGetOpts struct {
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type NvmeSubsystemHostGetOpts ¶

type NvmeSubsystemHostGetOpts struct {
	Fields optional.Interface
}

type NvmeSubsystemHostIoQueue ¶

type NvmeSubsystemHostIoQueue struct {
	// The number of I/O queue pairs. The default value is inherited from the owning NVMe subsystem.
	Count int32 `json:"count,omitempty"`
	// The I/O queue depth. The default value is inherited from the owning NVMe subsystem.
	Depth int32 `json:"depth,omitempty"`
}

The properties of the submission queue used to submit I/O commands for execution by the NVMe controller.

type NvmeSubsystemHostNoRecords ¶

type NvmeSubsystemHostNoRecords struct {
	Links   *InlineResponse201Links   `json:"_links,omitempty"`
	IoQueue *NvmeSubsystemHostIoQueue `json:"io_queue,omitempty"`
	// The NVMe qualified name (NQN) used to identify the NVMe storage target. Not allowed in POST when the `records` property is used.
	Nqn       string                      `json:"nqn,omitempty"`
	Subsystem *NvmeSubsystemHostSubsystem `json:"subsystem,omitempty"`
}

The NVMe host provisioned to access NVMe namespaces mapped to a subsystem.

type NvmeSubsystemHostRecords ¶

type NvmeSubsystemHostRecords struct {
	Links   *InlineResponse201Links   `json:"_links,omitempty"`
	IoQueue *NvmeSubsystemHostIoQueue `json:"io_queue,omitempty"`
	// The NVMe qualified name (NQN) used to identify the NVMe storage target. Not allowed in POST when the `records` property is used.
	Nqn       string                      `json:"nqn,omitempty"`
	Subsystem *NvmeSubsystemHostSubsystem `json:"subsystem,omitempty"`
}

The NVMe host provisioned to access NVMe namespaces mapped to a subsystem.

type NvmeSubsystemHostReference ¶

type NvmeSubsystemHostReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The NVMe qualified name (NQN) used to identify the NVMe storage target.
	Nqn string `json:"nqn,omitempty"`
}

An NVMe host of an NVMe subsystem.

type NvmeSubsystemHostResponse ¶

type NvmeSubsystemHostResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32               `json:"num_records,omitempty"`
	Records    []NvmeSubsystemHost `json:"records,omitempty"`
}

type NvmeSubsystemHostSubsystem ¶

type NvmeSubsystemHostSubsystem struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The unique identifier of the NVMe subsystem.
	Uuid string `json:"uuid,omitempty"`
}

The NVMe subsystem to which the NVMe host has been provisioned.

type NvmeSubsystemHosts ¶

type NvmeSubsystemHosts struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The NVMe qualified name (NQN) used to identify the NVMe storage target.
	Nqn string `json:"nqn,omitempty"`
}

An NVMe host of an NVMe subsystem.

type NvmeSubsystemIoQueue ¶

type NvmeSubsystemIoQueue struct {
	Default_ *NvmeSubsystemIoQueueDefault `json:"default,omitempty"`
}

The properties of the submission queue used to submit I/O commands for execution by the NVMe controller.

type NvmeSubsystemIoQueueDefault ¶

type NvmeSubsystemIoQueueDefault struct {
	// The number of host I/O queue pairs.
	Count int32 `json:"count,omitempty"`
	// The host I/O queue depth.
	Depth int32 `json:"depth,omitempty"`
}

The default I/O queue parameters inherited by NVMe hosts in the NVMe subsystem.

type NvmeSubsystemMap ¶

type NvmeSubsystemMap struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The Asymmetric Namespace Access Group ID (ANAGRPID) of the NVMe namespace.<br/> The format for an ANAGRPID is 8 hexadecimal digits (zero-filled) followed by a lower case \"h\".<br/> There is an added cost to retrieving this property's value. It is not populated for either a collection GET or an instance GET unless it is explicitly requested using the `fields` query parameter. See [`DOC Requesting specific fields`](#docs-docs-Requesting-specific-fields) to learn more.
	Anagrpid  string                     `json:"anagrpid,omitempty"`
	Namespace *NvmeSubsystemMapNamespace `json:"namespace,omitempty"`
	// The NVMe namespace identifier. This is an identifier used by an NVMe controller to provide access to the NVMe namespace.<br/> The format for an NVMe namespace identifier is 8 hexadecimal digits (zero-filled) followed by a lower case \"h\".
	Nsid      string                     `json:"nsid,omitempty"`
	Subsystem *NvmeSubsystemMapSubsystem `json:"subsystem,omitempty"`
	Svm       *AuditSvm                  `json:"svm,omitempty"`
}

An NVMe subsystem map is an association of an NVMe namespace with an NVMe subsystem. When an NVMe namespace is mapped to an NVMe subsystem, the NVMe subsystem's hosts are granted access to the NVMe namespace. The relationship between an NVMe subsystem and an NVMe namespace is one subsystem to many namespaces.

type NvmeSubsystemMapCollectionGetOpts ¶

type NvmeSubsystemMapCollectionGetOpts struct {
	SvmUuid           optional.String
	SvmName           optional.String
	Nsid              optional.String
	NamespaceName     optional.String
	NamespaceUuid     optional.String
	NamespaceNodeUuid optional.String
	NamespaceNodeName optional.String
	SubsystemName     optional.String
	SubsystemUuid     optional.String
	Anagrpid          optional.String
	Fields            optional.Interface
	MaxRecords        optional.Int32
	ReturnRecords     optional.Bool
	ReturnTimeout     optional.Int32
	OrderBy           optional.Interface
}

type NvmeSubsystemMapGetOpts ¶

type NvmeSubsystemMapGetOpts struct {
	Fields optional.Interface
}

type NvmeSubsystemMapNamespace ¶

type NvmeSubsystemMapNamespace struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The fully qualified path name of the NVMe namespace composed from the volume name, qtree name, and file name of the NVMe namespace. Valid in POST.
	Name string                 `json:"name,omitempty"`
	Node *InlineResponse201Node `json:"node,omitempty"`
	// The unique identifier of the NVMe namespace. Valid in POST.
	Uuid string `json:"uuid,omitempty"`
}

The NVMe namespace to which the NVMe subsystem is mapped. Required in POST by supplying either the UUID, name, or both.

type NvmeSubsystemMapResponse ¶

type NvmeSubsystemMapResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32              `json:"num_records,omitempty"`
	Records    []NvmeSubsystemMap `json:"records,omitempty"`
}

type NvmeSubsystemMapSubsystem ¶

type NvmeSubsystemMapSubsystem struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the NVMe subsystem.
	Name string `json:"name,omitempty"`
	// The unique identifier of the NVMe subsystem.
	Uuid string `json:"uuid,omitempty"`
}

An NVMe subsystem maintains configuration state and NVMe namespace access control for a set of NVMe-connected hosts.

type NvmeSubsystemNamespace ¶

type NvmeSubsystemNamespace struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the NVMe namespace.
	Name string `json:"name,omitempty"`
	// The unique identifier of the NVMe namespace.
	Uuid string `json:"uuid,omitempty"`
}

An NVMe namespace mapped to the NVMe subsystem.

type NvmeSubsystemReference ¶

type NvmeSubsystemReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the NVMe subsystem.
	Name string `json:"name,omitempty"`
	// The unique identifier of the NVMe subsystem.
	Uuid string `json:"uuid,omitempty"`
}

An NVMe subsystem maintains configuration state and NVMe namespace access control for a set of NVMe-connected hosts.

type NvmeSubsystemResponse ¶

type NvmeSubsystemResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32           `json:"num_records,omitempty"`
	Records    []NvmeSubsystem `json:"records,omitempty"`
}

type NvmeSubsystemSubsystemMaps ¶

type NvmeSubsystemSubsystemMaps struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The Asymmetric Namespace Access Group ID (ANAGRPID) of the NVMe namespace.<br/> The format for an ANAGRPIP is 8 hexadecimal digits (zero-filled) followed by a lower case \"h\".
	Anagrpid  string                  `json:"anagrpid,omitempty"`
	Namespace *NvmeSubsystemNamespace `json:"namespace,omitempty"`
	// The NVMe namespace identifier. This is an identifier used by an NVMe controller to provide access to the NVMe namespace.<br/> The format for an NVMe namespace identifier is 8 hexadecimal digits (zero-filled) followed by a lower case \"h\".
	Nsid string `json:"nsid,omitempty"`
}

An NVMe namespace mapped to the NVMe subsystem.

type OracleOnNfs ¶

type OracleOnNfs struct {
	ArchiveLog *OracleOnNfsArchiveLog `json:"archive_log,omitempty"`
	Db         *OracleOnNfsDb         `json:"db,omitempty"`
	// The list of NFS access controls. Optional in the POST body
	NfsAccess      []AppNfsAccess              `json:"nfs_access,omitempty"`
	OraHome        *OracleOnNfsOraHome         `json:"ora_home,omitempty"`
	ProtectionType *MongoDbOnSanProtectionType `json:"protection_type,omitempty"`
	RedoLog        *OracleOnNfsRedoLog         `json:"redo_log,omitempty"`
}

Oracle using NFS.

type OracleOnNfsArchiveLog ¶

type OracleOnNfsArchiveLog struct {
	// The size of the archive log. Usage: {&lt;integer&gt;[KB|MB|GB|TB|PB]} Optional in the POST or PATCH body
	Size           int32                                `json:"size,omitempty"`
	StorageService *OracleOnNfsArchiveLogStorageService `json:"storage_service,omitempty"`
}

type OracleOnNfsArchiveLogStorageService ¶

type OracleOnNfsArchiveLogStorageService struct {
	// The storage service of the archive log. Optional in the POST or PATCH body
	Name string `json:"name,omitempty"`
}

type OracleOnNfsDb ¶

type OracleOnNfsDb struct {
	// The size of the database. Usage: {&lt;integer&gt;[KB|MB|GB|TB|PB]} Required in the POST body and optional in the PATCH body
	Size           int32                              `json:"size,omitempty"`
	StorageService *MongoDbOnSanDatasetStorageService `json:"storage_service,omitempty"`
}

type OracleOnNfsOraHome ¶

type OracleOnNfsOraHome struct {
	// The size of the ORACLE_HOME storage volume. Usage: {&lt;integer&gt;[KB|MB|GB|TB|PB]} Optional in the POST or PATCH body
	Size           int32                             `json:"size,omitempty"`
	StorageService *OracleOnNfsOraHomeStorageService `json:"storage_service,omitempty"`
}

type OracleOnNfsOraHomeStorageService ¶

type OracleOnNfsOraHomeStorageService struct {
	// The storage service of the ORACLE_HOME storage volume. Optional in the POST or PATCH body
	Name string `json:"name,omitempty"`
}

type OracleOnNfsRedoLog ¶

type OracleOnNfsRedoLog struct {
	// Should the redo log group be mirrored? Optional in the POST body
	Mirrored bool `json:"mirrored,omitempty"`
	// The size of the redo log group. Usage: {&lt;integer&gt;[KB|MB|GB|TB|PB]} Required in the POST body and optional in the PATCH body
	Size           int32                             `json:"size,omitempty"`
	StorageService *OracleOnNfsRedoLogStorageService `json:"storage_service,omitempty"`
}

type OracleOnNfsRedoLogStorageService ¶

type OracleOnNfsRedoLogStorageService struct {
	// The storage service of the redo log group. Optional in the POST or PATCH body
	Name string `json:"name,omitempty"`
}

type OracleOnSan ¶

type OracleOnSan struct {
	ArchiveLog *OracleOnNfsArchiveLog `json:"archive_log,omitempty"`
	Db         *OracleOnNfsDb         `json:"db,omitempty"`
	// The name of the initiator group through which the contents of this application will be accessed. Modification of this parameter is a disruptive operation. All LUNs in the application component will be unmapped from the current igroup and re-mapped to the new igroup. Required in the POST body and optional in the PATCH body
	IgroupName string `json:"igroup_name,omitempty"`
	// The list of initiator groups to create. Optional in the POST or PATCH body
	NewIgroups []OracleOnSanNewIgroups `json:"new_igroups,omitempty"`
	OraHome    *OracleOnNfsOraHome     `json:"ora_home,omitempty"`
	// The name of the host OS running the application. Required in the POST body
	OsType         string                      `json:"os_type,omitempty"`
	ProtectionType *MongoDbOnSanProtectionType `json:"protection_type,omitempty"`
	RedoLog        *OracleOnNfsRedoLog         `json:"redo_log,omitempty"`
}

Oracle using SAN.

type OracleOnSanNewIgroups ¶

type OracleOnSanNewIgroups struct {
	// The name of the new initiator group. Required in the POST body and optional in the PATCH body
	Name       string   `json:"name,omitempty"`
	Initiators []string `json:"initiators,omitempty"`
	// The name of the host OS accessing the application. The default value is the host OS that is running the application. Optional in the POST or PATCH body
	OsType string `json:"os_type,omitempty"`
	// The protocol of the new initiator group. Optional in the POST or PATCH body
	Protocol string `json:"protocol,omitempty"`
}

The list of initiator groups to create.

type OracleRacOnNfs ¶

type OracleRacOnNfs struct {
	ArchiveLog *OracleOnNfsArchiveLog    `json:"archive_log,omitempty"`
	Db         *OracleOnNfsDb            `json:"db,omitempty"`
	GridBinary *OracleRacOnNfsGridBinary `json:"grid_binary,omitempty"`
	// The list of NFS access controls. Optional in the POST body
	NfsAccess      []AppNfsAccess              `json:"nfs_access,omitempty"`
	OraHome        *OracleOnNfsOraHome         `json:"ora_home,omitempty"`
	OracleCrs      *OracleRacOnNfsOracleCrs    `json:"oracle_crs,omitempty"`
	ProtectionType *MongoDbOnSanProtectionType `json:"protection_type,omitempty"`
	RedoLog        *OracleOnNfsRedoLog         `json:"redo_log,omitempty"`
}

Oracle RAC using NFS.

type OracleRacOnNfsGridBinary ¶

type OracleRacOnNfsGridBinary struct {
	// The size of the Oracle grid binary storage volume. Usage: {&lt;integer&gt;[KB|MB|GB|TB|PB]} Optional in the POST or PATCH body
	Size           int32                                   `json:"size,omitempty"`
	StorageService *OracleRacOnNfsGridBinaryStorageService `json:"storage_service,omitempty"`
}

type OracleRacOnNfsGridBinaryStorageService ¶

type OracleRacOnNfsGridBinaryStorageService struct {
	// The storage service of the Oracle grid binary storage volume. Optional in the POST or PATCH body
	Name string `json:"name,omitempty"`
}

type OracleRacOnNfsOracleCrs ¶

type OracleRacOnNfsOracleCrs struct {
	// The number of CRS volumes. Optional in the POST body
	Copies int32 `json:"copies,omitempty"`
	// The size of the Oracle CRS/voting storage volume. Usage: {&lt;integer&gt;[KB|MB|GB|TB|PB]} Optional in the POST body
	Size           int32                                  `json:"size,omitempty"`
	StorageService *OracleRacOnNfsOracleCrsStorageService `json:"storage_service,omitempty"`
}

type OracleRacOnNfsOracleCrsStorageService ¶

type OracleRacOnNfsOracleCrsStorageService struct {
	// The storage service of the Oracle CRS volume. Optional in the POST or PATCH body
	Name string `json:"name,omitempty"`
}

type OracleRacOnSan ¶

type OracleRacOnSan struct {
	ArchiveLog *OracleOnNfsArchiveLog    `json:"archive_log,omitempty"`
	Db         *OracleOnNfsDb            `json:"db,omitempty"`
	DbSids     []OracleRacOnSanDbSids    `json:"db_sids,omitempty"`
	GridBinary *OracleRacOnNfsGridBinary `json:"grid_binary,omitempty"`
	// The list of initiator groups to create. Optional in the POST or PATCH body
	NewIgroups []OracleRacOnSanNewIgroups `json:"new_igroups,omitempty"`
	OraHome    *OracleOnNfsOraHome        `json:"ora_home,omitempty"`
	OracleCrs  *OracleRacOnNfsOracleCrs   `json:"oracle_crs,omitempty"`
	// The name of the host OS running the application. Required in the POST body
	OsType         string                      `json:"os_type,omitempty"`
	ProtectionType *MongoDbOnSanProtectionType `json:"protection_type,omitempty"`
	RedoLog        *OracleOnNfsRedoLog         `json:"redo_log,omitempty"`
}

Oracle RAC using SAN.

type OracleRacOnSanDbSids ¶

type OracleRacOnSanDbSids struct {
	// The name of the initiator group through which the contents of this application will be accessed. Modification of this parameter is a disruptive operation. All LUNs in the application component will be unmapped from the current igroup and re-mapped to the new igroup. Optional in the POST or PATCH body
	IgroupName string `json:"igroup_name,omitempty"`
}

type OracleRacOnSanNewIgroups ¶

type OracleRacOnSanNewIgroups struct {
	// The name of the new initiator group. Required in the POST body and optional in the PATCH body
	Name       string   `json:"name,omitempty"`
	Initiators []string `json:"initiators,omitempty"`
	// The name of the host OS accessing the application. The default value is the host OS that is running the application. Optional in the POST or PATCH body
	OsType string `json:"os_type,omitempty"`
	// The protocol of the new initiator group. Optional in the POST or PATCH body
	Protocol string `json:"protocol,omitempty"`
}

The list of initiator groups to create.

type PeerReference ¶

type PeerReference struct {
	Cluster *PeerReferenceCluster `json:"cluster,omitempty"`
	Svm     *DnsSvm               `json:"svm,omitempty"`
}

Details for a peer SVM object.

type PeerReferenceCluster ¶

type PeerReferenceCluster struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

type PeersCollectionGetOpts ¶

type PeersCollectionGetOpts struct {
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type PerformanceMetricIoTypeReference ¶

type PerformanceMetricIoTypeReference struct {
	// Performance metric for other I/O operations. Other I/O operations can be metadata operations, such as directory lookups and so on.
	Other int32 `json:"other,omitempty"`
	// Performance metric for read I/O operations.
	Read int32 `json:"read,omitempty"`
	// Performance metric aggregated over all types of I/O operations.
	Total int32 `json:"total,omitempty"`
	// Peformance metric for write I/O operations.
	Write int32 `json:"write,omitempty"`
}

Type of I/O operation that can be associated with the type of performance metric. I/O operations can be \"total\", \"read\", \"write\", and \"other\". An I/O operation of type \"total\" is an aggregation of all operation types for any type of performance metric.

type PerformanceMetricRawReference ¶

type PerformanceMetricRawReference struct {
	IopsRaw    *ClusterStatisticsIopsRaw    `json:"iops_raw,omitempty"`
	LatencyRaw *ClusterStatisticsLatencyRaw `json:"latency_raw,omitempty"`
	// Any errors associated with the sample. For example, if the aggregation of data over multiple nodes fails then any of the partial errors might be returned, \"ok\" on success, or \"error\" on any internal uncategorized failure. Whenever a sample collection is missed but done at a later time, it is back filled to the previous 15 second timestamp and tagged with \"backfilled_data\". \"Inconsistent_delta_time\" is encountered when the time between two collections is not the same for all nodes. Therefore, the aggregated value might be over or under inflated. \"Negative_delta\" is returned when an expected monotonically increasing value has decreased in value. \"Inconsistent_old_data\" is returned when one or more nodes does not have the latest data.
	Status        string                          `json:"status,omitempty"`
	ThroughputRaw *ClusterStatisticsThroughputRaw `json:"throughput_raw,omitempty"`
	// The timestamp of the performance data.
	Timestamp time.Time `json:"timestamp,omitempty"`
}

These are raw performance numbers, such as IOPS latency and throughput. These numbers are aggregated across all nodes in the cluster and increase with the uptime of the cluster.

type PerformanceMetricReference ¶

type PerformanceMetricReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The duration over which this sample is calculated. The time durations are represented in the ISO-8601 standard format. Samples can be calculated over the following durations:
	Duration string                `json:"duration,omitempty"`
	Iops     *ClusterMetricIops    `json:"iops,omitempty"`
	Latency  *ClusterMetricLatency `json:"latency,omitempty"`
	// Any errors associated with the sample. For example, if the aggregation of data over multiple nodes fails then any of the partial errors might be returned, \"ok\" on success, or \"error\" on any internal uncategorized failure. Whenever a sample collection is missed but done at a later time, it is back filled to the previous 15 second timestamp and tagged with \"backfilled_data\". \"Inconsistent_ delta_time\" is encountered when the time between two collections is not the same for all nodes. Therefore, the aggregated value might be over or under inflated. \"Negative_delta\" is returned when an expected monotonically increasing value has decreased in value. \"Inconsistent_old_data\" is returned when one or more nodes does not have the latest data.
	Status     string                   `json:"status,omitempty"`
	Throughput *ClusterMetricThroughput `json:"throughput,omitempty"`
	// The timestamp of the performance data.
	Timestamp time.Time `json:"timestamp,omitempty"`
}

Performance numbers, such as IOPS latency and throughput.

type PerformanceResponse ¶

type PerformanceResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32           `json:"num_records,omitempty"`
	Records    []ClusterMetric `json:"records,omitempty"`
}

type Plex ¶

type Plex struct {
	Aggregate *DiskAggregates `json:"aggregate,omitempty"`
	// Plex name
	Name string `json:"name,omitempty"`
	// Plex is online
	Online bool `json:"online,omitempty"`
	// SyncMirror pool assignment
	Pool       string      `json:"pool,omitempty"`
	RaidGroups []RaidGroup `json:"raid_groups,omitempty"`
	Resync     *PlexResync `json:"resync,omitempty"`
	// Plex state
	State string `json:"state,omitempty"`
}

type PlexCollectionGetOpts ¶

type PlexCollectionGetOpts struct {
	AggregateUuid optional.String
	AggregateName optional.String
	ResyncPercent optional.Int32
	ResyncLevel   optional.String
	ResyncActive  optional.Bool
	Online        optional.Bool
	State         optional.String
	Pool          optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type PlexGetOpts ¶

type PlexGetOpts struct {
	Fields optional.Interface
}

type PlexReference ¶

type PlexReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
}

Plex

type PlexResponse ¶

type PlexResponse struct {
	Links  *AccountResponseLinks `json:"_links,omitempty"`
	Error_ *ModelError           `json:"error,omitempty"`
	// Number of records
	NumRecords int32  `json:"num_records,omitempty"`
	Records    []Plex `json:"records,omitempty"`
}

type PlexResync ¶

type PlexResync struct {
	// Plex is being resynchronized to its mirrored plex
	Active bool `json:"active,omitempty"`
	// Plex resyncing level
	Level string `json:"level,omitempty"`
	// Plex resyncing percentage
	Percent int32 `json:"percent,omitempty"`
}

type Port ¶

type Port struct {
	Links           *InlineResponse201Links `json:"_links,omitempty"`
	BroadcastDomain *PortBroadcastDomain    `json:"broadcast_domain,omitempty"`
	Enabled         bool                    `json:"enabled,omitempty"`
	Lag             *PortLag                `json:"lag,omitempty"`
	MacAddress      string                  `json:"mac_address,omitempty"`
	// MTU of the port in bytes. Set by broadcast domain.
	Mtu int32 `json:"mtu,omitempty"`
	// Portname, such as e0a, e1b-100 (VLAN on ethernet), a0c (LAG/ifgrp), a0d-200 (vlan on LAG/ifgrp)
	Name string                  `json:"name,omitempty"`
	Node *AutosupportMessageNode `json:"node,omitempty"`
	// Link speed in Mbps
	Speed int32 `json:"speed,omitempty"`
	// Operational state of the port.
	State string `json:"state,omitempty"`
	// Type of physical or virtual port
	Type_ string `json:"type,omitempty"`
	// Port UUID
	Uuid string    `json:"uuid,omitempty"`
	Vlan *PortVlan `json:"vlan,omitempty"`
}

type PortBroadcastDomain ¶

type PortBroadcastDomain struct {
	Links   *InlineResponse201Links          `json:"_links,omitempty"`
	Ipspace *BroadcastDomainReferenceIpspace `json:"ipspace,omitempty"`
	// Name of the broadcast domain, scoped to its IPspace
	Name string `json:"name,omitempty"`
	// Broadcast domain UUID
	Uuid string `json:"uuid,omitempty"`
}

Broadcast domain UUID along with a readable name. Either the UUID or both names may be provided on input.

type PortCollectionGetOpts ¶

type PortCollectionGetOpts struct {
	Description           optional.String
	MacAddress            optional.String
	PartNumber            optional.String
	SerialNumber          optional.String
	NodeUuid              optional.String
	NodeName              optional.String
	ErrorMessage          optional.String
	ErrorCorrectiveAction optional.String
	BoardName             optional.String
	CableSerialNumber     optional.String
	CablePartNumber       optional.String
	CableLength           optional.String
	CableIdentifier       optional.String
	Name                  optional.String
	State                 optional.String
	Speed                 optional.Float32
	Wwn                   optional.String
	Fields                optional.Interface
	MaxRecords            optional.Int32
	ReturnRecords         optional.Bool
	ReturnTimeout         optional.Int32
	OrderBy               optional.Interface
}

type PortGetOpts ¶

type PortGetOpts struct {
	Fields optional.Interface
}

type PortLag ¶

type PortLag struct {
	// Active ports of a LAG (ifgrp). (Some member ports may be inactive.)
	ActivePorts []IpInterfaceLocationHomePort `json:"active_ports,omitempty"`
	// Policy for mapping flows to ports for outbound packets through a LAG (ifgrp).
	DistributionPolicy string                        `json:"distribution_policy,omitempty"`
	MemberPorts        []IpInterfaceLocationHomePort `json:"member_ports,omitempty"`
	// Determines how the ports interact with the switch.
	Mode string `json:"mode,omitempty"`
}

type PortReference ¶

type PortReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Node  *BroadcastDomainNode    `json:"node,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

Port UUID along with readable names. Either the UUID or both names may be supplied on input.

type PortResponse ¶

type PortResponse struct {
	Links      *AccountResponseLinks `json:"_links,omitempty"`
	NumRecords int32                 `json:"num_records,omitempty"`
	Records    []Port                `json:"records,omitempty"`
}

type PortVlan ¶

type PortVlan struct {
	BasePort *IpInterfaceLocationHomePort `json:"base_port,omitempty"`
	// VLAN ID
	Tag int32 `json:"tag,omitempty"`
}

type QosPolicy ¶

type QosPolicy struct {
	Links    *InlineResponse201Links `json:"_links,omitempty"`
	Adaptive *QosPolicyAdaptive      `json:"adaptive,omitempty"`
	Fixed    *QosPolicyFixed         `json:"fixed,omitempty"`
	// Name of the QoS policy.
	Name string `json:"name,omitempty"`
	// Number of objects attached to this policy.
	ObjectCount int32     `json:"object_count,omitempty"`
	Svm         *AuditSvm `json:"svm,omitempty"`
	Uuid        string    `json:"uuid,omitempty"`
}

type QosPolicyAdaptive ¶

type QosPolicyAdaptive struct {
	// Specifies the absolute minimum IOPS that is used as an override when the expected_iops is less than this value. These floors are not guaranteed on non-AFF platforms or when FabricPool tiering policies are set.
	AbsoluteMinIops int32 `json:"absolute_min_iops,omitempty"`
	// Expected IOPS. Specifies the minimum expected IOPS per TB allocated based on the storage object allocated size. These floors are not guaranteed on non-AFF platforms or when FabricPool tiering policies are set.
	ExpectedIops int32 `json:"expected_iops,omitempty"`
	// Peak IOPS. Specifies the maximum possible IOPS per TB allocated based on the storage object allocated size or the storage object used size.
	PeakIops int32 `json:"peak_iops,omitempty"`
}

Adaptive QoS policy-groups define measurable service level objectives (SLOs) that adjust based on the storage object used space and the storage object allocated space.

type QosPolicyCollectionGetOpts ¶

type QosPolicyCollectionGetOpts struct {
	ObjectCount             optional.Int32
	AdaptiveExpectedIops    optional.Int32
	AdaptiveAbsoluteMinIops optional.Int32
	AdaptivePeakIops        optional.Int32
	Name                    optional.String
	FixedMaxThroughputIops  optional.Int32
	FixedCapacityShared     optional.Bool
	FixedMaxThroughputMbps  optional.Int32
	FixedMinThroughputIops  optional.Int32
	SvmUuid                 optional.String
	SvmName                 optional.String
	Uuid                    optional.String
	Fields                  optional.Interface
	MaxRecords              optional.Int32
	ReturnRecords           optional.Bool
	ReturnTimeout           optional.Int32
	OrderBy                 optional.Interface
}

type QosPolicyCreateOpts ¶

type QosPolicyCreateOpts struct {
	ReturnTimeout optional.Int32
	Info          optional.Interface
}

type QosPolicyDeleteOpts ¶

type QosPolicyDeleteOpts struct {
	ReturnTimeout optional.Int32
}

type QosPolicyFixed ¶

type QosPolicyFixed struct {
	// Specifies whether the capacities are shared across all objects that use this QoS policy-group. Default is false.
	CapacityShared bool `json:"capacity_shared,omitempty"`
	// Maximum throughput defined by this policy.  It is specified in terms of IOPS. 0 means no maximum throughput is enforced.
	MaxThroughputIops int32 `json:"max_throughput_iops,omitempty"`
	// Maximum throughput defined by this policy.  It is specified in terms of Mbps. 0 means no maximum throughput is enforced.
	MaxThroughputMbps int32 `json:"max_throughput_mbps,omitempty"`
	// Minimum throughput defined by this policy.  It is specified in terms of IOPS. 0 means no minimum throughput is enforced. These floors are not guaranteed on non-AFF platforms or when FabricPool tiering policies are set.
	MinThroughputIops int32 `json:"min_throughput_iops,omitempty"`
}

QoS policy-groups define a fixed service level objective (SLO) for a storage object.

type QosPolicyGetOpts ¶

type QosPolicyGetOpts struct {
	Fields optional.Interface
}

type QosPolicyModifyOpts ¶

type QosPolicyModifyOpts struct {
	ReturnTimeout optional.Int32
	Info          optional.Interface
}

type QosPolicyReference ¶

type QosPolicyReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Specifies the maximum throughput in IOPS, 0 means none. This is mutually exclusive with name and UUID during POST and PATCH. Default is 15000 on AFF platforms and 10000 on all other platforms.
	MaxThroughputIops int32 `json:"max_throughput_iops,omitempty"`
	// Specifies the maximum throughput in Megabytes per sec, 0 means none. This is mutually exclusive with name, UUID and \"min_throughput_iops\" during POST and PATCH.
	MaxThroughputMbps int32 `json:"max_throughput_mbps,omitempty"`
	// Specifies the minimum throughput in IOPS, 0 means none. Setting \"min_throughput\" is supported on AFF platforms only, unless FabricPool tiering policies are set. This is mutually exclusive with name, UUID and\" max_throughput_mbps\" during POST and PATCH.
	MinThroughputIops int32 `json:"min_throughput_iops,omitempty"`
	// The QoS policy group name. This is mutually exclusive with UUID and other QoS attributes during POST and PATCH.
	Name string `json:"name,omitempty"`
	// The QoS policy group UUID. This is mutually exclusive with name and other QoS attributes during POST and PATCH.
	Uuid string `json:"uuid,omitempty"`
}

When \"min_throughput_iops\", \"max_throughput_iops\" or \"max_throughput_mbps\" attributes are specified, the storage object is assigned to an auto-generated QoS policy group. If the attributes are later modified, the auto-generated QoS policy-group attributes are modified. Attributes can be removed by specifying \"0\" and policy group by specifying \"none\". Upon deletion of the storage object or if the attributes are removed, then the QoS policy-group is also removed.

type QosPolicyResponse ¶

type QosPolicyResponse struct {
	Links  *AccountResponseLinks `json:"_links,omitempty"`
	Error_ *ModelError           `json:"error,omitempty"`
	// Number of records
	NumRecords int32       `json:"num_records,omitempty"`
	Records    []QosPolicy `json:"records,omitempty"`
}

type Qtree ¶

type Qtree struct {
	Links        *InlineResponse201Links `json:"_links,omitempty"`
	ExportPolicy *QtreeExportPolicy      `json:"export_policy,omitempty"`
	// The identifier for the qtree, unique within the qtree's volume.
	Id int32 `json:"id,omitempty"`
	// The name of the qtree. Required in POST; optional in PATCH.
	Name string `json:"name,omitempty"`
	// Client visible path to the qtree. This field is not available if the volume does not have a junction-path configured. Not valid in POST or PATCH.
	Path          string         `json:"path,omitempty"`
	SecurityStyle *SecurityStyle `json:"security_style,omitempty"`
	Svm           *QtreeSvm      `json:"svm,omitempty"`
	// The UNIX permissions for the qtree. Valid in POST or PATCH.
	UnixPermissions int32        `json:"unix_permissions,omitempty"`
	Volume          *QtreeVolume `json:"volume,omitempty"`
}

A qtree is a directory at the top level of a volume to which a custom export policy (for fine-grained access control) and a quota rule can be applied, if required.

type QtreeCollectionGetOpts ¶

type QtreeCollectionGetOpts struct {
	Path             optional.String
	ExportPolicyName optional.String
	ExportPolicyId   optional.Int32
	VolumeName       optional.String
	VolumeUuid       optional.String
	Name             optional.String
	SvmUuid          optional.String
	SvmName          optional.String
	UnixPermissions  optional.Int32
	SecurityStyle    optional.String
	Id               optional.Int32
	Fields           optional.Interface
	MaxRecords       optional.Int32
	ReturnRecords    optional.Bool
	ReturnTimeout    optional.Int32
	OrderBy          optional.Interface
}

type QtreeExportPolicy ¶

type QtreeExportPolicy struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Id    int32                   `json:"id,omitempty"`
	Name  string                  `json:"name,omitempty"`
}

Export Policy

type QtreeGetOpts ¶

type QtreeGetOpts struct {
	Fields optional.Interface
}

type QtreeReference ¶

type QtreeReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The identifier for the qtree, unique within the qtree's volume.
	Id int32 `json:"id,omitempty"`
	// The name of the qtree.
	Name string `json:"name,omitempty"`
}

type QtreeResponse ¶

type QtreeResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32   `json:"num_records,omitempty"`
	Records    []Qtree `json:"records,omitempty"`
}

type QtreeSvm ¶

type QtreeSvm struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the SVM.
	Name string `json:"name,omitempty"`
	// The unique identifier of the SVM.
	Uuid string `json:"uuid,omitempty"`
}

Required in POST

type QtreeVolume ¶

type QtreeVolume struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the volume.
	Name string `json:"name,omitempty"`
	// Unique identifier for the volume. This corresponds to the instance-uuid that is exposed in the CLI and ONTAPI. It does not change due to a volume move.
	Uuid string `json:"uuid,omitempty"`
}

Required in POST

type QuotaReport ¶

type QuotaReport struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Files *QuotaReportFiles       `json:"files,omitempty"`
	Group *QuotaReportGroup       `json:"group,omitempty"`
	// Index that identifies a unique quota record. Valid in URL.
	Index int32             `json:"index,omitempty"`
	Qtree *QuotaReportQtree `json:"qtree,omitempty"`
	Space *QuotaReportSpace `json:"space,omitempty"`
	// Quota specifier
	Specifier string    `json:"specifier,omitempty"`
	Svm       *AuditSvm `json:"svm,omitempty"`
	// Quota type associated with the quota record.
	Type_ string `json:"type,omitempty"`
	// This parameter specifies the target user or users associated with the given quota report record. This parameter is available for user quota records and is not available for group or tree quota records. The target user or users are identified by a user name and user identifier. The user name can be a UNIX user name or a Windows user name, and the identifer can be a UNIX user identifier or a Windows security identifier.
	Users  []QuotaReportUsers `json:"users,omitempty"`
	Volume *CifsShareVolume   `json:"volume,omitempty"`
}

type QuotaReportCollectionGetOpts ¶

type QuotaReportCollectionGetOpts struct {
	SvmUuid                   optional.String
	SvmName                   optional.String
	VolumeName                optional.String
	VolumeUuid                optional.String
	UsersId                   optional.String
	UsersName                 optional.String
	GroupId                   optional.String
	GroupName                 optional.String
	Type_                     optional.String
	FilesUsedTotal            optional.Int32
	FilesUsedHardLimitPercent optional.String
	FilesUsedSoftLimitPercent optional.String
	FilesHardLimit            optional.Int32
	FilesSoftLimit            optional.Int32
	SpaceSoftLimit            optional.Int32
	SpaceHardLimit            optional.Int32
	SpaceUsedSoftLimitPercent optional.String
	SpaceUsedTotal            optional.Int32
	SpaceUsedHardLimitPercent optional.String
	Index                     optional.Int32
	Specifier                 optional.String
	QtreeId                   optional.Int32
	QtreeName                 optional.String
	Fields                    optional.Interface
	MaxRecords                optional.Int32
	ReturnRecords             optional.Bool
	ReturnTimeout             optional.Int32
	OrderBy                   optional.Interface
}

type QuotaReportFiles ¶

type QuotaReportFiles struct {
	// File hard limit
	HardLimit int32 `json:"hard_limit,omitempty"`
	// File soft limit
	SoftLimit int32                 `json:"soft_limit,omitempty"`
	Used      *QuotaReportFilesUsed `json:"used,omitempty"`
}

type QuotaReportFilesUsed ¶

type QuotaReportFilesUsed struct {
	// Total files used as a percentage of file hard limit
	HardLimitPercent string `json:"hard_limit_percent,omitempty"`
	// Total files used as a percentage of file soft limit
	SoftLimitPercent string `json:"soft_limit_percent,omitempty"`
	// Total files used
	Total int32 `json:"total,omitempty"`
}

type QuotaReportGetOpts ¶

type QuotaReportGetOpts struct {
	Fields optional.Interface
}

type QuotaReportGroup ¶

type QuotaReportGroup struct {
	// Quota target group ID
	Id string `json:"id,omitempty"`
	// Quota target group name
	Name string `json:"name,omitempty"`
}

This parameter specifies the target group associated with the given quota report record. This parameter is available for group quota records and is not available for user or tree quota records. The target group is identified by a UNIX group name and UNIX group identifer.

type QuotaReportQtree ¶

type QuotaReportQtree struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The unique identifier for a qtree.
	Id int32 `json:"id,omitempty"`
	// The name of the qtree.
	Name string `json:"name,omitempty"`
}

This parameter specifies the target qtree to which the user/group/tree quota policy rule applies. For a user/group quota policy rule at qtree level, this parameter takes a qtree name and is valid in GET or POST. For a user/group quota policy rule at volume level, this parameter is not valid in GET or POST. For a tree quota policy rule, this parameter is mandatory and is valid in both POST and GET. For a default tree quota policy rule, this parameter needs to be specified as \"\". For a tree quota policy rule at qtree level, this parameter takes a qtree name and is valid in GET or POST.

type QuotaReportQtreeReference ¶

type QuotaReportQtreeReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The unique identifier for a qtree.
	Id int32 `json:"id,omitempty"`
	// The name of the qtree.
	Name string `json:"name,omitempty"`
}

This parameter specifies the target qtree associated with the user, group, or tree record. For a user/group quota policy rule at volume level, this parameter is not valid. For a default tree quota policy rule, this parameter is specified as \"\" or \"*\". For a tree quota policy rule at qtree level, this parameter specifies a qtree name and a qtree identifier.

type QuotaReportResponse ¶

type QuotaReportResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32         `json:"num_records,omitempty"`
	Records    []QuotaReport `json:"records,omitempty"`
}

type QuotaReportSpace ¶

type QuotaReportSpace struct {
	// Space hard limit in bytes
	HardLimit int32 `json:"hard_limit,omitempty"`
	// Space soft limit in bytes
	SoftLimit int32                 `json:"soft_limit,omitempty"`
	Used      *QuotaReportSpaceUsed `json:"used,omitempty"`
}

type QuotaReportSpaceUsed ¶

type QuotaReportSpaceUsed struct {
	// Total space used as a percentage of space hard limit
	HardLimitPercent string `json:"hard_limit_percent,omitempty"`
	// Total space used as a percentage of space soft limit
	SoftLimitPercent string `json:"soft_limit_percent,omitempty"`
	// Total space used
	Total int32 `json:"total,omitempty"`
}

type QuotaReportUsers ¶

type QuotaReportUsers struct {
	// Quota target user ID
	Id string `json:"id,omitempty"`
	// Quota target user name
	Name string `json:"name,omitempty"`
}

type QuotaRule ¶

type QuotaRule struct {
	Links *InlineResponse201Links   `json:"_links,omitempty"`
	Files *QuotaRuleFiles           `json:"files,omitempty"`
	Group *QuotaRuleGroup           `json:"group,omitempty"`
	Qtree *QuotaRuleQtree           `json:"qtree,omitempty"`
	Space *QuotaRuleSpace           `json:"space,omitempty"`
	Svm   *FlexcacheRelationshipSvm `json:"svm,omitempty"`
	// This parameter specifies the quota policy rule type. This is required in POST only and can take either one of the \\\"user\\\", \\\"group\\\" or \\\"tree\\\" values.
	Type_ string `json:"type,omitempty"`
	// This parameter enables user mapping for user quota policy rules. This is valid in POST or PATCH for user quota policy rules only.
	UserMapping bool `json:"user_mapping,omitempty"`
	// This parameter specifies the target user to which the user quota policy rule applies. This parameter takes single or multiple user names or identifiers. This parameter is valid only for the POST operation of a user quota policy rule. If this parameter is used as an input to create a group or a tree quota policy rule, the POST operation will fail with an appropriate error. For POST, this input parameter takes either a user name or a user identifier, not both. For default quota rules, the user name must be chosen and specified as \"\". For explicit user quota rules, this parameter can indicate either a user name or user identifier. The user name can be a UNIX user name or a Windows user name. If a name contains a space, enclose the entire value in quotes. A UNIX user name cannot include a backslash (\\) or an @ sign; user names with these characters are treated as Windows names. The user identifer can be a UNIX user identifier or a Windows security identifier. For multi-user quota, this parameter can contain multiple user targets separated by a comma.
	Users []QuotaReportUsers `json:"users,omitempty"`
	// Unique identifier for the quota policy rule. This field is generated when the quota policy rule is created.
	Uuid   string           `json:"uuid,omitempty"`
	Volume *QuotaRuleVolume `json:"volume,omitempty"`
}

type QuotaRuleCollectionGetOpts ¶

type QuotaRuleCollectionGetOpts struct {
	SvmUuid        optional.String
	SvmName        optional.String
	VolumeName     optional.String
	VolumeUuid     optional.String
	Uuid           optional.String
	GroupName      optional.String
	GroupId        optional.String
	Type_          optional.String
	UsersName      optional.String
	UsersId        optional.String
	UserMapping    optional.Bool
	FilesHardLimit optional.Int32
	FilesSoftLimit optional.Int32
	SpaceSoftLimit optional.Int32
	SpaceHardLimit optional.Int32
	QtreeId        optional.Int32
	QtreeName      optional.String
	Fields         optional.Interface
	MaxRecords     optional.Int32
	ReturnRecords  optional.Bool
	ReturnTimeout  optional.Int32
	OrderBy        optional.Interface
}

type QuotaRuleFiles ¶

type QuotaRuleFiles struct {
	// This parameter specifies the hard limit for files. This is valid in POST or PATCH.
	HardLimit int32 `json:"hard_limit,omitempty"`
	// This parameter specifies the soft limit for files. This is valid in POST or PATCH.
	SoftLimit int32 `json:"soft_limit,omitempty"`
}

type QuotaRuleGetOpts ¶

type QuotaRuleGetOpts struct {
	Fields optional.Interface
}

type QuotaRuleGroup ¶

type QuotaRuleGroup struct {
	// Quota target group ID
	Id string `json:"id,omitempty"`
	// Quota target group name
	Name string `json:"name,omitempty"`
}

This parameter specifies the target group to which the group quota policy rule applies. This parameter takes a group name or identifier. This parameter is only valid for the POST operation of a group quota policy rule. The POST operation will fail with an appropriate error if this parameter is used as an input to create a user or a tree quota policy rule. This input parameter for POST takes either a group name or a group identifier, but not both. For default quota rules, the group name must be chosen and should be specified as \"\". For explicit group quota rules, this parameter can contain a UNIX group name or a UNIX group identifier.

type QuotaRuleModifyOpts ¶

type QuotaRuleModifyOpts struct {
	Info optional.Interface
}

type QuotaRuleQtree ¶

type QuotaRuleQtree struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The unique identifier for a qtree.
	Id int32 `json:"id,omitempty"`
	// The name of the qtree.
	Name string `json:"name,omitempty"`
}

This parameter specifies the target qtree to which the user/group/tree quota policy rule applies. For a user/group quota policy rule at qtree level, this parameter takes a qtree name and is valid in GET or POST. For a user/group quota policy rule at volume level, this parameter is not valid in GET or POST. For a tree quota policy rule, this parameter is mandatory and is valid in both POST and GET. For a default tree quota policy rule, this parameter needs to be specified as \"\". For a tree quota policy rule at qtree level, this parameter takes a qtree name and is valid in GET or POST.

type QuotaRuleQtreeReference ¶

type QuotaRuleQtreeReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The unique identifier for a qtree.
	Id int32 `json:"id,omitempty"`
	// The name of the qtree.
	Name string `json:"name,omitempty"`
}

This parameter specifies the target qtree to which the user/group/tree quota policy rule applies. For a user/group quota policy rule at qtree level, this parameter takes a qtree name and is valid in GET or POST. For a user/group quota policy rule at volume level, this parameter is not valid in GET or POST. For a tree quota policy rule, this parameter is mandatory and is valid in both POST and GET. For a default tree quota policy rule, this parameter needs to be specified as \"\". For a tree quota policy rule at qtree level, this parameter takes a qtree name and is valid in GET or POST.

type QuotaRuleResponse ¶

type QuotaRuleResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32       `json:"num_records,omitempty"`
	Records    []QuotaRule `json:"records,omitempty"`
}

type QuotaRuleSpace ¶

type QuotaRuleSpace struct {
	// This parameter specifies the space hard limit, in bytes. If less than 1024 bytes, the value is rounded up to 1024 bytes. Valid in POST or PATCH.
	HardLimit int32 `json:"hard_limit,omitempty"`
	// This parameter specifies the space soft limit, in bytes. If less than 1024 bytes, the value is rounded up to 1024 bytes. Valid in POST or PATCH.
	SoftLimit int32 `json:"soft_limit,omitempty"`
}

type QuotaRuleVolume ¶

type QuotaRuleVolume struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the volume.
	Name string `json:"name,omitempty"`
	// Unique identifier for the volume. This corresponds to the instance-uuid that is exposed in the CLI and ONTAPI. It does not change due to a volume move.
	Uuid string `json:"uuid,omitempty"`
}

type RaidGroup ¶

type RaidGroup struct {
	// RAID group is a cache tier
	CacheTier bool `json:"cache_tier,omitempty"`
	// RAID group is degraded. A RAID group is degraded when at least one disk from that group has failed or is offline.
	Degraded bool            `json:"degraded,omitempty"`
	Disks    []RaidGroupDisk `json:"disks,omitempty"`
	// RAID group name
	Name              string                      `json:"name,omitempty"`
	RecomputingParity *RaidGroupRecomputingParity `json:"recomputing_parity,omitempty"`
	Reconstruct       *RaidGroupReconstruct       `json:"reconstruct,omitempty"`
}

type RaidGroupDisk ¶

type RaidGroupDisk struct {
	Disk *RaidGroupDiskDisk `json:"disk,omitempty"`
	// The position of the disk within the RAID group.
	Position string `json:"position,omitempty"`
	// The state of the disk within the RAID group.
	State string `json:"state,omitempty"`
	// Disk interface type
	Type_ string `json:"type,omitempty"`
	// Size in bytes that is usable by the aggregate.
	UsableSize int32 `json:"usable_size,omitempty"`
}

type RaidGroupDiskDisk ¶

type RaidGroupDiskDisk struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
}

Disk

type RaidGroupRecomputingParity ¶

type RaidGroupRecomputingParity struct {
	// RAID group is recomputing parity
	Active bool `json:"active,omitempty"`
	// Recomputing parity percentage
	Percent int32 `json:"percent,omitempty"`
}

type RaidGroupReconstruct ¶

type RaidGroupReconstruct struct {
	// One or more disks in this RAID group are being reconstructed.
	Active bool `json:"active,omitempty"`
	// Reconstruct percentage
	Percent int32 `json:"percent,omitempty"`
}
type RelatedLink struct {
	Related *Href `json:"related,omitempty"`
}

type Role ¶

type Role struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Indicates if this is a built-in (pre-defined) role which cannot be modified or deleted.
	Builtin bool `json:"builtin,omitempty"`
	// Role name
	Name  string     `json:"name,omitempty"`
	Owner *RoleOwner `json:"owner,omitempty"`
	// The list of privileges that this role has been granted.
	Privileges []RolePrivilege `json:"privileges,omitempty"`
	// Scope of the entity. set to \"cluster\" for cluster owned objects and to \"svm\" for SVM owned objects.
	Scope string `json:"scope,omitempty"`
}

A named set of privileges that defines the rights an account has when it is assigned the role.

type RoleCollectionGetOpts ¶

type RoleCollectionGetOpts struct {
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type RoleOwner ¶

type RoleOwner struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the SVM.
	Name string `json:"name,omitempty"`
	// The unique identifier of the SVM.
	Uuid string `json:"uuid,omitempty"`
}

Owner name and UUID that uniquely identifies the role.

type RolePrivilege ¶

type RolePrivilege struct {
	Links  *InlineResponse201Links `json:"_links,omitempty"`
	Access *RolePrivilegeLevel     `json:"access,omitempty"`
	// REST URI/endpoint
	Path string `json:"path,omitempty"`
}

A tuple containing the REST endpoint and the access level assigned to that endpoint.

type RolePrivilegeLevel ¶

type RolePrivilegeLevel string

RolePrivilegeLevel : Access level for the REST endpoint.

const (
	NONE_RolePrivilegeLevel     RolePrivilegeLevel = "none"
	READONLY_RolePrivilegeLevel RolePrivilegeLevel = "readonly"
	ALL_RolePrivilegeLevel      RolePrivilegeLevel = "all"
)

List of role_privilege_level

type RolePrivilegeResponse ¶

type RolePrivilegeResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32           `json:"num_records,omitempty"`
	Records    []RolePrivilege `json:"records,omitempty"`
}

type RoleReference ¶

type RoleReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Role name
	Name string `json:"name,omitempty"`
}

type RoleResponse ¶

type RoleResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32  `json:"num_records,omitempty"`
	Records    []Role `json:"records,omitempty"`
}

type Rotation ¶

type Rotation struct {
	// Manually rotates the audit logs. Optional in PATCH only. Not available in POST.
	Now      bool           `json:"now,omitempty"`
	Schedule *AuditSchedule `json:"schedule,omitempty"`
	// Rotates logs based on log size in bytes. This is mutually exclusive with schedule.
	Size int32 `json:"size,omitempty"`
}

Audit event log files are rotated when they reach a configured threshold log size or are on a configured schedule. When an event log file is rotated, the scheduled consolidation task first renames the active converted file to a time-stamped archive file, and then creates a new active converted event log file.

type SANApiService ¶

type SANApiService service

func (*SANApiService) FcLoginCollectionGet ¶

func (a *SANApiService) FcLoginCollectionGet(ctx context.Context, localVarOptionals *FcLoginCollectionGetOpts) (FcLoginResponse, *http.Response, error)

func (*SANApiService) FcLoginGet ¶

func (a *SANApiService) FcLoginGet(ctx context.Context, interfaceUuid string, initiatorWwpn string, localVarOptionals *FcLoginGetOpts) (FcLogin, *http.Response, error)

func (*SANApiService) FcpServiceCollectionGet ¶

func (a *SANApiService) FcpServiceCollectionGet(ctx context.Context, localVarOptionals *FcpServiceCollectionGetOpts) (FcpServiceResponse, *http.Response, error)

func (*SANApiService) FcpServiceCreate ¶

func (a *SANApiService) FcpServiceCreate(ctx context.Context, info FcpService) (FcpServiceResponse, *http.Response, error)

SANApiService Creates an FC Protocol service. ### Required properties * &#x60;svm.uuid&#x60; or &#x60;svm.name&#x60; - Existing SVM in which to create the FC service. ### Related ONTAP commands * &#x60;vserver fcp create&#x60; ### Learn more * [&#x60;DOC /protocols/san/fcp/services&#x60;](#docs-SAN-protocols_san_fcp_services)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info The property values for the new FC Protocol service.

@return FcpServiceResponse

func (*SANApiService) FcpServiceDelete ¶

func (a *SANApiService) FcpServiceDelete(ctx context.Context, svmUuid string) (*http.Response, error)

SANApiService Deletes an FC Protocol service. An FC Protocol service must be disabled before it can be deleted. ### Related ONTAP commands * &#x60;vserver fcp delete&#x60; ### Learn more * [&#x60;DOC /protocols/san/fcp/services&#x60;](#docs-SAN-protocols_san_fcp_services)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid The unique identifier of the SVM for which to delete the FC Protocol service.

func (*SANApiService) FcpServiceGet ¶

func (a *SANApiService) FcpServiceGet(ctx context.Context, svmUuid string, localVarOptionals *FcpServiceGetOpts) (FcpService, *http.Response, error)

func (*SANApiService) FcpServiceModify ¶

func (a *SANApiService) FcpServiceModify(ctx context.Context, svmUuid string, info FcpService) (*http.Response, error)

SANApiService Updates an FC Protocol service. ### Related ONTAP commands * &#x60;vserver fcp modify&#x60; * &#x60;vserver fcp start&#x60; * &#x60;vserver fcp stop&#x60; ### Learn more * [&#x60;DOC /protocols/san/fcp/services&#x60;](#docs-SAN-protocols_san_fcp_services)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid The unique identifier of the SVM whose FC Protocol service is to be patched.
  • @param info The new property values for the FC Protocol service.

func (*SANApiService) IgroupCollectionGet ¶

func (a *SANApiService) IgroupCollectionGet(ctx context.Context, localVarOptionals *IgroupCollectionGetOpts) (IgroupResponse, *http.Response, error)

func (*SANApiService) IgroupCreate ¶

func (a *SANApiService) IgroupCreate(ctx context.Context, info Igroup) (IgroupResponse, *http.Response, error)

SANApiService Creates an initiator group. ### Required properties * &#x60;svm.uuid&#x60; or &#x60;svm.name&#x60; - Existing SVM in which to create the initiator group. * &#x60;name&#x60; - Name of the initiator group. * &#x60;os_type&#x60; - Operating system of the initiator group&#39;s initiators. ### Recommended optional properties * &#x60;initiators.name&#x60; - Name(s) of initiator group&#39;s initiators. This property can be used to create the initiator group and populate it with initiators in a single request. ### Default property values If not specified in POST, the following default property values are assigned. * &#x60;protocol&#x60; - _mixed_ - Data protocol of the initiator group&#39;s initiators. ### Learn more * [&#x60;DOC /protocols/san/igroups&#x60;](#docs-SAN-protocols_san_igroups)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info The property values for the new initiator group.

@return IgroupResponse

func (*SANApiService) IgroupDelete ¶

func (a *SANApiService) IgroupDelete(ctx context.Context, uuid string, localVarOptionals *IgroupDeleteOpts) (*http.Response, error)

func (*SANApiService) IgroupGet ¶

func (a *SANApiService) IgroupGet(ctx context.Context, uuid string, localVarOptionals *IgroupGetOpts) (Igroup, *http.Response, error)

func (*SANApiService) IgroupInitiatorCollectionGet ¶

func (a *SANApiService) IgroupInitiatorCollectionGet(ctx context.Context, igroupUuid string, localVarOptionals *IgroupInitiatorCollectionGetOpts) (IgroupInitiatorResponse, *http.Response, error)

func (*SANApiService) IgroupInitiatorCreate ¶

func (a *SANApiService) IgroupInitiatorCreate(ctx context.Context, igroupUuid string, info IgroupInitiator) (IgroupInitiatorResponse, *http.Response, error)

SANApiService Adds one or more initiators to an initiator group. ### Required properties * &#x60;name&#x60; or &#x60;records.name&#x60; - Initiator name(s) to add to the initiator group. ### Related ONTAP commands * &#x60;lun igroup add&#x60; ### Learn more * [&#x60;DOC /protocols/san/igroups&#x60;](#docs-SAN-protocols_san_igroups)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param igroupUuid The unique identifier of the initiator group.
  • @param info The properties of the initiator to add to the initiator group.

@return IgroupInitiatorResponse

func (*SANApiService) IgroupInitiatorDelete ¶

func (a *SANApiService) IgroupInitiatorDelete(ctx context.Context, igroupUuid string, name string, localVarOptionals *IgroupInitiatorDeleteOpts) (*http.Response, error)

func (*SANApiService) IgroupInitiatorGet ¶

func (a *SANApiService) IgroupInitiatorGet(ctx context.Context, igroupUuid string, name string, localVarOptionals *IgroupInitiatorGetOpts) (IgroupInitiator, *http.Response, error)

func (*SANApiService) IgroupModify ¶

func (a *SANApiService) IgroupModify(ctx context.Context, uuid string, info Igroup) (*http.Response, error)

SANApiService Updates an initiator group. ### Related ONTAP commands * &#x60;lun igroup modify&#x60; * &#x60;lun igroup rename&#x60; ### Learn more * [&#x60;DOC /protocols/san/igroups&#x60;](#docs-SAN-protocols_san_igroups)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid The unique identifier of the initiator group.
  • @param info The new property values for the initiator group.

func (*SANApiService) IscsiCredentialsCollectionGet ¶

func (a *SANApiService) IscsiCredentialsCollectionGet(ctx context.Context, localVarOptionals *IscsiCredentialsCollectionGetOpts) (IscsiCredentialsResponse, *http.Response, error)

func (*SANApiService) IscsiCredentialsCreate ¶

func (a *SANApiService) IscsiCredentialsCreate(ctx context.Context, info IscsiCredentials) (IscsiCredentialsResponse, *http.Response, error)

SANApiService Creates iSCSI credentials. ### Required properties * &#x60;svm.uuid&#x60; or &#x60;svm.name&#x60; - Existing SVM in which to create the iSCSI credentials. * &#x60;initiator&#x60; - Initiator for which the iSCSI credentials are to be created. * &#x60;authentication_type&#x60; - Type of authentication to use for the credentials. ### Recommended optional properties * &#x60;chap.inbound.user&#x60; - In-bound CHAP authentication user name. * &#x60;chap.inbound.password&#x60; - In-bound CHAP authentication password. * &#x60;chap.outbound.user&#x60; - Out-bound CHAP authentication user name. * &#x60;chap.outbound.password&#x60; - Out-bound CHAP authentication password. ### Related ONTAP commands * &#x60;vserver iscsi security create&#x60; ### Learn more * [&#x60;DOC /protocols/san/iscsi/credentials&#x60;](#docs-SAN-protocols_san_iscsi_credentials)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info The property values for the new iSCSI credentials object.

@return IscsiCredentialsResponse

func (*SANApiService) IscsiCredentialsDelete ¶

func (a *SANApiService) IscsiCredentialsDelete(ctx context.Context, svmUuid string, initiator string) (*http.Response, error)

SANApiService Deletes specified iSCSI credentials. ### Related ONTAP commands * &#x60;vserver iscsi security delete&#x60; ### Learn more * [&#x60;DOC /protocols/san/iscsi/credentials&#x60;](#docs-SAN-protocols_san_iscsi_credentials)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid The unique identifier of an SVM.
  • @param initiator The iSCSI initiator of the credentials object.

func (*SANApiService) IscsiCredentialsGet ¶

func (a *SANApiService) IscsiCredentialsGet(ctx context.Context, svmUuid string, initiator string, localVarOptionals *IscsiCredentialsGetOpts) (IscsiCredentials, *http.Response, error)

func (*SANApiService) IscsiCredentialsModify ¶

func (a *SANApiService) IscsiCredentialsModify(ctx context.Context, svmUuid string, initiator string, info IscsiCredentials, localVarOptionals *IscsiCredentialsModifyOpts) (*http.Response, error)

func (*SANApiService) IscsiServiceCollectionGet ¶

func (a *SANApiService) IscsiServiceCollectionGet(ctx context.Context, localVarOptionals *IscsiServiceCollectionGetOpts) (IscsiServiceResponse, *http.Response, error)

func (*SANApiService) IscsiServiceCreate ¶

func (a *SANApiService) IscsiServiceCreate(ctx context.Context, info IscsiService) (IscsiServiceResponse, *http.Response, error)

SANApiService Creates an iSCSI service. ### Required properties * &#x60;svm.uuid&#x60; or &#x60;svm.name&#x60; - Existing SVM in which to create the iSCSI service. ### Related ONTAP commands * &#x60;vserver iscsi create&#x60; ### Learn more * [&#x60;DOC /protocols/san/iscsi/services&#x60;](#docs-SAN-protocols_san_iscsi_services)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info The property values for the new iSCSI service.

@return IscsiServiceResponse

func (*SANApiService) IscsiServiceDelete ¶

func (a *SANApiService) IscsiServiceDelete(ctx context.Context, svmUuid string) (*http.Response, error)

SANApiService Deletes an iSCSI service. An iSCSI service must be disabled before it can be deleted. ### Related ONTAP commands * &#x60;vserver iscsi delete&#x60; ### Learn more * [&#x60;DOC /protocols/san/iscsi/services&#x60;](#docs-SAN-protocols_san_iscsi_services)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid The unique identifier of the SVM for which to delete the iSCSI service.

func (*SANApiService) IscsiServiceGet ¶

func (a *SANApiService) IscsiServiceGet(ctx context.Context, svmUuid string, localVarOptionals *IscsiServiceGetOpts) (IscsiService, *http.Response, error)

func (*SANApiService) IscsiServiceModify ¶

func (a *SANApiService) IscsiServiceModify(ctx context.Context, svmUuid string, info IscsiService) (*http.Response, error)

SANApiService Updates an iSCSI service. ### Related ONTAP commands * &#x60;vserver iscsi modify&#x60; * &#x60;vserver iscsi start&#x60; * &#x60;vserver iscsi stop&#x60; ### Learn more * [&#x60;DOC /protocols/san/iscsi/services&#x60;](#docs-SAN-protocols_san_iscsi_services)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid The unique identifier of the SVM for which to update the iSCSI service.
  • @param info The new property values for the iSCSI service.

func (*SANApiService) IscsiSessionCollectionGet ¶

func (a *SANApiService) IscsiSessionCollectionGet(ctx context.Context, localVarOptionals *IscsiSessionCollectionGetOpts) (IscsiSessionResponse, *http.Response, error)

func (*SANApiService) IscsiSessionGet ¶

func (a *SANApiService) IscsiSessionGet(ctx context.Context, svmUuid string, tpgroup string, tsih int32, localVarOptionals *IscsiSessionGetOpts) (IscsiSession, *http.Response, error)

func (*SANApiService) LunCollectionGet ¶

func (a *SANApiService) LunCollectionGet(ctx context.Context, localVarOptionals *LunCollectionGetOpts) (LunResponse, *http.Response, error)

func (*SANApiService) LunCreate ¶

func (a *SANApiService) LunCreate(ctx context.Context, info Lun) (LunResponse, *http.Response, error)

SANApiService Creates a LUN. ### Required properties * &#x60;svm.uuid&#x60; or &#x60;svm.name&#x60; - Existing SVM in which to create the LUN. * &#x60;name&#x60;, &#x60;location.volume.name&#x60; or &#x60;location.volume.uuid&#x60; - Existing volume in which to create the LUN. * &#x60;name&#x60; or &#x60;location.logical_unit&#x60; - Base name of the LUN. * &#x60;os_type&#x60; - Operating system from which the LUN will be accessed. Required when creating a non-clone LUN and disallowed when creating a clone of an existing LUN. A clone&#39;s &#x60;os_type&#x60; is taken from the source LUN. * &#x60;space.size&#x60; - Size of the LUN. Required when creating a non-clone LUN and disallowed when creating a clone of an existing LUN. A clone&#39;s size is taken from the source LUN. ### Recommended optional properties * &#x60;qos_policy.name&#x60; or &#x60;qos_policy.uuid&#x60; - Existing traditional or adaptive QoS policy to be applied to the LUN. All LUNs should be managed by a QoS policy at the volume or LUN level. ### Default property values If not specified in POST, the follow default property values are assigned. * &#x60;auto_delete&#x60; - _false_ ### Related ONTAP commands * &#x60;lun create&#x60; * &#x60;volume file clone autodelete&#x60; * &#x60;volume file clone create&#x60; ### Learn more * [&#x60;DOC /storage/luns&#x60;](#docs-SAN-storage_luns)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info The property values for the new LUN.

@return LunResponse

func (*SANApiService) LunDelete ¶

func (a *SANApiService) LunDelete(ctx context.Context, uuid string, localVarOptionals *LunDeleteOpts) (*http.Response, error)

func (*SANApiService) LunGet ¶

func (a *SANApiService) LunGet(ctx context.Context, uuid string, localVarOptionals *LunGetOpts) (Lun, *http.Response, error)

func (*SANApiService) LunMapCollectionGet ¶

func (a *SANApiService) LunMapCollectionGet(ctx context.Context, localVarOptionals *LunMapCollectionGetOpts) (LunMapResponse, *http.Response, error)

func (*SANApiService) LunMapCreate ¶

func (a *SANApiService) LunMapCreate(ctx context.Context, info LunMap) (LunMapResponse, *http.Response, error)

SANApiService Creates a LUN map. ### Required properties * &#x60;svm.uuid&#x60; or &#x60;svm.name&#x60; - Existing SVM in which to create the LUN map. * &#x60;igroup.uuid&#x60; or &#x60;igroup.name&#x60; - Existing initiator group to map to the specified LUN. * &#x60;lun.uuid&#x60; or &#x60;lun.name&#x60; - Existing LUN to map to the specified initiator group. ### Default property values If not specified in POST, the following default property values are assigned. * &#x60;logical_unit_number&#x60; - If no value is provided, ONTAP assigns the lowest available value. ### Related ONTAP commands * &#x60;lun mapping create&#x60; ### Learn more * [&#x60;DOC /protocols/san/lun-maps&#x60;](#docs-SAN-protocols_san_lun-maps)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info The property values for the new LUN map.

@return LunMapResponse

func (*SANApiService) LunMapDelete ¶

func (a *SANApiService) LunMapDelete(ctx context.Context, lunUuid string, igroupUuid string) (*http.Response, error)

SANApiService Deletes a LUN map. ### Related ONTAP commands * &#x60;lun mapping delete&#x60; ### Learn more * [&#x60;DOC /protocols/san/lun-maps&#x60;](#docs-SAN-protocols_san_lun-maps)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param lunUuid The unique identifier of the LUN.
  • @param igroupUuid The unique identifier of the igroup.

func (*SANApiService) LunMapGet ¶

func (a *SANApiService) LunMapGet(ctx context.Context, lunUuid string, igroupUuid string, localVarOptionals *LunMapGetOpts) (LunMap, *http.Response, error)

func (*SANApiService) LunModify ¶

func (a *SANApiService) LunModify(ctx context.Context, uuid string, info Lun) (*http.Response, error)

SANApiService Updates the properties of a LUN. PATCH can also be be used to overwrite the contents of a LUN as a clone of another, to begin movement of a LUN between volumes, and to pause and resume the movement of a LUN between volumes. ### Related ONTAP commands * &#x60;lun modify&#x60; * &#x60;lun move modify&#x60; * &#x60;lun move pause&#x60; * &#x60;lun move resume&#x60; * &#x60;lun move start&#x60; * &#x60;lun resize&#x60; * &#x60;volume file clone autodelete&#x60; ### Learn more * [&#x60;DOC /storage/luns&#x60;](#docs-SAN-storage_luns)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid The unique identifier of the LUN to update.
  • @param info The new property values for the LUN.

func (*SANApiService) WwpnAliasCollectionGet ¶

func (a *SANApiService) WwpnAliasCollectionGet(ctx context.Context, localVarOptionals *WwpnAliasCollectionGetOpts) (WwpnAliasResponse, *http.Response, error)

func (*SANApiService) WwpnAliasCreate ¶

func (a *SANApiService) WwpnAliasCreate(ctx context.Context, info WwpnAlias) (WwpnAliasResponse, *http.Response, error)

SANApiService Creates an FC WWPN alias. ### Required properties * &#x60;svm.uuid&#x60; or &#x60;svm.name&#x60; - Existing SVM in which to create the FC alias. * &#x60;alias&#x60; - Name of the FC alias. * &#x60;wwpn&#x60; - FC WWPN for which to create the alias. ### Related ONTAP commands * &#x60;vserver fcp wwpn-alias set&#x60; ### Learn more * [&#x60;DOC /network/fc/wwpn-aliases&#x60;](#docs-SAN-network_fc_wwpn-aliases)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info The property values for the new WWPN alias.

@return WwpnAliasResponse

func (*SANApiService) WwpnAliasDelete ¶

func (a *SANApiService) WwpnAliasDelete(ctx context.Context, svmUuid string, alias string) (*http.Response, error)

SANApiService Deletes an FC WWPN alias. ### Related ONTAP commands * &#x60;vserver fcp wwpn-alias remove&#x60; ### Learn more * [&#x60;DOC /network/fc/wwpn-aliases&#x60;](#docs-SAN-network_fc_wwpn-aliases)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param svmUuid The unique identifier of the SVM.
  • @param alias The name of FC WWPN alias.

func (*SANApiService) WwpnAliasGet ¶

func (a *SANApiService) WwpnAliasGet(ctx context.Context, svmUuid string, alias string, localVarOptionals *WwpnAliasGetOpts) (WwpnAlias, *http.Response, error)

type San ¶

type San struct {
	ApplicationComponents []SanApplicationComponents `json:"application_components,omitempty"`
	// The list of initiator groups to create. Optional in the POST or PATCH body
	NewIgroups []SanNewIgroups `json:"new_igroups,omitempty"`
	// The name of the host OS running the application. Required in the POST body
	OsType         string                      `json:"os_type,omitempty"`
	ProtectionType *MongoDbOnSanProtectionType `json:"protection_type,omitempty"`
}

A generic SAN application.

type SanApplicationComponents ¶

type SanApplicationComponents struct {
	// The name of the application component. Optional in the POST or PATCH body
	Name string `json:"name,omitempty"`
	// The name of the initiator group through which the contents of this application will be accessed. Modification of this parameter is a disruptive operation. All LUNs in the application component will be unmapped from the current igroup and re-mapped to the new igroup. Optional in the POST or PATCH body
	IgroupName string `json:"igroup_name,omitempty"`
	// The number of LUNs in the application component. Optional in the POST body
	LunCount       int32              `json:"lun_count,omitempty"`
	StorageService *NasStorageService `json:"storage_service,omitempty"`
	// The total size of the application component, split across the member LUNs. Usage: {&lt;integer&gt;[KB|MB|GB|TB|PB]} Optional in the POST or PATCH body
	TotalSize int32 `json:"total_size,omitempty"`
}

type SanNewIgroups ¶

type SanNewIgroups struct {
	// The name of the new initiator group. Required in the POST body and optional in the PATCH body
	Name       string   `json:"name,omitempty"`
	Initiators []string `json:"initiators,omitempty"`
	// The name of the host OS accessing the application. The default value is the host OS that is running the application. Optional in the POST or PATCH body
	OsType string `json:"os_type,omitempty"`
	// The protocol of the new initiator group. Optional in the POST or PATCH body
	Protocol string `json:"protocol,omitempty"`
}

The list of initiator groups to create.

type Schedule ¶

type Schedule struct {
	Links   *InlineResponse201Links `json:"_links,omitempty"`
	Cluster *ScheduleCluster        `json:"cluster,omitempty"`
	Cron    *ScheduleCron           `json:"cron,omitempty"`
	// An ISO-8601 duration formatted string.
	Interval string `json:"interval,omitempty"`
	// Schedule Name. Required in the URL or POST body.
	Name string `json:"name,omitempty"`
	// Schedule type
	Type_ string `json:"type,omitempty"`
	// Job schedule UUID
	Uuid string `json:"uuid,omitempty"`
}

Complete schedule information

type ScheduleCluster ¶

type ScheduleCluster struct {
	// Cluster name
	Name string `json:"name,omitempty"`
	// Cluster UUID
	Uuid string `json:"uuid,omitempty"`
}

The cluster that owns the schedule. Defaults to the local cluster.

type ScheduleCollectionGetOpts ¶

type ScheduleCollectionGetOpts struct {
	Uuid          optional.String
	CronDays      optional.Int32
	CronHours     optional.Int32
	CronMonths    optional.Int32
	CronMinutes   optional.Int32
	CronWeekdays  optional.Int32
	ClusterName   optional.String
	ClusterUuid   optional.String
	Interval      optional.String
	Type_         optional.String
	Name          optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type ScheduleCreateOpts ¶

type ScheduleCreateOpts struct {
	Info optional.Interface
}

type ScheduleCron ¶

type ScheduleCron struct {
	// The days of the month the schedule runs. Leave empty for all.
	Days []int32 `json:"days,omitempty"`
	// The hours of the day the schedule runs. Leave empty for all.
	Hours []int32 `json:"hours,omitempty"`
	// The minutes the schedule runs. Required on POST for a cron schedule.
	Minutes []int32 `json:"minutes,omitempty"`
	// The months of the year the schedule runs. Leave empty for all.
	Months []int32 `json:"months,omitempty"`
	// The weekdays the schedule runs. Leave empty for all.
	Weekdays []int32 `json:"weekdays,omitempty"`
}

Details for schedules of type cron.

type ScheduleGetOpts ¶

type ScheduleGetOpts struct {
	Fields optional.Interface
}

type ScheduleModifyOpts ¶

type ScheduleModifyOpts struct {
	Info optional.Interface
}

type ScheduleReference ¶

type ScheduleReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Job schedule name
	Name string `json:"name,omitempty"`
	// Job schedule UUID
	Uuid string `json:"uuid,omitempty"`
}

type ScheduleResponse ¶

type ScheduleResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32      `json:"num_records,omitempty"`
	Records    []Schedule `json:"records,omitempty"`
}

type ScopeIpspaceReference ¶

type ScopeIpspaceReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// IPspace name
	Name string `json:"name,omitempty"`
	// IPspace UUID
	Uuid string `json:"uuid,omitempty"`
}

Applies only to cluster-scoped objects. Either the UUID or name may be supplied on input.

type ScopeReference ¶

type ScopeReference string

ScopeReference : Scope of the entity. set to \"cluster\" for cluster owned objects and to \"svm\" for SVM owned objects.

const (
	CLUSTER_ScopeReference ScopeReference = "cluster"
	SVM_ScopeReference     ScopeReference = "svm"
)

List of scope_reference

type SecurityApiService ¶

type SecurityApiService service

func (*SecurityApiService) AccountCollectionGet ¶

func (a *SecurityApiService) AccountCollectionGet(ctx context.Context, localVarOptionals *AccountCollectionGetOpts) (AccountResponse, *http.Response, error)

func (*SecurityApiService) AccountCreate ¶

func (a *SecurityApiService) AccountCreate(ctx context.Context, localVarOptionals *AccountCreateOpts) (*http.Response, error)

func (*SecurityApiService) AccountDelete ¶

func (a *SecurityApiService) AccountDelete(ctx context.Context, ownerUuid string, name string) (*http.Response, error)

SecurityApiService Deletes a user account. ### Required parameters * &#x60;name&#x60; - Account name to be deleted. * &#x60;owner.uuid&#x60; - UUID of the SVM housing the user account to be deleted. ### Related ONTAP commands * &#x60;security login delete&#x60; ### Learn more * [&#x60;DOC /security/accounts/{owner.uuid}/{name}&#x60;](#docs-security-security_accounts_{owner.uuid}_{name}) * [&#x60;DOC /security/accounts&#x60;](#docs-security-security_accounts)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param ownerUuid Owner UUID of the account.
  • @param name User account name

func (*SecurityApiService) AccountGet ¶

func (a *SecurityApiService) AccountGet(ctx context.Context, ownerUuid string, name string) (AccountResponse, *http.Response, error)

SecurityApiService Retrieves a specific user account. ### Related ONTAP commands * &#x60;security login show&#x60; ### Learn more * [&#x60;DOC /security/accounts/{owner.uuid}/{name}&#x60;](#docs-security-security_accounts_{owner.uuid}_{name}) * [&#x60;DOC /security/accounts&#x60;](#docs-security-security_accounts)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param ownerUuid Owner UUID of the account.
  • @param name User account name

@return AccountResponse

func (*SecurityApiService) AccountModify ¶

func (a *SecurityApiService) AccountModify(ctx context.Context, ownerUuid string, name string, info Account) (*http.Response, error)

SecurityApiService Updates a user account. Locks or unlocks a user account and/or updates the role, applications, and/or password for the user account. ### Required parameters * &#x60;name&#x60; - Account name to be updated. * &#x60;owner.uuid&#x60; - UUID of the SVM housing the user account to be updated. ### Optional parameters * &#x60;applications&#x60; - Array of one or more tuples (of application and authentication methods). * &#x60;role&#x60; - RBAC role for the user account. * &#x60;password&#x60; - Password for the user account (if the authentication method is opted as password for one or more of applications). * &#x60;second_authentication_method&#x60; - Needed for MFA and only supported for ssh application. Defaults to &#x60;none&#x60; if not supplied. * &#x60;comment&#x60; - Comment for the user account (e.g purpose of this account). * &#x60;locked&#x60; - Set to true/false to lock/unlock the account. ### Related ONTAP commands * &#x60;security login create&#x60; * &#x60;security login modify&#x60; * &#x60;security login password&#x60; * &#x60;security login lock&#x60; * &#x60;security login unlock&#x60; ### Learn more * [&#x60;DOC /security/accounts/{owner.uuid}/{name}&#x60;](#docs-security-security_accounts_{owner.uuid}_{name}) * [&#x60;DOC /security/accounts&#x60;](#docs-security-security_accounts)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param ownerUuid Owner UUID of the account.
  • @param name User account name
  • @param info User account details

func (*SecurityApiService) AccountPasswordModify ¶

func (a *SecurityApiService) AccountPasswordModify(ctx context.Context, info AccountPassword) (*http.Response, error)

SecurityApiService Updates the password for a user account. ### Required parameters * &#x60;name&#x60; - User account name. * &#x60;password&#x60; - New password for the user account. ### Optional parameters * &#x60;owner.name&#x60; or &#x60;owner.uuid&#x60; - Name or UUID of the SVM for an SVM-scoped user account. ### Related ONTAP commands * &#x60;security login password&#x60; ### Learn more * [&#x60;DOC /security/authentication/password&#x60;](#docs-security-security_authentication_password) * [&#x60;DOC /security/accounts&#x60;](#docs-security-security_accounts)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info A new password for the user account.

func (*SecurityApiService) AuditLogForwardingGet ¶

func (a *SecurityApiService) AuditLogForwardingGet(ctx context.Context, localVarOptionals *AuditLogForwardingGetOpts) (SecurityAuditLogForwardResponse, *http.Response, error)

func (*SecurityApiService) ClusterLdapCreate ¶

func (a *SecurityApiService) ClusterLdapCreate(ctx context.Context, localVarOptionals *ClusterLdapCreateOpts) (LdapServiceResponse, *http.Response, error)

func (*SecurityApiService) ClusterLdapDelete ¶

func (a *SecurityApiService) ClusterLdapDelete(ctx context.Context) (*http.Response, error)

SecurityApiService The DELETE operation removes the LDAP configuration of the cluster. ### Learn more * [&#x60;DOC /security/authentication/cluster/ldap&#x60;](#docs-security-security_authentication_cluster_ldap)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

func (*SecurityApiService) ClusterLdapGet ¶

func (a *SecurityApiService) ClusterLdapGet(ctx context.Context, localVarOptionals *ClusterLdapGetOpts) (ClusterLdap, *http.Response, error)

func (*SecurityApiService) ClusterLdapModify ¶

func (a *SecurityApiService) ClusterLdapModify(ctx context.Context, localVarOptionals *ClusterLdapModifyOpts) (*http.Response, error)

func (*SecurityApiService) ClusterNisCreate ¶

func (a *SecurityApiService) ClusterNisCreate(ctx context.Context, localVarOptionals *ClusterNisCreateOpts) (ClusterNisServiceResponse, *http.Response, error)

func (*SecurityApiService) ClusterNisDelete ¶

func (a *SecurityApiService) ClusterNisDelete(ctx context.Context) (*http.Response, error)

SecurityApiService The DELETE operation removes the NIS configuration of the cluster. NIS can be removed as a source from ns-switch if NIS is not used for lookups. ### Learn more * [&#x60;DOC /security/authentication/cluster/nis&#x60;](#docs-security-security_authentication_cluster_nis)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

func (*SecurityApiService) ClusterNisGet ¶

func (a *SecurityApiService) ClusterNisGet(ctx context.Context, localVarOptionals *ClusterNisGetOpts) (ClusterNisService, *http.Response, error)

func (*SecurityApiService) ClusterNisModify ¶

func (a *SecurityApiService) ClusterNisModify(ctx context.Context, localVarOptionals *ClusterNisModifyOpts) (*http.Response, error)

func (*SecurityApiService) LoginMessagesCollectionGet ¶

func (a *SecurityApiService) LoginMessagesCollectionGet(ctx context.Context, localVarOptionals *LoginMessagesCollectionGetOpts) (LoginMessagesResponse, *http.Response, error)

func (*SecurityApiService) LoginMessagesGet ¶

func (a *SecurityApiService) LoginMessagesGet(ctx context.Context, uuid string, localVarOptionals *LoginMessagesGetOpts) (LoginMessages, *http.Response, error)

func (*SecurityApiService) LoginMessagesModify ¶

func (a *SecurityApiService) LoginMessagesModify(ctx context.Context, uuid string, localVarOptionals *LoginMessagesModifyOpts) (*http.Response, error)

func (*SecurityApiService) RoleCollectionGet ¶

func (a *SecurityApiService) RoleCollectionGet(ctx context.Context, localVarOptionals *RoleCollectionGetOpts) (RoleResponse, *http.Response, error)

func (*SecurityApiService) RoleCreate ¶

func (a *SecurityApiService) RoleCreate(ctx context.Context, info Role) (*http.Response, error)

SecurityApiService Creates a new cluster-scoped role or an SVM-scoped role. For an SVM-scoped role, specify either the SVM name as the owner.name or SVM UUID as the owner.uuid in the request body along with other parameters for the role. The owner.uuid or owner.name are not required to be specified for a cluster-scoped role. ### Required parameters * &#x60;name&#x60; - Name of the role to be created. * &#x60;privileges&#x60; - Array of privilege tuples. Each tuple consists of a REST API path and its desired access level. ### Optional parameters * &#x60;owner.name&#x60; or &#x60;owner.uuid&#x60; - Name or UUID of the SVM for an SVM-scoped role. ### Related ONTAP commands * &#x60;security login rest-role create&#x60; ### Learn more * [&#x60;DOC /security/roles&#x60;](#docs-security-security_roles)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info Role specification

func (*SecurityApiService) RoleDelete ¶

func (a *SecurityApiService) RoleDelete(ctx context.Context, ownerUuid string, name string) (*http.Response, error)

SecurityApiService Delete the specified role ### Required parameters * &#x60;name&#x60; - Name of the role to be deleted. * &#x60;owner.uuid&#x60; - UUID of the SVM housing the role. ### Related ONTAP commands * &#x60;security login rest-role delete&#x60; ### Learn more * [&#x60;DOC /security/roles/{owner.uuid}/{name}&#x60;](#docs-security-security_roles_{owner.uuid}_{name}) * [&#x60;DOC /security/roles&#x60;](#docs-security-security_roles)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param ownerUuid Owner UUID of the role.
  • @param name Role name to be deleted.

func (*SecurityApiService) RoleGet ¶

func (a *SecurityApiService) RoleGet(ctx context.Context, ownerUuid string, name string) (RoleResponse, *http.Response, error)

SecurityApiService Retrieves the details of the specified role. ### Related ONTAP commands * &#x60;security login rest-role show&#x60; ### Learn more * [&#x60;DOC /security/roles/{owner.uuid}/{name}&#x60;](#docs-security-security_roles_{owner.uuid}_{name}) * [&#x60;DOC /security/roles&#x60;](#docs-security-security_roles)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param ownerUuid Owner UUID of the role.
  • @param name Role name

@return RoleResponse

func (*SecurityApiService) RolePrivilegeCollectionGet ¶

func (a *SecurityApiService) RolePrivilegeCollectionGet(ctx context.Context, ownerUuid string, name string) (RolePrivilegeResponse, *http.Response, error)

SecurityApiService Retrieves privilege details of the specified role. ### Related ONTAP commands * &#x60;security login rest-role show&#x60; ### Learn more * [&#x60;DOC /security/roles/{owner.uuid}/{name}/privileges&#x60;](#docs-security-security_roles_{owner.uuid}_{name}_privileges) * [&#x60;DOC /security/roles&#x60;](#docs-security-security_roles)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param ownerUuid Owner UUID of the role.
  • @param name Role name

@return RolePrivilegeResponse

func (*SecurityApiService) RolePrivilegeCreate ¶

func (a *SecurityApiService) RolePrivilegeCreate(ctx context.Context, ownerUuid string, name string, info RolePrivilege) (*http.Response, error)

SecurityApiService Add a privilege tuple (of REST URI and its access level) to an existing role. ### Required parameters * &#x60;owner.uuid&#x60; - UUID of the SVM that houses this role. * &#x60;name&#x60; - Name of the role to be updated. * &#x60;path&#x60; - REST URI path (example: \&quot;/api/storage/volumes\&quot;). * &#x60;access&#x60; - Desired access level for the REST URI path (one of \&quot;all\&quot;, \&quot;readonly\&quot; or \&quot;none\&quot;). ### Optional parameters none ### Related ONTAP commands * &#x60;security login rest-role create&#x60; ### Learn more * [&#x60;DOC /security/roles/{owner.uuid}/{name}/privileges&#x60;](#docs-security-security_roles_{owner.uuid}_{name}_privileges) * [&#x60;DOC /security/roles&#x60;](#docs-security-security_roles)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param ownerUuid Owner UUID of the role.
  • @param name Role name
  • @param info Role privilege specification

func (*SecurityApiService) RolePrivilegeDelete ¶

func (a *SecurityApiService) RolePrivilegeDelete(ctx context.Context, ownerUuid string, name string, path string) (*http.Response, error)

SecurityApiService Delete a privilege tuple (of REST URI and its access level) from the role. ### Required parameters * &#x60;owner.uuid&#x60; - UUID of the SVM which houses this role. * &#x60;name&#x60; - Name of the role to be updated. * &#x60;path&#x60; - Constituent REST API path to be deleted from this role. ### Related ONTAP commands * &#x60;security login rest-role delete&#x60; ### Learn more * [&#x60;DOC /security/roles/{owner.uuid}/{name}/privileges/{path}&#x60;](#docs-security-security_roles_{owner.uuid}_{name}_privileges_{path}) * [&#x60;DOC /security/roles&#x60;](#docs-security-security_roles)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param ownerUuid Owner UUID of the role.
  • @param name Role name
  • @param path REST API path

func (*SecurityApiService) RolePrivilegeGet ¶

func (a *SecurityApiService) RolePrivilegeGet(ctx context.Context, ownerUuid string, name string, path string) (RolePrivilege, *http.Response, error)

SecurityApiService Retrieves the privilege level for a REST API path for the specified role. ### Related ONTAP commands * &#x60;security login rest-role show&#x60; ### Learn more * [&#x60;DOC /security/roles/{owner.uuid}/{name}/privileges/{path}&#x60;](#docs-security-security_roles_{owner.uuid}_{name}_privileges_{path}) * [&#x60;DOC /security/roles&#x60;](#docs-security-security_roles)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param ownerUuid Owner UUID of the role.
  • @param name Role name
  • @param path REST API path

@return RolePrivilege

func (*SecurityApiService) RolePrivilegeModify ¶

func (a *SecurityApiService) RolePrivilegeModify(ctx context.Context, ownerUuid string, name string, path string, access RolePrivilege) (*http.Response, error)

SecurityApiService Updates the privilege level for a REST API path. ### Required parameters * &#x60;owner.uuid&#x60; - UUID of the SVM that houses this role. * &#x60;name&#x60; - Name of the role to be updated. * &#x60;path&#x60; - Constituent REST API path whose access level has to be updated. * &#x60;access&#x60; - Access level for the path (one of \&quot;all\&quot;, \&quot;readonly\&quot;, or \&quot;none\&quot;) ### Related ONTAP commands * &#x60;security login rest-role modify&#x60; ### Learn more * [&#x60;DOC /security/roles/{owner.uuid}/{name}/privileges/{path}&#x60;](#docs-security-security_roles_{owner.uuid}_{name}_privileges_{path}) * [&#x60;DOC /security/roles&#x60;](#docs-security-security_roles)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param ownerUuid Owner UUID of the role.
  • @param name Role name
  • @param path REST API path
  • @param access

func (*SecurityApiService) SecurityAuditGet ¶

func (a *SecurityApiService) SecurityAuditGet(ctx context.Context, localVarOptionals *SecurityAuditGetOpts) (SecurityAudit, *http.Response, error)

func (*SecurityApiService) SecurityAuditLogCollectionGet ¶

func (a *SecurityApiService) SecurityAuditLogCollectionGet(ctx context.Context, localVarOptionals *SecurityAuditLogCollectionGetOpts) (SecurityAuditLogResponse, *http.Response, error)

func (*SecurityApiService) SecurityAuditModify ¶

func (a *SecurityApiService) SecurityAuditModify(ctx context.Context, localVarOptionals *SecurityAuditModifyOpts) (SecurityAudit, *http.Response, error)

func (*SecurityApiService) SecurityCertificateCollectionGet ¶

func (a *SecurityApiService) SecurityCertificateCollectionGet(ctx context.Context, localVarOptionals *SecurityCertificateCollectionGetOpts) (SecurityCertificateResponse, *http.Response, error)

func (*SecurityApiService) SecurityCertificateCreate ¶

func (a *SecurityApiService) SecurityCertificateCreate(ctx context.Context, localVarOptionals *SecurityCertificateCreateOpts) (SecurityCertificateResponse, *http.Response, error)

func (*SecurityApiService) SecurityCertificateDelete ¶

func (a *SecurityApiService) SecurityCertificateDelete(ctx context.Context, uuid string) (*http.Response, error)

SecurityApiService Deletes a security certificate. ### Related ONTAP commands * &#x60;security certificate delete&#x60; ### Learn more * [&#x60;DOC /security/certificates&#x60;](#docs-security-security_certificates)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid Certificate UUID

func (*SecurityApiService) SecurityCertificateGet ¶

func (a *SecurityApiService) SecurityCertificateGet(ctx context.Context, uuid string, localVarOptionals *SecurityCertificateGetOpts) (SecurityCertificate, *http.Response, error)

func (*SecurityApiService) SecurityCertificateSign ¶

func (a *SecurityApiService) SecurityCertificateSign(ctx context.Context, caUuid string, localVarOptionals *SecurityCertificateSignOpts) (SecurityCertificateSignResponse, *http.Response, error)

func (*SecurityApiService) SecurityKeyManagerCollectionGet ¶

func (a *SecurityApiService) SecurityKeyManagerCollectionGet(ctx context.Context, localVarOptionals *SecurityKeyManagerCollectionGetOpts) (SecurityKeyManagerResponse, *http.Response, error)

func (*SecurityApiService) SecurityKeyManagerDelete ¶

func (a *SecurityApiService) SecurityKeyManagerDelete(ctx context.Context, uuid string) (*http.Response, error)

SecurityApiService Deletes a key manager. ### Related ONTAP commands * &#x60;security key-manager external disable&#x60; * &#x60;security key-manager onboard disable&#x60; ### Learn more * [&#x60;DOC /security/key-managers&#x60;](#docs-security-security_key-managers)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid Key manager UUID

func (*SecurityApiService) SecurityKeyManagerEnable ¶

func (a *SecurityApiService) SecurityKeyManagerEnable(ctx context.Context, localVarOptionals *SecurityKeyManagerEnableOpts) (SecurityKeyManagerResponse, *http.Response, error)

func (*SecurityApiService) SecurityKeyManagerGet ¶

func (a *SecurityApiService) SecurityKeyManagerGet(ctx context.Context, uuid string, localVarOptionals *SecurityKeyManagerGetOpts) (SecurityKeyManager, *http.Response, error)

func (*SecurityApiService) SecurityKeyManagerKeyServersAdd ¶

func (a *SecurityApiService) SecurityKeyManagerKeyServersAdd(ctx context.Context, uuid string, localVarOptionals *SecurityKeyManagerKeyServersAddOpts) (KeyServerResponse, *http.Response, error)

func (*SecurityApiService) SecurityKeyManagerKeyServersCollectionGet ¶

func (a *SecurityApiService) SecurityKeyManagerKeyServersCollectionGet(ctx context.Context, uuid string, localVarOptionals *SecurityKeyManagerKeyServersCollectionGetOpts) (KeyServerResponse, *http.Response, error)

func (*SecurityApiService) SecurityKeyManagerKeyServersDelete ¶

func (a *SecurityApiService) SecurityKeyManagerKeyServersDelete(ctx context.Context, uuid string, server string) (*http.Response, error)

SecurityApiService Deletes a key server. ### Related ONTAP commands * &#x60;security key-manager external remove-servers&#x60;

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid External key manager UUID
  • @param server Key server configured in the external key manager

func (*SecurityApiService) SecurityKeyManagerKeyServersGet ¶

func (a *SecurityApiService) SecurityKeyManagerKeyServersGet(ctx context.Context, uuid string, server string, localVarOptionals *SecurityKeyManagerKeyServersGetOpts) (KeyServer, *http.Response, error)

func (*SecurityApiService) SecurityKeyManagerKeyServersModify ¶

func (a *SecurityApiService) SecurityKeyManagerKeyServersModify(ctx context.Context, uuid string, server string, localVarOptionals *SecurityKeyManagerKeyServersModifyOpts) (*http.Response, error)

func (*SecurityApiService) SecurityKeyManagerModify ¶

func (a *SecurityApiService) SecurityKeyManagerModify(ctx context.Context, uuid string, localVarOptionals *SecurityKeyManagerModifyOpts) (*http.Response, error)

func (*SecurityApiService) SecurityLogForwardingCreate ¶

func (*SecurityApiService) SecurityLogForwardingDelete ¶

func (a *SecurityApiService) SecurityLogForwardingDelete(ctx context.Context, address string, port int32) (*http.Response, error)

SecurityApiService Deletes remote syslog/splunk server information. ### Learn more * [&#x60;DOC /security/audit/destinations&#x60;](#docs-security-security_audit_destinations)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param address IP address of remote syslog/splunk server.
  • @param port Port number of remote syslog/splunk server.

func (*SecurityApiService) SecurityLogForwardingGet ¶

func (a *SecurityApiService) SecurityLogForwardingGet(ctx context.Context, address string, port int32, localVarOptionals *SecurityLogForwardingGetOpts) (SecurityAuditLogForward, *http.Response, error)

func (*SecurityApiService) SecurityLogForwardingModify ¶

func (a *SecurityApiService) SecurityLogForwardingModify(ctx context.Context, address string, port int32, localVarOptionals *SecurityLogForwardingModifyOpts) (SecurityAuditLogForward, *http.Response, error)

func (*SecurityApiService) SecuritySamlSpCreate ¶

func (a *SecurityApiService) SecuritySamlSpCreate(ctx context.Context, localVarOptionals *SecuritySamlSpCreateOpts) (JobLinkResponse, *http.Response, error)

func (*SecurityApiService) SecuritySamlSpDelete ¶

func (a *SecurityApiService) SecuritySamlSpDelete(ctx context.Context) (*http.Response, error)

SecurityApiService Deletes a SAML service provider configuration. ### Learn more * [&#x60;DOC /security/authentication/cluster/saml-sp&#x60;](#docs-security-security_authentication_cluster_saml-sp)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

func (*SecurityApiService) SecuritySamlSpGet ¶

func (a *SecurityApiService) SecuritySamlSpGet(ctx context.Context, localVarOptionals *SecuritySamlSpGetOpts) (SecuritySamlSp, *http.Response, error)

func (*SecurityApiService) SecuritySamlSpModify ¶

func (a *SecurityApiService) SecuritySamlSpModify(ctx context.Context, localVarOptionals *SecuritySamlSpModifyOpts) (*http.Response, error)

type SecurityAudit ¶

type SecurityAudit struct {
	// Enable auditing of CLI GET Operations. Valid in PATCH
	Cli bool `json:"cli,omitempty"`
	// Enable auditing of HTTP GET Operations. Valid in PATCH
	Http bool `json:"http,omitempty"`
	// Enable auditing of ONTAP API GET operations. Valid in PATCH
	Ontapi bool `json:"ontapi,omitempty"`
}

type SecurityAuditGetOpts ¶

type SecurityAuditGetOpts struct {
	Fields optional.Interface
}

type SecurityAuditLog ¶

type SecurityAuditLog struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// This identifies the \"application\" by which the request was processed.
	Application string `json:"application,omitempty"`
	// This is the command ID for this request. Each command received on a CLI session is assigned a command ID. This enables you to correlate a request and response.
	CommandId string `json:"command_id,omitempty"`
	// Internal index for accessing records with same time/node. This is a 64 bit unsigned value.
	Index int32 `json:"index,omitempty"`
	// The request.
	Input string `json:"input,omitempty"`
	// This identifies the location of the remote user. This is an IP address or \"console\".
	Location string `json:"location,omitempty"`
	// This is an optional field that might contain \"error\" or \"additional information\" about the status of a command.
	Message string                `json:"message,omitempty"`
	Node    *SecurityAuditLogNode `json:"node,omitempty"`
	// Set to \"svm\" when the request is on a data SVM; otherwise set to \"cluster\".
	Scope string `json:"scope,omitempty"`
	// This is the session ID on which the request is received. Each SSH session is assigned a session ID. Each http/ontapi/snmp request is assigned a unique session ID.
	SessionId string `json:"session_id,omitempty"`
	// State of of this request.
	State string               `json:"state,omitempty"`
	Svm   *SecurityAuditLogSvm `json:"svm,omitempty"`
	// Log entry timestamp. Valid in URL
	Timestamp string `json:"timestamp,omitempty"`
	// Username of the remote user.
	User string `json:"user,omitempty"`
}

type SecurityAuditLogCollectionGetOpts ¶

type SecurityAuditLogCollectionGetOpts struct {
	CommandId     optional.String
	SvmName       optional.String
	SessionId     optional.String
	Scope         optional.String
	Timestamp     optional.String
	User          optional.String
	NodeUuid      optional.String
	NodeName      optional.String
	Location      optional.String
	Message       optional.String
	Index         optional.Int32
	Input         optional.String
	Application   optional.String
	State         optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnTimeout optional.Int32
	ReturnRecords optional.Bool
	OrderBy       optional.Interface
}

type SecurityAuditLogForward ¶

type SecurityAuditLogForward struct {
	// Destination syslog|splunk host to forward audit records to. This can be an IP address (IPv4|IPv6) or a hostname.
	Address string `json:"address,omitempty"`
	// This is the standard Syslog Facility value that is used when sending audit records to a remote server.
	Facility string `json:"facility,omitempty"`
	// Destination Port. The default port depends on the protocol chosen: For un-encrypted destinations the default port is 514. For encrypted destinations the default port is 6514.
	Port int32 `json:"port,omitempty"`
	// Log forwarding protocol
	Protocol string `json:"protocol,omitempty"`
	// This is only applicable when the protocol is tcp_encrypted. This controls whether the remote server's certificate is validated. Setting \"verify_server\" to \"true\" will enforce validation of remote server's certificate. Setting \"verify_server\" to \"false\" will not enforce validation of remote server's certificate.
	VerifyServer bool `json:"verify_server,omitempty"`
}

type SecurityAuditLogForwardResponse ¶

type SecurityAuditLogForwardResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32                     `json:"num_records,omitempty"`
	Records    []SecurityAuditLogForward `json:"records,omitempty"`
}

type SecurityAuditLogNode ¶

type SecurityAuditLogNode struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

Node where the audit message resides.

type SecurityAuditLogResponse ¶

type SecurityAuditLogResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32              `json:"num_records,omitempty"`
	Records    []SecurityAuditLog `json:"records,omitempty"`
}

type SecurityAuditLogSvm ¶

type SecurityAuditLogSvm struct {
	Name string `json:"name,omitempty"`
}

This is the SVM through which the user connected.

type SecurityAuditModifyOpts ¶

type SecurityAuditModifyOpts struct {
	Info optional.Interface
}

type SecurityCertificate ¶

type SecurityCertificate struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Certificate authority
	Ca string `json:"ca,omitempty"`
	// FQDN or custom common name. Provide on POST when creating a self-signed certificate.
	CommonName string `json:"common_name,omitempty"`
	// Certificate expiration time. Can be provided on POST if creating self-signed certificate. The expiration time range is between 1 day to 10 years.
	ExpiryTime string `json:"expiry_time,omitempty"`
	// Hashing function. Can be provided on POST when creating a self-signed certificate. Hash functions md5 and sha1 are not allowed on POST.
	HashFunction string `json:"hash_function,omitempty"`
	// Chain of intermediate Certificates in PEM format. Only valid in POST when installing a certificate.
	IntermediateCertificates []string `json:"intermediate_certificates,omitempty"`
	// Key size of requested Certificate in bits. One of 512, 1024, 1536, 2048, 3072. Can be provided on POST if creating self-signed certificate. Key size of 512 is not allowed on POST.
	KeySize int32 `json:"key_size,omitempty"`
	// Private key Certificate in PEM format. Only valid for create when installing a CA-signed certificate. This is not audited.
	PrivateKey string `json:"private_key,omitempty"`
	// Public key Certificate in PEM format. If this is not provided in POST, a self-signed certificate is created.
	PublicCertificate string                `json:"public_certificate,omitempty"`
	Scope             *NetworkScopeReadonly `json:"scope,omitempty"`
	// Serial number of certificate.
	SerialNumber string    `json:"serial_number,omitempty"`
	Svm          *AuditSvm `json:"svm,omitempty"`
	// Type of Certificate. The following types are supported: * client - a certificate and its private key used by an SSL client in ONTAP. * server - a certificate and its private key used by an SSL server in ONTAP. * client_ca - a Certificate Authority certificate used by an SSL server in ONTAP to verify an SSL client certificate. * server_ca - a Certificate Authority certificate used by an SSL client in ONTAP to verify an SSL server certificate. * root_ca - a self-signed certificate used by ONTAP to sign other certificates by acting as a Certificate Authority.
	Type_ string `json:"type,omitempty"`
	// Unique ID that identifies a certificate.
	Uuid string `json:"uuid,omitempty"`
}

type SecurityCertificateCollectionGetOpts ¶

type SecurityCertificateCollectionGetOpts struct {
	Scope         optional.String
	SvmName       optional.String
	SvmUuid       optional.String
	CommonName    optional.String
	SerialNumber  optional.String
	Ca            optional.String
	Type_         optional.String
	KeySize       optional.String
	ExpiryTime    optional.String
	HashFunction  optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnTimeout optional.Int32
	ReturnRecords optional.Bool
	OrderBy       optional.Interface
}

type SecurityCertificateCreateOpts ¶

type SecurityCertificateCreateOpts struct {
	Info optional.Interface
}

type SecurityCertificateGetOpts ¶

type SecurityCertificateGetOpts struct {
	Fields optional.Interface
}

type SecurityCertificateReference ¶

type SecurityCertificateReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Certificate UUID
	Uuid string `json:"uuid,omitempty"`
}

Security certificate object reference

type SecurityCertificateResponse ¶

type SecurityCertificateResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32                 `json:"num_records,omitempty"`
	Records    []SecurityCertificate `json:"records,omitempty"`
}

type SecurityCertificateSign ¶

type SecurityCertificateSign struct {
	// Certificate expiration time. The allowed expiration time range is between 1 day to 10 years.
	ExpiryTime string `json:"expiry_time,omitempty"`
	// Hashing function
	HashFunction string `json:"hash_function,omitempty"`
	// Certificate signing request to be signed by the given certificate authority. Request should be in X509 PEM format.
	SigningRequest string `json:"signing_request,omitempty"`
}

type SecurityCertificateSignOpts ¶

type SecurityCertificateSignOpts struct {
	Info optional.Interface
}

type SecurityCertificateSignResponse ¶

type SecurityCertificateSignResponse struct {
	// CA signed public key Certificate
	PublicCertificate string `json:"public_certificate,omitempty"`
}

type SecurityKeyManager ¶

type SecurityKeyManager struct {
	Links    *InlineResponse201Links     `json:"_links,omitempty"`
	External *SecurityKeyManagerExternal `json:"external,omitempty"`
	Onboard  *SecurityKeyManagerOnboard  `json:"onboard,omitempty"`
	Scope    *NetworkScopeReadonly       `json:"scope,omitempty"`
	Svm      *AuditSvm                   `json:"svm,omitempty"`
	Uuid     string                      `json:"uuid,omitempty"`
}

type SecurityKeyManagerCollectionGetOpts ¶

type SecurityKeyManagerCollectionGetOpts struct {
	ExternalServerCaCertificatesUuid optional.String
	ExternalServersServer            optional.String
	ExternalServersTimeout           optional.Int32
	ExternalServersUsername          optional.String
	ExternalClientCertificateUuid    optional.String
	Uuid                             optional.String
	OnboardEnabled                   optional.Bool
	SvmUuid                          optional.String
	SvmName                          optional.String
	Scope                            optional.String
	Fields                           optional.Interface
	MaxRecords                       optional.Int32
	ReturnTimeout                    optional.Int32
	ReturnRecords                    optional.Bool
	OrderBy                          optional.Interface
}

type SecurityKeyManagerEnableOpts ¶

type SecurityKeyManagerEnableOpts struct {
	Info optional.Interface
}

type SecurityKeyManagerExternal ¶

type SecurityKeyManagerExternal struct {
	ClientCertificate *SecurityKeyManagerExternalClientCertificate `json:"client_certificate,omitempty"`
	// The UUIDs of the server CA certificates already installed in the cluster or SVM. The array of certificates are common for all the keyservers per SVM.
	ServerCaCertificates []SecurityKeyManagerExternalServerCaCertificates `json:"server_ca_certificates,omitempty"`
	// The set of external key servers.
	Servers []KeyServerReadcreate `json:"servers,omitempty"`
}

Configures external key management

type SecurityKeyManagerExternalClientCertificate ¶

type SecurityKeyManagerExternalClientCertificate struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Certificate UUID
	Uuid string `json:"uuid,omitempty"`
}

Client certificate

type SecurityKeyManagerExternalServerCaCertificates ¶

type SecurityKeyManagerExternalServerCaCertificates struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Certificate UUID
	Uuid string `json:"uuid,omitempty"`
}

Security certificate object reference

type SecurityKeyManagerGetOpts ¶

type SecurityKeyManagerGetOpts struct {
	Fields optional.Interface
}

type SecurityKeyManagerKeyServersAddOpts ¶

type SecurityKeyManagerKeyServersAddOpts struct {
	Info optional.Interface
}

type SecurityKeyManagerKeyServersCollectionGetOpts ¶

type SecurityKeyManagerKeyServersCollectionGetOpts struct {
	Username      optional.String
	Timeout       optional.Int32
	Server        optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnTimeout optional.Int32
	ReturnRecords optional.Bool
	OrderBy       optional.Interface
}

type SecurityKeyManagerKeyServersGetOpts ¶

type SecurityKeyManagerKeyServersGetOpts struct {
	Fields optional.Interface
}

type SecurityKeyManagerKeyServersModifyOpts ¶

type SecurityKeyManagerKeyServersModifyOpts struct {
	Info optional.Interface
}

type SecurityKeyManagerModifyOpts ¶

type SecurityKeyManagerModifyOpts struct {
	Info optional.Interface
}

type SecurityKeyManagerOnboard ¶

type SecurityKeyManagerOnboard struct {
	// Is the onboard key manager enabled?
	Enabled bool `json:"enabled,omitempty"`
	// The cluster-wide passphrase. This is not audited.
	ExistingPassphrase string `json:"existing_passphrase,omitempty"`
	// The cluster-wide passphrase. This is not audited.
	Passphrase string `json:"passphrase,omitempty"`
}

Configures onboard key management. After configuring onboard key management, save the encrypted configuration data in a safe location so that you can use it if you need to perform a manual recovery operation.

type SecurityKeyManagerResponse ¶

type SecurityKeyManagerResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32                `json:"num_records,omitempty"`
	Records    []SecurityKeyManager `json:"records,omitempty"`
}

type SecurityLogForwardingCreateOpts ¶

type SecurityLogForwardingCreateOpts struct {
	Force optional.Bool
}

type SecurityLogForwardingGetOpts ¶

type SecurityLogForwardingGetOpts struct {
	Fields optional.Interface
}

type SecurityLogForwardingModifyOpts ¶

type SecurityLogForwardingModifyOpts struct {
	Info optional.Interface
}

type SecuritySamlSp ¶

type SecuritySamlSp struct {
	Links       *InlineResponse201Links    `json:"_links,omitempty"`
	Certificate *SecuritySamlSpCertificate `json:"certificate,omitempty"`
	// The SAML service provider is enabled.  Valid for PATCH and GET operations only.
	Enabled bool `json:"enabled,omitempty"`
	// The SAML service provider host.
	Host string `json:"host,omitempty"`
	// The identity provider (IdP) metadata location. Required for POST operations.
	IdpUri string `json:"idp_uri,omitempty"`
}

type SecuritySamlSpCertificate ¶

type SecuritySamlSpCertificate struct {
	// Server certificate issuing certificate authority (CA).  This cannot be used with the server certificate common name.
	Ca string `json:"ca,omitempty"`
	// Server certificate common name.  This cannot be used with the certificate authority (CA) or serial_number.
	CommonName string `json:"common_name,omitempty"`
	// Server certificate serial number.  This cannot be used with the server certificate common name.
	SerialNumber string `json:"serial_number,omitempty"`
}

type SecuritySamlSpCreateOpts ¶

type SecuritySamlSpCreateOpts struct {
	VerifyMetadataServer optional.Bool
	Info                 optional.Interface
}

type SecuritySamlSpGetOpts ¶

type SecuritySamlSpGetOpts struct {
	Fields optional.Interface
}

type SecuritySamlSpModifyOpts ¶

type SecuritySamlSpModifyOpts struct {
	Info optional.Interface
}

type SecurityStyle ¶

type SecurityStyle string

SecurityStyle : Security style. Valid in POST or PATCH.

const (
	UNIX_SecurityStyle  SecurityStyle = "unix"
	NTFS_SecurityStyle  SecurityStyle = "ntfs"
	MIXED_SecurityStyle SecurityStyle = "mixed"
)

List of security_style

type SelfLink struct {
	Self *Href `json:"self,omitempty"`
}

type ServiceProcessor ¶

type ServiceProcessor struct {
	// Set to true to use DHCP to configure an IPv4 interface.
	DhcpEnabled bool `json:"dhcp_enabled,omitempty"`
	// The version of firmware installed.
	FirmwareVersion string                                `json:"firmware_version,omitempty"`
	Ipv4Interface   *ClusterManagementInterfaceIp         `json:"ipv4_interface,omitempty"`
	Ipv6Interface   *ClusterServiceProcessorIpv6Interface `json:"ipv6_interface,omitempty"`
	LinkStatus      string                                `json:"link_status,omitempty"`
	MacAddress      string                                `json:"mac_address,omitempty"`
	State           string                                `json:"state,omitempty"`
}

type Shelf ¶

type Shelf struct {
	Bays           []ShelfBays    `json:"bays,omitempty"`
	ConnectionType string         `json:"connection_type,omitempty"`
	DiskCount      int32          `json:"disk_count,omitempty"`
	Drawers        []ShelfDrawers `json:"drawers,omitempty"`
	Frus           []ShelfFrus    `json:"frus,omitempty"`
	Id             string         `json:"id,omitempty"`
	Internal       bool           `json:"internal,omitempty"`
	Model          string         `json:"model,omitempty"`
	ModuleType     string         `json:"module_type,omitempty"`
	Name           string         `json:"name,omitempty"`
	Paths          []ShelfPaths   `json:"paths,omitempty"`
	Ports          []ShelfPorts   `json:"ports,omitempty"`
	SerialNumber   string         `json:"serial_number,omitempty"`
	State          string         `json:"state,omitempty"`
	Uid            string         `json:"uid,omitempty"`
}

type ShelfBays ¶

type ShelfBays struct {
	HasDisk bool   `json:"has_disk,omitempty"`
	Id      int32  `json:"id,omitempty"`
	State   string `json:"state,omitempty"`
	Type_   string `json:"type,omitempty"`
}

type ShelfCable ¶

type ShelfCable struct {
	Identifier   string `json:"identifier,omitempty"`
	Length       string `json:"length,omitempty"`
	PartNumber   string `json:"part_number,omitempty"`
	SerialNumber string `json:"serial_number,omitempty"`
}

type ShelfCollectionGetOpts ¶

type ShelfCollectionGetOpts struct {
	PortsMacAddress        optional.String
	PortsInternal          optional.Bool
	PortsCableIdentifier   optional.String
	PortsCableLength       optional.String
	PortsCableSerialNumber optional.String
	PortsCablePartNumber   optional.String
	PortsModuleId          optional.String
	PortsState             optional.String
	PortsDesignator        optional.String
	PortsRemoteChassis     optional.String
	PortsRemoteWwn         optional.String
	PortsRemotePhy         optional.String
	PortsRemoteMacAddress  optional.String
	PortsRemotePort        optional.String
	PortsId                optional.Int32
	PortsWwn               optional.String
	Model                  optional.String
	Id                     optional.String
	State                  optional.String
	DiskCount              optional.Int32
	ModuleType             optional.String
	DrawersState           optional.String
	DrawersSerialNumber    optional.String
	DrawersDiskCount       optional.Int32
	DrawersPartNumber      optional.String
	DrawersError           optional.String
	DrawersId              optional.Int32
	DrawersClosed          optional.Bool
	Name                   optional.String
	ConnectionType         optional.String
	PathsName              optional.String
	PathsNodeUuid          optional.String
	PathsNodeName          optional.String
	Uid                    optional.String
	BaysId                 optional.Int32
	BaysHasDisk            optional.Bool
	BaysType               optional.String
	BaysState              optional.String
	Internal               optional.Bool
	FrusSerialNumber       optional.String
	FrusState              optional.String
	FrusPartNumber         optional.String
	FrusType               optional.String
	FrusFirmwareVersion    optional.String
	FrusId                 optional.Int32
	SerialNumber           optional.String
	Fields                 optional.Interface
	MaxRecords             optional.Int32
	ReturnRecords          optional.Bool
	ReturnTimeout          optional.Int32
	OrderBy                optional.Interface
}

type ShelfDrawers ¶

type ShelfDrawers struct {
	Closed       bool   `json:"closed,omitempty"`
	DiskCount    int32  `json:"disk_count,omitempty"`
	Error_       string `json:"error,omitempty"`
	Id           int32  `json:"id,omitempty"`
	PartNumber   string `json:"part_number,omitempty"`
	SerialNumber string `json:"serial_number,omitempty"`
	State        string `json:"state,omitempty"`
}

type ShelfFrus ¶

type ShelfFrus struct {
	FirmwareVersion string `json:"firmware_version,omitempty"`
	Id              int32  `json:"id,omitempty"`
	PartNumber      string `json:"part_number,omitempty"`
	SerialNumber    string `json:"serial_number,omitempty"`
	State           string `json:"state,omitempty"`
	Type_           string `json:"type,omitempty"`
}

type ShelfGetOpts ¶

type ShelfGetOpts struct {
	Fields optional.Interface
}

type ShelfPaths ¶

type ShelfPaths struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Node  *InlineResponse201Node  `json:"node,omitempty"`
}

Storage port

type ShelfPorts ¶

type ShelfPorts struct {
	Cable      *ShelfCable  `json:"cable,omitempty"`
	Designator string       `json:"designator,omitempty"`
	Id         int32        `json:"id,omitempty"`
	Internal   bool         `json:"internal,omitempty"`
	MacAddress string       `json:"mac_address,omitempty"`
	ModuleId   string       `json:"module_id,omitempty"`
	Remote     *ShelfRemote `json:"remote,omitempty"`
	State      string       `json:"state,omitempty"`
	Wwn        string       `json:"wwn,omitempty"`
}

type ShelfReference ¶

type ShelfReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Uid   string                  `json:"uid,omitempty"`
}

Shelf

type ShelfRemote ¶

type ShelfRemote struct {
	Chassis    string `json:"chassis,omitempty"`
	MacAddress string `json:"mac_address,omitempty"`
	Phy        string `json:"phy,omitempty"`
	Port       string `json:"port,omitempty"`
	Wwn        string `json:"wwn,omitempty"`
}

type ShelfResponse ¶

type ShelfResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32   `json:"num_records,omitempty"`
	Records    []Shelf `json:"records,omitempty"`
}

type SnapmirrorApiService ¶

type SnapmirrorApiService service

func (*SnapmirrorApiService) SnapmirrorPoliciesGet ¶

func (a *SnapmirrorApiService) SnapmirrorPoliciesGet(ctx context.Context, localVarOptionals *SnapmirrorPoliciesGetOpts) (SnapmirrorPolicyResponse, *http.Response, error)

func (*SnapmirrorApiService) SnapmirrorPolicyCreate ¶

func (a *SnapmirrorApiService) SnapmirrorPolicyCreate(ctx context.Context, info SnapmirrorPolicy, localVarOptionals *SnapmirrorPolicyCreateOpts) (JobLinkResponse, *http.Response, error)

func (*SnapmirrorApiService) SnapmirrorPolicyDelete ¶

func (a *SnapmirrorApiService) SnapmirrorPolicyDelete(ctx context.Context, uuid string, localVarOptionals *SnapmirrorPolicyDeleteOpts) (JobLinkResponse, *http.Response, error)

func (*SnapmirrorApiService) SnapmirrorPolicyGet ¶

func (a *SnapmirrorApiService) SnapmirrorPolicyGet(ctx context.Context, uuid string, localVarOptionals *SnapmirrorPolicyGetOpts) (SnapmirrorPolicy, *http.Response, error)

func (*SnapmirrorApiService) SnapmirrorPolicyModify ¶

func (a *SnapmirrorApiService) SnapmirrorPolicyModify(ctx context.Context, uuid string, info SnapmirrorPolicy) (JobLinkResponse, *http.Response, error)

SnapmirrorApiService Updates the SnapMirror policy. ### Important notes * The properties \&quot;transfer_schedule\&quot; and \&quot;throttle\&quot; can be modified only if all the SnapMirror relationships associated with the specified SnapMirror policy have the same values. * The properties \&quot;retention.label\&quot; and \&quot;retention.count\&quot; are mandatory if \&quot;retention\&quot; is provided in the input. The provided \&quot;retention.label\&quot; is the final list and is replaced with the existing values. * The value of the \&quot;identity_preservation\&quot; property cannot be changed if the SnapMirror relationships associated with the policy have different identity_preservation configurations. * If the SnapMirror policy \&quot;identity_preservation\&quot; value matches the \&quot;identity_preservation\&quot; value of the associated SnapMirror relationships, then the \&quot;identity_preservation\&quot; value can be changed from a higher \&quot;identity_preservation\&quot; threshold value to a lower \&quot;identity_preservation\&quot; threshold value but not vice-versa. For example, the threshold value of the \&quot;identity_preservation\&quot; property can be changed from \&quot;full\&quot; to \&quot;exclude_network_config\&quot; to \&quot;exclude_network_and_protocol_config\&quot;, but could not be increased from \&quot;exclude_network_and_protocol_config\&quot; to \&quot;exclude_network_config\&quot; to \&quot;full\&quot;.&lt;br/&gt; ### Related ONTAP commands * &#x60;snapmirror policy modify&#x60; ### Example Updating the \&quot;retention\&quot; property &lt;br/&gt; &#x60;&#x60;&#x60; PATCH \&quot;/api/snapmirror/policies/fe65686d-00dc-11e9-b5fb-0050568e3f83\&quot; &#39;{\&quot;retention\&quot; : {\&quot;label\&quot; : [\&quot;sm_created\&quot;, \&quot;lab2\&quot;], \&quot;count\&quot;: [\&quot;1\&quot;,\&quot;2\&quot;], \&quot;creation_schedule\&quot;: {\&quot;name\&quot;: [\&quot;weekly\&quot;]}}}&#39; &#x60;&#x60;&#x60; &lt;br/&gt; Updating \&quot;transfer_schedule\&quot;, \&quot;throttle\&quot;, and \&quot;identity_preservation\&quot; properties &lt;br/&gt; &#x60;&#x60;&#x60; PATCH \&quot;/api/snapmirror/policies/8aef950b-3bef-11e9-80ac-0050568ea591\&quot; &#39;{\&quot;transfer_schedule.name\&quot; : \&quot;weekly\&quot;, \&quot;throttle\&quot; : \&quot;100\&quot;, \&quot;identity_preservation\&quot;:\&quot;exclude_network_and_protocol_config\&quot;}&#39; &#x60;&#x60;&#x60; &lt;br/&gt; ### Learn more * [&#x60;DOC /snapmirror/policies&#x60;](#docs-snapmirror-snapmirror_policies)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid Policy UUID
  • @param info Information on the SnapMirror policy

@return JobLinkResponse

func (*SnapmirrorApiService) SnapmirrorRelationshipCreate ¶

func (a *SnapmirrorApiService) SnapmirrorRelationshipCreate(ctx context.Context, info SnapmirrorRelationship, localVarOptionals *SnapmirrorRelationshipCreateOpts) (JobLinkResponse, *http.Response, error)

func (*SnapmirrorApiService) SnapmirrorRelationshipDelete ¶

func (a *SnapmirrorApiService) SnapmirrorRelationshipDelete(ctx context.Context, uuid string, localVarOptionals *SnapmirrorRelationshipDeleteOpts) (JobLinkResponse, *http.Response, error)

func (*SnapmirrorApiService) SnapmirrorRelationshipGet ¶

func (a *SnapmirrorApiService) SnapmirrorRelationshipGet(ctx context.Context, uuid string, localVarOptionals *SnapmirrorRelationshipGetOpts) (SnapmirrorRelationship, *http.Response, error)

func (*SnapmirrorApiService) SnapmirrorRelationshipModify ¶

func (a *SnapmirrorApiService) SnapmirrorRelationshipModify(ctx context.Context, uuid string, info SnapmirrorRelationship) (JobLinkResponse, *http.Response, error)

SnapmirrorApiService Updates a SnapMirror relationship. This API is used to initiate SnapMirror operations such as \&quot;initialize\&quot;, \&quot;resync\&quot;, \&quot;break\&quot;, \&quot;quiesce\&quot;, and \&quot;resume\&quot; by specifying the appropriate value for the \&quot;state\&quot; field. It is also used to modify the SnapMirror policy associated with the specified relationship. ### Related ONTAP commands * &#x60;snapmirror modify&#x60; * &#x60;snapmirror initialize&#x60; * &#x60;snapmirror resync&#x60; * &#x60;snapmirror break&#x60; * &#x60;snapmirror quiesce&#x60; * &#x60;snapmirror resume&#x60; ### Examples The following examples show how to perform the SnapMirror \&quot;resync\&quot;, \&quot;initialize\&quot;, \&quot;resume\&quot;, \&quot;quiesce\&quot;, and \&quot;break\&quot; operations. &lt;br/&gt; Performing a SnapMirror \&quot;resync\&quot; &lt;br/&gt; &#x60;&#x60;&#x60; PATCH \&quot;/api/snapmirror/relationships/98bb2608-fc60-11e8-aa13-005056a707ff/\&quot; &#39;{\&quot;state\&quot;:\&quot;snapmirrored\&quot;}&#39; &#x60;&#x60;&#x60; &lt;br/&gt; Performing a SnapMirror \&quot;initialize\&quot; &lt;br/&gt; &#x60;&#x60;&#x60; PATCH \&quot;/api/snapmirror/relationships/98bb2608-fc60-11e8-aa13-005056a707ff/\&quot; &#39;{\&quot;state\&quot;:\&quot;snapmirrored\&quot;}&#39; &#x60;&#x60;&#x60; &lt;br/&gt; Performing a SnapMirror \&quot;resume\&quot; &lt;br/&gt; &#x60;&#x60;&#x60; PATCH \&quot;/api/snapmirror/relationships/98bb2608-fc60-11e8-aa13-005056a707ff/\&quot; &#39;{\&quot;state\&quot;:\&quot;snapmirrored\&quot;}&#39; &#x60;&#x60;&#x60; &lt;br/&gt; Performing a SnapMirror \&quot;quiesce\&quot; &lt;br/&gt; &#x60;&#x60;&#x60; PATCH \&quot;/api/snapmirror/relationships/98bb2608-fc60-11e8-aa13-005056a707ff\&quot; &#39;{\&quot;state\&quot;:\&quot;paused\&quot;}&#39; &#x60;&#x60;&#x60; &lt;br/&gt; Performing a SnapMirror \&quot;break\&quot; &lt;br/&gt; &#x60;&#x60;&#x60; PATCH \&quot;/api/snapmirror/relationships/98bb2608-fc60-11e8-aa13-005056a707ff\&quot; &#39;{\&quot;state\&quot;:\&quot;broken_off\&quot;}&#39; &#x60;&#x60;&#x60; &lt;br/&gt; Updating an associated SnapMirror policy &lt;br/&gt; &#x60;&#x60;&#x60; PATCH \&quot;/api/snapmirror/relationships/9e922e65-1818-11e9-8b22-005056bbee73/\&quot; &#39;{\&quot;policy\&quot;: { \&quot;name\&quot; : \&quot;MirrorAndVaultDiscardNetwork\&quot;}}&#39; &#x60;&#x60;&#x60; &lt;br/&gt; ### Learn more * [&#x60;DOC /snapmirror/relationships&#x60;](#docs-snapmirror-snapmirror_relationships)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid Relationship UUID
  • @param info Information on the SnapMirror relationship

@return JobLinkResponse

func (*SnapmirrorApiService) SnapmirrorRelationshipTransferCreate ¶

func (a *SnapmirrorApiService) SnapmirrorRelationshipTransferCreate(ctx context.Context, relationshipUuid string, localVarOptionals *SnapmirrorRelationshipTransferCreateOpts) (*http.Response, error)

func (*SnapmirrorApiService) SnapmirrorRelationshipTransferGet ¶

func (a *SnapmirrorApiService) SnapmirrorRelationshipTransferGet(ctx context.Context, relationshipUuid string, uuid string, localVarOptionals *SnapmirrorRelationshipTransferGetOpts) (SnapmirrorTransfer, *http.Response, error)

func (*SnapmirrorApiService) SnapmirrorRelationshipTransferModify ¶

func (a *SnapmirrorApiService) SnapmirrorRelationshipTransferModify(ctx context.Context, relationshipUuid string, uuid string, info SnapmirrorTransfer) (*http.Response, error)

SnapmirrorApiService Aborts an ongoing SnapMirror transfer. ### Related ONTAP commands * &#x60;snapmirror abort&#x60; ### Example &lt;br/&gt; &#x60;&#x60;&#x60; PATCH \&quot;/api/snapmirror/relationships/293baa53-e63d-11e8-bff1-005056a793dd/transfers/293baa53-e63d-11e8-bff1-005056a793dd\&quot; &#39;{\&quot;state\&quot;:\&quot;aborted\&quot;}&#39; &#x60;&#x60;&#x60; &lt;br/&gt; ### Learn more * [&#x60;DOC /snapmirror/relationships/{relationship.uuid}/transfers&#x60;](#docs-snapmirror-snapmirror_relationships_{relationship.uuid}_transfers)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param relationshipUuid Relationship UUID
  • @param uuid Transfer UUID
  • @param info Information on the SnapMirror transfer

func (*SnapmirrorApiService) SnapmirrorRelationshipTransfersGet ¶

func (a *SnapmirrorApiService) SnapmirrorRelationshipTransfersGet(ctx context.Context, relationshipUuid string, localVarOptionals *SnapmirrorRelationshipTransfersGetOpts) (SnapmirrorTransferResponse, *http.Response, error)

func (*SnapmirrorApiService) SnapmirrorRelationshipsGet ¶

func (a *SnapmirrorApiService) SnapmirrorRelationshipsGet(ctx context.Context, localVarOptionals *SnapmirrorRelationshipsGetOpts) (SnapmirrorRelationshipResponse, *http.Response, error)

type SnapmirrorEndpoint ¶

type SnapmirrorEndpoint struct {
	// ONTAP FlexVol/FlexGroup - svm1:volume1 ONTAP SVM               - svm1:
	Path string  `json:"path,omitempty"`
	Svm  *DnsSvm `json:"svm,omitempty"`
}

Endpoint of a SnapMirror relationship.

type SnapmirrorError ¶

type SnapmirrorError struct {
	// Error code
	Code int32 `json:"code,omitempty"`
	// Error message
	Message string `json:"message,omitempty"`
	// Parameters for the error message
	Parameters []string `json:"parameters,omitempty"`
}

SnapMirror error

type SnapmirrorPoliciesGetOpts ¶

type SnapmirrorPoliciesGetOpts struct {
	SyncType                       optional.String
	NetworkCompressionEnabled      optional.Bool
	TransferScheduleUuid           optional.String
	TransferScheduleName           optional.String
	Type_                          optional.String
	Throttle                       optional.Int32
	SyncCommonSnapshotScheduleUuid optional.String
	SyncCommonSnapshotScheduleName optional.String
	Scope                          optional.String
	Comment                        optional.String
	SvmUuid                        optional.String
	SvmName                        optional.String
	Name                           optional.String
	IdentityPreservation           optional.String
	RetentionPrefix                optional.String
	RetentionCreationScheduleUuid  optional.String
	RetentionCreationScheduleName  optional.String
	RetentionLabel                 optional.String
	RetentionCount                 optional.Int32
	Uuid                           optional.String
	Fields                         optional.Interface
	MaxRecords                     optional.Int32
	ReturnRecords                  optional.Bool
	ReturnTimeout                  optional.Int32
	OrderBy                        optional.Interface
}

type SnapmirrorPolicy ¶

type SnapmirrorPolicy struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Comment associated with the policy.
	Comment string `json:"comment,omitempty"`
	// Specifies which configuration of the source SVM is replicated to destination. This field is applicable only for SVM data protection and async policies.
	IdentityPreservation string `json:"identity_preservation,omitempty"`
	Name                 string `json:"name,omitempty"`
	// Specifies whether network compression is enabled for transfers. This is applicable only to async policies.
	NetworkCompressionEnabled bool `json:"network_compression_enabled,omitempty"`
	// Policy on Snapshot copy retention. This is applicable only to async policies.
	Retention []SnapmirrorPolicyRule `json:"retention,omitempty"`
	// Set to \"svm\" for policies owned by an SVM, otherwise set to \"cluster\".
	Scope                      string                                      `json:"scope,omitempty"`
	Svm                        *FlexcacheRelationshipSvm                   `json:"svm,omitempty"`
	SyncCommonSnapshotSchedule *SnapmirrorPolicySyncCommonSnapshotSchedule `json:"sync_common_snapshot_schedule,omitempty"`
	SyncType                   string                                      `json:"sync_type,omitempty"`
	// Throttle in KB/s. Default to unlimited.
	Throttle         int32                             `json:"throttle,omitempty"`
	TransferSchedule *SnapmirrorPolicyTransferSchedule `json:"transfer_schedule,omitempty"`
	Type_            string                            `json:"type,omitempty"`
	Uuid             string                            `json:"uuid,omitempty"`
}

SnapMirror policy information

type SnapmirrorPolicyCreateOpts ¶

type SnapmirrorPolicyCreateOpts struct {
	ReturnTimeout optional.Int32
}

type SnapmirrorPolicyDeleteOpts ¶

type SnapmirrorPolicyDeleteOpts struct {
	ReturnTimeout optional.Int32
}

type SnapmirrorPolicyGetOpts ¶

type SnapmirrorPolicyGetOpts struct {
	Fields optional.Interface
}

type SnapmirrorPolicyReference ¶

type SnapmirrorPolicyReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

type SnapmirrorPolicyResponse ¶

type SnapmirrorPolicyResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32              `json:"num_records,omitempty"`
	Records    []SnapmirrorPolicy `json:"records,omitempty"`
}

type SnapmirrorPolicyRule ¶

type SnapmirrorPolicyRule struct {
	// Number of Snapshot copies to be kept for retention.
	Count            int32                                 `json:"count,omitempty"`
	CreationSchedule *SnapmirrorPolicyRuleCreationSchedule `json:"creation_schedule,omitempty"`
	// Snapshot copy label
	Label string `json:"label,omitempty"`
	// Specifies the prefix for the Snapshot copy name to be created as per the schedule. If no value is specified, then the label is used as the prefix.
	Prefix string `json:"prefix,omitempty"`
}

SnapMirror policy rule for retention.

type SnapmirrorPolicyRuleCreationSchedule ¶

type SnapmirrorPolicyRuleCreationSchedule struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Job schedule name
	Name string `json:"name,omitempty"`
	// Job schedule UUID
	Uuid string `json:"uuid,omitempty"`
}

Schedule used to create Snapshot copies on the destination for long term retention.

type SnapmirrorPolicySyncCommonSnapshotSchedule ¶

type SnapmirrorPolicySyncCommonSnapshotSchedule struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Job schedule name
	Name string `json:"name,omitempty"`
	// Job schedule UUID
	Uuid string `json:"uuid,omitempty"`
}

Schedule used to create common Snapshot copies for synchronous relationships.

type SnapmirrorPolicyTransferSchedule ¶

type SnapmirrorPolicyTransferSchedule struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Job schedule name
	Name string `json:"name,omitempty"`
	// Job schedule UUID
	Uuid string `json:"uuid,omitempty"`
}

The schedule used to update asynchronous relationships.

type SnapmirrorRelationship ¶

type SnapmirrorRelationship struct {
	Destination *SnapmirrorEndpoint `json:"destination,omitempty"`
	// Snapshot copy exported to clients on destination.
	ExportedSnapshot string `json:"exported_snapshot,omitempty"`
	// Is the relationship healthy?
	Healthy bool `json:"healthy,omitempty"`
	// Time since the exported Snapshot copy was created.
	LagTime string                        `json:"lag_time,omitempty"`
	Policy  *SnapmirrorRelationshipPolicy `json:"policy,omitempty"`
	// Set to true on resync to preserve Snapshot copies on the destination that are newer than the latest common Snapshot copy. This field is applicable only for relationships with FlexGroup or FlexVol endpoints and when the PATCH state is \"snapmirrored\".
	Preserve bool `json:"preserve,omitempty"`
	// Set to true to reduce resync time by not preserving storage efficiency. This field is applicable only for relationships with FlexVol endpoints and when the PATCH state is \"snapmirrored\".
	QuickResync bool `json:"quick_resync,omitempty"`
	// Set to true to recover from a failed SnapMirror break operation on a FlexGroup relationship. This restores all destination FlexGroup constituents to the latest Snapshot copy, and any writes to the read-write constituents are lost. This field is applicable only for SnapMirror relationships with FlexGroup endpoints and when the PATCH state is \"broken_off\".
	RecoverAfterBreak bool `json:"recover_after_break,omitempty"`
	// Set to true to create a relationship for restore. To trigger restore-transfer, use transfers POST on the restore relationship.
	Restore bool `json:"restore,omitempty"`
	// Specifies the Snapshot copy to restore to on the destination after a break operation. This field is applicable only for SnapMirror relationships with FlexVol endpoints and when the PATCH state is \"broken_off\".
	RestoreToSnapshot string              `json:"restore_to_snapshot,omitempty"`
	Source            *SnapmirrorEndpoint `json:"source,omitempty"`
	// State of the relationship. To initialize the relationship, PATCH the state to \"snapmirrored\". To break the relationship, PATCH the state to \"broken_off\". To resync the broken relationship, PATCH the state to \"snapmirrored\" for relationships with async policy type or \"in_sync\" for relationships with sync policy type. To pause the relationship, suspending further transfers, PATCH the state to \"paused\". To resume transfers for a paused relationship, PATCH the state to \"snapmirrored\" or \"in_sync\". The entries \"in_sync\", \"out_of_sync\", and \"synchronizing\" are only applicable to relationships of the sync policy type. A PATCH call on the state change only triggers the transition to the specified state. You must poll on the \"state\", \"healthy\" and \"unhealthy_reason\" fields using GET to determine if the transition is successful.
	State    string                          `json:"state,omitempty"`
	Transfer *SnapmirrorRelationshipTransfer `json:"transfer,omitempty"`
	// Reason the relationship is not healthy. It is a concatenation of up to four levels of error messages.
	UnhealthyReason []SnapmirrorError `json:"unhealthy_reason,omitempty"`
	Uuid            string            `json:"uuid,omitempty"`
}

SnapMirror relationship information

type SnapmirrorRelationshipCreateOpts ¶

type SnapmirrorRelationshipCreateOpts struct {
	ReturnTimeout optional.Int32
}

type SnapmirrorRelationshipDeleteOpts ¶

type SnapmirrorRelationshipDeleteOpts struct {
	DestinationOnly optional.Bool
	SourceOnly      optional.Bool
	SourceInfoOnly  optional.Bool
	ReturnTimeout   optional.Int32
}

type SnapmirrorRelationshipGetOpts ¶

type SnapmirrorRelationshipGetOpts struct {
	ListDestinationsOnly optional.Bool
	Fields               optional.Interface
}

type SnapmirrorRelationshipPolicy ¶

type SnapmirrorRelationshipPolicy struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Type_ string                  `json:"type,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

Basic policy information of the relationship.

type SnapmirrorRelationshipResponse ¶

type SnapmirrorRelationshipResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32                    `json:"num_records,omitempty"`
	Records    []SnapmirrorRelationship `json:"records,omitempty"`
}

type SnapmirrorRelationshipTransfer ¶

type SnapmirrorRelationshipTransfer struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Bytes transferred.
	BytesTransferred int32  `json:"bytes_transferred,omitempty"`
	State            string `json:"state,omitempty"`
	Uuid             string `json:"uuid,omitempty"`
}

Basic information on the current transfer.

type SnapmirrorRelationshipTransferCreateOpts ¶

type SnapmirrorRelationshipTransferCreateOpts struct {
	ReturnTimeout optional.Int32
	Info          optional.Interface
}

type SnapmirrorRelationshipTransferGetOpts ¶

type SnapmirrorRelationshipTransferGetOpts struct {
	Fields optional.Interface
}

type SnapmirrorRelationshipTransfersGetOpts ¶

type SnapmirrorRelationshipTransfersGetOpts struct {
	RelationshipRestore            optional.Bool
	RelationshipDestinationPath    optional.String
	RelationshipDestinationSvmUuid optional.String
	RelationshipDestinationSvmName optional.String
	RelationshipUuid               optional.String
	Uuid                           optional.String
	CheckpointSize                 optional.Int32
	Snapshot                       optional.String
	BytesTransferred               optional.Int32
	State                          optional.String
	Fields                         optional.Interface
	MaxRecords                     optional.Int32
	ReturnRecords                  optional.Bool
	ReturnTimeout                  optional.Int32
	OrderBy                        optional.Interface
}

type SnapmirrorRelationshipsGetOpts ¶

type SnapmirrorRelationshipsGetOpts struct {
	ListDestinationsOnly      optional.Bool
	Restore                   optional.Bool
	TransferState             optional.String
	TransferUuid              optional.String
	TransferBytesTransferred  optional.Int32
	Uuid                      optional.String
	PolicyUuid                optional.String
	PolicyType                optional.String
	PolicyName                optional.String
	ExportedSnapshot          optional.String
	SourcePath                optional.String
	SourceSvmUuid             optional.String
	SourceSvmName             optional.String
	Healthy                   optional.Bool
	LagTime                   optional.String
	DestinationPath           optional.String
	DestinationSvmUuid        optional.String
	DestinationSvmName        optional.String
	UnhealthyReasonParameters optional.String
	UnhealthyReasonMessage    optional.String
	UnhealthyReasonCode       optional.Int32
	State                     optional.String
	Fields                    optional.Interface
	MaxRecords                optional.Int32
	ReturnRecords             optional.Bool
	ReturnTimeout             optional.Int32
	OrderBy                   optional.Interface
}

type SnapmirrorTransfer ¶

type SnapmirrorTransfer struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Bytes transferred
	BytesTransferred int32 `json:"bytes_transferred,omitempty"`
	// Amount of data transferred in bytes as recorded in the restart checkpoint.
	CheckpointSize int32 `json:"checkpoint_size,omitempty"`
	// This is supported for transfer of restore relationship only. This specifies the list of files or LUNs to be restored. Can contain up to eight files or LUNs.
	Files        []SnapmirrorTransferFiles       `json:"files,omitempty"`
	Relationship *SnapmirrorTransferRelationship `json:"relationship,omitempty"`
	// Name of Snapshot copy being transferred.
	Snapshot string `json:"snapshot,omitempty"`
	// Specifies the Snapshot copy on the source to be transferred to the destination.
	SourceSnapshot string `json:"source_snapshot,omitempty"`
	// Status of the transfer. Set PATCH state to \"aborted\" to abort the transfer. Set PATCH state to \"hard_aborted\" to abort the transfer and discard the restart checkpoint.
	State string `json:"state,omitempty"`
	// This is supported for transfer of restore relationship only. Set this field to 'false' to turn off storage efficiency for data transferred over the wire and written to the destination.
	StorageEfficiencyEnabled bool   `json:"storage_efficiency_enabled,omitempty"`
	Uuid                     string `json:"uuid,omitempty"`
}

Snapmirror transfer information

type SnapmirrorTransferFiles ¶

type SnapmirrorTransferFiles struct {
	DestinationPath string `json:"destination_path,omitempty"`
	SourcePath      string `json:"source_path,omitempty"`
}

Specifies a file or LUN consisting of a source_path and an optional destination_path. If not specified, the destination_path is the same as the source_path.

type SnapmirrorTransferRelationship ¶

type SnapmirrorTransferRelationship struct {
	Destination *SnapmirrorEndpoint `json:"destination,omitempty"`
	// Is the relationship for restore?
	Restore bool   `json:"restore,omitempty"`
	Uuid    string `json:"uuid,omitempty"`
}

type SnapmirrorTransferResponse ¶

type SnapmirrorTransferResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32                `json:"num_records,omitempty"`
	Records    []SnapmirrorTransfer `json:"records,omitempty"`
}

type Snapshot ¶

type Snapshot struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// A comment associated with the Snapshot copy. This is an optional attribute for POST or PATCH.
	Comment string `json:"comment,omitempty"`
	// Creation time of the Snapshot copy. It is the volume access time when the Snapshot copy was created.
	CreateTime time.Time `json:"create_time,omitempty"`
	// The expiry time for the Snapshot copy. This is an optional attribute for POST or PATCH. Snapshot copies with an expiry time set are not allowed to be deleted until the retention time is reached.
	ExpiryTime time.Time `json:"expiry_time,omitempty"`
	// Snapshot copy. Valid in POST or PATCH.
	Name string `json:"name,omitempty"`
	// SnapLock expiry time for the Snapshot copy, if the Snapshot copy is taken on a SnapLock volume. A Snapshot copy is not allowed to be deleted or renamed until the SnapLock ComplianceClock time goes beyond this retention time.
	SnaplockExpiryTime time.Time `json:"snaplock_expiry_time,omitempty"`
	// State of the Snapshot copy. There are cases where some Snapshot copies are not complete. In the \"partial\" state, the Snapshot copy is consistent but exists only on the subset of the constituents that existed prior to the FlexGroup's expansion. Partial Snapshot copies cannot be used for a Snapshot copy restore operation. A Snapshot copy is in an \"invalid\" state when it is present in some FlexGroup constituents but not in others. At all other times, a Snapshot copy is valid.
	State string    `json:"state,omitempty"`
	Svm   *AuditSvm `json:"svm,omitempty"`
	// The UUID of the Snapshot copy in the volume that uniquely identifies the Snapshot copy in that volume.
	Uuid   string           `json:"uuid,omitempty"`
	Volume *CifsShareVolume `json:"volume,omitempty"`
}

The Snapshot copy object represents a point in time Snapshot copy of a volume.

type SnapshotCollectionGetOpts ¶

type SnapshotCollectionGetOpts struct {
	SnaplockExpiryTime optional.String
	CreateTime         optional.String
	State              optional.String
	ExpiryTime         optional.String
	Comment            optional.String
	Name               optional.String
	SvmUuid            optional.String
	SvmName            optional.String
	Uuid               optional.String
	VolumeName         optional.String
	VolumeUuid         optional.String
	Fields             optional.Interface
	MaxRecords         optional.Int32
	ReturnRecords      optional.Bool
	ReturnTimeout      optional.Int32
	OrderBy            optional.Interface
}

type SnapshotCreateOpts ¶

type SnapshotCreateOpts struct {
	Info optional.Interface
}

type SnapshotGetOpts ¶

type SnapshotGetOpts struct {
	Fields optional.Interface
}

type SnapshotModifyOpts ¶

type SnapshotModifyOpts struct {
	Info optional.Interface
}

type SnapshotPolicy ¶

type SnapshotPolicy struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// A comment associated with the Snapshot copy policy.
	Comment string                 `json:"comment,omitempty"`
	Copies  []SnapshotPolicyCopies `json:"copies,omitempty"`
	// Is the Snapshot copy policy enabled?
	Enabled bool `json:"enabled,omitempty"`
	// Name of the Snapshot copy policy.
	Name string `json:"name,omitempty"`
	// Set to \"svm\" when the request is on a data SVM, otherwise set to \"cluster\".
	Scope string                    `json:"scope,omitempty"`
	Svm   *FlexcacheRelationshipSvm `json:"svm,omitempty"`
	Uuid  string                    `json:"uuid,omitempty"`
}

The Snapshot copy policy object is associated with a read-write volume used to create and delete Snapshot copies at regular intervals.

type SnapshotPolicyCollectionGetOpts ¶

type SnapshotPolicyCollectionGetOpts struct {
	Uuid                  optional.String
	CopiesPrefix          optional.String
	CopiesCount           optional.Int32
	CopiesSnapmirrorLabel optional.String
	CopiesScheduleName    optional.String
	SvmUuid               optional.String
	SvmName               optional.String
	Name                  optional.String
	Scope                 optional.String
	Comment               optional.String
	Enabled               optional.Bool
	Fields                optional.Interface
	MaxRecords            optional.Int32
	ReturnRecords         optional.Bool
	ReturnTimeout         optional.Int32
	OrderBy               optional.Interface
}

type SnapshotPolicyCopies ¶

type SnapshotPolicyCopies struct {
	// The number of Snapshot copies to maintain for this schedule.
	Count int32 `json:"count,omitempty"`
	// The prefix to use while creating Snapshot copies at regular intervals.
	Prefix   string                  `json:"prefix,omitempty"`
	Schedule *SnapshotPolicySchedule `json:"schedule,omitempty"`
	// Label for SnapMirror operations
	SnapmirrorLabel string `json:"snapmirror_label,omitempty"`
}

type SnapshotPolicyCreateOpts ¶

type SnapshotPolicyCreateOpts struct {
	Info optional.Interface
}

type SnapshotPolicyGetOpts ¶

type SnapshotPolicyGetOpts struct {
	Fields optional.Interface
}

type SnapshotPolicyModifyOpts ¶

type SnapshotPolicyModifyOpts struct {
	Info optional.Interface
}

type SnapshotPolicyReference ¶

type SnapshotPolicyReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

This is a reference to the Snapshot copy policy.

type SnapshotPolicyResponse ¶

type SnapshotPolicyResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32            `json:"num_records,omitempty"`
	Records    []SnapshotPolicy `json:"records,omitempty"`
}

type SnapshotPolicySchedule ¶

type SnapshotPolicySchedule struct {
	// Schedule at which Snapshot copies are captured on the volume. Some common schedules already defined in the system are hourly, daily, weekly, at 15 minute intervals, and at 5 minute intervals. Snapshot copy policies with custom schedules can be referenced.
	Name string `json:"name,omitempty"`
}

type SnapshotReference ¶

type SnapshotReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

type SnapshotResponse ¶

type SnapshotResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32      `json:"num_records,omitempty"`
	Records    []Snapshot `json:"records,omitempty"`
}

type SoftwareErrorsReference ¶

type SoftwareErrorsReference struct {
	// Error code of message
	Code int32 `json:"code,omitempty"`
	// Error message
	Message string `json:"message,omitempty"`
	// Severity of error
	Severity string `json:"severity,omitempty"`
}

type SoftwareGetOpts ¶

type SoftwareGetOpts struct {
	Fields        optional.Interface
	ReturnTimeout optional.Int32
}

type SoftwareHistoryCollectionGetOpts ¶

type SoftwareHistoryCollectionGetOpts struct {
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type SoftwareHistoryReference ¶

type SoftwareHistoryReference struct {
	// Completion time of this installation request.
	EndTime time.Time `json:"end_time,omitempty"`
	// Previous version of node
	FromVersion string                 `json:"from_version,omitempty"`
	Node        *InlineResponse201Node `json:"node,omitempty"`
	// Start time of this installation request.
	StartTime time.Time `json:"start_time,omitempty"`
	// Status of this installation request.
	State string `json:"state,omitempty"`
	// Updated version of node
	ToVersion string `json:"to_version,omitempty"`
}

type SoftwareHistoryResponse ¶

type SoftwareHistoryResponse struct {
	Links      *AccountResponseLinks      `json:"_links,omitempty"`
	NumRecords int32                      `json:"num_records,omitempty"`
	Records    []SoftwareHistoryReference `json:"records,omitempty"`
}

type SoftwareMccReference ¶

type SoftwareMccReference struct {
	// Elapsed duration of update time (in seconds) in MetroCluster.
	ElapsedDuration int32 `json:"elapsed_duration,omitempty"`
	// Estimated duration of update time (in seconds) in MetroCluster.
	EstimatedDuration int32 `json:"estimated_duration,omitempty"`
	// Name of the site in MetroCluster.
	Name string `json:"name,omitempty"`
	// Upgrade state of MetroCluster.
	State string `json:"state,omitempty"`
}

type SoftwareMessageCatalogReference ¶

type SoftwareMessageCatalogReference struct {
	Arguments []string `json:"arguments,omitempty"`
	// Message catalog code of message
	Code int32 `json:"code,omitempty"`
	// message details
	Message string `json:"message,omitempty"`
}

type SoftwareModifyOpts ¶

type SoftwareModifyOpts struct {
	ValidateOnly optional.Bool
	SkipWarnings optional.Bool
	Action       optional.String
	Info         optional.Interface
}

type SoftwareNodeReference ¶

type SoftwareNodeReference struct {
	// Name of the node.
	Name string `json:"name,omitempty"`
	// ONTAP version of the node.
	Version string `json:"version,omitempty"`
}

type SoftwarePackage ¶

type SoftwarePackage struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Indicates when this package was loaded
	CreateTime time.Time `json:"create_time,omitempty"`
	// Version of this package
	Version string `json:"version,omitempty"`
}

type SoftwarePackageCreateOpts ¶

type SoftwarePackageCreateOpts struct {
	ReturnTimeout optional.Int32
	Info          optional.Interface
}

type SoftwarePackageDownload ¶

type SoftwarePackageDownload struct {
	// Password for download
	Password string `json:"password,omitempty"`
	// HTTP or FTP URL of the package via a server
	Url string `json:"url,omitempty"`
	// Username for download
	Username string `json:"username,omitempty"`
}

type SoftwarePackageGetOpts ¶

type SoftwarePackageGetOpts struct {
	Fields optional.Interface
}

type SoftwarePackageResponse ¶

type SoftwarePackageResponse struct {
	Links      *AccountResponseLinks `json:"_links,omitempty"`
	NumRecords int32                 `json:"num_records,omitempty"`
	Records    []SoftwarePackage     `json:"records,omitempty"`
}

type SoftwarePackagesCollectionGetOpts ¶

type SoftwarePackagesCollectionGetOpts struct {
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type SoftwareReference ¶

type SoftwareReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// User triggered action to apply to the install operation
	Action string `json:"action,omitempty"`
	// Elapsed time during the upgrade or validation operation
	ElapsedDuration int32 `json:"elapsed_duration,omitempty"`
	// Estimated time remaining until completion of the upgrade or validation operation.
	EstimatedDuration int32                          `json:"estimated_duration,omitempty"`
	Metrocluster      *SoftwareReferenceMetrocluster `json:"metrocluster,omitempty"`
	// List of nodes and active versions.
	Nodes []SoftwareNodeReference `json:"nodes,omitempty"`
	// Version being installed on the system.
	PendingVersion string `json:"pending_version,omitempty"`
	// Operational state of the upgrade
	State string `json:"state,omitempty"`
	// Display status details.
	StatusDetails []SoftwareStatusDetailsReference `json:"status_details,omitempty"`
	// Display update procress details.
	UpdateDetails []SoftwareUpdateDetailsReference `json:"update_details,omitempty"`
	// List of validation warnings, errors, and advice.
	ValidationResults []SoftwareValidationReference `json:"validation_results,omitempty"`
	// Version of ONTAP installed and currently active on the system. During PATCH, using the 'validate_only' parameter on the request executes pre-checks, but does not perform the full installation.
	Version string `json:"version,omitempty"`
}

type SoftwareReferenceMetrocluster ¶

type SoftwareReferenceMetrocluster struct {
	// List of MetroCluster sites, statuses, and active versions.
	Clusters []SoftwareMccReference `json:"clusters,omitempty"`
	// MetroCluster update progress details.
	ProgressDetails string `json:"progress_details,omitempty"`
	// MetroCluster update progress summary.
	ProgressSummary string `json:"progress_summary,omitempty"`
}

type SoftwareStatusDetailsReference ¶

type SoftwareStatusDetailsReference struct {
	// Corrective action to be taken to resolve the status error.
	Action string `json:"action,omitempty"`
	// End time for each status phase.
	EndTime time.Time `json:"end_time,omitempty"`
	// Detailed message of the phase details.
	Message string `json:"message,omitempty"`
	// Name of the phase to be retrieved for status details.
	Name string                              `json:"name,omitempty"`
	Node *SoftwareStatusDetailsReferenceNode `json:"node,omitempty"`
	// Start time for each status phase.
	StartTime time.Time `json:"start_time,omitempty"`
	// Status of the phase
	State string `json:"state,omitempty"`
}

type SoftwareStatusDetailsReferenceNode ¶

type SoftwareStatusDetailsReferenceNode struct {
	// Name of the node to be retrieved for status details.
	Name string `json:"name,omitempty"`
}

type SoftwareUpdateDetailsReference ¶

type SoftwareUpdateDetailsReference struct {
	// Elapsed duration for each update phase
	ElapsedDuration int32 `json:"elapsed_duration,omitempty"`
	// Estimated duration for each update phase
	EstimatedDuration int32                               `json:"estimated_duration,omitempty"`
	Node              *SoftwareUpdateDetailsReferenceNode `json:"node,omitempty"`
	// Phase details
	Phase string `json:"phase,omitempty"`
	// State of the update phase
	State string `json:"state,omitempty"`
}

type SoftwareUpdateDetailsReferenceNode ¶

type SoftwareUpdateDetailsReferenceNode struct {
	// Name of the node to be retrieved for update details.
	Name string `json:"name,omitempty"`
}

type SoftwareUpload ¶

type SoftwareUpload struct {
	// Package file on a local file system
	File string `json:"file,omitempty"`
}

type SoftwareValidationReference ¶

type SoftwareValidationReference struct {
	// Corrective action to resolve errors or warnings for update checks.
	Action string `json:"action,omitempty"`
	// Details of the error or warning encountered by the update check.
	Message string `json:"message,omitempty"`
	// Status of this update check.
	Status string `json:"status,omitempty"`
	// Name of the update check to be validated.
	UpdateCheck string `json:"update_check,omitempty"`
}

type SpaceEfficiency ¶

type SpaceEfficiency struct {
	// Logical used
	LogicalUsed int32 `json:"logical_used,omitempty"`
	// Data reduction ratio (logical_used / used)
	Ratio float32 `json:"ratio,omitempty"`
	// Space saved by storage efficiencies (logical_used - used)
	Savings int32 `json:"savings,omitempty"`
}

type SqlOnSan ¶

type SqlOnSan struct {
	Db *SqlOnSanDb `json:"db,omitempty"`
	// The name of the initiator group through which the contents of this application will be accessed. Modification of this parameter is a disruptive operation. All LUNs in the application component will be unmapped from the current igroup and re-mapped to the new igroup. Required in the POST body and optional in the PATCH body
	IgroupName string       `json:"igroup_name,omitempty"`
	Log        *SqlOnSanLog `json:"log,omitempty"`
	// The list of initiator groups to create. Optional in the POST or PATCH body
	NewIgroups []SqlOnSanNewIgroups `json:"new_igroups,omitempty"`
	// The name of the host OS running the application. Optional in the POST body
	OsType         string                      `json:"os_type,omitempty"`
	ProtectionType *MongoDbOnSanProtectionType `json:"protection_type,omitempty"`
	// The number of server cores for the db. Optional in the POST body
	ServerCoresCount int32           `json:"server_cores_count,omitempty"`
	TempDb           *SqlOnSanTempDb `json:"temp_db,omitempty"`
}

Microsoft SQL using SAN.

type SqlOnSanDb ¶

type SqlOnSanDb struct {
	// The size of the db. Usage: {&lt;integer&gt;[KB|MB|GB|TB|PB]} Required in the POST body and optional in the PATCH body
	Size           int32                     `json:"size,omitempty"`
	StorageService *SqlOnSanDbStorageService `json:"storage_service,omitempty"`
}

type SqlOnSanDbStorageService ¶

type SqlOnSanDbStorageService struct {
	// The storage service of the db. Optional in the POST or PATCH body
	Name string `json:"name,omitempty"`
}

type SqlOnSanLog ¶

type SqlOnSanLog struct {
	// The size of the log db. Usage: {&lt;integer&gt;[KB|MB|GB|TB|PB]} Required in the POST body and optional in the PATCH body
	Size           int32                      `json:"size,omitempty"`
	StorageService *SqlOnSanLogStorageService `json:"storage_service,omitempty"`
}

type SqlOnSanLogStorageService ¶

type SqlOnSanLogStorageService struct {
	// The storage service of the log db. Optional in the POST or PATCH body
	Name string `json:"name,omitempty"`
}

type SqlOnSanNewIgroups ¶

type SqlOnSanNewIgroups struct {
	// The name of the new initiator group. Required in the POST body and optional in the PATCH body
	Name       string   `json:"name,omitempty"`
	Initiators []string `json:"initiators,omitempty"`
	// The name of the host OS accessing the application. The default value is the host OS that is running the application. Optional in the POST or PATCH body
	OsType string `json:"os_type,omitempty"`
	// The protocol of the new initiator group. Optional in the POST or PATCH body
	Protocol string `json:"protocol,omitempty"`
}

The list of initiator groups to create.

type SqlOnSanTempDb ¶

type SqlOnSanTempDb struct {
	// The size of the temp db. Usage: {&lt;integer&gt;[KB|MB|GB|TB|PB]} Optional in the POST or PATCH body
	Size           int32                         `json:"size,omitempty"`
	StorageService *SqlOnSanTempDbStorageService `json:"storage_service,omitempty"`
}

type SqlOnSanTempDbStorageService ¶

type SqlOnSanTempDbStorageService struct {
	// The storage service of the temp db. Optional in the POST or PATCH body
	Name string `json:"name,omitempty"`
}

type SqlOnSmb ¶

type SqlOnSmb struct {
	Access         *SqlOnSmbAccess             `json:"access,omitempty"`
	Db             *SqlOnSanDb                 `json:"db,omitempty"`
	Log            *SqlOnSanLog                `json:"log,omitempty"`
	ProtectionType *MongoDbOnSanProtectionType `json:"protection_type,omitempty"`
	// The number of server cores for the db. Optional in the POST body
	ServerCoresCount int32           `json:"server_cores_count,omitempty"`
	TempDb           *SqlOnSanTempDb `json:"temp_db,omitempty"`
}

Microsoft SQL using SMB.

type SqlOnSmbAccess ¶

type SqlOnSmbAccess struct {
	// SQL installer admin user name. Optional in the POST body
	Installer string `json:"installer,omitempty"`
	// SQL service account user name. Required in the POST body
	ServiceAccount string `json:"service_account,omitempty"`
}

type StorageApiService ¶

type StorageApiService service

func (*StorageApiService) AggregateCollectionGet ¶

func (a *StorageApiService) AggregateCollectionGet(ctx context.Context, localVarOptionals *AggregateCollectionGetOpts) (AggregateResponse, *http.Response, error)

func (*StorageApiService) AggregateCreate ¶

func (a *StorageApiService) AggregateCreate(ctx context.Context, localVarOptionals *AggregateCreateOpts) (JobLinkResponse, *http.Response, error)

func (*StorageApiService) AggregateDelete ¶

func (a *StorageApiService) AggregateDelete(ctx context.Context, uuid string) (JobLinkResponse, *http.Response, error)

StorageApiService Deletes the aggregate specified by the UUID. This request starts a job and returns a link to that job. ### Related ONTAP commands * &#x60;storage aggregate delete&#x60; ### Learn more * [&#x60;DOC /storage/aggregates&#x60;](#docs-storage-storage_aggregates)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid Aggregate UUID

@return JobLinkResponse

func (*StorageApiService) AggregateGet ¶

func (a *StorageApiService) AggregateGet(ctx context.Context, uuid string, localVarOptionals *AggregateGetOpts) (Aggregate, *http.Response, error)

func (*StorageApiService) AggregateModify ¶

func (a *StorageApiService) AggregateModify(ctx context.Context, uuid string, localVarOptionals *AggregateModifyOpts) (JobLinkResponse, *http.Response, error)

func (*StorageApiService) CloudStoreCollectionGet ¶

func (a *StorageApiService) CloudStoreCollectionGet(ctx context.Context, aggregateUuid string, localVarOptionals *CloudStoreCollectionGetOpts) (CloudStoreResponse, *http.Response, error)

func (*StorageApiService) CloudStoreCreate ¶

func (a *StorageApiService) CloudStoreCreate(ctx context.Context, aggregateUuid string, localVarOptionals *CloudStoreCreateOpts) (JobLinkResponse, *http.Response, error)

func (*StorageApiService) CloudStoreDelete ¶

func (a *StorageApiService) CloudStoreDelete(ctx context.Context, aggregateUuid string, targetUuid string) (JobLinkResponse, *http.Response, error)

StorageApiService Removes the specified cloud target from the aggregate. Only removal of a mirror is allowed. The primary cannot be removed. This request starts a job and returns a link to that job. ### Related ONTAP commands * &#x60;storage aggregate object-store unmirror&#x60;

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param aggregateUuid Aggregate UUID
  • @param targetUuid Cloud target UUID

@return JobLinkResponse

func (*StorageApiService) CloudStoreGet ¶

func (a *StorageApiService) CloudStoreGet(ctx context.Context, aggregateUuid string, targetUuid string, localVarOptionals *CloudStoreGetOpts) (CloudStoreResponse, *http.Response, error)

func (*StorageApiService) CloudStoreModify ¶

func (a *StorageApiService) CloudStoreModify(ctx context.Context, aggregateUuid string, targetUuid string, localVarOptionals *CloudStoreModifyOpts) (JobLinkResponse, *http.Response, error)

func (*StorageApiService) DiskCollectionGet ¶

func (a *StorageApiService) DiskCollectionGet(ctx context.Context, localVarOptionals *DiskCollectionGetOpts) (DiskResponse, *http.Response, error)

func (*StorageApiService) DiskGet ¶

func (a *StorageApiService) DiskGet(ctx context.Context, name string, localVarOptionals *DiskGetOpts) (Disk, *http.Response, error)

func (*StorageApiService) FileCloneCreate ¶

func (a *StorageApiService) FileCloneCreate(ctx context.Context, localVarOptionals *FileCloneCreateOpts) (JobLinkResponse, *http.Response, error)

func (*StorageApiService) FlexcacheCollectionGet ¶

func (a *StorageApiService) FlexcacheCollectionGet(ctx context.Context, localVarOptionals *FlexcacheCollectionGetOpts) (FlexcacheResponse, *http.Response, error)

func (*StorageApiService) FlexcacheCreate ¶

func (a *StorageApiService) FlexcacheCreate(ctx context.Context, info Flexcache) (JobLinkResponse, *http.Response, error)

StorageApiService Creates a FlexCache in the cluster. ### Required properties * &#x60;name&#x60; - Name of FlexCache volume. * &#x60;origins.volume.name&#x60; or &#x60;origins.volume.uuid&#x60; - Name or UUID of origin volume. * &#x60;origins.svm.name&#x60; - Name of origin Vserver. * &#x60;svm.name&#x60; or &#x60;svm.uuid&#x60; - Name or UUID of Vserver where FlexCache will be created. ### Recommended optional properties * &#x60;path&#x60; - Path to mount the FlexCache volume ### Default property values If not specified in POST, the following default property values are assigned: * &#x60;size&#x60; - 10% of origin volume size or 1GB per constituent, whichever is greater. * &#x60;constituents_per_aggregate&#x60; - 4 if aggregates.name or aggregates.uuid is used. ### Related ONTAP commands * &#x60;volume flexcache create&#x60; ### Learn more * [&#x60;DOC /storage/flexcache/flexcaches&#x60;](#docs-storage-storage_flexcache_flexcaches)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info Info specification

@return JobLinkResponse

func (*StorageApiService) FlexcacheDelete ¶

func (a *StorageApiService) FlexcacheDelete(ctx context.Context, uuid string) (JobLinkResponse, *http.Response, error)

StorageApiService Deletes a FlexCache. If a FlexCache volume is online, it is offlined before deletion. ### Related ONTAP commands * &#x60;volume flexcache delete&#x60; ### Learn more * [&#x60;DOC /storage/flexcache/flexcaches&#x60;](#docs-storage-storage_flexcache_flexcaches)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid Unique identifier of the FlexCache.

@return JobLinkResponse

func (*StorageApiService) FlexcacheGet ¶

func (a *StorageApiService) FlexcacheGet(ctx context.Context, uuid string, localVarOptionals *FlexcacheGetOpts) (Flexcache, *http.Response, error)

func (*StorageApiService) FlexcacheOriginCollectionGet ¶

func (a *StorageApiService) FlexcacheOriginCollectionGet(ctx context.Context, localVarOptionals *FlexcacheOriginCollectionGetOpts) (FlexcacheOriginResponse, *http.Response, error)

func (*StorageApiService) FlexcacheOriginGet ¶

func (a *StorageApiService) FlexcacheOriginGet(ctx context.Context, uuid string, localVarOptionals *FlexcacheOriginGetOpts) (FlexcacheOrigin, *http.Response, error)

func (*StorageApiService) PlexCollectionGet ¶

func (a *StorageApiService) PlexCollectionGet(ctx context.Context, aggregateUuid string, name string, localVarOptionals *PlexCollectionGetOpts) (PlexResponse, *http.Response, error)

func (*StorageApiService) PlexGet ¶

func (a *StorageApiService) PlexGet(ctx context.Context, aggregateUuid string, name string, localVarOptionals *PlexGetOpts) (Plex, *http.Response, error)

func (*StorageApiService) PortCollectionGet ¶

func (a *StorageApiService) PortCollectionGet(ctx context.Context, localVarOptionals *PortCollectionGetOpts) (StoragePortResponse, *http.Response, error)

func (*StorageApiService) PortGet ¶

func (a *StorageApiService) PortGet(ctx context.Context, nodeUuid string, name string, localVarOptionals *PortGetOpts) (StoragePort, *http.Response, error)

func (*StorageApiService) QosPolicyCollectionGet ¶

func (a *StorageApiService) QosPolicyCollectionGet(ctx context.Context, localVarOptionals *QosPolicyCollectionGetOpts) (QosPolicyResponse, *http.Response, error)

func (*StorageApiService) QosPolicyCreate ¶

func (a *StorageApiService) QosPolicyCreate(ctx context.Context, localVarOptionals *QosPolicyCreateOpts) (JobLinkResponse, *http.Response, error)

func (*StorageApiService) QosPolicyDelete ¶

func (a *StorageApiService) QosPolicyDelete(ctx context.Context, policyUuid string, localVarOptionals *QosPolicyDeleteOpts) (JobLinkResponse, *http.Response, error)

func (*StorageApiService) QosPolicyGet ¶

func (a *StorageApiService) QosPolicyGet(ctx context.Context, policyUuid string, localVarOptionals *QosPolicyGetOpts) (QosPolicy, *http.Response, error)

func (*StorageApiService) QosPolicyModify ¶

func (a *StorageApiService) QosPolicyModify(ctx context.Context, policyUuid string, localVarOptionals *QosPolicyModifyOpts) (JobLinkResponse, *http.Response, error)

func (*StorageApiService) QtreeCollectionGet ¶

func (a *StorageApiService) QtreeCollectionGet(ctx context.Context, localVarOptionals *QtreeCollectionGetOpts) (QtreeResponse, *http.Response, error)

func (*StorageApiService) QtreeCreate ¶

func (a *StorageApiService) QtreeCreate(ctx context.Context, info Qtree) (JobLinkResponse, *http.Response, error)

StorageApiService Creates a qtree in a FlexVol or a FlexGroup volume. &lt;br/&gt; After a qtree is created, the new qtree is assigned an identifier. This identifier is obtained using a qtree GET request. This identifier is used in the API path for the qtree PATCH and DELETE operations. ### Required properties * &#x60;svm.uuid&#x60; or &#x60;svm.name&#x60; - Existing SVM in which to create the qtree. * &#x60;volume.uuid&#x60; or &#x60;volume.name&#x60; - Existing volume in which to create the qtree. * &#x60;name&#x60; - Name for the qtree. ### Recommended optional properties If not specified in POST, the values are inherited from the volume. * &#x60;security_style&#x60; - Security style for the qtree. * &#x60;unix_permissions&#x60; - UNIX permissions for the qtree. * &#x60;export_policy.name or export_policy.id&#x60; - Export policy of the SVM for the qtree. ### Related ONTAP commands * &#x60;qtree create&#x60; ### Learn more * [&#x60;DOC /storage/qtrees&#x60;](#docs-storage-storage_qtrees)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info Info specification

@return JobLinkResponse

func (*StorageApiService) QtreeDelete ¶

func (a *StorageApiService) QtreeDelete(ctx context.Context, volumeUuid string, id string) (JobLinkResponse, *http.Response, error)

StorageApiService Deletes a qtree. ### Related ONTAP commands * &#x60;qtree delete&#x60; ### Learn more * [&#x60;DOC /storage/qtrees&#x60;](#docs-storage-storage_qtrees)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param volumeUuid Volume UUID
  • @param id Qtree ID

@return JobLinkResponse

func (*StorageApiService) QtreeGet ¶

func (a *StorageApiService) QtreeGet(ctx context.Context, volumeUuid string, id string, localVarOptionals *QtreeGetOpts) (Qtree, *http.Response, error)

func (*StorageApiService) QtreeModify ¶

func (a *StorageApiService) QtreeModify(ctx context.Context, volumeUuid string, id string, info Qtree) (JobLinkResponse, *http.Response, error)

StorageApiService Updates properties for a specific qtree. ### Related ONTAP commands * &#x60;qtree modify&#x60; * &#x60;qtree rename&#x60; ### Learn more * [&#x60;DOC /storage/qtrees&#x60;](#docs-storage-storage_qtrees)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param volumeUuid Volume UUID
  • @param id Qtree ID
  • @param info The new property values for the qtree.

@return JobLinkResponse

func (*StorageApiService) QuotaReportCollectionGet ¶

func (a *StorageApiService) QuotaReportCollectionGet(ctx context.Context, localVarOptionals *QuotaReportCollectionGetOpts) (QuotaReportResponse, *http.Response, error)

func (*StorageApiService) QuotaReportGet ¶

func (a *StorageApiService) QuotaReportGet(ctx context.Context, volumeUuid string, index int32, localVarOptionals *QuotaReportGetOpts) (QuotaReport, *http.Response, error)

func (*StorageApiService) QuotaRuleCollectionGet ¶

func (a *StorageApiService) QuotaRuleCollectionGet(ctx context.Context, localVarOptionals *QuotaRuleCollectionGetOpts) (QuotaRuleResponse, *http.Response, error)

func (*StorageApiService) QuotaRuleCreate ¶

func (a *StorageApiService) QuotaRuleCreate(ctx context.Context, info QuotaRule) (JobLinkResponse, *http.Response, error)

StorageApiService Creates a quota policy rule for a FlexVol or a FlexGroup volume.&lt;br/&gt; Important notes: * Unlike CLI/ONTAPI, the &#x60;quota policy&#x60; input is not needed for POST. ### Required properties * &#x60;svm.uuid&#x60; or &#x60;svm.name&#x60; - Existing SVM in which to create the qtree. * &#x60;volume.uuid&#x60; or &#x60;volume.name&#x60; - Existing volume in which to create the qtree. * &#x60;type&#x60; - Quota type for the rule. This type can be &#x60;user&#x60;, &#x60;group&#x60;, or &#x60;tree&#x60;. * &#x60;users.name&#x60; or &#x60;user.id&#x60; - If the quota type is user, this property takes the user name or user ID. For default user quota rules, the user name must be specified as \&quot;\&quot;. * &#x60;group.name&#x60; or &#x60;group.id&#x60; - If the quota type is group, this property takes the group name or group ID. For default group quota rules, the group name must be specified as \&quot;\&quot;. * &#x60;qtree.name&#x60; - Qtree for which to create the rule. For default tree rules, the qtree name must be specified as \&quot;\&quot;. ### Recommended optional properties * &#x60;space.hard_limit&#x60; - Specifies the space hard limit, in bytes. If less than 1024 bytes, the value is rounded up to 1024 bytes. * &#x60;space.soft_limit&#x60; - Specifies the space soft limit, in bytes. If less than 1024 bytes, the value is rounded up to 1024 bytes. * &#x60;files.hard_limit&#x60; - Specifies the hard limit for files. * &#x60;files.hard_limit&#x60; - Specifies the soft limit for files. * &#x60;user_mapping&#x60; - Specifies the user_mapping. This property is valid only for quota policy rules of type &#x60;user&#x60;. ### Related ONTAP commands * &#x60;quota policy rule create&#x60; ### Learn more * [&#x60;DOC /storage/quota/rules&#x60;](#docs-storage-storage_quota_rules)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info Info specification

@return JobLinkResponse

func (*StorageApiService) QuotaRuleDelete ¶

func (a *StorageApiService) QuotaRuleDelete(ctx context.Context, ruleUuid string) (JobLinkResponse, *http.Response, error)

StorageApiService Deletes a quota policy rule. ### Related ONTAP commands * &#x60;quota policy rule delete&#x60; ### Learn more * [&#x60;DOC /storage/quota/rules&#x60;](#docs-storage-storage_quota_rules)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param ruleUuid Rule UUID

@return JobLinkResponse

func (*StorageApiService) QuotaRuleGet ¶

func (a *StorageApiService) QuotaRuleGet(ctx context.Context, ruleUuid string, localVarOptionals *QuotaRuleGetOpts) (QuotaRule, *http.Response, error)

func (*StorageApiService) QuotaRuleModify ¶

func (a *StorageApiService) QuotaRuleModify(ctx context.Context, ruleUuid string, localVarOptionals *QuotaRuleModifyOpts) (JobLinkResponse, *http.Response, error)

func (*StorageApiService) ShelfCollectionGet ¶

func (a *StorageApiService) ShelfCollectionGet(ctx context.Context, localVarOptionals *ShelfCollectionGetOpts) (ShelfResponse, *http.Response, error)

func (*StorageApiService) ShelfGet ¶

func (a *StorageApiService) ShelfGet(ctx context.Context, uid string, localVarOptionals *ShelfGetOpts) (Shelf, *http.Response, error)

func (*StorageApiService) SnapshotCollectionGet ¶

func (a *StorageApiService) SnapshotCollectionGet(ctx context.Context, volumeUuid string, localVarOptionals *SnapshotCollectionGetOpts) (SnapshotResponse, *http.Response, error)

func (*StorageApiService) SnapshotCreate ¶

func (a *StorageApiService) SnapshotCreate(ctx context.Context, volumeUuid string, localVarOptionals *SnapshotCreateOpts) (JobLinkResponse, *http.Response, error)

func (*StorageApiService) SnapshotDelete ¶

func (a *StorageApiService) SnapshotDelete(ctx context.Context, volumeUuid string, uuid string) (JobLinkResponse, *http.Response, error)

StorageApiService Deletes a Volume Snapshot copy. ### Related ONTAP commands * &#x60;snapshot delete&#x60; ### Learn more * [&#x60;DOC /storage/volumes/{volume.uuid}/snapshots&#x60;](#docs-storage-storage_volumes_{volume.uuid}_snapshots)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param volumeUuid Volume UUID
  • @param uuid Snapshot copy UUID

@return JobLinkResponse

func (*StorageApiService) SnapshotGet ¶

func (a *StorageApiService) SnapshotGet(ctx context.Context, volumeUuid string, uuid string, localVarOptionals *SnapshotGetOpts) (Snapshot, *http.Response, error)

func (*StorageApiService) SnapshotModify ¶

func (a *StorageApiService) SnapshotModify(ctx context.Context, volumeUuid string, uuid string, localVarOptionals *SnapshotModifyOpts) (JobLinkResponse, *http.Response, error)

func (*StorageApiService) SnapshotPolicyCollectionGet ¶

func (a *StorageApiService) SnapshotPolicyCollectionGet(ctx context.Context, localVarOptionals *SnapshotPolicyCollectionGetOpts) (SnapshotPolicyResponse, *http.Response, error)

func (*StorageApiService) SnapshotPolicyCreate ¶

func (a *StorageApiService) SnapshotPolicyCreate(ctx context.Context, localVarOptionals *SnapshotPolicyCreateOpts) (*http.Response, error)

func (*StorageApiService) SnapshotPolicyDelete ¶

func (a *StorageApiService) SnapshotPolicyDelete(ctx context.Context, uuid string) (*http.Response, error)

StorageApiService Deletes a Snapshot copy policy ### Related ONTAP commands * &#x60;snapshot policy delete&#x60; ### Learn more * [&#x60;DOC /storage/snapshot-policies&#x60;](#docs-storage-storage_snapshot-policies)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid Snapshot policy UUID

func (*StorageApiService) SnapshotPolicyGet ¶

func (a *StorageApiService) SnapshotPolicyGet(ctx context.Context, uuid string, localVarOptionals *SnapshotPolicyGetOpts) (SnapshotPolicy, *http.Response, error)

func (*StorageApiService) SnapshotPolicyModify ¶

func (a *StorageApiService) SnapshotPolicyModify(ctx context.Context, uuid string, localVarOptionals *SnapshotPolicyModifyOpts) (*http.Response, error)

func (*StorageApiService) StorageClusterGet ¶

func (a *StorageApiService) StorageClusterGet(ctx context.Context, localVarOptionals *StorageClusterGetOpts) (ClusterSpace, *http.Response, error)

func (*StorageApiService) VolumeCollectionGet ¶

func (a *StorageApiService) VolumeCollectionGet(ctx context.Context, localVarOptionals *VolumeCollectionGetOpts) (VolumeResponse, *http.Response, error)

func (*StorageApiService) VolumeCollectionPerformanceMetricsGet ¶

func (a *StorageApiService) VolumeCollectionPerformanceMetricsGet(ctx context.Context, uuid string, localVarOptionals *VolumeCollectionPerformanceMetricsGetOpts) (VolumeMetricsResponse, *http.Response, error)

func (*StorageApiService) VolumeCreate ¶

func (a *StorageApiService) VolumeCreate(ctx context.Context, info Volume) (JobLinkResponse, *http.Response, error)

StorageApiService Creates a volume on a specified SVM and storage aggregates. ### Required properties * &#x60;svm.uuid&#x60; or &#x60;svm.name&#x60; - Existing SVM in which to create the volume. * &#x60;name&#x60; - Name of the volume. * &#x60;aggregates.name&#x60; or &#x60;aggregates.uuid&#x60; - Existing aggregates in which to create the volume. ### Default property values * &#x60;state&#x60; - _online_ * &#x60;size&#x60; - _20MB_ * &#x60;style&#x60; - _flexvol_ * &#x60;type&#x60; - _rw_ * &#x60;encryption.enabled&#x60; - _false_ * &#x60;snapshot_policy.name&#x60; - _default_ * &#x60;gaurantee.type&#x60; - _volume_ ### Related ONTAP commands * &#x60;volume create&#x60; * &#x60;volume clone create&#x60; ### Learn more * [&#x60;DOC /storage/volumes&#x60;](#docs-storage-storage_volumes)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param info Info specification

@return JobLinkResponse

func (*StorageApiService) VolumeDelete ¶

func (a *StorageApiService) VolumeDelete(ctx context.Context, uuid string) (JobLinkResponse, *http.Response, error)

StorageApiService Deletes a volume. If the UUID belongs to a volume, all of its blocks are freed and returned to its containing aggregate. If a volume is online, it is offlined before deletion. ### Related ONTAP commands * &#x60;volume delete&#x60; * &#x60;volume clone delete&#x60; ### Learn more * [&#x60;DOC /storage/volumes&#x60;](#docs-storage-storage_volumes)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param uuid Unique identifier of the volume.

@return JobLinkResponse

func (*StorageApiService) VolumeGet ¶

func (a *StorageApiService) VolumeGet(ctx context.Context, uuid string, localVarOptionals *VolumeGetOpts) (Volume, *http.Response, error)

func (*StorageApiService) VolumeModify ¶

func (a *StorageApiService) VolumeModify(ctx context.Context, uuid string, localVarOptionals *VolumeModifyOpts) (JobLinkResponse, *http.Response, error)

type StorageClusterGetOpts ¶

type StorageClusterGetOpts struct {
	Fields optional.Interface
}

type StoragePort ¶

type StoragePort struct {
	BoardName    string                 `json:"board_name,omitempty"`
	Cable        *ShelfCable            `json:"cable,omitempty"`
	Description  string                 `json:"description,omitempty"`
	Error_       *StoragePortError      `json:"error,omitempty"`
	MacAddress   string                 `json:"mac_address,omitempty"`
	Name         string                 `json:"name,omitempty"`
	Node         *InlineResponse201Node `json:"node,omitempty"`
	PartNumber   string                 `json:"part_number,omitempty"`
	SerialNumber string                 `json:"serial_number,omitempty"`
	// Operational port speed in Gbps
	Speed float32 `json:"speed,omitempty"`
	State string  `json:"state,omitempty"`
	// World Wide Name
	Wwn string `json:"wwn,omitempty"`
}

type StoragePortError ¶

type StoragePortError struct {
	// Error corrective action
	CorrectiveAction string `json:"corrective_action,omitempty"`
	// Error message
	Message string `json:"message,omitempty"`
}

type StoragePortReference ¶

type StoragePortReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Node  *InlineResponse201Node  `json:"node,omitempty"`
}

Storage port

type StoragePortResponse ¶

type StoragePortResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32         `json:"num_records,omitempty"`
	Records    []StoragePort `json:"records,omitempty"`
}

type SupportApiService ¶

type SupportApiService service

func (*SupportApiService) AutosupportCreate ¶

func (a *SupportApiService) AutosupportCreate(ctx context.Context, localVarOptionals *AutosupportCreateOpts) (InlineResponse201, *http.Response, error)

func (*SupportApiService) AutosupportGet ¶

func (a *SupportApiService) AutosupportGet(ctx context.Context, localVarOptionals *AutosupportGetOpts) (Autosupport, *http.Response, error)

func (*SupportApiService) AutosupportMessageCollectionGet ¶

func (a *SupportApiService) AutosupportMessageCollectionGet(ctx context.Context, localVarOptionals *AutosupportMessageCollectionGetOpts) (AutosupportMessageResponse, *http.Response, error)

func (*SupportApiService) AutosupportModify ¶

func (a *SupportApiService) AutosupportModify(ctx context.Context, localVarOptionals *AutosupportModifyOpts) (*http.Response, error)

func (*SupportApiService) ConfigurationBackupGet ¶

func (a *SupportApiService) ConfigurationBackupGet(ctx context.Context, localVarOptionals *ConfigurationBackupGetOpts) (ConfigurationBackup, *http.Response, error)

func (*SupportApiService) ConfigurationBackupModify ¶

func (a *SupportApiService) ConfigurationBackupModify(ctx context.Context, localVarOptionals *ConfigurationBackupModifyOpts) (*http.Response, error)

func (*SupportApiService) EmsConfigGet ¶

func (a *SupportApiService) EmsConfigGet(ctx context.Context, localVarOptionals *EmsConfigGetOpts) (EmsConfig, *http.Response, error)

func (*SupportApiService) EmsConfigModify ¶

func (a *SupportApiService) EmsConfigModify(ctx context.Context, localVarOptionals *EmsConfigModifyOpts) (*http.Response, error)

func (*SupportApiService) EmsDestinationCollectionGet ¶

func (a *SupportApiService) EmsDestinationCollectionGet(ctx context.Context, localVarOptionals *EmsDestinationCollectionGetOpts) (EmsDestinationResponse, *http.Response, error)

func (*SupportApiService) EmsDestinationCreate ¶

func (a *SupportApiService) EmsDestinationCreate(ctx context.Context, localVarOptionals *EmsDestinationCreateOpts) (EmsDestinationResponse, *http.Response, error)

func (*SupportApiService) EmsDestinationDelete ¶

func (a *SupportApiService) EmsDestinationDelete(ctx context.Context, name string) (*http.Response, error)

SupportApiService Deletes an event destination. ### Related ONTAP commands * &#x60;event notification destination delete&#x60; * &#x60;event notification delete&#x60; ### Learn more * [&#x60;DOC /support/ems/destinations/{name}&#x60;](#docs-support-support_ems_destinations_{name})

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param name Destination name

func (*SupportApiService) EmsDestinationGet ¶

func (a *SupportApiService) EmsDestinationGet(ctx context.Context, name string, localVarOptionals *EmsDestinationGetOpts) (EmsDestination, *http.Response, error)

func (*SupportApiService) EmsDestinationModify ¶

func (a *SupportApiService) EmsDestinationModify(ctx context.Context, name string, localVarOptionals *EmsDestinationModifyOpts) (EmsDestination, *http.Response, error)

func (*SupportApiService) EmsEventCollectionGet ¶

func (a *SupportApiService) EmsEventCollectionGet(ctx context.Context, localVarOptionals *EmsEventCollectionGetOpts) (EmsEventResponse, *http.Response, error)

func (*SupportApiService) EmsFilterCollectionGet ¶

func (a *SupportApiService) EmsFilterCollectionGet(ctx context.Context, localVarOptionals *EmsFilterCollectionGetOpts) (EmsFilterResponse, *http.Response, error)

func (*SupportApiService) EmsFilterCreate ¶

func (a *SupportApiService) EmsFilterCreate(ctx context.Context, localVarOptionals *EmsFilterCreateOpts) (EmsFilterResponse, *http.Response, error)

func (*SupportApiService) EmsFilterDelete ¶

func (a *SupportApiService) EmsFilterDelete(ctx context.Context, name string) (*http.Response, error)

SupportApiService Deletes an event filter. ### Related ONTAP commands * &#x60;event filter delete&#x60; ### Learn more * [&#x60;DOC /support/ems/filters/{name}&#x60;](#docs-support-support_ems_filters_{name})

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param name Filter name

func (*SupportApiService) EmsFilterGet ¶

func (a *SupportApiService) EmsFilterGet(ctx context.Context, name string, localVarOptionals *EmsFilterGetOpts) (EmsFilter, *http.Response, error)

func (*SupportApiService) EmsFilterModify ¶

func (a *SupportApiService) EmsFilterModify(ctx context.Context, name string, localVarOptionals *EmsFilterModifyOpts) (*http.Response, error)

func (*SupportApiService) EmsFilterRuleCollectionGet ¶

func (a *SupportApiService) EmsFilterRuleCollectionGet(ctx context.Context, name string, localVarOptionals *EmsFilterRuleCollectionGetOpts) (EmsFilterRuleResponse, *http.Response, error)

func (*SupportApiService) EmsFilterRuleDelete ¶

func (a *SupportApiService) EmsFilterRuleDelete(ctx context.Context, name string, index string) (*http.Response, error)

SupportApiService Deletes an event filter rule. ### Related ONTAP commands * &#x60;event filter rule delete&#x60; ### Learn more * [&#x60;DOC /support/ems/filters/{name}/rules/{index}&#x60;](#docs-support-support_ems_filters_{name}_rules_{index})

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param name Filter name
  • @param index Filter index

func (*SupportApiService) EmsFilterRuleGet ¶

func (a *SupportApiService) EmsFilterRuleGet(ctx context.Context, name string, index string, localVarOptionals *EmsFilterRuleGetOpts) (EmsFilterRule, *http.Response, error)

func (*SupportApiService) EmsFilterRuleModify ¶

func (a *SupportApiService) EmsFilterRuleModify(ctx context.Context, name string, index string, localVarOptionals *EmsFilterRuleModifyOpts) (*http.Response, error)

func (*SupportApiService) EmsFiltersRulesCreate ¶

func (a *SupportApiService) EmsFiltersRulesCreate(ctx context.Context, name string, localVarOptionals *EmsFiltersRulesCreateOpts) (EmsFilterRuleResponse, *http.Response, error)

func (*SupportApiService) EmsMessageCollectionGet ¶

func (a *SupportApiService) EmsMessageCollectionGet(ctx context.Context, localVarOptionals *EmsMessageCollectionGetOpts) (EmsMessageResponse, *http.Response, error)

type Svm ¶

type Svm struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// List of allowed aggregates for SVM volumes. An administrator is allowed to create volumes on these aggregates.
	Aggregates []DiskAggregates `json:"aggregates,omitempty"`
	Cifs       *SvmCifs         `json:"cifs,omitempty"`
	// Comment
	Comment string  `json:"comment,omitempty"`
	Dns     *SvmDns `json:"dns,omitempty"`
	Fcp     *SvmFcp `json:"fcp,omitempty"`
	// IP interfaces for the SVM
	IpInterfaces []IpInterfaceSvm `json:"ip_interfaces,omitempty"`
	Ipspace      *SvmIpspace      `json:"ipspace,omitempty"`
	Iscsi        *SvmIscsi        `json:"iscsi,omitempty"`
	// Default volume language code. UTF-8 encoded languages are valid in POST or PATCH. Non UTF-8 language encodings are for backward compatibility and are not valid input for POST and PATCH requests.
	Language string   `json:"language,omitempty"`
	Ldap     *SvmLdap `json:"ldap,omitempty"`
	// The name of the SVM.
	Name     string       `json:"name,omitempty"`
	Nfs      *SvmNfs      `json:"nfs,omitempty"`
	Nis      *SvmNis      `json:"nis,omitempty"`
	Nsswitch *SvmNsswitch `json:"nsswitch,omitempty"`
	Nvme     *SvmNvme     `json:"nvme,omitempty"`
	// Optional array of routes for the SVM
	Routes         []NetworkRouteForSvm `json:"routes,omitempty"`
	SnapshotPolicy *SvmSnapshotPolicy   `json:"snapshot_policy,omitempty"`
	// SVM State
	State string `json:"state,omitempty"`
	// SVM subtype. The SVM subtype sync_destination is created automatically when an SVM of subtype sync_source is created on the source MetroCluster cluster. A POST request with sync_destination as SVM subtype is invalid.
	Subtype string `json:"subtype,omitempty"`
	// The unique identifier of the SVM.
	Uuid string `json:"uuid,omitempty"`
}

type SvmApiService ¶

type SvmApiService service

func (*SvmApiService) SvmCollectionGet ¶

func (a *SvmApiService) SvmCollectionGet(ctx context.Context, localVarOptionals *SvmCollectionGetOpts) (SvmResponse, *http.Response, error)

func (*SvmApiService) SvmCreate ¶

func (a *SvmApiService) SvmCreate(ctx context.Context, localVarOptionals *SvmCreateOpts) (JobLinkResponse, *http.Response, error)

func (*SvmApiService) SvmDelete ¶

func (a *SvmApiService) SvmDelete(ctx context.Context, uuid string, localVarOptionals *SvmDeleteOpts) (JobLinkResponse, *http.Response, error)

func (*SvmApiService) SvmGet ¶

func (a *SvmApiService) SvmGet(ctx context.Context, uuid string, localVarOptionals *SvmGetOpts) (Svm, *http.Response, error)

func (*SvmApiService) SvmPatchModify ¶

func (a *SvmApiService) SvmPatchModify(ctx context.Context, uuid string, localVarOptionals *SvmPatchModifyOpts) (JobLinkResponse, *http.Response, error)

func (*SvmApiService) SvmPeerCollectionGet ¶

func (a *SvmApiService) SvmPeerCollectionGet(ctx context.Context, localVarOptionals *SvmPeerCollectionGetOpts) (SvmPeerResponse, *http.Response, error)

func (*SvmApiService) SvmPeerCreate ¶

func (a *SvmApiService) SvmPeerCreate(ctx context.Context, localVarOptionals *SvmPeerCreateOpts) (SvmPeer, *http.Response, error)

func (*SvmApiService) SvmPeerDelete ¶

func (a *SvmApiService) SvmPeerDelete(ctx context.Context, peerUuid string) (*http.Response, error)

SvmApiService Deletes the SVM peer relationship. ### Related ONTAP commands * &#x60;vserver peer delete&#x60; ### Example Deletes an SVM peer relationship. &lt;br/&gt; &#x60;&#x60;&#x60; DELETE \&quot;/api/svm/peers/d3268a74-ee76-11e8-a9bb-005056ac6dc9\&quot; &#x60;&#x60;&#x60; &lt;br/&gt; ### Learn more * [&#x60;DOC /svm/peers&#x60;](#docs-svm-svm_peers)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param peerUuid SVM peer relationship UUID

func (*SvmApiService) SvmPeerInstanceGet ¶

func (a *SvmApiService) SvmPeerInstanceGet(ctx context.Context, peerUuid string, localVarOptionals *SvmPeerInstanceGetOpts) (SvmPeer, *http.Response, error)

func (*SvmApiService) SvmPeerModify ¶

func (a *SvmApiService) SvmPeerModify(ctx context.Context, peerUuid string, localVarOptionals *SvmPeerModifyOpts) (*http.Response, error)

func (*SvmApiService) SvmPeerPermissionCollectionGet ¶

func (a *SvmApiService) SvmPeerPermissionCollectionGet(ctx context.Context, localVarOptionals *SvmPeerPermissionCollectionGetOpts) (SvmPeerPermissionResponse, *http.Response, error)

func (*SvmApiService) SvmPeerPermissionDelete ¶

func (a *SvmApiService) SvmPeerPermissionDelete(ctx context.Context, clusterUuid string, svmUuid string) (*http.Response, error)

SvmApiService Deletes the SVM peer permissions. ### Related ONTAP commands * &#x60;verver peer permission delete&#x60; ### Example Deletes an SVM peer permission. &lt;br/&gt; &#x60;&#x60;&#x60; DELETE \&quot;/api/svm/peer-permissions/d3268a74-ee76-11e8-a9bb-005056ac6dc9/8f467b93-f2f1-11e8-9027-005056ac81fc\&quot; &#x60;&#x60;&#x60; &lt;br/&gt; ### Learn more * [&#x60;DOC /svm/peer-permissions&#x60;](#docs-svm-svm_peer-permissions)

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param clusterUuid Peer cluster UUID
  • @param svmUuid SVM UUID

func (*SvmApiService) SvmPeerPermissionInstanceGet ¶

func (a *SvmApiService) SvmPeerPermissionInstanceGet(ctx context.Context, clusterUuid string, svmUuid string, localVarOptionals *SvmPeerPermissionInstanceGetOpts) (SvmPeerPermission, *http.Response, error)

func (*SvmApiService) SvmPeerPermissionModify ¶

func (a *SvmApiService) SvmPeerPermissionModify(ctx context.Context, clusterUuid string, svmUuid string, localVarOptionals *SvmPeerPermissionModifyOpts) (SvmPeerPermission, *http.Response, error)

func (*SvmApiService) SvmPeerPermissionPost ¶

func (a *SvmApiService) SvmPeerPermissionPost(ctx context.Context, localVarOptionals *SvmPeerPermissionPostOpts) (SvmPeerPermission, *http.Response, error)

type SvmCifs ¶

type SvmCifs struct {
	Links    *InlineResponse201Links `json:"_links,omitempty"`
	AdDomain *SvmCifsAdDomain        `json:"ad_domain,omitempty"`
	// Specifies whether or not the CIFS service is administratively enabled.
	Enabled bool `json:"enabled,omitempty"`
	// The NetBIOS name of the CIFS server.
	Name string `json:"name,omitempty"`
}

type SvmCifsAdDomain ¶

type SvmCifsAdDomain struct {
	// The fully qualified domain name of the Windows Active Directory to which this CIFS server belongs. A CIFS server appears as a member of Windows server object in the Active Directory store.
	Fqdn string `json:"fqdn,omitempty"`
	// Specifies the organizational unit within the Active Directory domain to associate with the CIFS server.
	OrganizationalUnit string `json:"organizational_unit,omitempty"`
	// The account password used to add this CIFS server to the Active Directory. This is not audited. Valid in POST only.
	Password string `json:"password,omitempty"`
	// The user account used to add this CIFS server to the Active Directory. Valid in POST only.
	User string `json:"user,omitempty"`
}

type SvmCifsServiceReference ¶

type SvmCifsServiceReference struct {
	Links    *InlineResponse201Links `json:"_links,omitempty"`
	AdDomain *SvmCifsAdDomain        `json:"ad_domain,omitempty"`
	// Specifies whether or not the CIFS service is administratively enabled.
	Enabled bool `json:"enabled,omitempty"`
	// The NetBIOS name of the CIFS server.
	Name string `json:"name,omitempty"`
}

type SvmCollectionGetOpts ¶

type SvmCollectionGetOpts struct {
	NisEnabled                     optional.Bool
	NisServers                     optional.String
	NisDomain                      optional.String
	NvmeEnabled                    optional.Bool
	Language                       optional.String
	NfsEnabled                     optional.Bool
	Comment                        optional.String
	AggregatesName                 optional.String
	AggregatesUuid                 optional.String
	Subtype                        optional.String
	DnsServers                     optional.String
	DnsDomains                     optional.String
	FcpEnabled                     optional.Bool
	IscsiEnabled                   optional.Bool
	Name                           optional.String
	IpspaceUuid                    optional.String
	IpspaceName                    optional.String
	LdapBaseDn                     optional.String
	LdapServers                    optional.String
	LdapEnabled                    optional.Bool
	LdapBindDn                     optional.String
	LdapAdDomain                   optional.String
	Uuid                           optional.String
	CifsName                       optional.String
	CifsAdDomainFqdn               optional.String
	CifsAdDomainOrganizationalUnit optional.String
	CifsEnabled                    optional.Bool
	NsswitchNetgroup               optional.String
	NsswitchGroup                  optional.String
	NsswitchHosts                  optional.String
	NsswitchNamemap                optional.String
	NsswitchPasswd                 optional.String
	IpInterfacesIpAddress          optional.String
	IpInterfacesName               optional.String
	IpInterfacesUuid               optional.String
	SnapshotPolicyUuid             optional.String
	SnapshotPolicyName             optional.String
	State                          optional.String
	Fields                         optional.Interface
	MaxRecords                     optional.Int32
	ReturnRecords                  optional.Bool
	ReturnTimeout                  optional.Int32
	OrderBy                        optional.Interface
}

type SvmCreateOpts ¶

type SvmCreateOpts struct {
	Info          optional.Interface
	ReturnTimeout optional.Int32
}

type SvmDeleteOpts ¶

type SvmDeleteOpts struct {
	ReturnTimeout optional.Int32
}

type SvmDns ¶

type SvmDns struct {
	Links   *InlineResponse201Links `json:"_links,omitempty"`
	Domains *DnsDomains             `json:"domains,omitempty"`
	Servers *NameServers            `json:"servers,omitempty"`
}

type SvmFcp ¶

type SvmFcp struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Enable Fiber Channel Protocol (FCP)? Setting to true creates a service if not already created.
	Enabled bool `json:"enabled,omitempty"`
}

type SvmGetOpts ¶

type SvmGetOpts struct {
	Fields optional.Interface
}

type SvmIpspace ¶

type SvmIpspace struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// IPspace name
	Name string `json:"name,omitempty"`
	// IPspace UUID
	Uuid string `json:"uuid,omitempty"`
}

Either the UUID or name may be supplied on input.

type SvmIscsi ¶

type SvmIscsi struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Enable iSCSI? Setting to true creates a service if not already created.
	Enabled bool `json:"enabled,omitempty"`
}

type SvmLdap ¶

type SvmLdap struct {
	// This parameter specifies the name of the Active Directory domain used to discover LDAP servers for use by this client. This is mutually exclusive with `servers` during POST.
	AdDomain string `json:"ad_domain,omitempty"`
	// Specifies the default base DN for all searches.
	BaseDn string `json:"base_dn,omitempty"`
	// Specifies the user that binds to the LDAP servers. SVM API supports anonymous binding. For Simple and SASL LDAP binding, use the LDAP API endpoint.
	BindDn string `json:"bind_dn,omitempty"`
	// Enable LDAP? Setting to true creates a configuration if not already created.
	Enabled bool     `json:"enabled,omitempty"`
	Servers []string `json:"servers,omitempty"`
}

type SvmLdapReference ¶

type SvmLdapReference struct {
	// This parameter specifies the name of the Active Directory domain used to discover LDAP servers for use by this client. This is mutually exclusive with `servers` during POST.
	AdDomain string `json:"ad_domain,omitempty"`
	// Specifies the default base DN for all searches.
	BaseDn string `json:"base_dn,omitempty"`
	// Specifies the user that binds to the LDAP servers. SVM API supports anonymous binding. For Simple and SASL LDAP binding, use the LDAP API endpoint.
	BindDn string `json:"bind_dn,omitempty"`
	// Enable LDAP? Setting to true creates a configuration if not already created.
	Enabled bool     `json:"enabled,omitempty"`
	Servers []string `json:"servers,omitempty"`
}

type SvmNfs ¶

type SvmNfs struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Enable NFS? Setting to true creates a service if not already created.
	Enabled bool `json:"enabled,omitempty"`
}

type SvmNis ¶

type SvmNis struct {
	Links  *InlineResponse201Links `json:"_links,omitempty"`
	Domain *NisDomain              `json:"domain,omitempty"`
	// Enable NIS? Setting to true creates a configuration if not already created.
	Enabled bool        `json:"enabled,omitempty"`
	Servers *NisServers `json:"servers,omitempty"`
}

type SvmNsswitch ¶

type SvmNsswitch struct {
	// Group sources
	Group []NsswitchSource `json:"group,omitempty"`
	// Host sources
	Hosts []NsswitchSource `json:"hosts,omitempty"`
	// NameMap sources
	Namemap []NsswitchSource `json:"namemap,omitempty"`
	// NetGroup sources
	Netgroup []NsswitchSource `json:"netgroup,omitempty"`
	// Password sources
	Passwd []NsswitchSource `json:"passwd,omitempty"`
}

Name Service Switch Configuration

type SvmNvme ¶

type SvmNvme struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Enable NVMe? Setting to true creates a service if not already created.
	Enabled bool `json:"enabled,omitempty"`
}

type SvmPatchModifyOpts ¶

type SvmPatchModifyOpts struct {
	Info          optional.Interface
	ReturnTimeout optional.Int32
}

type SvmPeer ¶

type SvmPeer struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// A list of applications for an SVM peer relation.
	Applications []SvmPeerApplications `json:"applications,omitempty"`
	// A peer SVM alias name to avoid a name conflict on the local cluster.
	Name string       `json:"name,omitempty"`
	Peer *SvmPeerPeer `json:"peer,omitempty"`
	// SVM peering state. To accept a pending SVM peer request, PATCH the state to \"peered\". To reject a pending SVM peer request, PATCH the state to \"rejected\". To suspend a peered SVM peer relation, PATCH the state to \"suspended\". To resume a suspended SVM peer relation, PATCH the state to \"peered\". The states \"initiated\", \"pending\", and \"initializing\" are system-generated and cannot be used for PATCH.
	State string      `json:"state,omitempty"`
	Svm   *SvmPeerSvm `json:"svm,omitempty"`
	// SVM peer relation UUID
	Uuid string `json:"uuid,omitempty"`
}

An SVM peer relation object.

type SvmPeerApplications ¶

type SvmPeerApplications string

SvmPeerApplications : Applications for an SVM peer relation.

const (
	SNAPMIRROR_SvmPeerApplications SvmPeerApplications = "snapmirror"
	FILE_COPY_SvmPeerApplications  SvmPeerApplications = "file_copy"
	LUN_COPY_SvmPeerApplications   SvmPeerApplications = "lun_copy"
	FLEXCACHE_SvmPeerApplications  SvmPeerApplications = "flexcache"
)

List of svm_peer_applications

type SvmPeerCollectionGetOpts ¶

type SvmPeerCollectionGetOpts struct {
	Uuid            optional.String
	PeerClusterUuid optional.String
	PeerClusterName optional.String
	PeerSvmUuid     optional.String
	PeerSvmName     optional.String
	State           optional.String
	Applications    optional.String
	Name            optional.String
	SvmUuid         optional.String
	SvmName         optional.String
	Fields          optional.Interface
	MaxRecords      optional.Int32
	ReturnRecords   optional.Bool
	ReturnTimeout   optional.Int32
	OrderBy         optional.Interface
}

type SvmPeerCreateOpts ¶

type SvmPeerCreateOpts struct {
	Info optional.Interface
}

type SvmPeerInstanceGetOpts ¶

type SvmPeerInstanceGetOpts struct {
	Fields        optional.Interface
	ReturnTimeout optional.Int32
}

type SvmPeerModifyOpts ¶

type SvmPeerModifyOpts struct {
	Info optional.Interface
}

type SvmPeerPeer ¶

type SvmPeerPeer struct {
	Cluster *PeerReferenceCluster `json:"cluster,omitempty"`
	Svm     *AuditSvm             `json:"svm,omitempty"`
}

Details for a peer SVM object.

type SvmPeerPermission ¶

type SvmPeerPermission struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// A list of applications for an SVM peer relation.
	Applications []SvmPeerPermissionApplications `json:"applications,omitempty"`
	ClusterPeer  *SvmPeerPermissionClusterPeer   `json:"cluster_peer,omitempty"`
	Svm          *SvmPeerPermissionSvm           `json:"svm,omitempty"`
}

Manage SVM peer permissions.

type SvmPeerPermissionApplications ¶

type SvmPeerPermissionApplications string

SvmPeerPermissionApplications : Applications for an SVM peer permission.

const (
	SNAPMIRROR_SvmPeerPermissionApplications SvmPeerPermissionApplications = "snapmirror"
	FLEXCACHE_SvmPeerPermissionApplications  SvmPeerPermissionApplications = "flexcache"
)

List of svm_peer_permission_applications

type SvmPeerPermissionClusterPeer ¶

type SvmPeerPermissionClusterPeer struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

Peer cluster details

type SvmPeerPermissionCollectionGetOpts ¶

type SvmPeerPermissionCollectionGetOpts struct {
	SvmUuid         optional.String
	SvmName         optional.String
	Applications    optional.String
	ClusterPeerUuid optional.String
	ClusterPeerName optional.String
	Fields          optional.Interface
	MaxRecords      optional.Int32
	ReturnRecords   optional.Bool
	ReturnTimeout   optional.Int32
	OrderBy         optional.Interface
}

type SvmPeerPermissionInstanceGetOpts ¶

type SvmPeerPermissionInstanceGetOpts struct {
	Fields        optional.Interface
	ReturnTimeout optional.Int32
}

type SvmPeerPermissionModifyOpts ¶

type SvmPeerPermissionModifyOpts struct {
	Info optional.Interface
}

type SvmPeerPermissionPostOpts ¶

type SvmPeerPermissionPostOpts struct {
	Info optional.Interface
}

type SvmPeerPermissionResponse ¶

type SvmPeerPermissionResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32               `json:"num_records,omitempty"`
	Records    []SvmPeerPermission `json:"records,omitempty"`
}

type SvmPeerPermissionSvm ¶

type SvmPeerPermissionSvm struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the SVM.
	Name string `json:"name,omitempty"`
	// The unique identifier of the SVM.
	Uuid string `json:"uuid,omitempty"`
}

Local SVM permitted for peer relation. To create peer permissions for all SVMs, specify the SVM name as \"*\".

type SvmPeerResponse ¶

type SvmPeerResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32     `json:"num_records,omitempty"`
	Records    []SvmPeer `json:"records,omitempty"`
}

type SvmPeerSvm ¶

type SvmPeerSvm struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the SVM.
	Name string `json:"name,omitempty"`
	// The unique identifier of the SVM.
	Uuid string `json:"uuid,omitempty"`
}

Local SVM details

type SvmReference ¶

type SvmReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the SVM.
	Name string `json:"name,omitempty"`
	// The unique identifier of the SVM.
	Uuid string `json:"uuid,omitempty"`
}

SVM, applies only to SVM-scoped objects.

type SvmResponse ¶

type SvmResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32 `json:"num_records,omitempty"`
	Records    []Svm `json:"records,omitempty"`
}

type SvmSnapshotPolicy ¶

type SvmSnapshotPolicy struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	Name  string                  `json:"name,omitempty"`
	Uuid  string                  `json:"uuid,omitempty"`
}

This is a reference to the Snapshot copy policy.

type VdiOnNas ¶

type VdiOnNas struct {
	Desktops     *VdiOnNasDesktops     `json:"desktops,omitempty"`
	HyperVAccess *VdiOnNasHyperVAccess `json:"hyper_v_access,omitempty"`
	// The list of NFS access controls. Optional in the POST body
	NfsAccess      []AppNfsAccess              `json:"nfs_access,omitempty"`
	ProtectionType *MongoDbOnSanProtectionType `json:"protection_type,omitempty"`
}

A VDI application using NAS.

type VdiOnNasDesktops ¶

type VdiOnNasDesktops struct {
	// The number of desktops to support. Optional in the POST or PATCH body
	Count int32 `json:"count,omitempty"`
	// The size of the desktops. Usage: {&lt;integer&gt;[KB|MB|GB|TB|PB]} Required in the POST body
	Size           int32                           `json:"size,omitempty"`
	StorageService *VdiOnNasDesktopsStorageService `json:"storage_service,omitempty"`
}

type VdiOnNasDesktopsStorageService ¶

type VdiOnNasDesktopsStorageService struct {
	// The storage service of the desktops. Optional in the POST or PATCH body
	Name string `json:"name,omitempty"`
}

type VdiOnNasHyperVAccess ¶

type VdiOnNasHyperVAccess struct {
	// Hyper-V service account. Optional in the POST body
	ServiceAccount string `json:"service_account,omitempty"`
}

type VdiOnSan ¶

type VdiOnSan struct {
	Desktops *VdiOnNasDesktops `json:"desktops,omitempty"`
	// The name of the hypervisor hosting the application. Required in the POST body
	Hypervisor string `json:"hypervisor,omitempty"`
	// The name of the initiator group through which the contents of this application will be accessed. Modification of this parameter is a disruptive operation. All LUNs in the application component will be unmapped from the current igroup and re-mapped to the new igroup. Required in the POST body and optional in the PATCH body
	IgroupName string `json:"igroup_name,omitempty"`
	// The list of initiator groups to create. Optional in the POST or PATCH body
	NewIgroups     []VdiOnSanNewIgroups        `json:"new_igroups,omitempty"`
	ProtectionType *MongoDbOnSanProtectionType `json:"protection_type,omitempty"`
}

A VDI application using SAN.

type VdiOnSanNewIgroups ¶

type VdiOnSanNewIgroups struct {
	// The name of the new initiator group. Required in the POST body and optional in the PATCH body
	Name       string   `json:"name,omitempty"`
	Initiators []string `json:"initiators,omitempty"`
	// The protocol of the new initiator group. Optional in the POST or PATCH body
	Protocol string `json:"protocol,omitempty"`
}

The list of initiator groups to create.

type Version ¶

type Version struct {
	// The full cluster version string.
	Full string `json:"full,omitempty"`
	// The generation portion of the version.
	Generation int32 `json:"generation,omitempty"`
	// The major portion of the version.
	Major int32 `json:"major,omitempty"`
	// The minor portion of the version.
	Minor int32 `json:"minor,omitempty"`
}

This returns the cluster version information. When the cluster has more than one node, the cluster version is equivalent to the lowest of generation, major, and minor versions on all nodes.

type Volume ¶

type Volume struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Aggregate hosting the volume. Required on POST.
	Aggregates  []DiskAggregates   `json:"aggregates,omitempty"`
	Application *VolumeApplication `json:"application,omitempty"`
	Autosize    *VolumeAutosize    `json:"autosize,omitempty"`
	Clone       *VolumeClone       `json:"clone,omitempty"`
	// A comment for the volume. Valid in POST or PATCH.
	Comment string `json:"comment,omitempty"`
	// Specifies the number of times to iterate over the aggregates listed with the \"aggregates.name\" or \"aggregates.uuid\" when creating or expanding a FlexGroup. If a volume is being created on a single aggregate, the system will create a flexible volume if the \"constituents_per_aggregate\" field is not specified, and a FlexGroup if it is specified.  If a volume is being created on multiple aggregates, the system will always create a FlexGroup.
	ConstituentsPerAggregate int32 `json:"constituents_per_aggregate,omitempty"`
	// Creation time of the volume. This field is generated when the volume is created.
	CreateTime time.Time         `json:"create_time,omitempty"`
	Efficiency *VolumeEfficiency `json:"efficiency,omitempty"`
	Encryption *VolumeEncryption `json:"encryption,omitempty"`
	ErrorState *VolumeErrorState `json:"error_state,omitempty"`
	Files      *VolumeFiles      `json:"files,omitempty"`
	// FlexCache endpoint type. <br>none &dash; The volume is neither a FlexCache nor origin of any FlexCache. <br>cache &dash; The volume is a FlexCache volume. <br>origin &dash; The volume is origin of a FlexCache volume.
	FlexcacheEndpointType string           `json:"flexcache_endpoint_type,omitempty"`
	Guarantee             *VolumeGuarantee `json:"guarantee,omitempty"`
	// Language encoding setting for volume. If no language is specified, the volume inherits its SVM language encoding setting.
	Language string          `json:"language,omitempty"`
	Metric   *ClusterMetric  `json:"metric,omitempty"`
	Movement *VolumeMovement `json:"movement,omitempty"`
	// Volume name. The name of volume must start with an alphabetic character (a to z or A to Z) or an underscore (_). The name must be 197 or fewer characters in length for FlexGroups, and 203 or fewer characters in length for all other types of volumes. Volume names must be unique within an SVM. Required on POST.
	Name  string       `json:"name,omitempty"`
	Nas   *VolumeNas   `json:"nas,omitempty"`
	Qos   *VolumeQos   `json:"qos,omitempty"`
	Quota *VolumeQuota `json:"quota,omitempty"`
	// Physical size of the volume. The minimum size for a FlexVol volume is 20MB and the minimum size for a FlexGroup volume is 200MB per constituent. The recommended size for a FlexGroup volume is a minimum of 100GB per constituent. For all volumes, the default size is equal to the minimum size.
	Size           int32              `json:"size,omitempty"`
	Snaplock       *VolumeSnaplock    `json:"snaplock,omitempty"`
	SnapshotPolicy *SvmSnapshotPolicy `json:"snapshot_policy,omitempty"`
	Space          *VolumeSpace       `json:"space,omitempty"`
	// Volume state. A volume can only be brought online if it is offline. The 'mixed' state applies to FlexGroup volumes only and cannot be specified as a target state. An 'error' state implies that the volume is not in a state to serve data.
	State      string             `json:"state,omitempty"`
	Statistics *ClusterStatistics `json:"statistics,omitempty"`
	// The style of the volume. If \"style\" is not specified, the volume type is determined based on the specified aggregates. Specifying a single aggregate, without \"constituents_per_aggregate\" creates a flexible volume. Specifying multiple aggregates, or a single aggregate with \"constituents_per_aggregate\" creates a FlexGroup. If \"style\" is specified, a volume of that type is created. That is, if style is \"flexvol\", a single aggregate must be specified. If style is \"flexgroup\", the system either uses the specified aggregates, or automatically provisions if no aggregates are specified.<br>flexvol &dash; flexible volumes and FlexClone volumes<br>flexgroup &dash; FlexGroups.
	Style   string         `json:"style,omitempty"`
	Svm     *VolumeSvm     `json:"svm,omitempty"`
	Tiering *VolumeTiering `json:"tiering,omitempty"`
	// Type of the volume.<br>rw &dash; read-write volume.<br>dp &dash; data-protection volume.<br>ls &dash; load-sharing `dp` volume. Valid in GET.
	Type_ string `json:"type,omitempty"`
	// Specifies whether mirrored aggregates are selected when provisioning a FlexGroup without specifying \"aggregates.name\" or \"aggregates.uuid\". Only mirrored aggregates are used if this parameter is set to 'true' and only unmirrored aggregates are used if this parameter is set to 'false'. Aggregate level mirroring for a FlexGroup can be changed by moving all of the constituents to the required aggregates. The default value is 'true' for a MetroCluster configuration and is 'false' for a non-MetroCluster configuration.
	UseMirroredAggregates bool `json:"use_mirrored_aggregates,omitempty"`
	// Unique identifier for the volume. This corresponds to the instance-uuid that is exposed in the CLI and ONTAPI. It does not change due to a volume move.
	Uuid string `json:"uuid,omitempty"`
}

type VolumeApplication ¶

type VolumeApplication struct {
	// Name of the application to which the volume belongs. Available only when the volume is part of an application.
	Name string `json:"name,omitempty"`
	// UUID of the application to which the volume belongs. Available only when the volume is part of an application.
	Uuid string `json:"uuid,omitempty"`
}

type VolumeAutosize ¶

type VolumeAutosize struct {
	// Used space threshold size, in percentage, for the automatic growth of the volume. When the amount of used space in the volume becomes greater than this threhold, the volume automatically grows unless it has reached the maximum size. The volume grows when 'space.used' is greater than this percent of 'space.size'. The 'grow_threshold' size cannot be less than or equal to the 'shrink_threshold' size..
	GrowThreshold int32 `json:"grow_threshold,omitempty"`
	// Maximum size in bytes up to which a volume grows automatically. This size cannot be less than the current volume size, or less than or equal to the minimum size of volume.
	Maximum int32 `json:"maximum,omitempty"`
	// Minimum size in bytes up to which the volume shrinks automatically. This size cannot be greater than or equal to the maximum size of volume.
	Minimum int32 `json:"minimum,omitempty"`
	// Autosize mode for the volume.<br>grow &dash; Volume automatically grows when the amount of used space is above the 'grow_threshold' value.<br>grow_shrink &dash; Volume grows or shrinks in response to the amount of space used.<br>off &dash; Autosizing of the volume is disabled.
	Mode string `json:"mode,omitempty"`
	// Used space threshold size, in percentage, for the automatic shrinkage of the volume.  When the amount of used space in the volume drops below this threshold, the volume automatically shrinks unless it has reached the minimum size. The volume shrinks when the 'space.used' is less than the 'shrink_threshold' percent of 'space.size'. The 'shrink_threshold' size cannot be greater than or equal to the 'grow_threshold' size.
	ShrinkThreshold int32 `json:"shrink_threshold,omitempty"`
}

type VolumeClone ¶

type VolumeClone struct {
	// Specifies if this volume is a normal FlexVol or FlexClone. This field needs to be set when creating a FlexClone. Valid in POST.
	IsFlexclone    bool               `json:"is_flexclone,omitempty"`
	ParentSnapshot *SnapshotReference `json:"parent_snapshot,omitempty"`
	ParentSvm      *AuditSvm          `json:"parent_svm,omitempty"`
	ParentVolume   *CifsShareVolume   `json:"parent_volume,omitempty"`
	// Percentage of FlexClone blocks split from its parent volume.
	SplitCompletePercent int32 `json:"split_complete_percent,omitempty"`
	// Space required by the containing-aggregate to split the FlexClone volume.
	SplitEstimate int32 `json:"split_estimate,omitempty"`
	// This field is set when split is executed on any FlexClone, that is when the FlexClone volume is split from its parent FlexVol. This field needs to be set for splitting a FlexClone form FlexVol. Valid in PATCH.
	SplitInitiated bool `json:"split_initiated,omitempty"`
}

type VolumeCollectionGetOpts ¶

type VolumeCollectionGetOpts struct {
	NasUnixPermissions                optional.Int32
	NasSecurityStyle                  optional.String
	NasGid                            optional.Int32
	NasExportPolicyName               optional.String
	NasExportPolicyId                 optional.Int32
	NasPath                           optional.String
	NasUid                            optional.Int32
	CloneIsFlexclone                  optional.Bool
	CloneParentVolumeName             optional.String
	CloneParentVolumeUuid             optional.String
	CloneParentSvmUuid                optional.String
	CloneParentSvmName                optional.String
	CloneSplitEstimate                optional.Int32
	CloneSplitCompletePercent         optional.Int32
	CloneSplitInitiated               optional.Bool
	CloneParentSnapshotUuid           optional.String
	CloneParentSnapshotName           optional.String
	ErrorStateIsInconsistent          optional.Bool
	ErrorStateHasBadBlocks            optional.Bool
	FlexcacheEndpointType             optional.String
	StatisticsLatencyRawTotal         optional.Int32
	StatisticsLatencyRawOther         optional.Int32
	StatisticsLatencyRawWrite         optional.Int32
	StatisticsLatencyRawRead          optional.Int32
	StatisticsStatus                  optional.String
	StatisticsTimestamp               optional.String
	StatisticsIopsRawTotal            optional.Int32
	StatisticsIopsRawOther            optional.Int32
	StatisticsIopsRawWrite            optional.Int32
	StatisticsIopsRawRead             optional.Int32
	StatisticsThroughputRawTotal      optional.Int32
	StatisticsThroughputRawOther      optional.Int32
	StatisticsThroughputRawWrite      optional.Int32
	StatisticsThroughputRawRead       optional.Int32
	QosPolicyUuid                     optional.String
	QosPolicyMinThroughputIops        optional.Int32
	QosPolicyMaxThroughputMbps        optional.Int32
	QosPolicyName                     optional.String
	QosPolicyMaxThroughputIops        optional.Int32
	SpaceSize                         optional.Int32
	SpaceOverProvisioned              optional.Int32
	SpaceAvailable                    optional.Int32
	SpaceMetadata                     optional.Int32
	SpaceLogicalSpaceUsedByAfs        optional.Int32
	SpaceLogicalSpaceReporting        optional.Bool
	SpaceLogicalSpaceEnforcement      optional.Bool
	SpaceLogicalSpaceAvailable        optional.Int32
	SpaceBlockStorageInactiveUserData optional.Int32
	SpaceCapacityTierFootprint        optional.Int32
	SpaceUsed                         optional.Int32
	SpaceFootprint                    optional.Int32
	SpaceSnapshotReservePercent       optional.Int32
	SpaceSnapshotUsed                 optional.Int32
	Name                              optional.String
	MovementPercentComplete           optional.String
	MovementState                     optional.String
	MovementDestinationAggregateUuid  optional.String
	MovementDestinationAggregateName  optional.String
	MovementCutoverWindow             optional.Int32
	SnapshotPolicyName                optional.String
	SnapshotPolicyUuid                optional.String
	Size                              optional.Int32
	SnaplockType                      optional.String
	SnaplockComplianceClockTime       optional.String
	SnaplockPrivilegedDelete          optional.String
	SnaplockAutocommitPeriod          optional.String
	SnaplockIsAuditLog                optional.Bool
	SnaplockAppendModeEnabled         optional.Bool
	SnaplockExpiryTime                optional.String
	SnaplockRetentionMaximum          optional.String
	SnaplockRetentionMinimum          optional.String
	SnaplockRetentionDefault          optional.String
	SnaplockLitigationCount           optional.Int32
	CreateTime                        optional.String
	EfficiencyDedupe                  optional.String
	EfficiencyCrossVolumeDedupe       optional.String
	EfficiencyCompression             optional.String
	EfficiencyCompaction              optional.String
	AutosizeShrinkThreshold           optional.Int32
	AutosizeMode                      optional.String
	AutosizeGrowThreshold             optional.Int32
	AutosizeMaximum                   optional.Int32
	AutosizeMinimum                   optional.Int32
	Comment                           optional.String
	GuaranteeType                     optional.String
	GuaranteeHonored                  optional.Bool
	Uuid                              optional.String
	MetricTimestamp                   optional.String
	MetricIopsTotal                   optional.Int32
	MetricIopsOther                   optional.Int32
	MetricIopsWrite                   optional.Int32
	MetricIopsRead                    optional.Int32
	MetricDuration                    optional.String
	MetricThroughputTotal             optional.Int32
	MetricThroughputOther             optional.Int32
	MetricThroughputWrite             optional.Int32
	MetricThroughputRead              optional.Int32
	MetricLatencyTotal                optional.Int32
	MetricLatencyOther                optional.Int32
	MetricLatencyWrite                optional.Int32
	MetricLatencyRead                 optional.Int32
	MetricStatus                      optional.String
	SvmUuid                           optional.String
	SvmName                           optional.String
	QuotaState                        optional.String
	TieringPolicy                     optional.String
	Style                             optional.String
	Type_                             optional.String
	EncryptionState                   optional.String
	EncryptionKeyId                   optional.String
	EncryptionRekey                   optional.Bool
	EncryptionStatusCode              optional.String
	EncryptionStatusMessage           optional.String
	EncryptionEnabled                 optional.Bool
	EncryptionType                    optional.String
	FilesUsed                         optional.Int32
	FilesMaximum                      optional.Int32
	AggregatesUuid                    optional.String
	AggregatesName                    optional.String
	Language                          optional.String
	ApplicationName                   optional.String
	ApplicationUuid                   optional.String
	State                             optional.String
	Fields                            optional.Interface
	MaxRecords                        optional.Int32
	ReturnRecords                     optional.Bool
	ReturnTimeout                     optional.Int32
	OrderBy                           optional.Interface
}

type VolumeCollectionPerformanceMetricsGetOpts ¶

type VolumeCollectionPerformanceMetricsGetOpts struct {
	Timestamp       optional.String
	IopsTotal       optional.Int32
	IopsOther       optional.Int32
	IopsWrite       optional.Int32
	IopsRead        optional.Int32
	Duration        optional.String
	ThroughputTotal optional.Int32
	ThroughputOther optional.Int32
	ThroughputWrite optional.Int32
	ThroughputRead  optional.Int32
	LatencyTotal    optional.Int32
	LatencyOther    optional.Int32
	LatencyWrite    optional.Int32
	LatencyRead     optional.Int32
	Status          optional.String
	ReturnTimeout   optional.Int32
	Fields          optional.Interface
	MaxRecords      optional.Int32
	OrderBy         optional.Interface
	ReturnRecords   optional.Bool
	Interval        optional.String
}

type VolumeEfficiency ¶

type VolumeEfficiency struct {
	// The system can be enabled/disabled compaction.<br>inline &dash; Data will be compacted first and written to the volume.<br>none &dash; None<br>mixed &dash; Read only field for FlexGroups, where some of the constituent volumes are compaction enabled and some are disabled.
	Compaction string `json:"compaction,omitempty"`
	// The system can be enabled/disabled compression.<br>inline &dash; Data will be compressed first and written to the volume.<br>background &dash; Data will be written to the volume and compressed later.<br>both &dash; Inline compression compresses the data and write to the volume, background compression compresses only the blocks on which inline compression is not run.<br>none &dash; None<br>mixed &dash; Read only field for FlexGroups, where some of the constituent volumes are compression enabled and some are disabled.
	Compression string `json:"compression,omitempty"`
	// The system can be enabled/disabled cross volume dedupe. it can be enabled only when dedupe is enabled.<br>inline &dash; Data will be cross volume deduped first and written to the volume.<br>background &dash; Data will be written to the volume and cross volume deduped later.<br>both &dash; Inline cross volume dedupe dedupes the data and write to the volume, background cross volume dedupe dedupes only the blocks on which inline dedupe is not run.<br>none &dash; None<br>mixed &dash; Read only field for FlexGroups, where some of the constituent volumes are cross volume dedupe enabled and some are disabled.
	CrossVolumeDedupe string `json:"cross_volume_dedupe,omitempty"`
	// The system can be enabled/disabled dedupe.<br>inline &dash; Data will be deduped first and written to the volume.<br>background &dash; Data will be written to the volume and deduped later.<br>both &dash; Inline dedupe dedupes the data and write to the volume, background dedupe dedupes only the blocks on which inline dedupe is not run.<br>none &dash; None<br>mixed &dash; Read only field for FlexGroups, where some of the constituent volumes are dedupe enabled and some are disabled.
	Dedupe string `json:"dedupe,omitempty"`
}

type VolumeEncryption ¶

type VolumeEncryption struct {
	// Encrypts an unencrypted volume. When set to 'true', a new key is generated and used to encrypt the given volume. The underlying SVM must be configured with the key manager.
	Enabled bool `json:"enabled,omitempty"`
	// The key ID used for creating encrypted volume. A new key-id is generated for creating an encrypted volume. This key-id is associated with the generated key.
	KeyId string `json:"key_id,omitempty"`
	// If set to 'true', re-encrypts the volume with a new key. Valid in PATCH.
	Rekey bool `json:"rekey,omitempty"`
	// Volume encryption state.<br>encrypted &dash; The volume is completely encrypted.<br>encrypting &dash; Encryption operation is in progress.<br>partial &dash; Some constituents are encrypted and some are not. Applicable only for FlexGroup volume.<br>rekeying. Encryption of volume with a new key is in progress.<br>unencrypted &dash; The volume is a plain-text one.
	State  string                  `json:"state,omitempty"`
	Status *VolumeEncryptionStatus `json:"status,omitempty"`
	// Volume encryption type.<br>none &dash; The volume is a plain-text one.<br>volume &dash; The volume is encrypted with volume key (NVE volume).<br>aggregate &dash; The volume is encrypted with aggregate key (NAE volume).
	Type_ string `json:"type,omitempty"`
}

type VolumeEncryptionStatus ¶

type VolumeEncryptionStatus struct {
	// Encryption progress message code.
	Code string `json:"code,omitempty"`
	// Encryption progress message.
	Message string `json:"message,omitempty"`
}

type VolumeErrorState ¶

type VolumeErrorState struct {
	// Indicates whether the volume has any corrupt data blocks. If the damaged data block is accessed, an IO error, such as EIO for NFS or STATUS_FILE_CORRUPT for CIFS, is returned.
	HasBadBlocks bool `json:"has_bad_blocks,omitempty"`
	// Indicates whether the file system has any inconsistencies.<br>true &dash; File system is inconsistent.<br>false &dash; File system in not inconsistent.
	IsInconsistent bool `json:"is_inconsistent,omitempty"`
}

type VolumeFiles ¶

type VolumeFiles struct {
	// The maximum number of files (inodes) for user-visible data allowed on the volume. This value can be increased or decreased. Increasing the maximum number of files does not immediately cause additional disk space to be used to track files. Instead, as more files are created on the volume, the system dynamically increases the number of disk blocks that are used to track files. The space assigned to track files is never freed, and this value cannot be decreased below the current number of files that can be tracked within the assigned space for the volume. Valid in PATCH.
	Maximum int32 `json:"maximum,omitempty"`
	// Number of files (inodes) used for user-visible data permitted on the volume. This field is valid only when the volume is online.
	Used int32 `json:"used,omitempty"`
}

type VolumeGetOpts ¶

type VolumeGetOpts struct {
	Fields optional.Interface
}

type VolumeGuarantee ¶

type VolumeGuarantee struct {
	// Is the space guarantee of this volume honored in the aggregate?
	Honored bool `json:"honored,omitempty"`
	// The type of space guarantee of this volume in the aggregate.
	Type_ string `json:"type,omitempty"`
}

type VolumeMetricsResponse ¶

type VolumeMetricsResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32           `json:"num_records,omitempty"`
	Records    []ClusterMetric `json:"records,omitempty"`
}

type VolumeModifyOpts ¶

type VolumeModifyOpts struct {
	RestoreToSnapshotUuid            optional.String
	RestoreToSnapshotName            optional.String
	SizingMethod                     optional.String
	MovementDestinationAggregateName optional.String
	MovementDestinationAggregateUuid optional.String
	ValidateOnly                     optional.Bool
	Info                             optional.Interface
}

type VolumeMovement ¶

type VolumeMovement struct {
	// Time window in seconds for cutover. The allowed range is between 30 to 300 seconds.
	CutoverWindow        int32           `json:"cutover_window,omitempty"`
	DestinationAggregate *DiskAggregates `json:"destination_aggregate,omitempty"`
	// Completion percentage
	PercentComplete string `json:"percent_complete,omitempty"`
	// State of volume move operation. PATCH the state to \"aborted\" to abort the move operation. PATCH the state to \"cutover\" to trigger cutover. PATCH the state to \"paused\" to pause the volume move operation in progress. PATCH the state to \"replicating\" to resume the paused volume move operation. PATCH the state to \"cutover-wait\" to go into cutover manually. Change of state is only supported if volume movement is in progress.
	State string `json:"state,omitempty"`
	// Tiering policy for FabricPool
	TieringPolicy string `json:"tiering_policy,omitempty"`
}

Volume movement. All attributes are modify, that is, not writable through POST. Set PATCH state to destination_aggregate to initiate a volume move operation. Volume movement on FlexGroup constituents are not supported.

type VolumeNas ¶

type VolumeNas struct {
	ExportPolicy *QtreeExportPolicy `json:"export_policy,omitempty"`
	// The UNIX group ID of the volume. Valid in POST or PATCH.
	Gid int32 `json:"gid,omitempty"`
	// The fully-qualified path in the owning SVM's namespace at which the volume is mounted. The path is case insensitive and must be unique within a SVM's namespace. Path must begin with '/' and must not end with '/'. Only one volume can be mounted at any given junction path. An empty path in POST creates an unmounted volume. An empty path in PATCH deactivates and unmounts the volume. This attribute is reported in GET only when the volume is mounted.
	Path string `json:"path,omitempty"`
	// Security style associated with the volume. Valid in POST or PATCH.<br>mixed &dash; Mixed-style security<br>ntfs &dash; NTFS/WIndows-style security<br>unified &dash; Unified-style security, unified UNIX, NFS and CIFS permissions<br>unix &dash; Unix-style security.
	SecurityStyle string `json:"security_style,omitempty"`
	// The UNIX user ID of the volume. Valid in POST or PATCH.
	Uid int32 `json:"uid,omitempty"`
	// UNIX permissions to be viewed as an octal number. It consists of 4 digits derived by adding up bits 4 (read), 2 (write) and 1 (execute). First digit selects the set user ID(4), set group ID (2) and sticky (1) attributes. The second digit selects permission for the owner of the file; the third selects permissions for other users in the same group; the fourth for other users not in the group. Valid in POST or PATCH. For security style \"mixed\" or \"unix\", the default setting is 0755 in octal (493 in decimal) and for security style \"ntfs\", the default setting is 0000. In cases where only owner, group and other permissions are given (as in 755, representing the second, third and fourth dight), first digit is assumed to be zero.
	UnixPermissions int32 `json:"unix_permissions,omitempty"`
}

type VolumeQos ¶

type VolumeQos struct {
	Policy *VolumeQosPolicy `json:"policy,omitempty"`
}

QoS information

type VolumeQosPolicy ¶

type VolumeQosPolicy struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Specifies the maximum throughput in IOPS, 0 means none. This is mutually exclusive with name and UUID during POST and PATCH. Default is 15000 on AFF platforms and 10000 on all other platforms.
	MaxThroughputIops int32 `json:"max_throughput_iops,omitempty"`
	// Specifies the maximum throughput in Megabytes per sec, 0 means none. This is mutually exclusive with name, UUID and \"min_throughput_iops\" during POST and PATCH.
	MaxThroughputMbps int32 `json:"max_throughput_mbps,omitempty"`
	// Specifies the minimum throughput in IOPS, 0 means none. Setting \"min_throughput\" is supported on AFF platforms only, unless FabricPool tiering policies are set. This is mutually exclusive with name, UUID and\" max_throughput_mbps\" during POST and PATCH.
	MinThroughputIops int32 `json:"min_throughput_iops,omitempty"`
	// The QoS policy group name. This is mutually exclusive with UUID and other QoS attributes during POST and PATCH.
	Name string `json:"name,omitempty"`
	// The QoS policy group UUID. This is mutually exclusive with name and other QoS attributes during POST and PATCH.
	Uuid string `json:"uuid,omitempty"`
}

When \"min_throughput_iops\", \"max_throughput_iops\" or \"max_throughput_mbps\" attributes are specified, the storage object is assigned to an auto-generated QoS policy group. If the attributes are later modified, the auto-generated QoS policy-group attributes are modified. Attributes can be removed by specifying \"0\" and policy group by specifying \"none\". Upon deletion of the storage object or if the attributes are removed, then the QoS policy-group is also removed.

type VolumeQuota ¶

type VolumeQuota struct {
	// This option is used to enable or disable the quota for the volume. This option is valid only in PATCH. Quotas are enabled for FlexVols or FlexGroup volumes when the quota state is \"on\". Quotas are disabled for FlexVols or FlexGroup volumes when the quota state is \"off\".
	Enabled bool `json:"enabled,omitempty"`
	// Quota state of the volume
	State string `json:"state,omitempty"`
}

Quotas track the space or file usage of a user, group, or qtree in a FlexVol or a FlexGroup volume.

type VolumeReference ¶

type VolumeReference struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the volume.
	Name string `json:"name,omitempty"`
	// Unique identifier for the volume. This corresponds to the instance-uuid that is exposed in the CLI and ONTAPI. It does not change due to a volume move.
	Uuid string `json:"uuid,omitempty"`
}

type VolumeResponse ¶

type VolumeResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32    `json:"num_records,omitempty"`
	Records    []Volume `json:"records,omitempty"`
}

type VolumeSnaplock ¶

type VolumeSnaplock struct {
	// Specifies if the volume append mode is enabled or disabled. When it is enabled, all the files created with write permissions on the volume are, by default, WORM appendable files. The user can append the data to a WORM appendable file but cannot modify the existing contents of the file nor delete the file until it expires.
	AppendModeEnabled bool `json:"append_mode_enabled,omitempty"`
	// Specifies the autocommit period for SnapLock volume. All files which are not modified for a period greater than the autocommit period of the volume are committed to the WORM state. The autocommit period value represents a duration and must be specified in the ISO-8601 duration format. The autocommit period can be in years, months, days, hours, and minutes. A period specified for years, months, and days is represented in the ISO-8601 format as \"P<num>Y\", \"P<num>M\", \"P<num>D\" respectively, for example \"P10Y\" represents a duration of 10 years. A duration in hours and minutes is represented by \"PT<num>H\" and \"PT<num>M\" respectively. The period string must contain only a single time element that is, either years, months, days, hours, or minutes. A duration which combines different periods is not supported, for example \"P1Y10M\" is not supported. Apart from the duration specified in the ISO-8601 format, the autocommit field also accepts the string \"none\".
	AutocommitPeriod string `json:"autocommit_period,omitempty"`
	// This is the volume compliance clock time which is used to manage the SnapLock objects in the volume.
	ComplianceClockTime time.Time `json:"compliance_clock_time,omitempty"`
	// Expiry time of the volume.
	ExpiryTime time.Time `json:"expiry_time,omitempty"`
	// Indicates if this volume has been configured as SnapLock audit log volume for the SVM .
	IsAuditLog bool `json:"is_audit_log,omitempty"`
	// Litigation count indicates the number of active legal-holds on the volume.
	LitigationCount int32 `json:"litigation_count,omitempty"`
	// Specifies the privileged-delete attribute of a SnapLock volume. On a SnapLock Enterprise (SLE) volume, a designated privileged user can selectively delete files irrespective of the retention time of the file. SLE volumes can have privileged delete as disabled, enabled or permanently_disabled and for SnapLock Compliance (SLC) volumes it is always permanently_disabled.
	PrivilegedDelete string                   `json:"privileged_delete,omitempty"`
	Retention        *VolumeSnaplockRetention `json:"retention,omitempty"`
	// The SnapLock type of the volume. <br>compliance &dash; A SnapLock Compliance(SLC) volume provides the highest level of WORM protection and an administrator cannot destroy a SLC volume if it contains unexpired WORM files. <br> enterprise &dash; An administrator can delete a SnapLock Enterprise(SLE) volume.<br> non_snaplock &dash; Indicates the volume is non-snaplock.
	Type_ string `json:"type,omitempty"`
}

type VolumeSnaplockRetention ¶

type VolumeSnaplockRetention struct {
	// Specifies the default retention period that is applied to files while committing them to the WORM state without an associated retention period. The retention value represents a duration and must be specified in the ISO-8601 duration format. The retention period can be in years, months, days, hours, and minutes. A duration specified for years, months, and days is represented in the ISO-8601 format as \"P<num>Y\", \"P<num>M\", \"P<num>D\" respectively, for example \"P10Y\" represents a duration of 10 years. A duration in hours and minutes is represented by \"PT<num>H\" and \"PT<num>M\" respectively. The retention string must contain only a single time element that is, either years, months, days, hours, or minutes. A duration which combines different periods is not supported, for example \"P1Y10M\" is not supported. Apart from the duration specified in the ISO-8601 format, the duration field also accepts the string \"infinite\" to set an infinite retention period.
	Default_ string `json:"default,omitempty"`
	// Specifies the maximum allowed retention period for files committed to the WORM state on the volume. The retention value represents a duration and must be specified in the ISO-8601 duration format. The retention period can be in years, months, days, hours, and minutes. A duration specified for years, months, and days is represented in the ISO-8601 format as \"P<num>Y\", \"P<num>M\", \"P<num>D\" respectively, for example \"P10Y\" represents a duration of 10 years. A duration in hours and minutes is represented by \"PT<num>H\" and \"PT<num>M\" respectively. The retention string must contain only a single time element that is, either years, months, days, hours, or minutes. A duration which combines different periods is not supported, for example \"P1Y10M\" is not supported. Apart from the duration specified in the ISO-8601 format, the duration field also accepts the string \"infinite\" to set an infinite retention period.
	Maximum string `json:"maximum,omitempty"`
	// Specifies the minimum allowed retention period for files committed to the WORM state on the volume. The retention value represents a duration and must be specified in the ISO-8601 duration format. The retention period can be in years, months, days, hours, and minutes. A duration specified for years, month,s and days is represented in the ISO-8601 format as \"P<num>Y\", \"P<num>M\", \"P<num>D\" respectively, for example \"P10Y\" represents a duration of 10 years. A duration in hours and minutes is represented by \"PT<num>H\" and \"PT<num>M\" respectively. The retention string must contain only a single time element that is, either years, months, days, hours, or minutes. A duration which combines different periods is not supported, for example \"P1Y10M\" is not supported. Apart from the duration specified in the ISO-8601 format, the duration field also accepts the string \"infinite\" to set an infinite retention period.
	Minimum string `json:"minimum,omitempty"`
}

type VolumeSpace ¶

type VolumeSpace struct {
	// The available space, in bytes.
	Available int32 `json:"available,omitempty"`
	// The size that is physically used in the block storage of the volume and has a cold temperature. In bytes. This parameter is only supported if the volume is in an aggregate that is either attached to a cloud store or could be attached to a cloud store.
	BlockStorageInactiveUserData int32 `json:"block_storage_inactive_user_data,omitempty"`
	// The space used by capacity tier for this volume in the aggregate, in bytes.
	CapacityTierFootprint int32 `json:"capacity_tier_footprint,omitempty"`
	// Data and metadata used for this volume in the aggregate, in bytes.
	Footprint    int32                    `json:"footprint,omitempty"`
	LogicalSpace *VolumeSpaceLogicalSpace `json:"logical_space,omitempty"`
	// The space used by the total metadata in the volume, in bytes.
	Metadata int32 `json:"metadata,omitempty"`
	// The amount of space not available for this volume in the aggregate, in bytes.
	OverProvisioned int32 `json:"over_provisioned,omitempty"`
	// Total provisioned size. The default size is equal to the minimum size of 20MB, in bytes.
	Size     int32                `json:"size,omitempty"`
	Snapshot *VolumeSpaceSnapshot `json:"snapshot,omitempty"`
	// The virtual space used (includes volume reserves) before storage efficiency, in bytes.
	Used int32 `json:"used,omitempty"`
}

type VolumeSpaceLogicalSpace ¶

type VolumeSpaceLogicalSpace struct {
	// The amount of space available in this volume with storage efficiency space considered used, in bytes.
	Available int32 `json:"available,omitempty"`
	// Specifies whether space accounting for operations on the volume is done along with storage efficiency.
	Enforcement bool `json:"enforcement,omitempty"`
	// Specifies whether space reporting on the volume is done along with storage efficiency.
	Reporting bool `json:"reporting,omitempty"`
	// The virtual space used by AFS alone (includes volume reserves) and along with storage efficiency, in bytes.
	UsedByAfs int32 `json:"used_by_afs,omitempty"`
}

type VolumeSpaceSnapshot ¶

type VolumeSpaceSnapshot struct {
	// Specifies whether Snapshot copy autodelete is currently enabled on this volume.
	AutodeleteEnabled bool `json:"autodelete_enabled,omitempty"`
	// The space that has been set aside as a reserve for Snapshot copy usage, in percent.
	ReservePercent int32 `json:"reserve_percent,omitempty"`
	// The total space used by Snapshot copies in the volume, in bytes.
	Used int32 `json:"used,omitempty"`
}

type VolumeSvm ¶

type VolumeSvm struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The name of the SVM.
	Name string `json:"name,omitempty"`
	// The unique identifier of the SVM.
	Uuid string `json:"uuid,omitempty"`
}

SVM containing the volume. Required on POST.

type VolumeTiering ¶

type VolumeTiering struct {
	// Policy that determines whether the user data blocks of a volume in a FabricPool will be tiered to the cloud store when they become cold. FabricPool combines flash (performance tier) with a cloud store into a single aggregate. Temperature of a volume block increases if it is accessed frequently and decreases when it is not. Valid in POST or PATCH.<br>all &dash; This policy allows tiering of both Snapshot copies and active file system user data to the cloud store as soon as possible by ignoring the temperature on the volume blocks.<br>auto &dash; This policy allows tiering of both snapshot and active file system user data to the cloud store<br>none &dash; Volume blocks will not be tiered to the cloud store.<br>snapshot_only &dash; This policy allows tiering of only the volume Snapshot copies not associated with the active file system. The default tiering policy is \"snapshot-only\" for a FlexVol and \"none\" for a FlexGroup.
	Policy string `json:"policy,omitempty"`
	// This parameter specifies whether or not FabricPools are selected when provisioning a FlexGroup without specifying \"aggregates.name\" or \"aggregates.uuid\". Only FabricPool aggregates are used if this parameter is set to true and only non FabricPool aggregates are used if this parameter is set to false. Tiering support for a FlexGroup can be changed by moving all of the constituents to the required aggregates. Note that in order to tier data, not only does the volume need to support tiering by using FabricPools, the tiering \"policy\" must not be 'none'. A volume that uses FabricPools but has a tiering \"policy\" of 'none' supports tiering, but will not tier any data.
	Supported bool `json:"supported,omitempty"`
}

type Vscan ¶

type Vscan struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Discards the cached information of the files that have been successfully scanned. Once the cache is cleared, files are scanned again when they are accessed. PATCH only
	CacheClear bool `json:"cache_clear,omitempty"`
	// Specifies whether or not Vscan is enabled on the SVM.
	Enabled          bool                      `json:"enabled,omitempty"`
	OnAccessPolicies []VscanOnAccess           `json:"on_access_policies,omitempty"`
	OnDemandPolicies []VscanOnDemand           `json:"on_demand_policies,omitempty"`
	ScannerPools     []VscanScannerPool        `json:"scanner_pools,omitempty"`
	Svm              *FlexcacheRelationshipSvm `json:"svm,omitempty"`
}

Vscan can be used to protect data from being compromised by viruses or other malicious code. This combines best-in-class third-party antivirus software with ONTAP features that give you the flexibility you need to control which files get scanned and when. Storage systems offload scanning operations to external servers hosting antivirus software from thirdparty vendors. An Antivirus Connector on the external server handles communications between the storage system and the antivirus software.

type VscanCollectionGetOpts ¶

type VscanCollectionGetOpts struct {
	OnDemandPoliciesScopeScanWithoutExtension optional.Bool
	OnDemandPoliciesScopeExcludePaths         optional.String
	OnDemandPoliciesScopeExcludeExtensions    optional.String
	OnDemandPoliciesScopeIncludeExtensions    optional.String
	OnDemandPoliciesScopeMaxFileSize          optional.Int32
	OnDemandPoliciesName                      optional.String
	OnDemandPoliciesScanPaths                 optional.String
	OnDemandPoliciesLogPath                   optional.String
	OnDemandPoliciesScheduleUuid              optional.String
	OnDemandPoliciesScheduleName              optional.String
	SvmUuid                                   optional.String
	SvmName                                   optional.String
	ScannerPoolsPrivilegedUsers               optional.String
	ScannerPoolsName                          optional.String
	ScannerPoolsClusterUuid                   optional.String
	ScannerPoolsClusterName                   optional.String
	ScannerPoolsServers                       optional.String
	ScannerPoolsRole                          optional.String
	OnAccessPoliciesScopeScanReadonlyVolumes  optional.Bool
	OnAccessPoliciesScopeIncludeExtensions    optional.String
	OnAccessPoliciesScopeMaxFileSize          optional.Int32
	OnAccessPoliciesScopeExcludeExtensions    optional.String
	OnAccessPoliciesScopeOnlyExecuteAccess    optional.Bool
	OnAccessPoliciesScopeScanWithoutExtension optional.Bool
	OnAccessPoliciesScopeExcludePaths         optional.String
	OnAccessPoliciesEnabled                   optional.Bool
	OnAccessPoliciesName                      optional.String
	OnAccessPoliciesMandatory                 optional.Bool
	Enabled                                   optional.Bool
	Fields                                    optional.Interface
	MaxRecords                                optional.Int32
	ReturnRecords                             optional.Bool
	ReturnTimeout                             optional.Int32
	OrderBy                                   optional.Interface
}

type VscanCreateOpts ¶

type VscanCreateOpts struct {
	Info optional.Interface
}

type VscanGetOpts ¶

type VscanGetOpts struct {
	Fields optional.Interface
}

type VscanModifyOpts ¶

type VscanModifyOpts struct {
	Info optional.Interface
}

type VscanOnAccess ¶

type VscanOnAccess struct {
	// Status of the On-Access Vscan policy
	Enabled bool `json:"enabled,omitempty"`
	// Specifies if scanning is mandatory. File access is denied if there are no external virus-scanning servers available for virus scanning.
	Mandatory bool `json:"mandatory,omitempty"`
	// On-Access policy ame
	Name  string              `json:"name,omitempty"`
	Scope *VscanOnAccessScope `json:"scope,omitempty"`
}

An On-Access policy that defines the scope of an On-Access scan. Use On-Access scanning to check for viruses when clients open, read, rename, or close files over CIFS. By default, ONTAP creates an On-Access policy named \"default_CIFS\" and enables it for all the SVMs in a cluster.

type VscanOnAccessCreateOpts ¶

type VscanOnAccessCreateOpts struct {
	Info optional.Interface
}

type VscanOnAccessGetOpts ¶

type VscanOnAccessGetOpts struct {
	Fields optional.Interface
}

type VscanOnAccessModifyOpts ¶

type VscanOnAccessModifyOpts struct {
	Info optional.Interface
}

type VscanOnAccessPolicyCollectionGetOpts ¶

type VscanOnAccessPolicyCollectionGetOpts struct {
	ScopeScanReadonlyVolumes  optional.Bool
	ScopeIncludeExtensions    optional.String
	ScopeMaxFileSize          optional.Int32
	ScopeExcludeExtensions    optional.String
	ScopeOnlyExecuteAccess    optional.Bool
	ScopeScanWithoutExtension optional.Bool
	ScopeExcludePaths         optional.String
	Enabled                   optional.Bool
	Name                      optional.String
	Mandatory                 optional.Bool
	Fields                    optional.Interface
	MaxRecords                optional.Int32
	ReturnRecords             optional.Bool
	ReturnTimeout             optional.Int32
	OrderBy                   optional.Interface
}

type VscanOnAccessResponse ¶

type VscanOnAccessResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32           `json:"num_records,omitempty"`
	Records    []VscanOnAccess `json:"records,omitempty"`
}

type VscanOnAccessScope ¶

type VscanOnAccessScope struct {
	// List of file extensions for which scanning is not performed.
	ExcludeExtensions []string `json:"exclude_extensions,omitempty"`
	// List of file paths for which scanning must not be performed.
	ExcludePaths []string `json:"exclude_paths,omitempty"`
	// List of file extensions to be scanned.
	IncludeExtensions []string `json:"include_extensions,omitempty"`
	// Maximum file size, in bytes, allowed for scanning.
	MaxFileSize int32 `json:"max_file_size,omitempty"`
	// Scan only files opened with execute-access.
	OnlyExecuteAccess bool `json:"only_execute_access,omitempty"`
	// Specifies whether or not read-only volume can be scanned.
	ScanReadonlyVolumes bool `json:"scan_readonly_volumes,omitempty"`
	// Specifies whether or not files without any extension can be scanned.
	ScanWithoutExtension bool `json:"scan_without_extension,omitempty"`
}

type VscanOnDemand ¶

type VscanOnDemand struct {
	// The path from the Vserver root where the task report is created.
	LogPath string `json:"log_path,omitempty"`
	// On-Demand task name
	Name string `json:"name,omitempty"`
	// List of paths that need to be scanned.
	ScanPaths []string               `json:"scan_paths,omitempty"`
	Schedule  *VscanOnDemandSchedule `json:"schedule,omitempty"`
	Scope     *VscanOnDemandScope    `json:"scope,omitempty"`
}

Use On-Demand scanning to check files for viruses on a schedule. An On-Demand policy defines the scope of an On-Demand scan.

type VscanOnDemandCreateOpts ¶

type VscanOnDemandCreateOpts struct {
	Info optional.Interface
}

type VscanOnDemandGetOpts ¶

type VscanOnDemandGetOpts struct {
	Fields optional.Interface
}

type VscanOnDemandModifyOpts ¶

type VscanOnDemandModifyOpts struct {
	Info optional.Interface
}

type VscanOnDemandPolicyCollectionGetOpts ¶

type VscanOnDemandPolicyCollectionGetOpts struct {
	ScopeScanWithoutExtension optional.Bool
	ScopeExcludePaths         optional.String
	ScopeExcludeExtensions    optional.String
	ScopeIncludeExtensions    optional.String
	ScopeMaxFileSize          optional.Int32
	Name                      optional.String
	ScanPaths                 optional.String
	LogPath                   optional.String
	ScheduleUuid              optional.String
	ScheduleName              optional.String
	Fields                    optional.Interface
	MaxRecords                optional.Int32
	ReturnRecords             optional.Bool
	ReturnTimeout             optional.Int32
	OrderBy                   optional.Interface
}

type VscanOnDemandResponse ¶

type VscanOnDemandResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32           `json:"num_records,omitempty"`
	Records    []VscanOnDemand `json:"records,omitempty"`
}

type VscanOnDemandSchedule ¶

type VscanOnDemandSchedule struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// Job schedule name
	Name string `json:"name,omitempty"`
	// Job schedule UUID
	Uuid string `json:"uuid,omitempty"`
}

Schedule of the task.

type VscanOnDemandScope ¶

type VscanOnDemandScope struct {
	// List of file extensions for which scanning is not performed.
	ExcludeExtensions []string `json:"exclude_extensions,omitempty"`
	// List of file paths for which scanning must not be performed.
	ExcludePaths []string `json:"exclude_paths,omitempty"`
	// List of file extensions to be scanned.
	IncludeExtensions []string `json:"include_extensions,omitempty"`
	// Maximum file size, in bytes, allowed for scanning.
	MaxFileSize int32 `json:"max_file_size,omitempty"`
	// Specifies whether or not files without any extension can be scanned.
	ScanWithoutExtension bool `json:"scan_without_extension,omitempty"`
}

type VscanResponse ¶

type VscanResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32   `json:"num_records,omitempty"`
	Records    []Vscan `json:"records,omitempty"`
}

type VscanScannerCollectionGetOpts ¶

type VscanScannerCollectionGetOpts struct {
	PrivilegedUsers optional.String
	Name            optional.String
	ClusterUuid     optional.String
	ClusterName     optional.String
	Servers         optional.String
	Role            optional.String
	Fields          optional.Interface
	MaxRecords      optional.Int32
	ReturnRecords   optional.Bool
	ReturnTimeout   optional.Int32
	OrderBy         optional.Interface
}

type VscanScannerCreateOpts ¶

type VscanScannerCreateOpts struct {
	Info optional.Interface
}

type VscanScannerGetOpts ¶

type VscanScannerGetOpts struct {
	Fields optional.Interface
}

type VscanScannerModifyOpts ¶

type VscanScannerModifyOpts struct {
	Info optional.Interface
}

type VscanScannerPool ¶

type VscanScannerPool struct {
	Cluster *ClusterReference `json:"cluster,omitempty"`
	// Specifies the name of the scanner pool. Scanner pool name can be up to 256 characters long and is a string that can only contain any combination of ASCII-range alphanumeric characters a-z, A-Z, 0-9), \"_\", \"-\" and \".\".
	Name string `json:"name,omitempty"`
	// Specifies a list of privileged users. A valid form of privileged user-name is \"domain-name\\user-name\". Privileged user-names are stored and treated as case-insensitive strings. Virus scanners must use one of the registered privileged users for connecting to clustered Data ONTAP for exchanging virus-scanning protocol messages and to access file for scanning, remedying and quarantining operations.
	PrivilegedUsers []string `json:"privileged_users,omitempty"`
	// Specifies the role of the scanner pool. The possible values are:   * primary   - Always active.   * secondary - Active only when none of the primary external virus-scanning servers are connected.   * idle      - Always inactive.
	Role string `json:"role,omitempty"`
	// Specifies a list of IP addresses or FQDN for each Vscan server host names which are allowed to connect to clustered ONTAP.
	Servers []string `json:"servers,omitempty"`
}

Scanner pool is a set of attributes which are used to validate and manage connections between clustered ONTAP and external virus-scanning server, or \"Vscan server\".

type VscanScannerPoolResponse ¶

type VscanScannerPoolResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32              `json:"num_records,omitempty"`
	Records    []VscanScannerPool `json:"records,omitempty"`
}

type VscanServerStatus ¶

type VscanServerStatus struct {
	// Specifies the server disconnected reason. The following is a list of the possible reasons: * unknown                   - Disconnected, unknown reason. * vscan_disabled            - Disconnected, Vscan is disabled on the SVM. * no_data_lif               - Disconnected, SVM does not have data LIF. * session_uninitialized     - Disconnected, session is not initialized. * remote_closed             - Disconnected, server has closed the connection. * invalid_protocol_msg      - Disconnected, invalid protocol message received. * invalid_session_id        - Disconnected, invalid session ID received. * inactive_connection       - Disconnected, no activity on connection. * invalid_user              - Connection request by an invalid user. * server_removed            - Disconnected, server has been removed from the active Scanners List. enum:   - unknown   - vscan_disabled   - no_data_lif   - session_uninitialized   - remote_closed   - invalid_protocol_msg   - invalid_session_id   - inactive_connection   - invalid_user   - server_removed
	DisconnectedReason string `json:"disconnected_reason,omitempty"`
	// IP address of the Vscan server.
	Ip   string                 `json:"ip,omitempty"`
	Node *InlineResponse201Node `json:"node,omitempty"`
	// Specifies the server connection state indicating if it is in the connected or disconnected state. The following is a list of the possible states: * connected                 - Connected * disconnected              - Disconnected enum:   - connected   - disconnected
	State string    `json:"state,omitempty"`
	Svm   *AuditSvm `json:"svm,omitempty"`
	// Server type. The possible values are:   * primary - Primary server   * backup  - Backup server
	Type_ string `json:"type,omitempty"`
	// Specifies the time the server is in the connected or disconnected state.
	UpdateTime time.Time `json:"update_time,omitempty"`
	// Name of the connected virus-scanner vendor.
	Vendor string `json:"vendor,omitempty"`
	// Version of the connected virus-scanner.
	Version string `json:"version,omitempty"`
}

Displays the connection status information of the external virus-scanning servers.

type VscanServerStatusGetOpts ¶

type VscanServerStatusGetOpts struct {
	State              optional.String
	Ip                 optional.String
	Version            optional.String
	DisconnectedReason optional.String
	Type_              optional.String
	NodeUuid           optional.String
	NodeName           optional.String
	Vendor             optional.String
	SvmUuid            optional.String
	SvmName            optional.String
	UpdateTime         optional.String
	Fields             optional.Interface
	MaxRecords         optional.Int32
	ReturnRecords      optional.Bool
	ReturnTimeout      optional.Int32
	OrderBy            optional.Interface
}

type VscanServerStatusResponse ¶

type VscanServerStatusResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records
	NumRecords int32               `json:"num_records,omitempty"`
	Records    []VscanServerStatus `json:"records,omitempty"`
}

type VsiOnNas ¶

type VsiOnNas struct {
	Datastore    *VsiOnNasDatastore    `json:"datastore,omitempty"`
	HyperVAccess *VdiOnNasHyperVAccess `json:"hyper_v_access,omitempty"`
	// The list of NFS access controls. Optional in the POST body
	NfsAccess      []AppNfsAccess              `json:"nfs_access,omitempty"`
	ProtectionType *MongoDbOnSanProtectionType `json:"protection_type,omitempty"`
}

A VSI application using NAS.

type VsiOnNasDatastore ¶

type VsiOnNasDatastore struct {
	// The number of datastores to support. Optional in the POST or PATCH body
	Count int32 `json:"count,omitempty"`
	// The size of the datastore. Usage: {&lt;integer&gt;[KB|MB|GB|TB|PB]} Required in the POST body
	Size           int32                            `json:"size,omitempty"`
	StorageService *VsiOnNasDatastoreStorageService `json:"storage_service,omitempty"`
}

type VsiOnNasDatastoreStorageService ¶

type VsiOnNasDatastoreStorageService struct {
	// The storage service of the datastore. Optional in the POST or PATCH body
	Name string `json:"name,omitempty"`
}

type VsiOnSan ¶

type VsiOnSan struct {
	Datastore *VsiOnNasDatastore `json:"datastore,omitempty"`
	// The name of the hypervisor hosting the application. Required in the POST body
	Hypervisor string `json:"hypervisor,omitempty"`
	// The name of the initiator group through which the contents of this application will be accessed. Modification of this parameter is a disruptive operation. All LUNs in the application component will be unmapped from the current igroup and re-mapped to the new igroup. Required in the POST body and optional in the PATCH body
	IgroupName string `json:"igroup_name,omitempty"`
	// The list of initiator groups to create. Optional in the POST or PATCH body
	NewIgroups     []VsiOnSanNewIgroups        `json:"new_igroups,omitempty"`
	ProtectionType *MongoDbOnSanProtectionType `json:"protection_type,omitempty"`
}

A VSI application using SAN.

type VsiOnSanNewIgroups ¶

type VsiOnSanNewIgroups struct {
	// The name of the new initiator group. Required in the POST body and optional in the PATCH body
	Name       string   `json:"name,omitempty"`
	Initiators []string `json:"initiators,omitempty"`
	// The protocol of the new initiator group. Optional in the POST or PATCH body
	Protocol string `json:"protocol,omitempty"`
}

The list of initiator groups to create.

type WwpnAlias ¶

type WwpnAlias struct {
	Links *InlineResponse201Links `json:"_links,omitempty"`
	// The FC WWPN alias. Required in POST.
	Alias string    `json:"alias,omitempty"`
	Svm   *AuditSvm `json:"svm,omitempty"`
	// The FC initiator WWPN. Required in POST.
	Wwpn string `json:"wwpn,omitempty"`
}

A Fibre Channel (FC) world wide port name (WWPN) alias. A WWPN is a unique 64-bit identifier for an FC initiator. It is displayed as a 16-character hexadecimal value. SAN administrators may find it easier to identify FC initiators using an alias, especially in larger SANs.

type WwpnAliasCollectionGetOpts ¶

type WwpnAliasCollectionGetOpts struct {
	Wwpn          optional.String
	SvmUuid       optional.String
	SvmName       optional.String
	Alias         optional.String
	Fields        optional.Interface
	MaxRecords    optional.Int32
	ReturnRecords optional.Bool
	ReturnTimeout optional.Int32
	OrderBy       optional.Interface
}

type WwpnAliasGetOpts ¶

type WwpnAliasGetOpts struct {
	Fields optional.Interface
}

type WwpnAliasResponse ¶

type WwpnAliasResponse struct {
	Links *AccountResponseLinks `json:"_links,omitempty"`
	// Number of records.
	NumRecords int32       `json:"num_records,omitempty"`
	Records    []WwpnAlias `json:"records,omitempty"`
}

Source Files ¶

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL