rclone/vendor/github.com/aws/aws-sdk-go/service/snowball/examples_test.go
2017-07-23 08:51:42 +01:00

654 lines
21 KiB
Go

// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
package snowball_test
import (
"fmt"
"strings"
"time"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/awserr"
"github.com/aws/aws-sdk-go/aws/session"
"github.com/aws/aws-sdk-go/service/snowball"
)
var _ time.Duration
var _ strings.Reader
var _ aws.Config
func parseTime(layout, value string) *time.Time {
t, err := time.Parse(layout, value)
if err != nil {
panic(err)
}
return &t
}
// To cancel a cluster job
//
// This operation cancels a cluster job. You can only cancel a cluster job while it's
// in the AwaitingQuorum status.
func ExampleSnowball_CancelCluster_shared00() {
svc := snowball.New(session.New())
input := &snowball.CancelClusterInput{
ClusterId: aws.String("CID123e4567-e89b-12d3-a456-426655440000"),
}
result, err := svc.CancelCluster(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case snowball.ErrCodeKMSRequestFailedException:
fmt.Println(snowball.ErrCodeKMSRequestFailedException, aerr.Error())
case snowball.ErrCodeInvalidJobStateException:
fmt.Println(snowball.ErrCodeInvalidJobStateException, aerr.Error())
case snowball.ErrCodeInvalidResourceException:
fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}
// To cancel a job for a Snowball device
//
// This operation cancels a job. You can only cancel a job before its JobState value
// changes to PreparingAppliance.
func ExampleSnowball_CancelJob_shared00() {
svc := snowball.New(session.New())
input := &snowball.CancelJobInput{
JobId: aws.String("JID123e4567-e89b-12d3-a456-426655440000"),
}
result, err := svc.CancelJob(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case snowball.ErrCodeInvalidResourceException:
fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
case snowball.ErrCodeInvalidJobStateException:
fmt.Println(snowball.ErrCodeInvalidJobStateException, aerr.Error())
case snowball.ErrCodeKMSRequestFailedException:
fmt.Println(snowball.ErrCodeKMSRequestFailedException, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}
// To create an address for a job
//
// This operation creates an address for a job. Addresses are validated at the time
// of creation. The address you provide must be located within the serviceable area
// of your region. If the address is invalid or unsupported, then an exception is thrown.
func ExampleSnowball_CreateAddress_shared00() {
svc := snowball.New(session.New())
input := &snowball.CreateAddressInput{
Address: &snowball.Address{
City: aws.String("Seattle"),
Company: aws.String("My Company's Name"),
Country: aws.String("USA"),
Name: aws.String("My Name"),
PhoneNumber: aws.String("425-555-5555"),
PostalCode: aws.String("98101"),
StateOrProvince: aws.String("WA"),
Street1: aws.String("123 Main Street"),
},
}
result, err := svc.CreateAddress(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case snowball.ErrCodeInvalidAddressException:
fmt.Println(snowball.ErrCodeInvalidAddressException, aerr.Error())
case snowball.ErrCodeUnsupportedAddressException:
fmt.Println(snowball.ErrCodeUnsupportedAddressException, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}
// To create a cluster
//
// Creates an empty cluster. Each cluster supports five nodes. You use the CreateJob
// action separately to create the jobs for each of these nodes. The cluster does not
// ship until these five node jobs have been created.
func ExampleSnowball_CreateCluster_shared00() {
svc := snowball.New(session.New())
input := &snowball.CreateClusterInput{
AddressId: aws.String("ADID1234ab12-3eec-4eb3-9be6-9374c10eb51b"),
Description: aws.String("MyCluster"),
JobType: aws.String("LOCAL_USE"),
KmsKeyARN: aws.String("arn:aws:kms:us-east-1:123456789012:key/abcd1234-12ab-34cd-56ef-123456123456"),
Notification: &snowball.Notification{
NotifyAll: aws.Bool(false),
},
Resources: &snowball.JobResource{
S3Resources: []*snowball.S3Resource{
{
BucketArn: aws.String("arn:aws:s3:::MyBucket"),
},
},
},
RoleARN: aws.String("arn:aws:iam::123456789012:role/snowball-import-S3-role"),
ShippingOption: aws.String("SECOND_DAY"),
SnowballType: aws.String("EDGE"),
}
result, err := svc.CreateCluster(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case snowball.ErrCodeInvalidResourceException:
fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
case snowball.ErrCodeKMSRequestFailedException:
fmt.Println(snowball.ErrCodeKMSRequestFailedException, aerr.Error())
case snowball.ErrCodeInvalidInputCombinationException:
fmt.Println(snowball.ErrCodeInvalidInputCombinationException, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}
// To create a job
//
// Creates a job to import or export data between Amazon S3 and your on-premises data
// center. Your AWS account must have the right trust policies and permissions in place
// to create a job for Snowball. If you're creating a job for a node in a cluster, you
// only need to provide the clusterId value; the other job attributes are inherited
// from the cluster.
func ExampleSnowball_CreateJob_shared00() {
svc := snowball.New(session.New())
input := &snowball.CreateJobInput{
AddressId: aws.String("ADID1234ab12-3eec-4eb3-9be6-9374c10eb51b"),
Description: aws.String("My Job"),
JobType: aws.String("IMPORT"),
KmsKeyARN: aws.String("arn:aws:kms:us-east-1:123456789012:key/abcd1234-12ab-34cd-56ef-123456123456"),
Notification: &snowball.Notification{
NotifyAll: aws.Bool(false),
},
Resources: &snowball.JobResource{
S3Resources: []*snowball.S3Resource{
{
BucketArn: aws.String("arn:aws:s3:::MyBucket"),
},
},
},
RoleARN: aws.String("arn:aws:iam::123456789012:role/snowball-import-S3-role"),
ShippingOption: aws.String("SECOND_DAY"),
SnowballCapacityPreference: aws.String("T80"),
SnowballType: aws.String("STANDARD"),
}
result, err := svc.CreateJob(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case snowball.ErrCodeInvalidResourceException:
fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
case snowball.ErrCodeKMSRequestFailedException:
fmt.Println(snowball.ErrCodeKMSRequestFailedException, aerr.Error())
case snowball.ErrCodeInvalidInputCombinationException:
fmt.Println(snowball.ErrCodeInvalidInputCombinationException, aerr.Error())
case snowball.ErrCodeClusterLimitExceededException:
fmt.Println(snowball.ErrCodeClusterLimitExceededException, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}
// To describe an address for a job
//
// This operation describes an address for a job.
func ExampleSnowball_DescribeAddress_shared00() {
svc := snowball.New(session.New())
input := &snowball.DescribeAddressInput{
AddressId: aws.String("ADID1234ab12-3eec-4eb3-9be6-9374c10eb51b"),
}
result, err := svc.DescribeAddress(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case snowball.ErrCodeInvalidResourceException:
fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}
// To describe all the addresses you've created for AWS Snowball
//
// This operation describes all the addresses that you've created for AWS Snowball.
// Calling this API in one of the US regions will return addresses from the list of
// all addresses associated with this account in all US regions.
func ExampleSnowball_DescribeAddresses_shared00() {
svc := snowball.New(session.New())
input := &snowball.DescribeAddressesInput{}
result, err := svc.DescribeAddresses(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case snowball.ErrCodeInvalidResourceException:
fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
case snowball.ErrCodeInvalidNextTokenException:
fmt.Println(snowball.ErrCodeInvalidNextTokenException, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}
// To describe a cluster
//
// Returns information about a specific cluster including shipping information, cluster
// status, and other important metadata.
func ExampleSnowball_DescribeCluster_shared00() {
svc := snowball.New(session.New())
input := &snowball.DescribeClusterInput{
ClusterId: aws.String("CID123e4567-e89b-12d3-a456-426655440000"),
}
result, err := svc.DescribeCluster(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case snowball.ErrCodeInvalidResourceException:
fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}
// To describe a job you've created for AWS Snowball
//
// This operation describes a job you've created for AWS Snowball.
func ExampleSnowball_DescribeJob_shared00() {
svc := snowball.New(session.New())
input := &snowball.DescribeJobInput{
JobId: aws.String("JID123e4567-e89b-12d3-a456-426655440000"),
}
result, err := svc.DescribeJob(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case snowball.ErrCodeInvalidResourceException:
fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}
// To get the manifest for a job you've created for AWS Snowball
//
// Returns a link to an Amazon S3 presigned URL for the manifest file associated with
// the specified JobId value. You can access the manifest file for up to 60 minutes
// after this request has been made. To access the manifest file after 60 minutes have
// passed, you'll have to make another call to the GetJobManifest action.
//
// The manifest is an encrypted file that you can download after your job enters the
// WithCustomer status. The manifest is decrypted by using the UnlockCode code value,
// when you pass both values to the Snowball through the Snowball client when the client
// is started for the first time.
//
// As a best practice, we recommend that you don't save a copy of an UnlockCode value
// in the same location as the manifest file for that job. Saving these separately helps
// prevent unauthorized parties from gaining access to the Snowball associated with
// that job.
//
// The credentials of a given job, including its manifest file and unlock code, expire
// 90 days after the job is created.
func ExampleSnowball_GetJobManifest_shared00() {
svc := snowball.New(session.New())
input := &snowball.GetJobManifestInput{
JobId: aws.String("JID123e4567-e89b-12d3-a456-426655440000"),
}
result, err := svc.GetJobManifest(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case snowball.ErrCodeInvalidResourceException:
fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
case snowball.ErrCodeInvalidJobStateException:
fmt.Println(snowball.ErrCodeInvalidJobStateException, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}
// To get the unlock code for a job you've created for AWS Snowball
//
// Returns the UnlockCode code value for the specified job. A particular UnlockCode
// value can be accessed for up to 90 days after the associated job has been created.
//
// The UnlockCode value is a 29-character code with 25 alphanumeric characters and 4
// hyphens. This code is used to decrypt the manifest file when it is passed along with
// the manifest to the Snowball through the Snowball client when the client is started
// for the first time.
//
// As a best practice, we recommend that you don't save a copy of the UnlockCode in
// the same location as the manifest file for that job. Saving these separately helps
// prevent unauthorized parties from gaining access to the Snowball associated with
// that job.
func ExampleSnowball_GetJobUnlockCode_shared00() {
svc := snowball.New(session.New())
input := &snowball.GetJobUnlockCodeInput{
JobId: aws.String("JID123e4567-e89b-12d3-a456-426655440000"),
}
result, err := svc.GetJobUnlockCode(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case snowball.ErrCodeInvalidResourceException:
fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
case snowball.ErrCodeInvalidJobStateException:
fmt.Println(snowball.ErrCodeInvalidJobStateException, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}
// To see your Snowball service limit and the number of Snowballs you have in use
//
// Returns information about the Snowball service limit for your account, and also the
// number of Snowballs your account has in use.
//
// The default service limit for the number of Snowballs that you can have at one time
// is 1. If you want to increase your service limit, contact AWS Support.
func ExampleSnowball_GetSnowballUsage_shared00() {
svc := snowball.New(session.New())
input := &snowball.GetSnowballUsageInput{}
result, err := svc.GetSnowballUsage(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}
// To get a list of jobs in a cluster that you've created for AWS Snowball
//
// Returns an array of JobListEntry objects of the specified length. Each JobListEntry
// object is for a job in the specified cluster and contains a job's state, a job's
// ID, and other information.
func ExampleSnowball_ListClusterJobs_shared00() {
svc := snowball.New(session.New())
input := &snowball.ListClusterJobsInput{
ClusterId: aws.String("CID123e4567-e89b-12d3-a456-426655440000"),
}
result, err := svc.ListClusterJobs(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case snowball.ErrCodeInvalidResourceException:
fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
case snowball.ErrCodeInvalidNextTokenException:
fmt.Println(snowball.ErrCodeInvalidNextTokenException, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}
// To get a list of clusters that you've created for AWS Snowball
//
// Returns an array of ClusterListEntry objects of the specified length. Each ClusterListEntry
// object contains a cluster's state, a cluster's ID, and other important status information.
func ExampleSnowball_ListClusters_shared00() {
svc := snowball.New(session.New())
input := &snowball.ListClustersInput{}
result, err := svc.ListClusters(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case snowball.ErrCodeInvalidNextTokenException:
fmt.Println(snowball.ErrCodeInvalidNextTokenException, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}
// To get a list of jobs that you've created for AWS Snowball
//
// Returns an array of JobListEntry objects of the specified length. Each JobListEntry
// object contains a job's state, a job's ID, and a value that indicates whether the
// job is a job part, in the case of export jobs. Calling this API action in one of
// the US regions will return jobs from the list of all jobs associated with this account
// in all US regions.
func ExampleSnowball_ListJobs_shared00() {
svc := snowball.New(session.New())
input := &snowball.ListJobsInput{}
result, err := svc.ListJobs(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case snowball.ErrCodeInvalidNextTokenException:
fmt.Println(snowball.ErrCodeInvalidNextTokenException, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}
// To update a cluster
//
// This action allows you to update certain parameters for a cluster. Once the cluster
// changes to a different state, usually within 60 minutes of it being created, this
// action is no longer available.
func ExampleSnowball_UpdateCluster_shared00() {
svc := snowball.New(session.New())
input := &snowball.UpdateClusterInput{
AddressId: aws.String("ADID1234ab12-3eec-4eb3-9be6-9374c10eb51b"),
ClusterId: aws.String("CID123e4567-e89b-12d3-a456-426655440000"),
Description: aws.String("Updated the address to send this to image processing - RJ"),
}
result, err := svc.UpdateCluster(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case snowball.ErrCodeInvalidResourceException:
fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
case snowball.ErrCodeInvalidJobStateException:
fmt.Println(snowball.ErrCodeInvalidJobStateException, aerr.Error())
case snowball.ErrCodeKMSRequestFailedException:
fmt.Println(snowball.ErrCodeKMSRequestFailedException, aerr.Error())
case snowball.ErrCodeInvalidInputCombinationException:
fmt.Println(snowball.ErrCodeInvalidInputCombinationException, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}
// To update a job
//
// This action allows you to update certain parameters for a job. Once the job changes
// to a different job state, usually within 60 minutes of the job being created, this
// action is no longer available.
func ExampleSnowball_UpdateJob_shared00() {
svc := snowball.New(session.New())
input := &snowball.UpdateJobInput{
AddressId: aws.String("ADID1234ab12-3eec-4eb3-9be6-9374c10eb51b"),
Description: aws.String("Upgraded to Edge, shipped to Finance Dept, and requested faster shipping speed - TS."),
JobId: aws.String("JID123e4567-e89b-12d3-a456-426655440000"),
ShippingOption: aws.String("NEXT_DAY"),
SnowballCapacityPreference: aws.String("T100"),
}
result, err := svc.UpdateJob(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case snowball.ErrCodeInvalidResourceException:
fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
case snowball.ErrCodeInvalidJobStateException:
fmt.Println(snowball.ErrCodeInvalidJobStateException, aerr.Error())
case snowball.ErrCodeKMSRequestFailedException:
fmt.Println(snowball.ErrCodeKMSRequestFailedException, aerr.Error())
case snowball.ErrCodeInvalidInputCombinationException:
fmt.Println(snowball.ErrCodeInvalidInputCombinationException, aerr.Error())
case snowball.ErrCodeClusterLimitExceededException:
fmt.Println(snowball.ErrCodeClusterLimitExceededException, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
}