diff options
author | Péter Szilágyi <peterke@gmail.com> | 2017-04-06 18:53:33 +0800 |
---|---|---|
committer | Felix Lange <fjl@users.noreply.github.com> | 2017-04-06 18:53:33 +0800 |
commit | c76ad944920300be58446ddd1a50c8d693957774 (patch) | |
tree | ec9aed051e82deb3c479ab1b7ab50aa2c07d9efb /vendor/github.com/Azure/azure-storage-go/storagepolicy.go | |
parent | 3d8de95f999de6f52f0c1605eb2913278f1d87d2 (diff) | |
download | go-tangerine-c76ad944920300be58446ddd1a50c8d693957774.tar go-tangerine-c76ad944920300be58446ddd1a50c8d693957774.tar.gz go-tangerine-c76ad944920300be58446ddd1a50c8d693957774.tar.bz2 go-tangerine-c76ad944920300be58446ddd1a50c8d693957774.tar.lz go-tangerine-c76ad944920300be58446ddd1a50c8d693957774.tar.xz go-tangerine-c76ad944920300be58446ddd1a50c8d693957774.tar.zst go-tangerine-c76ad944920300be58446ddd1a50c8d693957774.zip |
.travis, build: autodelete old unstable archives (#13867)
This commit adds a build step to travis to auto-delete unstable archives older than
14 days (our regular release schedule) from Azure via ci.go purge.
The commit also pulls in the latest Azure storage code, also switching over from
the old import path (github.com/Azure/azure-sdk-for-go) to the new split one
(github.com/Azure/azure-storage-go).
Diffstat (limited to 'vendor/github.com/Azure/azure-storage-go/storagepolicy.go')
-rw-r--r-- | vendor/github.com/Azure/azure-storage-go/storagepolicy.go | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/vendor/github.com/Azure/azure-storage-go/storagepolicy.go b/vendor/github.com/Azure/azure-storage-go/storagepolicy.go new file mode 100644 index 000000000..bee1c31ad --- /dev/null +++ b/vendor/github.com/Azure/azure-storage-go/storagepolicy.go @@ -0,0 +1,47 @@ +package storage + +import ( + "strings" + "time" +) + +// AccessPolicyDetailsXML has specifics about an access policy +// annotated with XML details. +type AccessPolicyDetailsXML struct { + StartTime time.Time `xml:"Start"` + ExpiryTime time.Time `xml:"Expiry"` + Permission string `xml:"Permission"` +} + +// SignedIdentifier is a wrapper for a specific policy +type SignedIdentifier struct { + ID string `xml:"Id"` + AccessPolicy AccessPolicyDetailsXML `xml:"AccessPolicy"` +} + +// SignedIdentifiers part of the response from GetPermissions call. +type SignedIdentifiers struct { + SignedIdentifiers []SignedIdentifier `xml:"SignedIdentifier"` +} + +// AccessPolicy is the response type from the GetPermissions call. +type AccessPolicy struct { + SignedIdentifiersList SignedIdentifiers `xml:"SignedIdentifiers"` +} + +// convertAccessPolicyToXMLStructs converts between AccessPolicyDetails which is a struct better for API usage to the +// AccessPolicy struct which will get converted to XML. +func convertAccessPolicyToXMLStructs(id string, startTime time.Time, expiryTime time.Time, permissions string) SignedIdentifier { + return SignedIdentifier{ + ID: id, + AccessPolicy: AccessPolicyDetailsXML{ + StartTime: startTime.UTC().Round(time.Second), + ExpiryTime: expiryTime.UTC().Round(time.Second), + Permission: permissions, + }, + } +} + +func updatePermissions(permissions, permission string) bool { + return strings.Contains(permissions, permission) +} |