upgrade to aws-sdk-go v1.8.11 (#8091)

* upgrade to aws-sdk-go v1.8.11

* fix test
This commit is contained in:
Mitsuhiro Tanda
2017-04-12 06:40:44 +02:00
committed by Torkel Ödegaard
parent 09cec3118f
commit d2bf2e86ed
87 changed files with 24938 additions and 3958 deletions
+14 -2
View File
@@ -34,7 +34,7 @@ var excludeServices = map[string]struct{}{
// If the SERVICES environment variable is set, and this service is not apart of the list
// this service will be skipped.
func newGenerateInfo(modelFile, svcPath, svcImportPath string) *generateInfo {
g := &generateInfo{API: &api.API{SvcClientImportPath: svcImportPath}}
g := &generateInfo{API: &api.API{SvcClientImportPath: svcImportPath, BaseCrosslinkURL: "https://docs.aws.amazon.com"}}
g.API.Attach(modelFile)
if _, ok := excludeServices[g.API.PackageName()]; ok {
@@ -103,6 +103,7 @@ func main() {
flag.StringVar(&sessionPath, "sessionPath", filepath.Join("aws", "session"), "generate session service client factories")
flag.StringVar(&svcImportPath, "svc-import-path", "github.com/aws/aws-sdk-go/service", "namespace to generate service client Go code import path under")
flag.Parse()
api.Bootstrap()
files := []string{}
for i := 0; i < flag.NArg(); i++ {
@@ -180,6 +181,7 @@ func writeServiceFiles(g *generateInfo, filename string) {
Must(writeServiceFile(g))
Must(writeInterfaceFile(g))
Must(writeWaitersFile(g))
Must(writeAPIErrorsFile(g))
}
// Must will panic if the error passed in is not nil.
@@ -189,7 +191,7 @@ func Must(err error) {
}
}
const codeLayout = `// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT.
const codeLayout = `// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
%s
package %s
@@ -260,3 +262,13 @@ func writeAPIFile(g *generateInfo) error {
g.API.APIGoCode(),
)
}
// writeAPIErrorsFile writes out the service api errors file.
func writeAPIErrorsFile(g *generateInfo) error {
return writeGoFile(filepath.Join(g.PackageDir, "errors.go"),
codeLayout,
"",
g.API.PackageName(),
g.API.APIErrorsGoCode(),
)
}
+36 -29
View File
@@ -1,49 +1,56 @@
// +build codegen
// Command aws-gen-goendpoints parses a JSON description of the AWS endpoint
// Command gen-endpoints parses a JSON description of the AWS endpoint
// discovery logic and generates a Go file which returns an endpoint.
//
// aws-gen-goendpoints apis/_endpoints.json aws/endpoints_map.go
package main
import (
"encoding/json"
"flag"
"fmt"
"os"
"github.com/aws/aws-sdk-go/private/model"
"github.com/aws/aws-sdk-go/aws/endpoints"
)
// Generates the endpoints from json description
//
// CLI Args:
// [0] This file's execution path
// [1] The definition file to use
// [2] The output file to generate
// Args:
// -model The definition file to use
// -out The output file to generate
func main() {
in, err := os.Open(os.Args[1])
if err != nil {
panic(err)
}
defer in.Close()
var modelName, outName string
flag.StringVar(&modelName, "model", "", "Endpoints definition model")
flag.StringVar(&outName, "out", "", "File to write generated endpoints to.")
flag.Parse()
var endpoints struct {
Version int
Endpoints map[string]struct {
Endpoint string
SigningRegion string
if len(modelName) == 0 || len(outName) == 0 {
exitErrorf("model and out both required.")
}
modelFile, err := os.Open(modelName)
if err != nil {
exitErrorf("failed to open model definition, %v.", err)
}
defer modelFile.Close()
outFile, err := os.Create(outName)
if err != nil {
exitErrorf("failed to open out file, %v.", err)
}
defer func() {
if err := outFile.Close(); err != nil {
exitErrorf("failed to successfully write %q file, %v", outName, err)
}
}
if err = json.NewDecoder(in).Decode(&endpoints); err != nil {
panic(err)
}
}()
out, err := os.Create(os.Args[2])
if err != nil {
panic(err)
}
defer out.Close()
if err := model.GenerateEndpoints(endpoints, out); err != nil {
panic(err)
if err := endpoints.CodeGenModel(modelFile, outFile); err != nil {
exitErrorf("failed to codegen model, %v", err)
}
}
func exitErrorf(msg string, args ...interface{}) {
fmt.Fprintf(os.Stderr, msg+"\n", args...)
os.Exit(1)
}