Documentation
¶
Overview ¶
Package clients contains a set of Azure ARM clients.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewRateLimiter ¶
func NewRateLimiter(config *RateLimitConfig) (flowcontrol.RateLimiter, flowcontrol.RateLimiter)
NewRateLimiter creates new read and write flowcontrol.RateLimiter from RateLimitConfig.
func RateLimitEnabled ¶
func RateLimitEnabled(config *RateLimitConfig) bool
RateLimitEnabled returns true if CloudProviderRateLimit is set to true.
Types ¶
type ClientConfig ¶
type ClientConfig struct {
Location string
SubscriptionID string
ResourceManagerEndpoint string
Authorizer autorest.Authorizer
RateLimitConfig *RateLimitConfig
Backoff *retry.Backoff
}
ClientConfig contains all essential information to create an Azure client.
func (*ClientConfig) WithRateLimiter ¶
func (cfg *ClientConfig) WithRateLimiter(rl *RateLimitConfig) *ClientConfig
WithRateLimiter returns a new ClientConfig with rateLimitConfig set.
type RateLimitConfig ¶
type RateLimitConfig struct {
// Enable rate limiting
CloudProviderRateLimit bool `json:"cloudProviderRateLimit,omitempty" yaml:"cloudProviderRateLimit,omitempty"`
// Rate limit QPS (Read)
CloudProviderRateLimitQPS float32 `json:"cloudProviderRateLimitQPS,omitempty" yaml:"cloudProviderRateLimitQPS,omitempty"`
// Rate limit Bucket Size
CloudProviderRateLimitBucket int `json:"cloudProviderRateLimitBucket,omitempty" yaml:"cloudProviderRateLimitBucket,omitempty"`
// Rate limit QPS (Write)
CloudProviderRateLimitQPSWrite float32 `json:"cloudProviderRateLimitQPSWrite,omitempty" yaml:"cloudProviderRateLimitQPSWrite,omitempty"`
// Rate limit Bucket Size
CloudProviderRateLimitBucketWrite int `json:"cloudProviderRateLimitBucketWrite,omitempty" yaml:"cloudProviderRateLimitBucketWrite,omitempty"`
}
RateLimitConfig indicates the rate limit config options.
Source Files
¶
- azure_client_config.go
- doc.go
Directories
¶
| Path | Synopsis |
|---|---|
|
Package armclient implements the client for ARM.
|
Package armclient implements the client for ARM. |
|
Package diskclient implements the client for Disks.
|
Package diskclient implements the client for Disks. |
|
Package interfaceclient implements the client for network interfaces.
|
Package interfaceclient implements the client for network interfaces. |
|
Package loadbalancerclient implements the client for LoadBalancer.
|
Package loadbalancerclient implements the client for LoadBalancer. |
|
Package publicipclient implements the client for PublicIPAddress.
|
Package publicipclient implements the client for PublicIPAddress. |
|
Package routeclient implements the client for Route.
|
Package routeclient implements the client for Route. |
|
mockrouteclient
Package mockrouteclient implements the mock client for Route.
|
Package mockrouteclient implements the mock client for Route. |
|
Package routetableclient implements the client for RouteTable.
|
Package routetableclient implements the client for RouteTable. |
|
mockroutetableclient
Package mockroutetableclient implements the mock client for RouteTable.
|
Package mockroutetableclient implements the mock client for RouteTable. |
|
Package securitygroupclient implements the client for SecurityGroups.
|
Package securitygroupclient implements the client for SecurityGroups. |
|
Package snapshotclient implements the client for Snapshots.
|
Package snapshotclient implements the client for Snapshots. |
|
Package storageaccountclient implements the client for StorageAccounts.
|
Package storageaccountclient implements the client for StorageAccounts. |
|
Package subnetclient implements the client for Subnet.
|
Package subnetclient implements the client for Subnet. |
|
mocksubnetclient
Package mocksubnetclient implements the mock client for Subnet.
|
Package mocksubnetclient implements the mock client for Subnet. |
|
Package vmclient implements the client for VirtualMachines.
|
Package vmclient implements the client for VirtualMachines. |
|
Package vmsizeclient implements the client for VirtualMachineSizes.
|
Package vmsizeclient implements the client for VirtualMachineSizes. |
|
Package vmssclient implements the client for VMSS.
|
Package vmssclient implements the client for VMSS. |
|
Package vmssvmclient implements the client for VirtualMachineScaleSetVM.
|
Package vmssvmclient implements the client for VirtualMachineScaleSetVM. |
Click to show internal directories.
Click to hide internal directories.