From e821f5287555160e78115ef1a39c68521bce68ab Mon Sep 17 00:00:00 2001 From: David Eliahu Date: Sun, 13 Oct 2019 20:35:02 -0700 Subject: [PATCH] Validate access to cortex bucket on deploy --- pkg/operator/context/deployment_version.go | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/pkg/operator/context/deployment_version.go b/pkg/operator/context/deployment_version.go index ec9e3dcd98..cfbed5497e 100644 --- a/pkg/operator/context/deployment_version.go +++ b/pkg/operator/context/deployment_version.go @@ -22,7 +22,6 @@ import ( "github.com/cortexlabs/cortex/pkg/consts" "github.com/cortexlabs/cortex/pkg/lib/aws" - "github.com/cortexlabs/cortex/pkg/lib/errors" libtime "github.com/cortexlabs/cortex/pkg/lib/time" "github.com/cortexlabs/cortex/pkg/operator/config" ) @@ -38,7 +37,10 @@ func getOrSetDeploymentVersion(appName string, ignoreCache bool) (string, error) deploymentVersion := libtime.Timestamp(time.Now()) err := config.AWS.UploadStringToS3(deploymentVersion, deploymentVersionFileKey) if err != nil { - return "", errors.Wrap(err, "deployment version") // unexpected error + if aws.IsNoSuchBucketErr(err) { + return "", aws.ErrorBucketInaccessible(config.AWS.Bucket) + } + return "", err } return deploymentVersion, nil } @@ -46,12 +48,18 @@ func getOrSetDeploymentVersion(appName string, ignoreCache bool) (string, error) deploymentVersion, err := config.AWS.ReadStringFromS3(deploymentVersionFileKey) if err != nil { if !aws.IsNoSuchKeyErr(err) { - return "", errors.Wrap(err, "deployment version") // unexpected error + if aws.IsNoSuchBucketErr(err) { + return "", aws.ErrorBucketInaccessible(config.AWS.Bucket) + } + return "", err } deploymentVersion = libtime.Timestamp(time.Now()) err := config.AWS.UploadStringToS3(deploymentVersion, deploymentVersionFileKey) if err != nil { - return "", errors.Wrap(err, "deployment version") // unexpected error + if aws.IsNoSuchBucketErr(err) { + return "", aws.ErrorBucketInaccessible(config.AWS.Bucket) + } + return "", err } } return deploymentVersion, nil