def createBucket()

in scripts/yapl/S3Helper.py [0:0]


  def createBucket(self,bucketName,region=None):
    """
      Return an instance of S3 bucket either for a bucket that already
      exists or for a newly created bucket in the given region.
      
      NOTE: Region is required, either on the method call or to the S3Helper instance. 
      
    """
    methodName = "createBucket"
    
    bucket = None
    if (self.bucketExists(bucketName)):
      bucket = self.s3Resource.Bucket(bucketName)
    else:
      if (region):
        response = self.s3Client.create_bucket(Bucket=bucketName,
                                               CreateBucketConfiguration={'LocationConstraint': region})
      elif (self.region):
        response = self.s3Client.create_bucket(Bucket=bucketName,
                                               CreateBucketConfiguration={'LocationConstraint': self.region})
      else:
        raise MissingArgumentException("The AWS region name for the bucket must be provided either to the S3Helper instance or in the createBucket() arguments.")
      #endIf
        
      if (TR.isLoggable(Level.FINE)):
        TR.fine(methodName,"Bucket: %s created in region: %s" % (bucketName,response.get('Location')))
      #endIf 
      bucket = self.s3Resource.Bucket(bucketName) 
    #endIf
    
    return bucket