def main()

in visualizeConnectData/scripts/mockCTRs/create.py [0:0]


def main():
    CTR_DIR = './ctr'
    if os.path.exists(CTR_DIR):
        shutil.rmtree(CTR_DIR)
    os.mkdir(CTR_DIR)
    
    accountId=boto3.client("sts").get_caller_identity()["Account"]
    region = boto3.session.Session().region_name
    
    counter = 0
    today = datetime.datetime.utcnow()

    for year in range(today.year -1, today.year + 1):
        yearDir = '{0}/year={1}'.format(CTR_DIR, year)
        os.mkdir(yearDir)

        for month in range(1, 13):
            if (year == today.year) and (month > today.month): 
                continue
            
            monthDir = '{0}/month={1:02}'.format(yearDir, month)
            os.mkdir(monthDir)
            
            notUsed, days = monthrange(year, month)
            days+=1
            
            for day in range(1, days): 
                if (year == today.year) and (month == today.month) and (day > today.day): 
                    continue
                
                dayDir = '{0}/day={1:02}'.format(monthDir, day)
                os.mkdir(dayDir)
                
                numOfCtrBatches = random.randint(10, 50)
                
                for batch in range(numOfCtrBatches):
                    batchFileName = '{0}/fakeCtr-{1}-{2:02}-{3:02}-B{4:02}'.format(dayDir, year, month, day, batch)
                    
                    with open(batchFileName, 'w') as f:
                        numOfCtrs = random.randint(1, 10)
                        for ctr in range(numOfCtrs):
                            f.write(createCTR(accountId, region, year, month, day))
                            f.write('\n') #firehoseAddNewLine lambda
                            counter+=1
    
    logger.info('Finished {0} CTRs created'.format(counter))