def main(): parser = argparse.ArgumentParser(description='Transfer files from S3 to Ovation') parser.add_argument('-u', '--user', help='Ovation user email') parser.add_argument('-p', '--password', help='Ovation password') parser.add_argument('-t', '--token', help='Ovation user token') parser.add_argument('parent', help='Project or Folder UUID that will receive transferred files') parser.add_argument('source_bucket', help='Source S3 Bucket') parser.add_argument('aws_access_key_id', help='AWS Access Key Id') parser.add_argument('aws_secret_access_key', help='AWS Secret Key') args = parser.parse_args() token = args.token if token is None: user = args.user if user is None: user = input('Email: ') session = connect(user, password=args.password) else: session = Session(token) aws_secret_access_key = args.aws_secret_access_key logging.basicConfig(level=logging.INFO, filename='ovation_transfer.log') copy_bucket_contents(session, project=args.parent, aws_access_key_id=args.aws_access_key_id, aws_secret_access_key=aws_secret_access_key, source_s3_bucket=args.source_bucket, destination_s3_bucket='users.ovation.io', checkpoint='.transfer_checkpoint.csv', copy_file_fn=copy_file)
def process_open_activities(user_name): s = session.connect(user_name) open_activities = _filter_open_activities(s, _find_activities(s)) for activity in open_activities: print("Processing {}".format(activity.attributes.name)) _process_activity(s, activity) print("Finished processing {}".format(activity.attributes.name))