code: def create_function(self, vpc_config):
          
          zip_file = 'lambda-holder.zip'
          with zipfile.ZipFile(zip_file, mode='w') as zipped:
              zipped.writestr('index.py', 'print "Hello world"')
  
          contents = ''
          with open('lambda-holder.zip', 'rb') as openfile:
              contents = openfile.read()
  
          LOG.info('Creating lambda function: %s', self.app_name)
  
          try:
              self.lambda_client.create_function(
                  Environment=self.lambda_environment,
                  FunctionName=self.app_name,
                  Runtime=self.runtime,
                  Role=self.role_arn,
                  Handler=self.handler,
                  Code={'ZipFile': contents},
                  Description=self.description,
                  Timeout=int(self.timeout),
                  MemorySize=int(self.memory),
                  Publish=False,
                  VpcConfig=vpc_config,
                  Tags={'app_group': self.group,
                        'app_name': self.app_name})
          except boto3.exceptions.botocore.exceptions.ClientError as error:
              if 'CreateNetworkInterface' in error.response['Error']['Message']:
                  message = '{0} is missing "ec2:CreateNetworkInterface"'.format(self.role_arn)
                  LOG.critical(message)
                  raise SystemExit(message)
  
              raise
  
          LOG.info("Successfully created Lambda function and alias")
docs: Create lambda function, configures lambda parameters.
  
          We need to upload non-zero zip when creating function. Uploading
          hello_world python lambda function since AWS doesn't care which
          executable is in ZIP.
  
          Args:
              vpc_config (dict): Dictionary of SubnetIds and SecurityGroupsIds for using
                                 a VPC in lambda