Skip to content

Commit

Permalink
Release v1.6.21
Browse files Browse the repository at this point in the history
  • Loading branch information
Jason Del Ponte committed Feb 11, 2017
1 parent 2ed7e38 commit f615b09
Show file tree
Hide file tree
Showing 7 changed files with 89 additions and 10 deletions.
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
Release v1.6.21 (2017-02-11)
===

Service Client Updates
---
* `service/storagegateway`: Updates service API, documentation, and paginators
* File gateway mode in AWS Storage gateway provides access to objects in S3 as files on a Network File System (NFS) mount point. This is done by creating Nfs file shares using existing APIs CreateNfsFileShare. Using the feature in this update, the customer can restrict the clients that have read/write access to the gateway by specifying the list of clients as a list of IP addresses or CIDR blocks. This list can be specified using the API CreateNfsFileShare while creating new file shares, or UpdateNfsFileShare while update existing file shares. To find out the list of clients that have access, the existing API DescribeNfsFileShare will now output the list of clients that have access.

Release v1.6.20 (2017-02-09)
===

Expand Down
2 changes: 1 addition & 1 deletion aws/version.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,4 @@ package aws
const SDKName = "aws-sdk-go"

// SDKVersion is the version of this SDK
const SDKVersion = "1.6.20"
const SDKVersion = "1.6.21"
19 changes: 16 additions & 3 deletions models/apis/storagegateway/2013-06-30/api-2.json
Original file line number Diff line number Diff line change
Expand Up @@ -1036,7 +1036,8 @@
"KMSKey":{"shape":"KMSKey"},
"Role":{"shape":"Role"},
"LocationARN":{"shape":"LocationARN"},
"DefaultStorageClass":{"shape":"StorageClass"}
"DefaultStorageClass":{"shape":"StorageClass"},
"ClientList":{"shape":"FileShareClientList"}
}
},
"CreateNFSFileShareOutput":{
Expand Down Expand Up @@ -1653,6 +1654,12 @@
"max":10,
"min":1
},
"FileShareClientList":{
"type":"list",
"member":{"shape":"IPV4AddressCIDR"},
"max":100,
"min":1
},
"FileShareId":{
"type":"string",
"max":30,
Expand Down Expand Up @@ -1735,6 +1742,10 @@
"max":23,
"min":0
},
"IPV4AddressCIDR":{
"type":"string",
"pattern":"^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/([0-9]|[1-2][0-9]|3[0-2]))?$"
},
"Initiator":{
"type":"string",
"max":50,
Expand Down Expand Up @@ -1944,7 +1955,8 @@
"Path":{"shape":"Path"},
"Role":{"shape":"Role"},
"LocationARN":{"shape":"LocationARN"},
"DefaultStorageClass":{"shape":"StorageClass"}
"DefaultStorageClass":{"shape":"StorageClass"},
"ClientList":{"shape":"FileShareClientList"}
}
},
"NFSFileShareInfoList":{
Expand Down Expand Up @@ -2390,7 +2402,8 @@
"KMSEncrypted":{"shape":"Boolean"},
"KMSKey":{"shape":"KMSKey"},
"NFSFileShareDefaults":{"shape":"NFSFileShareDefaults"},
"DefaultStorageClass":{"shape":"StorageClass"}
"DefaultStorageClass":{"shape":"StorageClass"},
"ClientList":{"shape":"FileShareClientList"}
}
},
"UpdateNFSFileShareOutput":{
Expand Down
14 changes: 14 additions & 0 deletions models/apis/storagegateway/2013-06-30/docs-2.json
Original file line number Diff line number Diff line change
Expand Up @@ -623,6 +623,14 @@
"DescribeNFSFileSharesInput$FileShareARNList": "<p>An array containing the Amazon Resource Name (ARN) of each file share to be described. </p>"
}
},
"FileShareClientList": {
"base": "<p>The list of clients that are allowed to access the file gateway. The list must contain either valid IP addresses or valid CIDR blocks. </p>",
"refs": {
"CreateNFSFileShareInput$ClientList": "<p>The list of clients that are allowed to access the file gateway. The list must contain either valid IP addresses or valid CIDR blocks.</p>",
"NFSFileShareInfo$ClientList": null,
"UpdateNFSFileShareInput$ClientList": "<p>The list of clients that are allowed to access the file gateway. The list must contain either valid IP addresses or valid CIDR blocks.</p>"
}
},
"FileShareId": {
"base": "<p>The ID of the file share. </p>",
"refs": {
Expand Down Expand Up @@ -795,6 +803,12 @@
"UpdateSnapshotScheduleInput$StartAt": "<p>The hour of the day at which the snapshot schedule begins represented as <i>hh</i>, where <i>hh</i> is the hour (0 to 23). The hour of the day is in the time zone of the gateway.</p>"
}
},
"IPV4AddressCIDR": {
"base": null,
"refs": {
"FileShareClientList$member": null
}
},
"Initiator": {
"base": null,
"refs": {
Expand Down
2 changes: 1 addition & 1 deletion models/apis/storagegateway/2013-06-30/paginators-1.json
Original file line number Diff line number Diff line change
Expand Up @@ -49,4 +49,4 @@
"result_key": "VolumeInfos"
}
}
}
}
36 changes: 36 additions & 0 deletions service/storagegateway/api.go
Original file line number Diff line number Diff line change
Expand Up @@ -5888,6 +5888,10 @@ func (s *CreateCachediSCSIVolumeOutput) SetVolumeARN(v string) *CreateCachediSCS
type CreateNFSFileShareInput struct {
_ struct{} `type:"structure"`

// The list of clients that are allowed to access the file gateway. The list
// must contain either valid IP addresses or valid CIDR blocks.
ClientList []*string `min:"1" type:"list"`

// A unique string value that you supply that is used by file gateway to ensure
// idempotent file share creation.
//
Expand Down Expand Up @@ -5941,6 +5945,9 @@ func (s CreateNFSFileShareInput) GoString() string {
// Validate inspects the fields of the type to determine if they are valid.
func (s *CreateNFSFileShareInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CreateNFSFileShareInput"}
if s.ClientList != nil && len(s.ClientList) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ClientList", 1))
}
if s.ClientToken == nil {
invalidParams.Add(request.NewErrParamRequired("ClientToken"))
}
Expand Down Expand Up @@ -5983,6 +5990,12 @@ func (s *CreateNFSFileShareInput) Validate() error {
return nil
}

// SetClientList sets the ClientList field's value.
func (s *CreateNFSFileShareInput) SetClientList(v []*string) *CreateNFSFileShareInput {
s.ClientList = v
return s
}

// SetClientToken sets the ClientToken field's value.
func (s *CreateNFSFileShareInput) SetClientToken(v string) *CreateNFSFileShareInput {
s.ClientToken = &v
Expand Down Expand Up @@ -10024,6 +10037,10 @@ func (s *NFSFileShareDefaults) SetOwnerId(v int64) *NFSFileShareDefaults {
type NFSFileShareInfo struct {
_ struct{} `type:"structure"`

// The list of clients that are allowed to access the file gateway. The list
// must contain either valid IP addresses or valid CIDR blocks.
ClientList []*string `min:"1" type:"list"`

// The default storage class for objects put into an Amazon S3 bucket by file
// gateway. Possible values are S3_STANDARD or S3_STANDARD_IA. If this field
// is not populated, the default value S3_STANDARD is used. Optional.
Expand Down Expand Up @@ -10077,6 +10094,12 @@ func (s NFSFileShareInfo) GoString() string {
return s.String()
}

// SetClientList sets the ClientList field's value.
func (s *NFSFileShareInfo) SetClientList(v []*string) *NFSFileShareInfo {
s.ClientList = v
return s
}

// SetDefaultStorageClass sets the DefaultStorageClass field's value.
func (s *NFSFileShareInfo) SetDefaultStorageClass(v string) *NFSFileShareInfo {
s.DefaultStorageClass = &v
Expand Down Expand Up @@ -11744,6 +11767,10 @@ func (s *UpdateMaintenanceStartTimeOutput) SetGatewayARN(v string) *UpdateMainte
type UpdateNFSFileShareInput struct {
_ struct{} `type:"structure"`

// The list of clients that are allowed to access the file gateway. The list
// must contain either valid IP addresses or valid CIDR blocks.
ClientList []*string `min:"1" type:"list"`

// The default storage class for objects put into an Amazon S3 bucket by a file
// gateway. Possible values are S3_STANDARD or S3_STANDARD_IA. If this field
// is not populated, the default value S3_STANDARD is used. Optional.
Expand Down Expand Up @@ -11779,6 +11806,9 @@ func (s UpdateNFSFileShareInput) GoString() string {
// Validate inspects the fields of the type to determine if they are valid.
func (s *UpdateNFSFileShareInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "UpdateNFSFileShareInput"}
if s.ClientList != nil && len(s.ClientList) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ClientList", 1))
}
if s.DefaultStorageClass != nil && len(*s.DefaultStorageClass) < 5 {
invalidParams.Add(request.NewErrParamMinLen("DefaultStorageClass", 5))
}
Expand All @@ -11803,6 +11833,12 @@ func (s *UpdateNFSFileShareInput) Validate() error {
return nil
}

// SetClientList sets the ClientList field's value.
func (s *UpdateNFSFileShareInput) SetClientList(v []*string) *UpdateNFSFileShareInput {
s.ClientList = v
return s
}

// SetDefaultStorageClass sets the DefaultStorageClass field's value.
func (s *UpdateNFSFileShareInput) SetDefaultStorageClass(v string) *UpdateNFSFileShareInput {
s.DefaultStorageClass = &v
Expand Down
18 changes: 13 additions & 5 deletions service/storagegateway/examples_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -258,10 +258,14 @@ func ExampleStorageGateway_CreateNFSFileShare() {
svc := storagegateway.New(sess)

params := &storagegateway.CreateNFSFileShareInput{
ClientToken: aws.String("ClientToken"), // Required
GatewayARN: aws.String("GatewayARN"), // Required
LocationARN: aws.String("LocationARN"), // Required
Role: aws.String("Role"), // Required
ClientToken: aws.String("ClientToken"), // Required
GatewayARN: aws.String("GatewayARN"), // Required
LocationARN: aws.String("LocationARN"), // Required
Role: aws.String("Role"), // Required
ClientList: []*string{
aws.String("IPV4AddressCIDR"), // Required
// More values...
},
DefaultStorageClass: aws.String("StorageClass"),
KMSEncrypted: aws.Bool(true),
KMSKey: aws.String("KMSKey"),
Expand Down Expand Up @@ -1593,7 +1597,11 @@ func ExampleStorageGateway_UpdateNFSFileShare() {
svc := storagegateway.New(sess)

params := &storagegateway.UpdateNFSFileShareInput{
FileShareARN: aws.String("FileShareARN"), // Required
FileShareARN: aws.String("FileShareARN"), // Required
ClientList: []*string{
aws.String("IPV4AddressCIDR"), // Required
// More values...
},
DefaultStorageClass: aws.String("StorageClass"),
KMSEncrypted: aws.Bool(true),
KMSKey: aws.String("KMSKey"),
Expand Down

0 comments on commit f615b09

Please sign in to comment.