Ejemplo n.º 1
0
def clone_and_edit_jhchoi(request_prepid_to_clone, fragment, dataset_name,
                          notes, total_events, generators):

    mcm = McM(dev=False)

    modifications = {
        'fragment': fragment,
        'dataset_name': dataset_name,
        'notes': notes,
        'total_events': total_events,
        "generators": generators
    }

    #request_prepid_to_clone = "SUS-RunIIWinter15wmLHE-00040"

    request = mcm.get('requests', request_prepid_to_clone)

    for key in modifications:
        request[key] = modifications[key]

    clone_answer = mcm.clone_request(request)

    if clone_answer.get('results'):
        print "@@"
        new_prepid = clone_answer['prepid']
        print('Clone PrepID: %s' % (clone_answer['prepid']))
        new_request = mcm.get('requests', new_prepid)
        print new_request['dataset_name']
        mcm.approve('requests', new_prepid, None)
        print "---"
        f = open('success.txt', 'a')
        f.write(new_prepid + "\n")
        f.close()
    else:
        print('Something went wrong while cloning a request. %s' %
              (dumps(clone_answer)))
        f = open('fail.txt', 'a')
        f.write(dataset_name + "\n")
        f.close()
Ejemplo n.º 2
0
# If member_of_campaign is different, it will clone to other campaign
campaign_modifications = {'member_of_campaign': 'RunIIFall18GS'}

for request_prepid_to_clone in requests_to_clone:

    print('Cloning and modifying {0}'.format(request_prepid_to_clone))

    # Get a request object which we want to clone
    request = mcm.get('requests', request_prepid_to_clone)

    # Make predefined modifications
    for key in campaign_modifications:
        request[key] = campaign_modifications[key]

    #clone request and print error if it fails
    clone_answer = mcm.clone_request(request)
    if clone_answer.get('results'):
        pass
    else:
        print('Something went wrong while cloning a request. %s' %
              (dumps(clone_answer)))

    #write new prepid to file
    f.write(clone_answer['prepid'] + '\n')

    #modify and update cloned request
    #note that these modifications must be done after cloning since they might otherwise be reset
    cloned_request = mcm.get('requests', clone_answer['prepid'])

    total_events = request['total_events']