mirror of
https://github.com/restic/restic.git
synced 2024-09-13 22:49:39 +02:00
80 lines
2.0 KiB
Go
80 lines
2.0 KiB
Go
package storageservice
|
|
|
|
import (
|
|
"encoding/xml"
|
|
|
|
"github.com/Azure/azure-sdk-for-go/management"
|
|
)
|
|
|
|
// StorageServiceClient is used to perform operations on Azure Storage
|
|
type StorageServiceClient struct {
|
|
client management.Client
|
|
}
|
|
|
|
type ListStorageServicesResponse struct {
|
|
StorageServices []StorageServiceResponse `xml:"StorageService"`
|
|
}
|
|
|
|
type StorageServiceResponse struct {
|
|
URL string `xml:"Url"`
|
|
ServiceName string
|
|
StorageServiceProperties StorageServiceProperties
|
|
}
|
|
|
|
type StorageServiceProperties struct {
|
|
Description string
|
|
Location string
|
|
Label string
|
|
Status string
|
|
Endpoints []string `xml:"Endpoints>Endpoint"`
|
|
GeoReplicationEnabled string
|
|
GeoPrimaryRegion string
|
|
}
|
|
|
|
type GetStorageServiceKeysResponse struct {
|
|
URL string `xml:"Url"`
|
|
PrimaryKey string `xml:"StorageServiceKeys>Primary"`
|
|
SecondaryKey string `xml:"StorageServiceKeys>Secondary"`
|
|
}
|
|
|
|
type CreateStorageServiceInput struct {
|
|
XMLName xml.Name `xml:"http://schemas.microsoft.com/windowsazure CreateStorageServiceInput"`
|
|
StorageAccountCreateParameters
|
|
}
|
|
|
|
type StorageAccountCreateParameters struct {
|
|
ServiceName string
|
|
Description string `xml:",omitempty"`
|
|
Label string
|
|
AffinityGroup string `xml:",omitempty"`
|
|
Location string `xml:",omitempty"`
|
|
ExtendedProperties ExtendedPropertyList
|
|
AccountType AccountType
|
|
}
|
|
|
|
type AccountType string
|
|
|
|
const (
|
|
AccountTypeStandardLRS AccountType = "Standard_LRS"
|
|
AccountTypeStandardZRS AccountType = "Standard_ZRS"
|
|
AccountTypeStandardGRS AccountType = "Standard_GRS"
|
|
AccountTypeStandardRAGRS AccountType = "Standard_RAGRS"
|
|
AccountTypePremiumLRS AccountType = "Premium_LRS"
|
|
)
|
|
|
|
type ExtendedPropertyList struct {
|
|
ExtendedProperty []ExtendedProperty
|
|
}
|
|
|
|
type ExtendedProperty struct {
|
|
Name string
|
|
Value string
|
|
}
|
|
|
|
type AvailabilityResponse struct {
|
|
XMLName xml.Name `xml:"AvailabilityResponse"`
|
|
Xmlns string `xml:"xmlns,attr"`
|
|
Result bool
|
|
Reason string
|
|
}
|